From 4eb28ed6a2bf9ff254db19b8df911fb8d9753134 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Fri, 29 May 2026 19:08:57 +0200 Subject: [PATCH 01/14] regen: regenerate the MEOS facade against the consolidated MobilityDB surface Bump codegen/input/meos-idl.json to the MEOS-API IDL and regenerate functions.GeneratedFunctions over the full consolidated superset: mul_* (incl. tbigint); minDistance; the circular-buffer and network-point MF-JSON readers; the ever- and always-covers families (ecovers_*/acovers_*); trgeo_*; the H3 / th3index family (ever_eq_h3indexset_th3index, h3index_in/out, H3Index lowered to long); PostgreSQL type I/O; tgeogpoint_great_circle_distance; meos_initialize_noexit_error_handler. 2916 functions. --- codegen/input/meos-idl.json | 37067 +++++++++++++--- codegen/src/main/java/FunctionsGenerator.java | 4 + .../src/test/java/FunctionsGeneratorTest.java | 1 + .../java/functions/GeneratedFunctions.java | 18926 ++++++-- 4 files changed, 46412 insertions(+), 9586 deletions(-) diff --git a/codegen/input/meos-idl.json b/codegen/input/meos-idl.json index 63196ca2..dbdd46a6 100644 --- a/codegen/input/meos-idl.json +++ b/codegen/input/meos-idl.json @@ -1,5 +1,135 @@ { "functions": [ + { + "name": "meos_array_create", + "file": "meos.h", + "returnType": { + "c": "MeosArray *", + "canonical": "struct MeosArray *" + }, + "params": [ + { + "name": "elem_size", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "meos_array_add", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "array", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + }, + { + "name": "value", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "meos_array_get", + "file": "meos.h", + "returnType": { + "c": "void *", + "canonical": "void *" + }, + "params": [ + { + "name": "array", + "cType": "const MeosArray *", + "canonical": "const struct MeosArray *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "meos_array_count", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "array", + "cType": "const MeosArray *", + "canonical": "const struct MeosArray *" + } + ] + }, + { + "name": "meos_array_reset", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "array", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + } + ] + }, + { + "name": "meos_array_reset_free", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "array", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + } + ] + }, + { + "name": "meos_array_destroy", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "array", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + } + ] + }, + { + "name": "meos_array_destroy_free", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "array", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + } + ] + }, { "name": "rtree_create_intspan", "file": "meos.h", @@ -132,8 +262,8 @@ "name": "rtree_search", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -152,9 +282,9 @@ "canonical": "const void *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" } ] }, @@ -162,8 +292,8 @@ "name": "rtree_search_temporal", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -182,9 +312,9 @@ "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" } ] }, @@ -433,19 +563,19 @@ "name": "add_interval_interval", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "interv1", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "interv2", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -464,8 +594,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -503,8 +633,8 @@ "name": "cstring2text", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -673,8 +803,8 @@ "name": "interval_make", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -769,8 +899,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -778,8 +908,8 @@ "name": "minus_timestamptz_timestamptz", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -798,14 +928,14 @@ "name": "mul_interval_double", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "factor", @@ -854,13 +984,13 @@ "params": [ { "name": "interv1", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "interv2", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -868,8 +998,8 @@ "name": "pg_interval_in", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -894,8 +1024,8 @@ "params": [ { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -979,8 +1109,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -994,13 +1124,13 @@ "params": [ { "name": "txt1", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "txt2", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1008,14 +1138,14 @@ "name": "text_copy", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1023,8 +1153,8 @@ "name": "text_in", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -1038,14 +1168,14 @@ "name": "text_initcap", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1053,14 +1183,14 @@ "name": "text_lower", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1074,8 +1204,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1083,14 +1213,14 @@ "name": "text_upper", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1098,19 +1228,19 @@ "name": "textcat_text_text", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "txt1", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "txt2", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1129,8 +1259,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -1199,13 +1329,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "value", @@ -1219,7 +1349,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1240,7 +1370,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -1249,7 +1379,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1270,7 +1400,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -1309,7 +1439,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1330,7 +1460,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -1339,7 +1469,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1360,7 +1490,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -1404,13 +1534,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "value", @@ -1424,7 +1554,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1445,7 +1575,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "maxdd", @@ -1459,7 +1589,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1480,7 +1610,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "maxdd", @@ -1524,13 +1654,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "value", @@ -1544,7 +1674,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1565,7 +1695,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -1574,7 +1704,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1595,7 +1725,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -1619,8 +1749,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1644,8 +1774,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1679,8 +1809,8 @@ }, { "name": "size", - "cType": "int", - "canonical": "int" + "cType": "size_t", + "canonical": "unsigned long" } ] }, @@ -1695,7 +1825,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "variant", @@ -1704,8 +1834,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1720,7 +1850,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "variant", @@ -1729,8 +1859,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1739,7 +1869,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1754,7 +1884,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1764,8 +1894,8 @@ }, { "name": "size", - "cType": "int", - "canonical": "int" + "cType": "size_t", + "canonical": "unsigned long" } ] }, @@ -1780,7 +1910,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "variant", @@ -1789,8 +1919,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1805,7 +1935,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "variant", @@ -1814,8 +1944,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -1824,7 +1954,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1839,7 +1969,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1849,8 +1979,8 @@ }, { "name": "size", - "cType": "int", - "canonical": "int" + "cType": "size_t", + "canonical": "unsigned long" } ] }, @@ -1919,7 +2049,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -1940,7 +2070,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -1949,7 +2079,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -1970,7 +2100,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -1999,7 +2129,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2049,7 +2179,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2099,7 +2229,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2149,7 +2279,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2194,13 +2324,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2209,13 +2339,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2224,13 +2354,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "spans", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "count", @@ -2249,8 +2379,8 @@ "params": [ { "name": "values", - "cType": "text **", - "canonical": "struct varlena **" + "cType": "int **", + "canonical": "int **" }, { "name": "count", @@ -2284,7 +2414,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2329,13 +2459,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "i", - "cType": "int", - "canonical": "int" + "cType": "int64", + "canonical": "long" } ] }, @@ -2344,13 +2474,43 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "i", - "cType": "int", - "canonical": "int" + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "bigintspan_to_intspan", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "bigintspan_to_floatspan", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, @@ -2374,7 +2534,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2389,7 +2549,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -2419,13 +2579,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2434,13 +2594,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2464,7 +2624,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2479,7 +2639,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -2504,18 +2664,33 @@ } ] }, + { + "name": "floatspan_to_bigintspan", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, { "name": "floatspan_to_intspan", "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2524,13 +2699,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2554,7 +2729,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2569,7 +2744,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -2594,18 +2769,33 @@ } ] }, + { + "name": "intspan_to_bigintspan", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, { "name": "intspan_to_floatspan", "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2614,13 +2804,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2629,7 +2819,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2644,7 +2834,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -2659,13 +2849,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2679,8 +2869,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -2704,7 +2894,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -2719,7 +2909,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -2749,13 +2939,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2764,13 +2954,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2855,7 +3045,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2870,7 +3060,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2885,7 +3075,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -2900,7 +3090,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2915,7 +3105,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -2930,7 +3120,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "boundspan", @@ -3013,14 +3203,14 @@ "name": "datespan_duration", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3035,7 +3225,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3050,7 +3240,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3065,7 +3255,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "n", @@ -3090,7 +3280,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3098,14 +3288,14 @@ "name": "datespanset_duration", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "boundspan", @@ -3125,7 +3315,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3140,7 +3330,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3155,7 +3345,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3240,7 +3430,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3255,7 +3445,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3270,7 +3460,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3285,7 +3475,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3300,7 +3490,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3315,7 +3505,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "boundspan", @@ -3405,7 +3595,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3420,7 +3610,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3435,7 +3625,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3450,7 +3640,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3465,7 +3655,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3480,7 +3670,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "boundspan", @@ -3550,7 +3740,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3565,7 +3755,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "seed", @@ -3585,7 +3775,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3600,7 +3790,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3609,13 +3799,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3630,7 +3820,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3645,7 +3835,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "seed", @@ -3665,7 +3855,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3680,7 +3870,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3689,13 +3879,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3704,13 +3894,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -3724,13 +3914,13 @@ "file": "meos.h", "returnType": { "c": "Span **", - "canonical": "Span **" + "canonical": "struct Span **" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3739,13 +3929,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3760,7 +3950,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3768,8 +3958,8 @@ "name": "textset_end_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -3783,8 +3973,8 @@ "name": "textset_start_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -3814,8 +4004,8 @@ }, { "name": "result", - "cType": "text **", - "canonical": "struct varlena **" + "cType": "int **", + "canonical": "int **" } ] }, @@ -3823,8 +4013,8 @@ "name": "textset_values", "file": "meos.h", "returnType": { - "c": "text **", - "canonical": "struct varlena **" + "c": "int **", + "canonical": "int **" }, "params": [ { @@ -3908,14 +4098,14 @@ "name": "tstzspan_duration", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3930,7 +4120,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3945,7 +4135,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -3953,14 +4143,14 @@ "name": "tstzspanset_duration", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "boundspan", @@ -3980,7 +4170,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -3995,7 +4185,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4010,7 +4200,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4025,7 +4215,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4040,7 +4230,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4055,7 +4245,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "n", @@ -4080,7 +4270,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4124,13 +4314,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "shift", @@ -4159,13 +4349,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "shift", @@ -4229,13 +4419,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "shift", @@ -4264,13 +4454,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "shift", @@ -4399,13 +4589,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -4414,13 +4604,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "normalize", @@ -4434,13 +4624,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -4449,13 +4639,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -4464,13 +4654,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "maxdd", @@ -4484,13 +4674,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "shift", @@ -4519,13 +4709,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4534,13 +4724,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4549,13 +4739,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "normalize", @@ -4569,13 +4759,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -4584,13 +4774,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "maxdd", @@ -4604,13 +4794,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "shift", @@ -4674,13 +4864,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "shift", @@ -4709,13 +4899,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "shift", @@ -4744,18 +4934,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -4789,8 +4979,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -4814,8 +5004,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -4879,8 +5069,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -4904,13 +5094,13 @@ }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -4929,8 +5119,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -4944,23 +5134,23 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -4969,18 +5159,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -4994,23 +5184,23 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -5019,18 +5209,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -5190,12 +5380,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5210,12 +5400,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5230,12 +5420,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5250,12 +5440,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5270,12 +5460,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5290,12 +5480,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5310,12 +5500,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5330,12 +5520,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5350,12 +5540,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5370,12 +5560,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5390,12 +5580,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5410,12 +5600,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5430,12 +5620,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5450,12 +5640,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5464,7 +5654,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -5479,7 +5669,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -5504,7 +5694,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -5529,13 +5719,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5544,13 +5734,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "elems_per_span", @@ -5569,13 +5759,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "span_count", @@ -5600,7 +5790,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -5620,7 +5810,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -5640,7 +5830,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -5660,7 +5850,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -5680,12 +5870,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5700,12 +5890,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5720,7 +5910,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -5740,7 +5930,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -5760,7 +5950,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -5780,7 +5970,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -5800,7 +5990,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -5820,7 +6010,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -5840,12 +6030,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5860,12 +6050,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5905,7 +6095,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5925,7 +6115,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -5965,7 +6155,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -5985,7 +6175,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6025,7 +6215,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6045,7 +6235,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6085,7 +6275,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6105,7 +6295,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6140,12 +6330,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6160,12 +6350,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6180,12 +6370,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6200,12 +6390,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6219,8 +6409,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -6265,7 +6455,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6285,7 +6475,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6404,8 +6594,8 @@ }, { "name": "t", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -6440,7 +6630,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -6460,7 +6650,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -6480,7 +6670,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -6500,7 +6690,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -6520,12 +6710,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6540,12 +6730,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6560,7 +6750,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -6580,7 +6770,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -6600,7 +6790,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -6620,7 +6810,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -6640,7 +6830,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -6660,12 +6850,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6680,12 +6870,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6700,7 +6890,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -6740,12 +6930,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6760,12 +6950,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6780,12 +6970,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6800,12 +6990,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6845,7 +7035,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -6865,7 +7055,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -6920,7 +7110,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -6940,7 +7130,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -6960,7 +7150,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -6980,7 +7170,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -7025,7 +7215,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7045,7 +7235,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7085,7 +7275,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7105,7 +7295,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7160,7 +7350,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -7180,7 +7370,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -7200,7 +7390,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -7220,7 +7410,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -7265,7 +7455,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7285,7 +7475,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7325,7 +7515,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7345,7 +7535,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7385,7 +7575,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7405,7 +7595,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7445,7 +7635,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7465,7 +7655,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7564,8 +7754,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -7580,7 +7770,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -7600,7 +7790,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -7620,7 +7810,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -7640,12 +7830,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7660,12 +7850,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7680,7 +7870,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -7700,7 +7890,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -7720,7 +7910,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -7740,12 +7930,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7760,12 +7950,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7779,8 +7969,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -7825,7 +8015,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -7845,7 +8035,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -7900,7 +8090,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -7920,7 +8110,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -7940,7 +8130,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -7960,7 +8150,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -8005,7 +8195,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8025,7 +8215,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8065,7 +8255,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8085,7 +8275,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8140,7 +8330,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -8160,7 +8350,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -8180,7 +8370,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -8200,7 +8390,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -8245,7 +8435,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8265,7 +8455,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8305,7 +8495,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8325,7 +8515,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8365,7 +8555,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8385,7 +8575,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8425,7 +8615,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8445,7 +8635,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8544,8 +8734,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -8560,7 +8750,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -8580,7 +8770,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -8600,7 +8790,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -8620,12 +8810,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8640,12 +8830,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8660,7 +8850,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -8680,7 +8870,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -8700,7 +8890,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -8720,12 +8910,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8740,12 +8930,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8759,8 +8949,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -8805,7 +8995,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8825,7 +9015,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8865,7 +9055,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8885,7 +9075,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -8925,7 +9115,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -8945,7 +9135,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9044,8 +9234,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -9060,7 +9250,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -9080,7 +9270,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -9100,7 +9290,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -9120,12 +9310,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9140,12 +9330,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9160,7 +9350,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -9180,7 +9370,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -9200,7 +9390,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -9220,12 +9410,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9240,12 +9430,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9259,8 +9449,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -9305,7 +9495,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9325,7 +9515,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9365,7 +9555,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9385,7 +9575,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9425,7 +9615,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9445,7 +9635,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9544,8 +9734,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -9560,7 +9750,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -9580,7 +9770,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -9600,7 +9790,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -9620,12 +9810,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9640,12 +9830,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9660,7 +9850,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -9680,7 +9870,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -9700,7 +9890,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -9720,12 +9910,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -9740,12 +9930,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -9759,8 +9949,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -9964,8 +10154,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -9994,13 +10184,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -10014,13 +10204,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -10034,13 +10224,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -10054,13 +10244,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -10074,18 +10264,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10094,18 +10284,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10114,13 +10304,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -10134,13 +10324,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -10154,13 +10344,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -10174,13 +10364,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -10194,13 +10384,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -10214,18 +10404,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10234,18 +10424,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10254,13 +10444,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -10279,8 +10469,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -10334,7 +10524,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10345,7 +10535,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10354,7 +10544,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10365,7 +10555,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10394,7 +10584,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10405,7 +10595,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10414,7 +10604,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10425,7 +10615,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10454,7 +10644,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10465,7 +10655,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10474,7 +10664,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10485,7 +10675,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10514,7 +10704,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10525,7 +10715,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10534,7 +10724,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -10545,7 +10735,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10664,8 +10854,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -10694,13 +10884,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -10714,13 +10904,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -10734,13 +10924,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -10754,13 +10944,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -10774,18 +10964,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10794,18 +10984,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10814,13 +11004,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -10834,13 +11024,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -10854,13 +11044,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -10874,13 +11064,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -10894,13 +11084,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -10914,18 +11104,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -10934,18 +11124,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -10954,13 +11144,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -10979,8 +11169,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -11014,7 +11204,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11025,7 +11215,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11034,7 +11224,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11045,7 +11235,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -11074,13 +11264,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -11094,7 +11284,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11105,7 +11295,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -11134,13 +11324,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -11154,7 +11344,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11165,7 +11355,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -11194,13 +11384,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -11214,7 +11404,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11225,7 +11415,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -11254,7 +11444,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11265,7 +11455,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11274,7 +11464,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11285,7 +11475,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -11404,8 +11594,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -11434,13 +11624,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -11454,13 +11644,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -11474,13 +11664,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -11494,13 +11684,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -11514,18 +11704,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11534,18 +11724,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -11554,13 +11744,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -11574,13 +11764,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -11594,13 +11784,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -11614,13 +11804,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -11634,13 +11824,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -11654,18 +11844,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11674,18 +11864,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -11694,13 +11884,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -11719,8 +11909,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -11754,7 +11944,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11765,7 +11955,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11774,7 +11964,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -11785,7 +11975,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -11820,12 +12010,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11840,12 +12030,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11860,12 +12050,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -11900,12 +12090,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11920,12 +12110,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -11940,12 +12130,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -11980,12 +12170,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12000,12 +12190,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12020,12 +12210,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -12060,12 +12250,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12080,12 +12270,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12100,12 +12290,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -12220,7 +12410,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -12240,7 +12430,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -12260,7 +12450,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "d", @@ -12280,7 +12470,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "i", @@ -12300,7 +12490,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -12320,7 +12510,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -12340,7 +12530,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -12360,7 +12550,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "d", @@ -12380,7 +12570,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "i", @@ -12400,7 +12590,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "t", @@ -12440,12 +12630,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12460,12 +12650,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12480,12 +12670,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -12494,13 +12684,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "i", @@ -12534,13 +12724,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "d", @@ -12574,13 +12764,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "d", @@ -12614,13 +12804,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "i", @@ -12654,13 +12844,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "s", @@ -12709,18 +12899,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12729,18 +12919,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -12749,18 +12939,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -12769,13 +12959,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" } ] }, @@ -12784,18 +12974,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -12814,8 +13004,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -12824,13 +13014,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, { "name": "t", @@ -12889,13 +13079,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "vsize", @@ -12919,13 +13109,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "vsize", @@ -12959,8 +13149,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -12974,18 +13164,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -13004,18 +13194,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -13059,13 +13249,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "vsize", @@ -13089,13 +13279,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "vsize", @@ -13144,13 +13334,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "vsize", @@ -13174,13 +13364,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "vsize", @@ -13214,8 +13404,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -13229,18 +13419,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "origin", @@ -13259,18 +13449,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -13295,7 +13485,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "variant", @@ -13304,8 +13494,8 @@ }, { "name": "size", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -13320,7 +13510,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "variant", @@ -13329,8 +13519,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -13339,7 +13529,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13354,7 +13544,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13364,8 +13554,8 @@ }, { "name": "size", - "cType": "int", - "canonical": "int" + "cType": "size_t", + "canonical": "unsigned long" } ] }, @@ -13374,7 +13564,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13395,7 +13585,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "maxdd", @@ -13409,7 +13599,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13429,7 +13619,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13440,7 +13630,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -13449,7 +13639,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13469,7 +13659,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13480,7 +13670,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -13489,18 +13679,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "span", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -13509,13 +13699,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "span", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "t", @@ -13529,13 +13719,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13544,18 +13734,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "p", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -13564,7 +13754,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13579,7 +13769,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13594,7 +13784,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13609,13 +13799,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -13624,13 +13814,28 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "tbox_to_bigintspan", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" } ] }, @@ -13639,13 +13844,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13654,13 +13859,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13669,13 +13874,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13684,7 +13889,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -13705,7 +13910,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13720,7 +13925,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "seed", @@ -13740,7 +13945,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13755,7 +13960,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -13770,7 +13975,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13790,12 +13995,12 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -13810,7 +14015,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13830,12 +14035,12 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -13850,7 +14055,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13870,12 +14075,12 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -13890,7 +14095,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13910,12 +14115,12 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -13930,7 +14135,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13950,7 +14155,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13970,7 +14175,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13990,7 +14195,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "result", @@ -13999,23 +14204,78 @@ } ] }, + { + "name": "tbigintbox_expand", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "tbigintbox_shift_scale", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "shift", + "cType": "int64", + "canonical": "long" + }, + { + "name": "width", + "cType": "int64", + "canonical": "long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, { "name": "tbox_expand_time", "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -14024,13 +14284,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "maxdd", @@ -14044,23 +14304,23 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -14069,13 +14329,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "d", @@ -14089,13 +14349,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "shift", @@ -14124,13 +14384,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "i", @@ -14144,13 +14404,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "shift", @@ -14179,18 +14439,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "strict", @@ -14204,18 +14464,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14230,12 +14490,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14250,12 +14510,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14270,12 +14530,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14290,12 +14550,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14310,12 +14570,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14330,12 +14590,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14350,12 +14610,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14370,12 +14630,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14390,12 +14650,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14410,12 +14670,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14430,12 +14690,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14450,12 +14710,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14470,12 +14730,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14490,12 +14750,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14510,12 +14770,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14530,12 +14790,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14550,12 +14810,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14570,12 +14830,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14590,12 +14850,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -14610,12 +14870,57 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" + } + ] + }, + { + "name": "tbigint_from_mfjson", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tbigint_in", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tbigint_out", + "file": "meos.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -14684,8 +14989,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -14744,8 +15049,8 @@ }, { "name": "size_out", - "cType": "int *", - "canonical": "int *" + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, @@ -14779,8 +15084,8 @@ }, { "name": "size", - "cType": "int", - "canonical": "int" + "cType": "size_t", + "canonical": "unsigned long" } ] }, @@ -14924,6 +15229,106 @@ } ] }, + { + "name": "tbigint_from_base_temp", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigintinst_make", + "file": "meos.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tbigintseq_from_base_tstzset", + "file": "meos.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tbigintseq_from_base_tstzspan", + "file": "meos.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "tbigintseqset_from_base_tstzspanset", + "file": "meos.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, { "name": "tbool_from_base_temp", "file": "meos.h", @@ -14949,7 +15354,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -14969,7 +15374,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -14989,7 +15394,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15000,7 +15405,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -15009,7 +15414,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -15020,7 +15425,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -15064,7 +15469,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15084,7 +15489,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15104,7 +15509,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15115,7 +15520,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "interp", @@ -15129,7 +15534,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -15140,7 +15545,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "interp", @@ -15174,7 +15579,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15194,7 +15599,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15214,7 +15619,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15225,7 +15630,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -15234,7 +15639,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -15245,7 +15650,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -15254,13 +15659,13 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { "name": "instants", "cType": "TInstant **", - "canonical": "TInstant **" + "canonical": "struct TInstant **" }, { "name": "count", @@ -15294,13 +15699,13 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "sequences", "cType": "TSequence **", - "canonical": "TSequence **" + "canonical": "struct TSequence **" }, { "name": "count", @@ -15319,13 +15724,13 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "instants", "cType": "TInstant **", - "canonical": "TInstant **" + "canonical": "struct TInstant **" }, { "name": "count", @@ -15339,8 +15744,8 @@ }, { "name": "maxt", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "maxdist", @@ -15359,8 +15764,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -15374,13 +15779,13 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "t", @@ -15394,13 +15799,13 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", @@ -15414,18 +15819,18 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -15434,18 +15839,48 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "tbigint_to_tfloat", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigint_to_tint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -15469,7 +15904,22 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tfloat_to_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -15494,6 +15944,21 @@ } ] }, + { + "name": "tint_to_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "tint_to_tfloat", "file": "meos.h", @@ -15514,7 +15979,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -15529,7 +15994,67 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigint_end_value", + "file": "meos.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigint_max_value", + "file": "meos.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigint_min_value", + "file": "meos.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tbigint_start_value", + "file": "meos.h", + "returnType": { + "c": "int64", + "canonical": "long" }, "params": [ { @@ -15539,6 +16064,81 @@ } ] }, + { + "name": "tbigint_value_at_timestamptz", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "value", + "cType": "int64 *", + "canonical": "long *" + } + ] + }, + { + "name": "tbigint_value_n", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int64", + "canonical": "long" + }, + { + "name": "result", + "cType": "int64 *", + "canonical": "long *" + } + ] + }, + { + "name": "tbigint_values", + "file": "meos.h", + "returnType": { + "c": "int64 *", + "canonical": "long *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int32 *", + "canonical": "int *" + } + ] + }, { "name": "tbool_end_value", "file": "meos.h", @@ -15595,7 +16195,7 @@ { "name": "value", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -15620,7 +16220,7 @@ { "name": "result", "cType": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" } ] }, @@ -15629,7 +16229,7 @@ "file": "meos.h", "returnType": { "c": "bool *", - "canonical": "unsigned char *" + "canonical": "_Bool *" }, "params": [ { @@ -15648,8 +16248,8 @@ "name": "temporal_duration", "file": "meos.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -15669,7 +16269,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15684,7 +16284,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15729,7 +16329,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15749,7 +16349,7 @@ "file": "meos.h", "returnType": { "c": "TInstant **", - "canonical": "TInstant **" + "canonical": "struct TInstant **" }, "params": [ { @@ -15799,7 +16399,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15814,7 +16414,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15874,7 +16474,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -15884,8 +16484,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "atleast", @@ -15904,7 +16504,7 @@ "file": "meos.h", "returnType": { "c": "TSequence **", - "canonical": "TSequence **" + "canonical": "struct TSequence **" }, "params": [ { @@ -15924,7 +16524,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -15944,7 +16544,7 @@ "file": "meos.h", "returnType": { "c": "TSequence **", - "canonical": "TSequence **" + "canonical": "struct TSequence **" }, "params": [ { @@ -15964,7 +16564,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -15979,7 +16579,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -16009,7 +16609,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -16024,8 +16624,8 @@ }, { "name": "minduration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -16049,7 +16649,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -16454,7 +17054,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -16468,8 +17068,8 @@ "name": "ttext_end_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -16483,8 +17083,8 @@ "name": "ttext_max_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -16498,8 +17098,8 @@ "name": "ttext_min_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -16513,8 +17113,8 @@ "name": "ttext_start_value", "file": "meos.h", "returnType": { - "c": "text *", - "canonical": "struct varlena *" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -16549,8 +17149,8 @@ }, { "name": "value", - "cType": "text **", - "canonical": "struct varlena **" + "cType": "int **", + "canonical": "int **" } ] }, @@ -16574,8 +17174,8 @@ }, { "name": "result", - "cType": "text **", - "canonical": "struct varlena **" + "cType": "int **", + "canonical": "int **" } ] }, @@ -16583,8 +17183,8 @@ "name": "ttext_values", "file": "meos.h", "returnType": { - "c": "text **", - "canonical": "struct varlena **" + "c": "int **", + "canonical": "int **" }, "params": [ { @@ -16619,6 +17219,71 @@ } ] }, + { + "name": "tbigint_scale_value", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "width", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "tbigint_shift_scale_value", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "shift", + "cType": "int64", + "canonical": "long" + }, + { + "name": "width", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "tbigint_shift_value", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "shift", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "temparr_round", "file": "meos.h", @@ -16679,8 +17344,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -16719,13 +17384,13 @@ }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -16744,8 +17409,8 @@ }, { "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -16754,7 +17419,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "TInstant *" + "canonical": "struct TInstant *" }, "params": [ { @@ -16769,7 +17434,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "TSequence *" + "canonical": "struct TSequence *" }, "params": [ { @@ -16789,7 +17454,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -17015,7 +17680,7 @@ { "name": "inst", "cType": "const TInstant *", - "canonical": "const TInstant *" + "canonical": "const struct TInstant *" }, { "name": "interp", @@ -17029,8 +17694,8 @@ }, { "name": "maxt", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "expand", @@ -17055,7 +17720,7 @@ { "name": "seq", "cType": "const TSequence *", - "canonical": "const TSequence *" + "canonical": "const struct TSequence *" }, { "name": "expand", @@ -17130,7 +17795,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "connect", @@ -17155,7 +17820,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" }, { "name": "connect", @@ -17254,6 +17919,46 @@ } ] }, + { + "name": "tbigint_at_value", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "tbigint_minus_value", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "tbool_at_value", "file": "meos.h", @@ -17405,7 +18110,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -17425,7 +18130,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -17560,7 +18265,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -17580,7 +18285,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -17700,7 +18405,7 @@ { "name": "span", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -17720,7 +18425,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -17740,7 +18445,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -17760,7 +18465,7 @@ { "name": "span", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -17780,7 +18485,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -17800,7 +18505,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -17819,8 +18524,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -17839,8 +18544,8 @@ }, { "name": "txt", - "cType": "text *", - "canonical": "struct varlena *" + "cType": "int *", + "canonical": "int *" } ] }, @@ -17885,7 +18590,7 @@ ], "ownership": "caller", "nullable": true, - "doc": "Retourne l'\u00e9galit\u00e9 temporelle entre deux valeurs temporelles.", + "doc": "Returns the temporal equality between two temporal values.", "meos": { "temporalDim": "any", "spatialDim": null, @@ -17993,6 +18698,26 @@ } ] }, + { + "name": "always_eq_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "always_eq_bool_tbool", "file": "meos.h", @@ -18103,8 +18828,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18113,6 +18838,26 @@ } ] }, + { + "name": "always_eq_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_eq_tfloat_float", "file": "meos.h", @@ -18168,8 +18913,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_ge_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -18213,6 +18978,26 @@ } ] }, + { + "name": "always_ge_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_ge_temporal_temporal", "file": "meos.h", @@ -18243,8 +19028,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18308,8 +19093,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_gt_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -18353,6 +19158,26 @@ } ] }, + { + "name": "always_gt_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_gt_temporal_temporal", "file": "meos.h", @@ -18383,8 +19208,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18448,8 +19273,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_le_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -18493,6 +19338,26 @@ } ] }, + { + "name": "always_le_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_le_temporal_temporal", "file": "meos.h", @@ -18523,8 +19388,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18588,8 +19453,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_lt_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -18663,8 +19548,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18728,8 +19613,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -18793,6 +19678,46 @@ } ] }, + { + "name": "always_lt_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "always_ne_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "always_ne_tbool_bool", "file": "meos.h", @@ -18813,6 +19738,26 @@ } ] }, + { + "name": "always_ne_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_ne_temporal_temporal", "file": "meos.h", @@ -18843,8 +19788,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -18908,8 +19853,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_eq_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -18973,6 +19938,26 @@ } ] }, + { + "name": "ever_eq_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_eq_tbool_bool", "file": "meos.h", @@ -19023,8 +20008,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19088,8 +20073,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_ge_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -19133,6 +20138,26 @@ } ] }, + { + "name": "ever_ge_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_ge_temporal_temporal", "file": "meos.h", @@ -19163,8 +20188,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19228,8 +20253,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_gt_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -19273,6 +20318,26 @@ } ] }, + { + "name": "ever_gt_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_gt_temporal_temporal", "file": "meos.h", @@ -19303,8 +20368,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19368,8 +20433,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_le_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -19413,6 +20498,26 @@ } ] }, + { + "name": "ever_le_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_le_temporal_temporal", "file": "meos.h", @@ -19443,8 +20548,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19508,8 +20613,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_lt_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -19553,6 +20678,26 @@ } ] }, + { + "name": "ever_lt_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_lt_temporal_temporal", "file": "meos.h", @@ -19583,8 +20728,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19648,8 +20793,28 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_ne_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, @@ -19713,6 +20878,26 @@ } ] }, + { + "name": "ever_ne_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "ever_ne_tbool_bool", "file": "meos.h", @@ -19763,8 +20948,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -19828,8 +21013,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -19943,8 +21128,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20008,8 +21193,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20083,8 +21268,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20148,8 +21333,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20223,8 +21408,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20288,8 +21473,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20363,8 +21548,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20428,8 +21613,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20503,8 +21688,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20568,8 +21753,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20683,8 +21868,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -20748,8 +21933,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -20758,7 +21943,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -20778,7 +21963,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -20803,7 +21988,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -20828,7 +22013,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -20853,7 +22038,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -20878,7 +22063,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -20904,7 +22089,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -20924,7 +22109,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -20969,7 +22154,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -20989,7 +22174,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21009,7 +22194,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21044,7 +22229,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21064,7 +22249,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21084,7 +22269,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21129,7 +22314,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21149,7 +22334,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21169,7 +22354,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21204,7 +22389,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21224,7 +22409,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21244,7 +22429,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21269,7 +22454,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21309,7 +22494,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21329,7 +22514,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21364,7 +22549,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21384,7 +22569,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21404,7 +22589,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21449,7 +22634,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21469,7 +22654,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21489,7 +22674,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21524,7 +22709,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21544,7 +22729,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21564,7 +22749,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21609,7 +22794,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21629,7 +22814,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21649,7 +22834,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21684,7 +22869,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21704,7 +22889,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21729,7 +22914,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21769,7 +22954,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21804,7 +22989,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21824,7 +23009,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21849,7 +23034,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -21889,7 +23074,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -21924,7 +23109,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21944,7 +23129,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -21964,7 +23149,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -21989,7 +23174,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22009,7 +23194,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22044,7 +23229,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -22069,7 +23254,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22109,7 +23294,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22144,7 +23329,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -22164,7 +23349,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -22189,7 +23374,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22229,7 +23414,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22264,7 +23449,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -22284,7 +23469,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -22304,7 +23489,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -22329,7 +23514,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22349,7 +23534,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22384,7 +23569,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -22404,7 +23589,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -22429,7 +23614,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22449,7 +23634,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22484,7 +23669,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" }, { "name": "temp", @@ -22504,7 +23689,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "temp", @@ -22529,7 +23714,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -22549,7 +23734,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -22638,7 +23823,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "SpanSet *" + "canonical": "struct SpanSet *" }, "params": [ { @@ -22723,6 +23908,26 @@ } ] }, + { + "name": "add_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "add_float_tfloat", "file": "meos.h", @@ -22763,6 +23968,26 @@ } ] }, + { + "name": "add_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "add_tfloat_float", "file": "meos.h", @@ -22823,6 +24048,26 @@ } ] }, + { + "name": "div_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "div_float_tfloat", "file": "meos.h", @@ -22863,6 +24108,26 @@ } ] }, + { + "name": "div_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "div_tfloat_float", "file": "meos.h", @@ -22924,7 +24189,27 @@ ] }, { - "name": "mult_float_tfloat", + "name": "mul_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "mul_float_tfloat", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -22944,7 +24229,7 @@ ] }, { - "name": "mult_int_tint", + "name": "mul_int_tint", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -22964,7 +24249,27 @@ ] }, { - "name": "mult_tfloat_float", + "name": "mul_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "mul_tfloat_float", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -22984,7 +24289,7 @@ ] }, { - "name": "mult_tint_int", + "name": "mul_tint_int", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -23004,7 +24309,7 @@ ] }, { - "name": "mult_tnumber_tnumber", + "name": "mul_tnumber_tnumber", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -23023,6 +24328,26 @@ } ] }, + { + "name": "sub_bigint_tbigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "sub_float_tfloat", "file": "meos.h", @@ -23063,6 +24388,26 @@ } ] }, + { + "name": "sub_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tnumber", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "sub_tfloat_float", "file": "meos.h", @@ -23273,8 +24618,8 @@ "params": [ { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -23298,8 +24643,8 @@ }, { "name": "txt", - "cType": "const text *", - "canonical": "const struct varlena *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23439,12 +24784,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -23459,12 +24804,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -23524,7 +24869,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -23564,7 +24909,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" } ] }, @@ -23633,13 +24978,33 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { "name": "s", "cType": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_merge_transfn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { "name": "temp", @@ -23648,6 +25013,26 @@ } ] }, + { + "name": "temporal_merge_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "temporal_tagg_finalfn", "file": "meos.h", @@ -23763,8 +25148,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23788,8 +25173,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23813,8 +25198,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23918,8 +25303,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23943,8 +25328,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23968,8 +25353,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -23978,13 +25363,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, { "name": "temp", @@ -24048,8 +25433,8 @@ }, { "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -24089,7 +25474,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const Span *" + "canonical": "const struct Span *" } ] }, @@ -24109,7 +25494,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "canonical": "const struct SpanSet *" } ] }, @@ -24238,8 +25623,8 @@ }, { "name": "mint", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" } ] }, @@ -24258,8 +25643,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "origin", @@ -24283,8 +25668,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "origin", @@ -24413,7 +25798,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -24423,8 +25808,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "origin", @@ -24453,8 +25838,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -24478,7 +25863,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24488,8 +25873,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -24508,7 +25893,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -24538,7 +25923,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24603,7 +25988,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24618,8 +26003,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "vorigin", @@ -24658,8 +26043,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "vorigin", @@ -24693,18 +26078,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -24723,13 +26108,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "vsize", @@ -24753,13 +26138,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "vsize", @@ -24768,8 +26153,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "vorigin", @@ -24793,7 +26178,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24803,8 +26188,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -24823,7 +26208,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "Span *" + "canonical": "struct Span *" }, "params": [ { @@ -24853,7 +26238,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24918,7 +26303,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { @@ -24933,8 +26318,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "vorigin", @@ -24973,8 +26358,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "vorigin", @@ -25008,18 +26393,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "torigin", @@ -25038,13 +26423,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "xsize", @@ -25068,13 +26453,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "TBox *" + "canonical": "struct TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const TBox *" + "canonical": "const struct TBox *" }, { "name": "xsize", @@ -25083,8 +26468,8 @@ }, { "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "cType": "const int *", + "canonical": "const int *" }, { "name": "xorigin", @@ -25104,1926 +26489,1655 @@ ] }, { - "name": "geo_as_ewkb", - "file": "meos_geo.h", + "name": "meos_initialize_noexit_error_handler", + "file": "meos.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "void", + "canonical": "void" + }, + "params": [] + }, + { + "name": "h3_are_neighbor_cells_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "endian", - "cType": "const char *", - "canonical": "const char *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "size", - "cType": "int *", - "canonical": "int *" + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_as_ewkt", - "file": "meos_geo.h", + "name": "h3_cells_to_directed_edge_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "precision", - "cType": "int", - "canonical": "int" + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_as_geojson", - "file": "meos_geo.h", + "name": "h3_is_valid_directed_edge_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "option", - "cType": "int", - "canonical": "int" - }, - { - "name": "precision", - "cType": "int", - "canonical": "int" - }, - { - "name": "srs", - "cType": "const char *", - "canonical": "const char *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_as_hexewkb", - "file": "meos_geo.h", + "name": "h3_get_directed_edge_origin_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_directed_edge_destination_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ { - "name": "endian", - "cType": "const char *", - "canonical": "const char *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_as_text", - "file": "meos_geo.h", + "name": "h3_cell_to_parent_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "precision", - "cType": "int", + "name": "resolution", + "cType": "int32", "canonical": "int" } ] }, { - "name": "geo_from_ewkb", - "file": "meos_geo.h", + "name": "h3_cell_to_center_child_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" - }, - { - "name": "wkb_size", - "cType": "int", - "canonical": "int" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "srid", + "name": "resolution", "cType": "int32", "canonical": "int" } ] }, { - "name": "geo_from_geojson", - "file": "meos_geo.h", + "name": "h3_cell_to_child_pos_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "geojson", - "cType": "const char *", - "canonical": "const char *" + "name": "child", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "parentRes", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "geo_from_text", - "file": "meos_geo.h", + "name": "h3_child_pos_to_cell_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "childPos", + "cType": "int64", + "canonical": "long" }, { - "name": "srid", - "cType": "int32_t", + "name": "parent", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "childRes", + "cType": "int32", "canonical": "int" } ] }, { - "name": "geo_out", - "file": "meos_geo.h", + "name": "h3_get_resolution_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int32", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geog_from_binary", - "file": "meos_geo.h", + "name": "h3_get_base_cell_number_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int32", + "canonical": "int" }, "params": [ { - "name": "wkb_bytea", - "cType": "const char *", - "canonical": "const char *" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geog_from_hexewkb", - "file": "meos_geo.h", + "name": "h3_is_valid_cell_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geog_in", - "file": "meos_geo.h", + "name": "h3_is_res_class_iii_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_from_hexewkb", - "file": "meos_geo.h", + "name": "h3_is_pentagon_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_in", - "file": "meos_geo.h", + "name": "h3_get_num_cells_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "typmod", + "name": "resolution", "cType": "int32", "canonical": "int" } ] }, { - "name": "box3d_make", - "file": "meos_geo.h", + "name": "h3_grid_distance_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "xmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymax", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmax", - "cType": "double", - "canonical": "double" + "name": "originIndex", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "h3Index", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "box3d_out", - "file": "meos_geo.h", + "name": "h3_cell_to_vertex_meos", + "file": "h3_generated.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", + "name": "vertexNum", + "cType": "int32", "canonical": "int" } ] }, { - "name": "gbox_make", - "file": "meos_geo.h", + "name": "h3_is_valid_vertex_meos", + "file": "h3_generated.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "hasz", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "xmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymax", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmax", - "cType": "double", - "canonical": "double" + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "gbox_out", - "file": "meos_geo.h", + "name": "h3index_parse", + "file": "h3index.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "geo_copy", - "file": "meos_geo.h", + "name": "h3index_to_string", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geogpoint_make2d", - "file": "meos_geo.h", + "name": "h3index_eq", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "x", - "cType": "double", - "canonical": "double" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "y", - "cType": "double", - "canonical": "double" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geogpoint_make3dz", - "file": "meos_geo.h", + "name": "h3index_ne", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "z", - "cType": "double", - "canonical": "double" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geompoint_make2d", - "file": "meos_geo.h", + "name": "h3index_lt", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "x", - "cType": "double", - "canonical": "double" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "y", - "cType": "double", - "canonical": "double" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geompoint_make3dz", - "file": "meos_geo.h", + "name": "h3index_le", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "z", - "cType": "double", - "canonical": "double" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_to_geog", - "file": "meos_geo.h", + "name": "h3index_gt", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geog_to_geom", - "file": "meos_geo.h", + "name": "h3index_ge", + "file": "h3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geog", - "cType": "const int *", - "canonical": "const int *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_is_empty", - "file": "meos_geo.h", + "name": "h3index_cmp", + "file": "h3index.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_is_unitary", - "file": "meos_geo.h", + "name": "h3index_hash", + "file": "h3index.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_typename", - "file": "meos_geo.h", + "name": "h3_grid_disk", + "file": "h3index_sets.h", "returnType": { - "c": "const char *", - "canonical": "const char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "type", + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "k", "cType": "int", "canonical": "int" } ] }, { - "name": "geog_area", - "file": "meos_geo.h", + "name": "h3_grid_ring", + "file": "h3index_sets.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "k", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geog_centroid", - "file": "meos_geo.h", + "name": "h3_grid_path_cells", + "file": "h3index_sets.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "start", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "end", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geog_length", - "file": "meos_geo.h", + "name": "h3_cell_to_children", + "file": "h3index_sets.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "childRes", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geog_perimeter", - "file": "meos_geo.h", + "name": "h3_compact_cells", + "file": "h3index_sets.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geom_azimuth", - "file": "meos_geo.h", + "name": "h3_uncompact_cells", + "file": "h3index_sets.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "res", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_length", - "file": "meos_geo.h", + "name": "h3_origin_to_directed_edges", + "file": "h3index_sets.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_perimeter", - "file": "meos_geo.h", + "name": "h3_cell_to_vertexes", + "file": "h3index_sets.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "line_numpoints", - "file": "meos_geo.h", + "name": "h3_get_icosahedron_faces", + "file": "h3index_sets.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "line_point_n", - "file": "meos_geo.h", + "name": "ensure_valid_th3index_th3index", + "file": "th3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_reverse", - "file": "meos_geo.h", + "name": "ensure_valid_th3index_h3index", + "file": "th3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_round", - "file": "meos_geo.h", + "name": "ensure_valid_th3index_tgeogpoint", + "file": "th3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_set_srid", - "file": "meos_geo.h", + "name": "datum2_h3index_eq", + "file": "th3index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "d1", + "cType": "int", + "canonical": "int" }, { - "name": "srid", - "cType": "int32_t", + "name": "d2", + "cType": "int", + "canonical": "int" + }, + { + "name": "type", + "cType": "int", "canonical": "int" } ] }, { - "name": "geo_srid", - "file": "meos_geo.h", + "name": "datum2_h3index_ne", + "file": "th3index.h", "returnType": { - "c": "int32_t", + "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - } - ] - }, - { - "name": "geo_transform", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + "name": "d1", + "cType": "int", + "canonical": "int" + }, { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "d2", + "cType": "int", + "canonical": "int" }, { - "name": "srid_to", - "cType": "int32_t", + "name": "type", + "cType": "int", "canonical": "int" } ] }, { - "name": "geo_transform_pipeline", - "file": "meos_geo.h", + "name": "th3indexinst_set_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "pipeline", - "cType": "char *", - "canonical": "char *" - }, - { - "name": "srid_to", - "cType": "int32_t", - "canonical": "int" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "geo_collect_garray", - "file": "meos_geo.h", + "name": "th3indexinstarr_set_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" }, { "name": "count", "cType": "int", "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "geo_makeline_garray", - "file": "meos_geo.h", + "name": "th3indexseq_expand_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "geo_num_points", - "file": "meos_geo.h", + "name": "h3_gs_point_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", + "name": "point", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "geo_num_geos", - "file": "meos_geo.h", + "name": "h3_cell_to_gs_point", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_geo_n", - "file": "meos_geo.h", + "name": "h3_cell_to_gs_boundary", + "file": "th3index_internal.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_pointarr", - "file": "meos_geo.h", + "name": "cell_boundary_to_gs", + "file": "th3index_internal.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "bnd", + "cType": "const CellBoundary *", + "canonical": "const CellBoundary *" } ] }, { - "name": "geo_points", - "file": "meos_geo.h", + "name": "h3_sample_step_deg", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "geom_array_union", - "file": "meos_geo.h", + "name": "h3_latlng_deg_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "lat_deg", + "cType": "double", + "canonical": "double" }, { - "name": "count", - "cType": "int", + "name": "lng_deg", + "cType": "double", + "canonical": "double" + }, + { + "name": "resolution", + "cType": "int32", "canonical": "int" } ] }, { - "name": "geom_boundary", - "file": "meos_geo.h", + "name": "h3_cell_to_parent_next_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_buffer", - "file": "meos_geo.h", + "name": "h3_cell_to_center_child_next_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "size", - "cType": "double", - "canonical": "double" - }, - { - "name": "params", - "cType": "const char *", - "canonical": "const char *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_centroid", - "file": "meos_geo.h", + "name": "h3_directed_edge_to_gs_boundary", + "file": "th3index_internal.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_convex_hull", - "file": "meos_geo.h", + "name": "h3_vertex_to_gs_point", + "file": "th3index_internal.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_difference2d", - "file": "meos_geo.h", + "name": "h3_cell_to_local_ij_meos", + "file": "th3index_internal.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geom_intersection2d", - "file": "meos_geo.h", + "name": "h3_local_ij_to_cell_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "gs2", + "name": "coord", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "geom_intersection2d_coll", - "file": "meos_geo.h", + "name": "h3_unit_from_cstring", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "H3Unit", + "canonical": "H3Unit" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "unit", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "geom_min_bounding_radius", - "file": "meos_geo.h", + "name": "h3_cell_area_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "radius", - "cType": "double *", - "canonical": "double *" + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "geom_shortestline2d", - "file": "meos_geo.h", + "name": "h3_edge_length_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "s2", - "cType": "const int *", - "canonical": "const int *" + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "geom_shortestline3d", - "file": "meos_geo.h", + "name": "h3_gs_great_circle_distance_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "gs1", + "name": "a", "cType": "const int *", "canonical": "const int *" }, { - "name": "s2", + "name": "b", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "geom_unary_union", - "file": "meos_geo.h", + "name": "datum_h3_get_resolution", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "prec", - "cType": "double", - "canonical": "double" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "line_interpolate_point", - "file": "meos_geo.h", + "name": "datum_h3_get_base_cell_number", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "distance_fraction", - "cType": "double", - "canonical": "double" - }, - { - "name": "repeat", - "cType": "bool", - "canonical": "bool" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "line_locate_point", - "file": "meos_geo.h", + "name": "datum_h3_is_valid_cell", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "line_substring", - "file": "meos_geo.h", + "name": "datum_h3_is_res_class_iii", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "from", - "cType": "double", - "canonical": "double" - }, - { - "name": "to", - "cType": "double", - "canonical": "double" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geog_dwithin", - "file": "meos_geo.h", + "name": "datum_h3_is_pentagon", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "g1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "g2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "tolerance", - "cType": "double", - "canonical": "double" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geog_intersects", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_parent", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "res_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_contains", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_parent_next", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_covers", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_center_child", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "res_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_disjoint2d", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_center_child_next", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_dwithin2d", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_child_pos", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "parent_res_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_dwithin3d", - "file": "meos_geo.h", + "name": "datum_h3_child_pos_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "pos_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "parent_d", + "cType": "int", + "canonical": "int" }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "child_res_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_intersects2d", - "file": "meos_geo.h", + "name": "datum_h3_are_neighbor_cells", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "dest_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_intersects3d", - "file": "meos_geo.h", + "name": "datum_h3_cells_to_directed_edge", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "dest_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_relate_pattern", - "file": "meos_geo.h", + "name": "datum_h3_is_valid_directed_edge", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "patt", - "cType": "char *", - "canonical": "char *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_touches", - "file": "meos_geo.h", + "name": "datum_h3_get_directed_edge_origin", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geo_stboxes", - "file": "meos_geo.h", + "name": "datum_h3_get_directed_edge_destination", + "file": "th3index_internal.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geo_split_each_n_stboxes", - "file": "meos_geo.h", + "name": "datum_h3_directed_edge_to_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "elem_count", + "name": "d", "cType": "int", "canonical": "int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "geo_split_n_stboxes", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_vertex", + "file": "th3index_internal.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "box_count", + "name": "cell_d", "cType": "int", "canonical": "int" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "vnum_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geog_distance", - "file": "meos_geo.h", + "name": "datum_h3_vertex_to_latlng", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "g1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "g2", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_distance2d", - "file": "meos_geo.h", + "name": "datum_h3_is_valid_vertex", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_distance3d", - "file": "meos_geo.h", + "name": "datum_h3_grid_distance", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "dest_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geo_equals", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_local_ij", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "cell_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geo_same", - "file": "meos_geo.h", + "name": "datum_h3_local_ij_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "origin_d", + "cType": "int", + "canonical": "int" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "coord_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geogset_in", - "file": "meos_geo.h", + "name": "datum_h3_latlng_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "point_d", + "cType": "int", + "canonical": "int" + }, + { + "name": "res_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geomset_in", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_latlng", + "file": "th3index_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "spatialset_as_text", - "file": "meos_geo.h", - "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "maxdd", + "name": "d", "cType": "int", "canonical": "int" } ] }, { - "name": "spatialset_as_ewkt", - "file": "meos_geo.h", + "name": "datum_h3_cell_to_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "maxdd", + "name": "d", "cType": "int", "canonical": "int" } ] }, { - "name": "geoset_make", - "file": "meos_geo.h", + "name": "datum_h3_cell_area", + "file": "th3index_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "int **", - "canonical": "int **" + "name": "cell_d", + "cType": "int", + "canonical": "int" }, { - "name": "count", + "name": "unit_d", "cType": "int", "canonical": "int" } ] }, { - "name": "geo_to_set", - "file": "meos_geo.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - } - ] - }, - { - "name": "geoset_end_value", - "file": "meos_geo.h", + "name": "datum_h3_edge_length", + "file": "th3index_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "geoset_start_value", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + "name": "edge_d", + "cType": "int", + "canonical": "int" + }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "unit_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geoset_value_n", - "file": "meos_geo.h", + "name": "datum_h3_great_circle_distance", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "a_d", + "cType": "int", + "canonical": "int" }, { - "name": "n", + "name": "b_d", "cType": "int", "canonical": "int" }, { - "name": "result", - "cType": "int **", - "canonical": "int **" - } - ] - }, - { - "name": "geoset_values", - "file": "meos_geo.h", - "returnType": { - "c": "int **", - "canonical": "int **" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "unit_d", + "cType": "int", + "canonical": "int" } ] }, { - "name": "contained_geo_set", + "name": "geo_as_ewkb", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { @@ -27032,58 +28146,43 @@ "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "contains_set_geo", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "endian", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "geo_union_transfn", + "name": "geo_as_ewkt", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ - { - "name": "state", - "cType": "Set *", - "canonical": "Set *" - }, { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" } ] }, { - "name": "intersection_geo_set", + "name": "geo_as_geojson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -27092,38 +28191,28 @@ "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "intersection_set_geo", - "file": "meos_geo.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + "name": "option", + "cType": "int", + "canonical": "int" + }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "precision", + "cType": "int", + "canonical": "int" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "srs", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "minus_geo_set", + "name": "geo_as_hexewkb", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -27132,38 +28221,18 @@ "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "minus_set_geo", - "file": "meos_geo.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "endian", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "union_geo_set", + "name": "geo_as_text", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -27172,102 +28241,62 @@ "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "precision", + "cType": "int", + "canonical": "int" } ] }, { - "name": "union_set_geo", + "name": "geo_from_ewkb", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - } - ] - }, - { - "name": "spatialset_set_srid", - "file": "meos_geo.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "wkb_size", + "cType": "size_t", + "canonical": "unsigned long" }, { "name": "srid", - "cType": "int32_t", + "cType": "int32", "canonical": "int" } ] }, { - "name": "spatialset_srid", - "file": "meos_geo.h", - "returnType": { - "c": "int32_t", - "canonical": "int" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "spatialset_transform", + "name": "geo_from_geojson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "geojson", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spatialset_transform_pipeline", + "name": "geo_from_text", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "pipelinestr", + "name": "wkt", "cType": "const char *", "canonical": "const char *" }, @@ -27275,16 +28304,11 @@ "name": "srid", "cType": "int32_t", "canonical": "int" - }, - { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "stbox_as_hexwkb", + "name": "geo_out", "file": "meos_geo.h", "returnType": { "c": "char *", @@ -27292,200 +28316,175 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size", - "cType": "int *", - "canonical": "int *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_as_wkb", + "name": "geog_from_binary", "file": "meos_geo.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size_out", - "cType": "int *", - "canonical": "int *" + "name": "wkb_bytea", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "stbox_from_hexwkb", + "name": "geog_from_hexewkb", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "hexwkb", + "name": "wkt", "cType": "const char *", "canonical": "const char *" } ] }, { - "name": "stbox_from_wkb", + "name": "geog_in", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "size", - "cType": "int", + "name": "typmod", + "cType": "int32", "canonical": "int" } ] }, { - "name": "stbox_in", + "name": "geom_from_hexewkb", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "str", + "name": "wkt", "cType": "const char *", "canonical": "const char *" } ] }, { - "name": "stbox_out", + "name": "geom_in", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "maxdd", - "cType": "int", + "name": "typmod", + "cType": "int32", "canonical": "int" } ] }, { - "name": "geo_timestamptz_to_stbox", + "name": "box3d_make", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "xmin", + "cType": "double", + "canonical": "double" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - } - ] - }, - { - "name": "geo_tstzspan_to_stbox", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "xmax", + "cType": "double", + "canonical": "double" + }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ymin", + "cType": "double", + "canonical": "double" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const Span *" + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "stbox_copy", + "name": "box3d_out", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "char *", + "canonical": "char *" }, "params": [ { "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_make", + "name": "gbox_make", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ - { - "name": "hasx", - "cType": "bool", - "canonical": "bool" - }, { "name": "hasz", "cType": "bool", "canonical": "bool" }, - { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "srid", - "cType": "int32", - "canonical": "int" - }, { "name": "xmin", "cType": "double", @@ -27515,46 +28514,46 @@ "name": "zmax", "cType": "double", "canonical": "double" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const Span *" } ] }, { - "name": "geo_to_stbox", + "name": "gbox_out", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "gs", + "name": "box", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "spatialset_to_stbox", + "name": "geo_copy", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_to_box3d", + "name": "geogpoint_make2d", "file": "meos_geo.h", "returnType": { "c": "int *", @@ -27562,14 +28561,24 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" } ] }, { - "name": "stbox_to_gbox", + "name": "geogpoint_make3dz", "file": "meos_geo.h", "returnType": { "c": "int *", @@ -27577,14 +28586,29 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" } ] }, { - "name": "stbox_to_geo", + "name": "geompoint_make2d", "file": "meos_geo.h", "returnType": { "c": "int *", @@ -27592,89 +28616,129 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" } ] }, { - "name": "stbox_to_tstzspan", + "name": "geompoint_make3dz", "file": "meos_geo.h", "returnType": { - "c": "Span *", - "canonical": "Span *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" } ] }, { - "name": "timestamptz_to_stbox", + "name": "geom_to_geog", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tstzset_to_stbox", + "name": "geog_to_geom", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "geog", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tstzspan_to_stbox", + "name": "geo_is_empty", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const Span *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tstzspanset_to_stbox", + "name": "geo_is_unitary", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_area", + "name": "geo_typename", + "file": "meos_geo.h", + "returnType": { + "c": "const char *", + "canonical": "const char *" + }, + "params": [ + { + "name": "type", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "geog_area", "file": "meos_geo.h", "returnType": { "c": "double", @@ -27682,69 +28746,79 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "spheroid", + "name": "use_spheroid", "cType": "bool", "canonical": "bool" } ] }, { - "name": "stbox_hash", + "name": "geog_centroid", "file": "meos_geo.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_hash_extended", + "name": "geog_length", "file": "meos_geo.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_hast", + "name": "geog_perimeter", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_hasx", + "name": "geom_azimuth", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -27752,649 +28826,634 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "stbox_hasz", + "name": "geom_length", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_isgeodetic", + "name": "geom_perimeter", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_perimeter", + "name": "line_numpoints", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "spheroid", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_tmax", + "name": "line_point_n", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_tmax_inc", + "name": "geo_reverse", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "result", - "cType": "bool *", - "canonical": "unsigned char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_tmin", + "name": "geo_round", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_tmin_inc", + "name": "geo_set_srid", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "result", - "cType": "bool *", - "canonical": "unsigned char *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "stbox_volume", + "name": "geo_srid", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_xmax", + "name": "geo_transform", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "srid_to", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "stbox_xmin", + "name": "geo_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "pipeline", + "cType": "char *", + "canonical": "char *" + }, + { + "name": "srid_to", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_ymax", + "name": "geo_collect_garray", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_ymin", + "name": "geo_makeline_garray", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_zmax", + "name": "geo_num_points", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_zmin", + "name": "geo_num_geos", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_expand_space", + "name": "geo_geo_n", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "d", - "cType": "double", - "canonical": "double" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_expand_time", + "name": "geo_pointarr", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "stbox_get_space", + "name": "geo_points", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_quad_split", + "name": "geom_array_union", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" }, { "name": "count", - "cType": "int *", - "canonical": "int *" + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_round", + "name": "geom_boundary", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_shift_scale_time", + "name": "geom_buffer", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "shift", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "size", + "cType": "double", + "canonical": "double" }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "params", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "stboxarr_round", + "name": "geom_centroid", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "boxarr", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_set_srid", + "name": "geom_convex_hull", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_srid", + "name": "geom_difference2d", "file": "meos_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_transform", + "name": "geom_intersection2d", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_transform_pipeline", + "name": "geom_intersection2d_coll", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "adjacent_stbox_stbox", + "name": "geom_min_bounding_radius", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "radius", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "contained_stbox_stbox", + "name": "geom_shortestline2d", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "s2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contains_stbox_stbox", + "name": "geom_shortestline3d", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "s2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overlaps_stbox_stbox", + "name": "geom_unary_union", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "prec", + "cType": "double", + "canonical": "double" } ] }, { - "name": "same_stbox_stbox", + "name": "line_interpolate_point", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "distance_fraction", + "cType": "double", + "canonical": "double" + }, + { + "name": "repeat", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "above_stbox_stbox", + "name": "line_locate_point", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "after_stbox_stbox", + "name": "line_substring", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "from", + "cType": "double", + "canonical": "double" + }, + { + "name": "to", + "cType": "double", + "canonical": "double" } ] }, { - "name": "back_stbox_stbox", + "name": "geog_dwithin", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28402,39 +29461,29 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" - } - ] - }, - { - "name": "before_stbox_stbox", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "g2", + "cType": "const int *", + "canonical": "const int *" + }, { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "tolerance", + "cType": "double", + "canonical": "double" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "below_stbox_stbox", + "name": "geog_intersects", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28442,19 +29491,24 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "front_stbox_stbox", + "name": "geom_contains", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28462,19 +29516,19 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "left_stbox_stbox", + "name": "geom_covers", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28482,19 +29536,19 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overabove_stbox_stbox", + "name": "geom_disjoint2d", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28502,19 +29556,19 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overafter_stbox_stbox", + "name": "geom_dwithin2d", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28522,19 +29576,24 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" } ] }, { - "name": "overback_stbox_stbox", + "name": "geom_dwithin3d", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28542,19 +29601,24 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" } ] }, { - "name": "overbefore_stbox_stbox", + "name": "geom_intersects2d", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28562,19 +29626,19 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overbelow_stbox_stbox", + "name": "geom_intersects3d", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28582,19 +29646,19 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overfront_stbox_stbox", + "name": "geom_relate_pattern", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28602,19 +29666,24 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "patt", + "cType": "char *", + "canonical": "char *" } ] }, { - "name": "overleft_stbox_stbox", + "name": "geom_touches", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28622,164 +29691,169 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overright_stbox_stbox", + "name": "geo_stboxes", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "right_stbox_stbox", + "name": "geo_split_each_n_stboxes", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "elem_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "union_stbox_stbox", + "name": "geo_split_n_stboxes", "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "STBox *" + "canonical": "struct STBox *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "box_count", + "cType": "int", + "canonical": "int" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "intersection_stbox_stbox", + "name": "geog_distance", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "g2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_cmp", + "name": "geom_distance2d", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_eq", + "name": "geom_distance3d", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_ge", + "name": "geo_equals", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_gt", + "name": "geo_same", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -28787,263 +29861,258 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_le", + "name": "geogset_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "stbox_lt", + "name": "geomset_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "stbox_ne", + "name": "spatialset_as_text", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeogpoint_from_mfjson", + "name": "spatialset_as_ewkt", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "tgeogpoint_in", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeography_from_mfjson", + "name": "geoset_make", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "values", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeography_in", + "name": "geo_to_set", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeometry_from_mfjson", + "name": "geoset_end_value", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tgeometry_in", + "name": "geoset_start_value", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tgeompoint_from_mfjson", + "name": "geoset_value_n", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "tgeompoint_in", + "name": "geoset_values", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tspatial_as_ewkt", + "name": "contained_geo_set", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tspatial_as_text", + "name": "contains_set_geo", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tspatial_out", + "name": "geo_union_transfn", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "Set *", + "canonical": "Set *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeo_from_base_temp", + "name": "intersection_geo_set", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -29052,38 +30121,38 @@ "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tgeoinst_make", + "name": "intersection_set_geo", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" } ] }, { - "name": "tgeoseq_from_base_tstzset", + "name": "minus_geo_set", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -29099,36 +30168,31 @@ ] }, { - "name": "tgeoseq_from_base_tstzspan", + "name": "minus_set_geo", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "s", - "cType": "const Span *", - "canonical": "const Span *" + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeoseqset_from_base_tstzspanset", + "name": "union_geo_set", "file": "meos_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -29137,70 +30201,60 @@ "canonical": "const int *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const SpanSet *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tpoint_from_base_temp", + "name": "union_set_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "tpointinst_make", + "name": "spatialset_set_srid", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpointseq_from_base_tstzset", + "name": "spatialset_srid", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "TSequence *" + "c": "int32_t", + "canonical": "int" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "s", "cType": "const Set *", @@ -29209,622 +30263,547 @@ ] }, { - "name": "tpointseq_from_base_tstzspan", + "name": "spatialset_transform", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "s", - "cType": "const Span *", - "canonical": "const Span *" + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpointseq_make_coords", + "name": "spatialset_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "xcoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "ycoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "zcoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "times", - "cType": "const TimestampTz *", - "canonical": "const long *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" }, { "name": "srid", - "cType": "int32", + "cType": "int32_t", "canonical": "int" }, { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "lower_inc", + "name": "is_forward", "cType": "bool", "canonical": "bool" - }, + } + ] + }, + { + "name": "stbox_as_hexwkb", + "file": "meos_geo.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "tpointseqset_from_base_tstzspanset", + "name": "stbox_as_wkb", "file": "meos_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "TSequenceSet *" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const SpanSet *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "box3d_to_stbox", + "name": "stbox_from_hexwkb", "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "STBox *" + "canonical": "struct STBox *" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "gbox_to_stbox", + "name": "stbox_from_wkb", "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "STBox *" + "canonical": "struct STBox *" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" } ] }, { - "name": "geomeas_to_tpoint", + "name": "stbox_in", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tgeogpoint_to_tgeography", + "name": "stbox_out", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "tgeography_to_tgeogpoint", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeography_to_tgeometry", + "name": "geo_timestamptz_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "tgeometry_to_tgeography", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tgeometry_to_tgeompoint", + "name": "geo_tstzspan_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tgeompoint_to_tgeometry", + "name": "stbox_copy", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_as_mvtgeom", + "name": "stbox_make", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "hasx", + "cType": "bool", + "canonical": "bool" }, { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "hasz", + "cType": "bool", + "canonical": "bool" }, { - "name": "extent", - "cType": "int32_t", - "canonical": "int" + "name": "geodetic", + "cType": "bool", + "canonical": "bool" }, { - "name": "buffer", - "cType": "int32_t", + "name": "srid", + "cType": "int32", "canonical": "int" }, { - "name": "clip_geom", - "cType": "bool", - "canonical": "bool" + "name": "xmin", + "cType": "double", + "canonical": "double" }, { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "xmax", + "cType": "double", + "canonical": "double" }, { - "name": "timesarr", - "cType": "int64 **", - "canonical": "long **" + "name": "ymin", + "cType": "double", + "canonical": "double" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tpoint_tfloat_to_geomeas", + "name": "geo_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "tpoint", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "measure", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "segmentize", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "result", - "cType": "int **", - "canonical": "int **" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tspatial_to_stbox", + "name": "spatialset_to_stbox", "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "STBox *" + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "bearing_point_point", + "name": "stbox_to_box3d", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "bearing_tpoint_point", + "name": "stbox_to_gbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "invert", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "bearing_tpoint_tpoint", + "name": "stbox_to_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_centroid", + "name": "stbox_to_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_convex_hull", + "name": "timestamptz_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tgeo_end_value", + "name": "tstzset_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tgeo_start_value", + "name": "tstzspan_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tgeo_traversed_area", + "name": "tstzspanset_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "tgeo_value_at_timestamptz", + "name": "stbox_area", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "strict", + "name": "spheroid", "cType": "bool", "canonical": "bool" - }, - { - "name": "value", - "cType": "int **", - "canonical": "int **" } ] }, { - "name": "tgeo_value_n", + "name": "stbox_hash", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "int **", - "canonical": "int **" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_values", + "name": "stbox_hash_extended", "file": "meos_geo.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "tpoint_angular_difference", + "name": "stbox_hast", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_azimuth", + "name": "stbox_hasx", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_cumulative_length", + "name": "stbox_hasz", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_direction", + "name": "stbox_isgeodetic", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29832,64 +30811,74 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_get_x", + "name": "stbox_perimeter", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpoint_get_y", + "name": "stbox_tmax", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tpoint_get_z", + "name": "stbox_tmax_inc", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "bool *", + "canonical": "_Bool *" } ] }, { - "name": "tpoint_is_simple", + "name": "stbox_tmin", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29897,998 +30886,889 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tpoint_length", + "name": "stbox_tmin_inc", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "bool *", + "canonical": "_Bool *" } ] }, { - "name": "tpoint_speed", + "name": "stbox_volume", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } - ], - "ownership": "caller", - "nullable": true, - "doc": "Calcule la vitesse instantan\u00e9e d'un point temporel.", - "meos": { - "temporalDim": "sequence", - "spatialDim": null, - "interpolation": true, - "subtype": "TPoint" - } + ] }, { - "name": "tpoint_trajectory", + "name": "stbox_xmax", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tpoint_twcentroid", + "name": "stbox_xmin", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "tgeo_affine", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "a", - "cType": "const int *", - "canonical": "const int *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tgeo_scale", + "name": "stbox_ymax", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "scale", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tpoint_make_simple", + "name": "stbox_ymin", "file": "meos_geo.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tspatial_srid", + "name": "stbox_zmax", "file": "meos_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tspatial_set_srid", + "name": "stbox_zmin", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "tspatial_transform", + "name": "stbox_expand_space", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "d", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tspatial_transform_pipeline", + "name": "stbox_expand_time", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "interv", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeo_at_geom", + "name": "stbox_get_space", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_at_stbox", + "name": "stbox_quad_split", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "box", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tgeo_at_value", + "name": "stbox_round", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeo_minus_geom", + "name": "stbox_shift_scale_time", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", + "name": "shift", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "duration", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "tgeo_minus_stbox", + "name": "stboxarr_round", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "boxarr", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeo_minus_value", + "name": "stbox_set_srid", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpoint_at_geom", + "name": "stbox_srid", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "zspan", - "cType": "const Span *", - "canonical": "const Span *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_at_value", + "name": "stbox_transform", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpoint_minus_geom", + "name": "stbox_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "zspan", - "cType": "const Span *", - "canonical": "const Span *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpoint_minus_value", + "name": "adjacent_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_eq_geo_tgeo", + "name": "contained_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_eq_tgeo_geo", + "name": "contains_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_eq_tgeo_tgeo", + "name": "overlaps_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_ne_geo_tgeo", + "name": "same_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_ne_tgeo_geo", + "name": "above_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "always_ne_tgeo_tgeo", + "name": "after_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_eq_geo_tgeo", + "name": "back_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_eq_tgeo_geo", + "name": "before_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_eq_tgeo_tgeo", + "name": "below_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_ne_geo_tgeo", + "name": "front_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_ne_tgeo_geo", + "name": "left_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_ne_tgeo_tgeo", + "name": "overabove_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "teq_geo_tgeo", + "name": "overafter_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "teq_tgeo_geo", + "name": "overback_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tne_geo_tgeo", + "name": "overbefore_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tne_tgeo_geo", + "name": "overbelow_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_stboxes", + "name": "overfront_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_space_boxes", + "name": "overleft_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_space_time_boxes", + "name": "overright_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_split_each_n_stboxes", + "name": "right_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "elem_count", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_split_n_stboxes", + "name": "union_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "STBox *" + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box_count", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "adjacent_stbox_tspatial", + "name": "intersection_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box", + "name": "box1", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "adjacent_tspatial_stbox", + "name": "stbox_cmp", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box", + "name": "box2", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" } ] }, { - "name": "adjacent_tspatial_tspatial", + "name": "stbox_eq", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30896,19 +31776,19 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contained_stbox_tspatial", + "name": "stbox_ge", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30916,19 +31796,19 @@ }, "params": [ { - "name": "box", + "name": "box1", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contained_tspatial_stbox", + "name": "stbox_gt", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30936,19 +31816,19 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box", + "name": "box2", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" } ] }, { - "name": "contained_tspatial_tspatial", + "name": "stbox_le", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30956,19 +31836,19 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contains_stbox_tspatial", + "name": "stbox_lt", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30976,19 +31856,19 @@ }, "params": [ { - "name": "box", + "name": "box1", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contains_tspatial_stbox", + "name": "stbox_ne", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30996,183 +31876,143 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box", + "name": "box2", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" } ] }, { - "name": "contains_tspatial_tspatial", + "name": "tgeogpoint_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "overlaps_stbox_tspatial", + "name": "tgeogpoint_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "overlaps_tspatial_stbox", + "name": "tgeography_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "overlaps_tspatial_tspatial", + "name": "tgeography_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "same_stbox_tspatial", + "name": "tgeometry_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "same_tspatial_stbox", + "name": "tgeometry_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "same_tspatial_tspatial", + "name": "tgeompoint_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "above_stbox_tspatial", + "name": "tgeompoint_in", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "above_tspatial_stbox", + "name": "tspatial_as_ewkt", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -31181,164 +32021,174 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "above_tspatial_tspatial", + "name": "tspatial_as_text", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "after_stbox_tspatial", + "name": "tspatial_out", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "after_tspatial_stbox", + "name": "tgeo_from_base_temp", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "after_tspatial_tspatial", + "name": "tgeoinst_make", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "back_stbox_tspatial", + "name": "tgeoseq_from_base_tstzset", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "back_tspatial_stbox", + "name": "tgeoseq_from_base_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "back_tspatial_tspatial", + "name": "tgeoseqset_from_base_tstzspanset", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "before_stbox_tspatial", + "name": "tpoint_from_base_temp", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -31348,178 +32198,213 @@ ] }, { - "name": "before_tspatial_stbox", + "name": "tpointinst_make", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "before_tspatial_tspatial", + "name": "tpointseq_from_base_tstzset", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "below_stbox_tspatial", + "name": "tpointseq_from_base_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "below_tspatial_stbox", + "name": "tpointseq_make_coords", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "xcoords", + "cType": "const double *", + "canonical": "const double *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "ycoords", + "cType": "const double *", + "canonical": "const double *" + }, + { + "name": "zcoords", + "cType": "const double *", + "canonical": "const double *" + }, + { + "name": "times", + "cType": "const TimestampTz *", + "canonical": "const long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "srid", + "cType": "int32", + "canonical": "int" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "below_tspatial_tspatial", + "name": "tpointseqset_from_base_tstzspanset", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "front_stbox_tspatial", + "name": "box3d_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "front_tspatial_stbox", + "name": "gbox_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "front_tspatial_tspatial", + "name": "geomeas_to_tpoint", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "left_stbox_tspatial", + "name": "tgeogpoint_to_tgeography", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -31528,58 +32413,43 @@ ] }, { - "name": "left_tspatial_stbox", + "name": "tgeography_to_tgeogpoint", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "left_tspatial_tspatial", + "name": "tgeography_to_tgeometry", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overabove_stbox_tspatial", + "name": "tgeometry_to_tgeography", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -31588,67 +32458,87 @@ ] }, { - "name": "overabove_tspatial_stbox", + "name": "tgeometry_to_tgeompoint", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "overabove_tspatial_tspatial", + "name": "tgeompoint_to_tgeometry", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overafter_stbox_tspatial", + "name": "tpoint_as_mvtgeom", "file": "meos_geo.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "extent", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "buffer", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "clip_geom", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "gsarr", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "timesarr", + "cType": "int64 **", + "canonical": "long **" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overafter_tspatial_stbox", + "name": "tpoint_tfloat_to_geomeas", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -31656,39 +32546,44 @@ }, "params": [ { - "name": "temp", + "name": "tpoint", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "measure", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "segmentize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "overafter_tspatial_tspatial", + "name": "tspatial_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overback_stbox_tspatial", + "name": "bearing_point_point", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -31696,23 +32591,28 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "overback_tspatial_stbox", + "name": "bearing_tpoint_point", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -31721,18 +32621,23 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overback_tspatial_tspatial", + "name": "bearing_tpoint_tpoint", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -31748,18 +32653,13 @@ ] }, { - "name": "overbefore_stbox_tspatial", + "name": "tgeo_centroid", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -31768,58 +32668,43 @@ ] }, { - "name": "overbefore_tspatial_stbox", + "name": "tgeo_convex_hull", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "overbefore_tspatial_tspatial", + "name": "tgeo_end_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overbelow_stbox_tspatial", + "name": "tgeo_start_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -31828,11 +32713,11 @@ ] }, { - "name": "overbelow_tspatial_stbox", + "name": "tgeo_traversed_area", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -31841,14 +32726,14 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "unary_union", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overbelow_tspatial_tspatial", + "name": "tgeo_value_at_timestamptz", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -31856,43 +32741,58 @@ }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "value", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "overfront_stbox_tspatial", + "name": "tgeo_value_n", "file": "meos_geo.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "overfront_tspatial_stbox", + "name": "tgeo_values", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int **", + "canonical": "int **" }, "params": [ { @@ -31901,45 +32801,50 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - } + "name": "count", + "cType": "int *", + "canonical": "int *" + } ] }, { - "name": "overfront_tspatial_tspatial", + "name": "tpoint_angular_difference", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, + } + ] + }, + { + "name": "tpoint_azimuth", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overleft_stbox_tspatial", + "name": "tpoint_cumulative_length", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -31948,7 +32853,7 @@ ] }, { - "name": "overleft_tspatial_stbox", + "name": "tpoint_direction", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -31961,45 +32866,35 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "overleft_tspatial_tspatial", + "name": "tpoint_get_x", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overright_stbox_tspatial", + "name": "tpoint_get_y", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", @@ -32008,27 +32903,22 @@ ] }, { - "name": "overright_tspatial_stbox", + "name": "tpoint_get_z", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "overright_tspatial_tspatial", + "name": "tpoint_is_simple", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32036,43 +32926,57 @@ }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, + } + ] + }, + { + "name": "tpoint_length", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "right_stbox_tspatial", + "name": "tpoint_speed", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } - ] + ], + "ownership": "caller", + "nullable": true, + "doc": "Computes the instantaneous speed of a temporal point.", + "meos": { + "temporalDim": "sequence", + "spatialDim": null, + "interpolation": true, + "subtype": "TPoint" + } }, { - "name": "right_tspatial_stbox", + "name": "tpoint_trajectory", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -32081,58 +32985,53 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "unary_union", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "right_tspatial_tspatial", + "name": "tpoint_twcentroid", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "acontains_geo_tgeo", + "name": "tgeo_affine", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "a", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "acontains_tgeo_geo", + "name": "tgeo_scale", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32141,38 +33040,58 @@ "canonical": "const Temporal *" }, { - "name": "gs", + "name": "scale", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "acontains_tgeo_tgeo", + "name": "tpoint_make_simple", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal **", + "canonical": "Temporal **" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatial_srid", + "file": "meos_geo.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "adisjoint_tgeo_geo", + "name": "tspatial_set_srid", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32181,38 +33100,68 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "adisjoint_tgeo_tgeo", + "name": "tspatial_transform", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tspatial_transform_pipeline", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "adwithin_tgeo_geo", + "name": "tgeo_at_geom", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32224,45 +33173,60 @@ "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" } ] }, { - "name": "adwithin_tgeo_tgeo", + "name": "tgeo_at_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_at_value", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "aintersects_tgeo_geo", + "name": "tgeo_minus_geom", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32278,31 +33242,36 @@ ] }, { - "name": "aintersects_tgeo_tgeo", + "name": "tgeo_minus_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "atouches_tgeo_geo", + "name": "tgeo_minus_value", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32312,37 +33281,37 @@ }, { "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "atouches_tgeo_tgeo", + "name": "tpoint_at_elevation", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "atouches_tpoint_geo", + "name": "tpoint_at_geom", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32358,31 +33327,51 @@ ] }, { - "name": "econtains_geo_tgeo", + "name": "tpoint_at_value", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, + { + "name": "gs", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpoint_minus_elevation", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "econtains_tgeo_geo", + "name": "tpoint_minus_geom", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32398,27 +33387,27 @@ ] }, { - "name": "econtains_tgeo_tgeo", + "name": "tpoint_minus_value", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ecovers_geo_tgeo", + "name": "always_eq_geo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32438,7 +33427,7 @@ ] }, { - "name": "ecovers_tgeo_geo", + "name": "always_eq_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32458,7 +33447,7 @@ ] }, { - "name": "ecovers_tgeo_tgeo", + "name": "always_eq_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32478,7 +33467,27 @@ ] }, { - "name": "edisjoint_tgeo_geo", + "name": "always_ne_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32498,7 +33507,7 @@ ] }, { - "name": "edisjoint_tgeo_tgeo", + "name": "always_ne_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32518,32 +33527,27 @@ ] }, { - "name": "edwithin_tgeo_geo", + "name": "ever_eq_geo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "gs", "cType": "const int *", "canonical": "const int *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "edwithin_tgeo_tgeo", + "name": "ever_eq_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32551,24 +33555,19 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "eintersects_tgeo_geo", + "name": "ever_eq_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32576,19 +33575,19 @@ }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "eintersects_tgeo_tgeo", + "name": "ever_ne_geo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32596,19 +33595,19 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "etouches_tgeo_geo", + "name": "ever_ne_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32628,7 +33627,7 @@ ] }, { - "name": "etouches_tgeo_tgeo", + "name": "ever_ne_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -32648,11 +33647,31 @@ ] }, { - "name": "etouches_tpoint_geo", + "name": "teq_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -32668,7 +33687,7 @@ ] }, { - "name": "tcontains_geo_tgeo", + "name": "tne_geo_tgeo", "file": "meos_geo.h", "returnType": { "c": "Temporal *", @@ -32684,21 +33703,11 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tcontains_tgeo_geo", + "name": "tne_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "Temporal *", @@ -32714,85 +33723,85 @@ "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tcontains_tgeo_tgeo", + "name": "tgeo_stboxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcovers_geo_tgeo", + "name": "tgeo_space_boxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "restr", + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", "cType": "bool", "canonical": "bool" }, { - "name": "atvalue", + "name": "border_inc", "cType": "bool", "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcovers_tgeo_geo", + "name": "tgeo_space_time_boxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { @@ -32801,88 +33810,128 @@ "canonical": "const Temporal *" }, { - "name": "gs", + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", "cType": "const int *", "canonical": "const int *" }, { - "name": "restr", + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", "cType": "bool", "canonical": "bool" }, { - "name": "atvalue", + "name": "border_inc", "cType": "bool", "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcovers_tgeo_tgeo", + "name": "tgeo_split_each_n_stboxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", + "name": "elem_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeo_split_n_stboxes", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "restr", - "cType": "bool", - "canonical": "bool" + "name": "box_count", + "cType": "int", + "canonical": "int" }, { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tdisjoint_geo_tgeo", + "name": "adjacent_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tdisjoint_tgeo_geo", + "name": "adjacent_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32891,28 +33940,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tdisjoint_tgeo_tgeo", + "name": "adjacent_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32924,60 +33963,35 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tdwithin_geo_tgeo", + "name": "contained_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tdwithin_tgeo_geo", + "name": "contained_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32986,33 +34000,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tdwithin_tgeo_tgeo", + "name": "contained_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33024,60 +34023,35 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tintersects_geo_tgeo", + "name": "contains_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tintersects_tgeo_geo", + "name": "contains_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33086,28 +34060,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tintersects_tgeo_tgeo", + "name": "contains_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33119,55 +34083,35 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "ttouches_geo_tgeo", + "name": "overlaps_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "ttouches_tgeo_geo", + "name": "overlaps_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33176,28 +34120,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "restr", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ttouches_tgeo_tgeo", + "name": "overlaps_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33209,25 +34143,35 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" - }, + } + ] + }, + { + "name": "same_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "restr", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "atvalue", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tdistance_tgeo_geo", + "name": "same_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33236,18 +34180,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tdistance_tgeo_tgeo", + "name": "same_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33263,151 +34207,151 @@ ] }, { - "name": "nad_stbox_geo", + "name": "above_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "nad_stbox_stbox", + "name": "above_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", + "name": "box", "cType": "const STBox *", - "canonical": "const STBox *" + "canonical": "const struct STBox *" } ] }, { - "name": "nad_tgeo_geo", + "name": "above_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "nad_tgeo_stbox", + "name": "after_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const STBox *" } ] }, { - "name": "nad_tgeo_tgeo", + "name": "after_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "nai_tgeo_geo", + "name": "after_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "nai_tgeo_tgeo", + "name": "back_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "shortestline_tgeo_geo", + "name": "back_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33416,18 +34360,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "shortestline_tgeo_tgeo", + "name": "back_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33443,948 +34387,25651 @@ ] }, { - "name": "tpoint_tcentroid_finalfn", + "name": "before_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpoint_tcentroid_transfn", + "name": "before_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "before_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "below_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "below_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "below_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "front_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "front_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "front_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "left_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "left_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "left_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overabove_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overabove_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overabove_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overafter_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overafter_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overafter_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overback_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overback_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overback_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overbefore_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overbefore_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overbefore_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overbelow_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overbelow_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overbelow_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overfront_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overfront_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overfront_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overleft_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overleft_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overleft_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overright_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "overright_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "overright_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "right_stbox_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "right_tspatial_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "right_tspatial_tspatial", + "file": "meos_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "acontains_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "adisjoint_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "adisjoint_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "adwithin_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "aintersects_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "aintersects_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "atouches_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "atouches_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "atouches_tpoint_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "econtains_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "econtains_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "econtains_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ecovers_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "edisjoint_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edisjoint_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "edwithin_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "edwithin_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "eintersects_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "eintersects_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "etouches_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "etouches_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "etouches_tpoint_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcontains_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcontains_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcontains_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcovers_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcovers_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcovers_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdisjoint_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdisjoint_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdisjoint_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdwithin_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdwithin_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdwithin_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tintersects_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tintersects_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tintersects_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ttouches_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ttouches_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ttouches_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdistance_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_stbox_geo", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_stbox_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tgeo_stbox", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tgeoarr_tgeoarr_mindist", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "arr1", + "cType": "const Temporal **", + "canonical": "const Temporal **" + }, + { + "name": "count1", + "cType": "int", + "canonical": "int" + }, + { + "name": "arr2", + "cType": "const Temporal **", + "canonical": "const Temporal **" + }, + { + "name": "count2", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "mindistance_tgeo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "threshold", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tpoint_tcentroid_finalfn", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, + { + "name": "tpoint_tcentroid_transfn", + "file": "meos_geo.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + } + ] + }, + { + "name": "tspatial_extent_transfn", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "stbox_get_space_tile", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "stbox_get_space_time_tile", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "stbox_get_time_tile", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "stbox_space_tiles", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "stbox_space_time_tiles", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "stbox_time_tiles", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeo_space_split", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "space_bins", + "cType": "int ***", + "canonical": "int ***" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeo_space_time_split", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "space_bins", + "cType": "int ***", + "canonical": "int ***" + }, + { + "name": "time_bins", + "cType": "TimestampTz **", + "canonical": "long **" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "geo_cluster_kmeans", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "k", + "cType": "uint32_t", + "canonical": "unsigned int" + } + ] + }, + { + "name": "geo_cluster_dbscan", + "file": "meos_geo.h", + "returnType": { + "c": "uint32_t *", + "canonical": "unsigned int *" + }, + "params": [ + { + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" + }, + { + "name": "minpoints", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "geo_cluster_intersecting", + "file": "meos_geo.h", + "returnType": { + "c": "int **", + "canonical": "int **" + }, + "params": [ + { + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "geo_cluster_within", + "file": "meos_geo.h", + "returnType": { + "c": "int **", + "canonical": "int **" + }, + "params": [ + { + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "acovers_geo_tgeo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_tgeo_geo", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "cbuffer_as_ewkt", + "file": "meos_cbuffer.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_as_hexwkb", + "file": "meos_cbuffer.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "cbuffer_as_text", + "file": "meos_cbuffer.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_as_wkb", + "file": "meos_cbuffer.h", + "returnType": { + "c": "uint8_t *", + "canonical": "unsigned char *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "cbuffer_from_hexwkb", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "cbuffer_from_wkb", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "cbuffer_in", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "cbuffer_out", + "file": "meos_cbuffer.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_copy", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_make", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "radius", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "cbuffer_to_geom", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_to_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbufferarr_to_geom", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "cbarr", + "cType": "const Cbuffer **", + "canonical": "const struct Cbuffer **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "geom_to_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "cbuffer_hash", + "file": "meos_cbuffer.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_hash_extended", + "file": "meos_cbuffer.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "cbuffer_point", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_radius", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_round", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbufferarr_round", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer **", + "canonical": "struct Cbuffer **" + }, + "params": [ + { + "name": "cbarr", + "cType": "const Cbuffer **", + "canonical": "const struct Cbuffer **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_set_srid", + "file": "meos_cbuffer.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "cb", + "cType": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_srid", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_transform", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_transform_pipeline", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contains_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "covers_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "disjoint_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "dwithin_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "intersects_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "touches_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_tstzspan_to_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "cbuffer_timestamptz_to_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "distance_cbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "distance_cbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "distance_cbuffer_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_cbuffer_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "cbuffer_cmp", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_eq", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_ge", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_gt", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_le", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_lt", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_ne", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_nsame", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbuffer_same", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbufferset_in", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "cbufferset_out", + "file": "meos_cbuffer.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbufferset_make", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "cbuffer_to_set", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbufferset_end_value", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "cbufferset_start_value", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "cbufferset_value_n", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" + } + ] + }, + { + "name": "cbufferset_values", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Cbuffer **", + "canonical": "struct Cbuffer **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "cbuffer_union_transfn", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "contained_cbuffer_set", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "cb", + "cType": "Cbuffer *", + "canonical": "struct Cbuffer *" + } + ] + }, + { + "name": "intersection_cbuffer_set", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "minus_cbuffer_set", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "union_cbuffer_set", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tcbuffer_in", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tcbuffer_from_mfjson", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tcbuffer_make", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tpoint", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "tfloat", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_points", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_radius", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_trav_area", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "merge_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcbuffer_to_tfloat", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_to_tgeompoint", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tgeometry_to_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_expand", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tcbuffer_at_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tcbuffer_at_geom", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcbuffer_at_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcbuffer_minus_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tcbuffer_minus_geom", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcbuffer_minus_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tdistance_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "nad_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tcbuffer_stbox", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "nai_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "shortestline_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "always_eq_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "always_ne_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "ever_eq_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "ever_ne_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tne_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "acontains_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "acontains_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "acovers_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "acovers_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "adisjoint_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "adisjoint_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "adisjoint_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "adwithin_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "aintersects_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "aintersects_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "aintersects_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "atouches_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "atouches_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "atouches_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "econtains_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "econtains_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "econtains_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ecovers_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "ecovers_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ecovers_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "edisjoint_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edisjoint_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "edwithin_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "edwithin_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "edwithin_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "eintersects_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "eintersects_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "eintersects_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "etouches_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "etouches_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "etouches_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcontains_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcontains_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcontains_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcontains_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tcontains_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcovers_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcovers_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcovers_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tcovers_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tcovers_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdwithin_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdwithin_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdwithin_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdwithin_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tdisjoint_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdisjoint_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdisjoint_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdisjoint_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tdisjoint_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tintersects_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tintersects_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tintersects_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tintersects_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "tintersects_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ttouches_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ttouches_tcbuffer_geo", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ttouches_cbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ttouches_tcbuffer_cbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "ttouches_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_tcbuffer_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "h3index_in", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "h3index_out", + "file": "meos_h3.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "th3index_in", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3indexinst_in", + "file": "meos_h3.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3indexseq_in", + "file": "meos_h3.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "th3indexseqset_in", + "file": "meos_h3.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3index_make", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "value", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "th3indexinst_make", + "file": "meos_h3.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "value", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "th3indexseq_make", + "file": "meos_h3.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "values", + "cType": "const H3Index *", + "canonical": "const unsigned long *" + }, + { + "name": "times", + "cType": "const TimestampTz *", + "canonical": "const long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "th3indexseqset_make", + "file": "meos_h3.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "sequences", + "cType": "const TSequence **", + "canonical": "const struct TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "th3index_start_value", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_end_value", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_value_n", + "file": "meos_h3.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "th3index_values", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index *", + "canonical": "unsigned long *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "th3index_value_at_timestamptz", + "file": "meos_h3.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "tbigint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_to_tbigint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ever_ne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "always_eq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "always_ne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ever_eq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "teq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "tne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_resolution", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_base_cell_number", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_res_class_iii", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_pentagon", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_parent", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_cell_to_parent_next", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_center_child", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_cell_to_center_child_next", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_child_pos", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "parent_res", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_child_pos_to_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "child_pos", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "parent", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "child_res", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "tgeogpoint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "tgeompoint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_to_tgeogpoint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_to_tgeompoint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_boundary", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "geo_to_h3index_set", + "file": "meos_h3.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "ever_eq_h3indexset_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "th3idx", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_are_neighbor_cells", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cells_to_directed_edge", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_directed_edge", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_directed_edge_origin", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_directed_edge_destination", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_directed_edge_to_boundary", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_vertex", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "vertex_num", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_vertex_to_latlng", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_vertex", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_grid_distance", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_local_ij", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_local_ij_to_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "coord", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_area", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3index_edge_length", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeogpoint_great_circle_distance", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "a", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "b", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "gsl_get_generation_rng", + "file": "meos_internal.h", + "returnType": { + "c": "gsl_rng *", + "canonical": "gsl_rng *" + }, + "params": [] + }, + { + "name": "gsl_get_aggregation_rng", + "file": "meos_internal.h", + "returnType": { + "c": "gsl_rng *", + "canonical": "gsl_rng *" + }, + "params": [] + }, + { + "name": "datum_ceil", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "datum_degrees", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "normalize", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "datum_float_round", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "datum_floor", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "datum_hash", + "file": "meos_internal.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "datum_hash_extended", + "file": "meos_internal.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_radians", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "floatspan_round_set", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "set_in", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "set_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_in", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "spantype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spanset_in", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "spantype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spanset_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "set_make", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "set_make_exp", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "set_make_free", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "span_make", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "lower", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "upper", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_set", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "lower", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "upper", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "spantype", + "cType": "int", + "canonical": "int" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "spanset_make_exp", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "spans", + "cType": "Span *", + "canonical": "struct Span *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "spanset_make_free", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "spans", + "cType": "Span *", + "canonical": "struct Span *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "set_span", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "value_set_span", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "value_set", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "value_span", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "numspan_width", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "numspanset_width", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "boundspan", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "set_end_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_mem_size", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_set_subspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "minidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "set_set_span", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "set_start_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_value_n", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "set_vals", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_values", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "spanset_lower", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "spanset_mem_size", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "spanset_sps", + "file": "meos_internal.h", + "returnType": { + "c": "const Span **", + "canonical": "const struct Span **" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "spanset_upper", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "bigintspan_set_floatspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "bigintspan_set_intspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "datespan_set_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "floatspan_set_bigintspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "floatspan_set_intspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "intspan_set_bigintspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "intspan_set_floatspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "numset_shift_scale", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "numspan_expand", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "numspan_shift_scale", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "numspanset_shift_scale", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "set_compact", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "span_expand", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "spanset_compact", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "tbox_expand_value", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetyp", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "textcat_textset_text_common", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "txt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tstzspan_set_datespan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "adjacent_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "adjacent_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "adjacent_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "contained_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contained_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "contained_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "contains_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "contains_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "contains_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ovadj_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "left_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "left_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "left_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "left_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "left_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "left_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "lfnadj_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "overleft_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overleft_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overleft_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overleft_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "overleft_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "overleft_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "overright_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overright_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overright_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "overright_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "overright_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "overright_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "right_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "right_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "right_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "right_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "right_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "right_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "bbox_type", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "bboxtype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "bbox_get_size", + "file": "meos_internal.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "bboxtype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "bbox_max_dims", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "bboxtype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_bbox_eq", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_bbox_cmp", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "bbox_union_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "inter_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "intersection_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "intersection_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "intersection_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "intersection_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "intersection_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "mi_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "minus_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "minus_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "minus_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "minus_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "minus_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "super_union_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "union_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "union_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "union_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "union_value_set", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "union_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "distance_set_set", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "s2", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "distance_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "distance_span_span", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "distance_span_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "distance_spanset_span", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "distance_spanset_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss1", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "ss2", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "distance_spanset_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "distance_value_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spanbase_extent_transfn", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "state", + "cType": "Span *", + "canonical": "struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "value_union_transfn", + "file": "meos_internal.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "number_tstzspan_to_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "number_timestamptz_to_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tbox_set", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "p", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "float_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "d", + "cType": "double", + "canonical": "double" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "int_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "i", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "number_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "number_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "numset_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "numspan_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "timestamptz_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tstzset_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tstzspan_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tbox_shift_scale_value", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tbox_expand", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "box2", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "inter_tbox_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tboolinst_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tboolinst_in", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tboolseq_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tboolseq_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tboolseqset_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tboolseqset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "temporal_in", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temparr_out", + "file": "meos_internal.h", + "returnType": { + "c": "char **", + "canonical": "char **" + }, + "params": [ + { + "name": "temparr", + "cType": "Temporal **", + "canonical": "Temporal **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tfloatinst_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tfloatinst_in", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tfloatseq_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tfloatseq_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tfloatseqset_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tfloatseqset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tinstant_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tinstant_in", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tinstant_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tintinst_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tintinst_in", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tintseq_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tintseq_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tintseqset_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "tintseqset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tsequence_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequence_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequence_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequenceset_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequenceset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequenceset_out", + "file": "meos_internal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "ttextinst_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "ttextinst_in", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "ttextseq_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "ttextseq_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "ttextseqset_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + } + ] + }, + { + "name": "ttextseqset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "temporal_from_mfjson", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_from_base_temp", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tinstant_copy", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_make", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tinstant_make_free", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tsequence_copy", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_from_base_temp", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_from_base_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tsequence_from_base_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequence_make_exp", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_make_free", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_copy", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tseqsetarr_to_tseqset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "struct TSequenceSet **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "totalseqs", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequenceset_from_base_temp", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_from_base_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "int", + "canonical": "int" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequenceset_make_exp", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_make_free", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_set_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "tinstant_set_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "tnumber_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tnumberinst_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tnumberseq_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tnumberseqset_set_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "struct TBox *" + } + ] + }, + { + "name": "tsequence_set_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "tsequenceset_set_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "temporal_end_inst", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_end_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_inst_n", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_insts_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant **", + "canonical": "const struct TInstant **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_max_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_max_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_mem_size", + "file": "meos_internal.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_min_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_min_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_sequences_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TSequence **", + "canonical": "const struct TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_set_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "temporal_start_inst", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_start_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_values_p", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_value_n", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "temporal_values", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tinstant_hash", + "file": "meos_internal.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_insts", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant **", + "canonical": "const struct TInstant **" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tinstant_set_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tinstant_time", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_timestamps", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz *", + "canonical": "long *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tinstant_value_p", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_value_at_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "tinstant_values_p", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnumber_set_span", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "span", + "cType": "Span *", + "canonical": "struct Span *" + } + ] + }, + { + "name": "tnumberinst_valuespans", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tnumberseq_avg_val", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseq_valuespans", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseqset_avg_val", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tnumberseqset_valuespans", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequence_duration", + "file": "meos_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_end_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_hash", + "file": "meos_internal.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_insts_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant **", + "canonical": "const struct TInstant **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_max_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_max_val", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_min_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_min_val", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_segments", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequence_seqs", + "file": "meos_internal.h", + "returnType": { + "c": "const TSequence **", + "canonical": "const struct TSequence **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequence_start_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_time", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_timestamps", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz *", + "canonical": "long *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequence_value_at_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "tsequence_values_p", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequenceset_duration", + "file": "meos_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "boundspan", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_end_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_hash", + "file": "meos_internal.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_inst_n", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequenceset_insts_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant **", + "canonical": "const struct TInstant **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_max_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_max_val", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_min_inst_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TInstant *", + "canonical": "const struct TInstant *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_min_val", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_num_instants", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_num_timestamps", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_segments", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequenceset_sequences_p", + "file": "meos_internal.h", + "returnType": { + "c": "const TSequence **", + "canonical": "const struct TSequence **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_start_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_time", + "file": "meos_internal.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_timestamptz_n", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "tsequenceset_timestamps", + "file": "meos_internal.h", + "returnType": { + "c": "TimestampTz *", + "canonical": "long *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequenceset_value_at_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "tsequenceset_value_n", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "tsequenceset_values_p", + "file": "meos_internal.h", + "returnType": { + "c": "Datum *", + "canonical": "int ((*)(int *))()" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_restart", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "temporal_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "temporal_tsequenceset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tinstant_shift_time", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interv", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tinstant_to_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tinstant_to_tsequence_free", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "inst", + "cType": "TInstant *", + "canonical": "struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tinstant_to_tsequenceset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tnumber_shift_scale_value", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberinst_shift_value", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "tnumberseq_shift_scale_value", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberseqset_shift_scale_value", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "start", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_restart", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequence_set_interp", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequence_shift_scale_time", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "shift", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tsequence_subseq", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "from", + "cType": "int", + "canonical": "int" + }, + { + "name": "to", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_to_tinstant", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_to_tsequenceset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_to_tsequenceset_free", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + } + ] + }, + { + "name": "tsequence_to_tsequenceset_interp", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequenceset_restart", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequenceset_set_interp", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tsequenceset_shift_scale_time", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "start", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tsequenceset_to_discrete", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_to_linear", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_to_step", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_to_tinstant", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_to_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tinstant_merge", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_merge_array", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequence_append_tinstant", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_append_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_delete_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_delete_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_delete_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_delete_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_insert", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_merge", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_merge_array", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequenceset_append_tinstant", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_append_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_delete_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tsequenceset_delete_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tsequenceset_delete_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "tsequenceset_delete_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "tsequenceset_insert", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_merge", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_merge_array", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "struct TSequenceSet **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequence_expand_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tsequence_set_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tsequenceset_expand_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequenceset_set_bbox", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tcontseq_after_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcontseq_before_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcontseq_restrict_minmax", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_after_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_before_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_restrict_minmax", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_bbox_restrict_set", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "temporal_restrict_minmax", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_value", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_restrict_values", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_value_at_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + } + ] + }, + { + "name": "tinstant_after_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_before_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "period", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_value", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_restrict_values", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumber_restrict_span", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumber_restrict_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberinst_restrict_span", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberinst_restrict_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberseqset_restrict_span", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnumberseqset_restrict_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "spanset", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_at_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tsequence_restrict_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_restrict_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_after_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_before_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_minmax", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_tstzspan", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_tstzspanset", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_timestamptz", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_tstzset", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_value", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_restrict_values", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_cmp", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tinstant_eq", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tsequence_cmp", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequence_eq", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequenceset_cmp", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_eq", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "always_eq_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "always_ne_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "always_ge_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ge_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "always_gt_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_gt_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "always_le_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_le_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "always_lt_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_lt_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_eq_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_ne_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_ge_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ge_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_gt_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_gt_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_le_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_le_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "ever_lt_base_temporal", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_lt_temporal_base", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "tnumberinst_abs", + "file": "meos_internal.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tnumberseq_abs", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseq_angular_difference", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseq_delta_value", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseqset_abs", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tnumberseqset_angular_difference", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tnumberseqset_delta_value", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "distance_span_span_double", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "nad_tbox_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const struct TBox *" + } + ] + }, + { + "name": "nad_tnumber_number", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "nad_tnumber_tbox", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + } + ] + }, + { + "name": "nad_tnumber_tnumber", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdistance_tnumber_number", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "tnumberinst_distance", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tnumberseq_integral", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseq_twavg", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tnumberseqset_integral", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tnumberseqset_twavg", + "file": "meos_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "temporal_compact", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tsequence_compact", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tsequenceset_compact", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "temporal_skiplist_make", + "file": "meos_internal.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [] + }, + { + "name": "skiplist_make", + "file": "meos_internal.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "key_size", + "cType": "size_t", + "canonical": "unsigned long" + }, + { + "name": "value_size", + "cType": "size_t", + "canonical": "unsigned long" + }, + { + "name": "comp_fn", + "cType": "int (*)(void *, void *)", + "canonical": "int (*)(void *, void *)" + }, + { + "name": "merge_fn", + "cType": "void *(*)(void *, void *)", + "canonical": "void *(*)(void *, void *)" + } + ] + }, + { + "name": "skiplist_search", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "key", + "cType": "void *", + "canonical": "void *" + }, + { + "name": "value", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "skiplist_free", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, + { + "name": "skiplist_splice", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "keys", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "sktype", + "cType": "SkipListType", + "canonical": "SkipListType" + } + ] + }, + { + "name": "temporal_skiplist_splice", + "file": "meos_internal.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "skiplist_values", + "file": "meos_internal.h", + "returnType": { + "c": "void **", + "canonical": "void **" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, + { + "name": "skiplist_keys_values", + "file": "meos_internal.h", + "returnType": { + "c": "void **", + "canonical": "void **" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + } + ] + }, + { + "name": "temporal_app_tinst_transfn", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "temporal_app_tseq_transfn", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "span_bins", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "spanset_bins", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnumber_value_bins", + "file": "meos_internal.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnumber_value_time_boxes", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnumber_value_split", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "bins", + "cType": "Datum **", + "canonical": "int ((**)(int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tbox_get_value_time_tile", + "file": "meos_internal.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "spantype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tnumber_value_time_split", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "value_bins", + "cType": "Datum **", + "canonical": "int ((**)(int *))()" + }, + { + "name": "time_bins", + "cType": "TimestampTz **", + "canonical": "long **" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "proj_get_context", + "file": "meos_internal_geo.h", + "returnType": { + "c": "PJ_CONTEXT *", + "canonical": "struct pj_ctx *" + }, + "params": [] + }, + { + "name": "datum_geo_round", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + } + ] + }, + { + "name": "point_round", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "stbox_set", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32", + "canonical": "int" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "gbox_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "geo_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "geoarr_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "spatial_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "spatialset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "stbox_set_box3d", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box3d", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "stbox_set_gbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "gbox", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tstzset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tstzspan_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tstzspanset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "stbox_expand", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box2", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "inter_stbox_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "stbox_geo", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "tgeogpointinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeogpointinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeogpointseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeompointinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeompointinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeompointseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeographyinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeographyinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeographyseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeometryinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeometryinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeometryseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tspatial_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tgeoinst_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tspatialseq_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tspatialseqset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" + } + ] + }, + { + "name": "tgeo_restrict_elevation", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoinst_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoinst_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseqset_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseqset_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "spatial_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spatial_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "int", + "canonical": "int" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tspatialinst_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + } + ] + }, + { + "name": "tpointseq_azimuth", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tpointseq_cumulative_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "prevlength", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tpointseq_is_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tpointseq_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tpointseq_linear_trajectory", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeoseq_split_n_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "max_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpointseqset_azimuth", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_cumulative_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_is_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tgeoseqset_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeoseqset_split_n_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "max_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpoint_get_coord", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "coord", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tgeominst_tgeoginst", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeomseq_tgeogseq", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeomseqset_tgeogseqset", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeom_tgeog", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_tpoint", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tspatialinst_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "TInstant *", + "canonical": "struct TInstant *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseq_make_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseq_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseqset_make_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseqset_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseq_twcentroid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + } + ] + }, + { + "name": "tpointseqset_twcentroid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "npoint_as_ewkt", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_as_hexwkb", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "npoint_as_text", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_as_wkb", + "file": "meos_npoint.h", + "returnType": { + "c": "uint8_t *", + "canonical": "unsigned char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "npoint_from_hexwkb", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npoint_from_wkb", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "npoint_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npoint_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegment_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "nsegment_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "nsegment_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos1", + "cType": "double", + "canonical": "double" + }, + { + "name": "pos2", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "geompoint_to_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "geom_to_nsegment", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "npoint_to_geompoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_to_nsegment", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_to_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npoint_hash", + "file": "meos_npoint.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_hash_extended", + "file": "meos_npoint.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "npoint_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_end_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_start_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "route_exists", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "route_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "const int *", + "canonical": "const int *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "route_length", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "npoint_round", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegment_round", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "get_srid_ways", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [] + }, + { + "name": "npoint_srid", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_srid", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npoint_timestamptz_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "npoint_tstzspan_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "npoint_cmp", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_eq", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_ge", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_gt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_le", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_lt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_ne", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_same", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_cmp", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_eq", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_ge", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_gt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_le", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_lt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_ne", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npointset_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npointset_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npointset_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Npoint **", + "canonical": "Npoint **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_to_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npointset_end_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_routes", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_start_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_value_n", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" + } + ] + }, + { + "name": "npointset_values", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint **", + "canonical": "Npoint **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contained_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "intersection_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "minus_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_union_transfn", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "union_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tnpoint_from_mfjson", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tnpoint_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tnpointinst_make", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tgeompoint_to_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_to_tgeompoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_cumulative_length", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_length", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_positions", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnpoint_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_routes", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_speed", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_trajectory", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_twcentroid", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_at_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tnpoint_at_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_at_npointset", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tnpoint_at_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnpoint_minus_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tnpoint_minus_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_minus_npointset", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tnpoint_minus_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tdistance_tnpoint_point", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nad_tnpoint_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nai_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "shortestline_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_tcentroid_transfn", + "file": "meos_npoint.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + } + ] + }, + { + "name": "always_eq_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "always_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "always_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "ever_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "ever_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "pose_as_ewkt", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_as_hexwkb", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "pose_as_text", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_as_wkb", + "file": "meos_pose.h", + "returnType": { + "c": "uint8_t *", + "canonical": "unsigned char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "pose_from_wkb", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_from_hexwkb", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pose_in", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pose_out", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_copy", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_make_2d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "theta", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_make_3d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_make_point2d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "theta", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "pose_make_point3d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "pose_to_point", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_hash", + "file": "meos_pose.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_hash_extended", + "file": "meos_pose.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_orientation", + "file": "meos_pose.h", + "returnType": { + "c": "double *", + "canonical": "double *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_rotation", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_round", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "posearr_round", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "posearr", + "cType": "const Pose **", + "canonical": "const struct Pose **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_set_srid", + "file": "meos_pose.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_srid", + "file": "meos_pose.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_transform", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_transform_pipeline", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "pose_tstzspan_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "pose_timestamptz_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "distance_pose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "distance_pose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "distance_pose_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "pose_cmp", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_eq", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_ge", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_gt", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_le", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_lt", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_ne", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_nsame", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_same", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "poseset_in", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "poseset_out", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "poseset_make", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "const Pose **", + "canonical": "const struct Pose **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_to_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "poseset_end_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "poseset_start_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "poseset_value_n", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "poseset_values", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contained_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" + } + ] + }, + { + "name": "intersection_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "minus_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_union_transfn", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "union_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_in", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tpose_make", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tpoint", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "tradius", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_to_tpoint", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_end_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_points", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_rotation", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_start_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_trajectory", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_value_at_timestamptz", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "value", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "tpose_value_n", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "tpose_values", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpose_at_geom", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tpose_at_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tpose_at_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_minus_geom", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tpose_minus_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_minus_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tdistance_tpose_point", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "nad_tpose_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "nai_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "shortestline_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "always_eq_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "always_ne_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ever_eq_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ever_ne_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "trgeo_out", + "file": "meos_rgeo.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeoinst_make", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "geom", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "geo_tpose_to_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_to_tpose", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_to_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_end_instant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_end_sequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_end_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_instant_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeo_instants", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant **", + "canonical": "struct TInstant **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeo_points", + "file": "meos_rgeo.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_rotation", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_segments", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeo_sequence_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeo_sequences", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeo_start_instant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_start_sequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_start_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_value_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" + } + ] + }, + { + "name": "trgeo_traversed_area", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_append_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_append_tsequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_delete_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_delete_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_delete_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_delete_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_round", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeo_set_interp", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "trgeo_to_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_after_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_before_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_values", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_trgeo_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdistance_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_stbox_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_trgeo_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_trgeo_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_trgeo_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_trgeo_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_eq_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_ne_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_eq_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_ne_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tne_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "geo_get_srid", + "file": "postgis_ext_defs.in.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "g", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "date_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "DateADT", + "canonical": "int" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "date_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "d", + "cType": "DateADT", + "canonical": "int" + } + ] + }, + { + "name": "interval_cmp", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "interv1", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "interv2", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "interval_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "Interval *", + "canonical": "Interval *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "interval_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "interv", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "time_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "TimeADT", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "time_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "TimeADT", + "canonical": "long" + } + ] + }, + { + "name": "timestamp_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "Timestamp", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "timestamp_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "Timestamp", + "canonical": "long" + } + ] + }, + { + "name": "timestamptz_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "timestamptz_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + } + ], + "structs": [ + { + "name": "Set", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": 0 + }, + { + "name": "settype", + "cType": "uint8", + "offset_bits": 32 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": 40 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": 48 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": 64 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": 96 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": 128 + } + ] + }, + { + "name": "Span", + "file": "meos.h", + "fields": [ + { + "name": "spantype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "lower_inc", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "upper_inc", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char[4]", + "offset_bits": -1 + }, + { + "name": "lower", + "cType": "int", + "offset_bits": -1 + }, + { + "name": "upper", + "cType": "int", + "offset_bits": -1 + } + ] + }, + { + "name": "SpanSet", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "spansettype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "spantype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "span", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "elems", + "cType": "Span[1]", + "offset_bits": -1 + } + ] + }, + { + "name": "TBox", + "file": "meos.h", + "fields": [ + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "span", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + } + ] + }, + { + "name": "STBox", + "file": "meos.h", + "fields": [ + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "xmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + } + ] + }, + { + "name": "Temporal", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": 0 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": 32 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": 40 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": 48 + } + ] + }, + { + "name": "TInstant", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "t", + "cType": "TimestampTz", + "offset_bits": -1 + }, + { + "name": "value", + "cType": "int", + "offset_bits": -1 + } + ], + "meosType": "TPointInst" + }, + { + "name": "TSequence", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char[6]", + "offset_bits": -1 + }, + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + } + ], + "meosType": "TPointSeq" + }, + { + "name": "TSequenceSet", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "totalcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + } + ] + }, + { + "name": "Match", + "file": "meos.h", + "fields": [ + { + "name": "i", + "cType": "int", + "offset_bits": 0 + }, + { + "name": "j", + "cType": "int", + "offset_bits": 32 + } + ] + }, + { + "name": "SkipList", + "file": "meos.h", + "fields": [] + }, + { + "name": "MeosArray", + "file": "meos.h", + "fields": [] + }, + { + "name": "RTree", + "file": "meos.h", + "fields": [] + }, + { + "name": "Cbuffer", + "file": "meos_cbuffer.h", + "fields": [] + }, + { + "name": "SkipListElem", + "file": "meos_internal.h", + "fields": [ + { + "name": "key", + "cType": "void *", + "offset_bits": 0 + }, + { + "name": "value", + "cType": "void *", + "offset_bits": 64 + }, + { + "name": "height", + "cType": "int", + "offset_bits": 128 + }, + { + "name": "next", + "cType": "int[32]", + "offset_bits": 160 + } + ] + }, + { + "name": "Npoint", + "file": "meos_npoint.h", + "fields": [ + { + "name": "rid", + "cType": "int64", + "offset_bits": 0 + }, + { + "name": "pos", + "cType": "double", + "offset_bits": 64 + } + ] + }, + { + "name": "Nsegment", + "file": "meos_npoint.h", + "fields": [ + { + "name": "rid", + "cType": "int64", + "offset_bits": 0 + }, + { + "name": "pos1", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "pos2", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "Pose", + "file": "meos_pose.h", + "fields": [] + }, + { + "name": "AFFINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "afac", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "bfac", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "cfac", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "dfac", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "efac", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "ffac", + "cType": "double", + "offset_bits": 320 }, { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "gfac", + "cType": "double", + "offset_bits": 384 + }, + { + "name": "hfac", + "cType": "double", + "offset_bits": 448 + }, + { + "name": "ifac", + "cType": "double", + "offset_bits": 512 + }, + { + "name": "xoff", + "cType": "double", + "offset_bits": 576 + }, + { + "name": "yoff", + "cType": "double", + "offset_bits": 640 + }, + { + "name": "zoff", + "cType": "double", + "offset_bits": 704 } ] }, { - "name": "tspatial_extent_transfn", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "BOX3D", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "box", - "cType": "STBox *", - "canonical": "STBox *" + "name": "xmin", + "cType": "double", + "offset_bits": 0 }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ymin", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 384 } ] }, { - "name": "stbox_get_space_tile", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "GBOX", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 0 }, { - "name": "xsize", + "name": "xmin", "cType": "double", - "canonical": "double" + "offset_bits": 64 }, { - "name": "ysize", + "name": "xmax", "cType": "double", - "canonical": "double" + "offset_bits": 128 }, { - "name": "zsize", + "name": "ymin", "cType": "double", - "canonical": "double" + "offset_bits": 192 }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "ymax", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": 384 + }, + { + "name": "mmin", + "cType": "double", + "offset_bits": 448 + }, + { + "name": "mmax", + "cType": "double", + "offset_bits": 512 } ] }, { - "name": "stbox_get_space_time_tile", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "SPHEROID", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" + "name": "a", + "cType": "double", + "offset_bits": 0 }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "b", + "cType": "double", + "offset_bits": 64 }, { - "name": "xsize", + "name": "f", "cType": "double", - "canonical": "double" + "offset_bits": 128 }, { - "name": "ysize", + "name": "e", "cType": "double", - "canonical": "double" + "offset_bits": 192 }, { - "name": "zsize", + "name": "e_sq", "cType": "double", - "canonical": "double" + "offset_bits": 256 }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "radius", + "cType": "double", + "offset_bits": 320 }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "name", + "cType": "char[20]", + "offset_bits": 384 + } + ] + }, + { + "name": "POINT2D", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "y", + "cType": "double", + "offset_bits": 64 } ] }, { - "name": "stbox_get_time_tile", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "POINT3DZ", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "x", + "cType": "double", + "offset_bits": 0 }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "y", + "cType": "double", + "offset_bits": 64 }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "z", + "cType": "double", + "offset_bits": 128 } ] }, { - "name": "stbox_space_tiles", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ - { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const STBox *" - }, + "name": "POINT3D", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "xsize", + "name": "x", "cType": "double", - "canonical": "double" + "offset_bits": 0 }, { - "name": "ysize", + "name": "y", "cType": "double", - "canonical": "double" + "offset_bits": 64 }, { - "name": "zsize", + "name": "z", "cType": "double", - "canonical": "double" - }, + "offset_bits": 128 + } + ] + }, + { + "name": "POINT3DM", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "x", + "cType": "double", + "offset_bits": 0 }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "y", + "cType": "double", + "offset_bits": 64 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "m", + "cType": "double", + "offset_bits": 128 } ] }, { - "name": "stbox_space_time_tiles", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "POINT4D", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "x", + "cType": "double", + "offset_bits": 0 }, { - "name": "xsize", + "name": "y", "cType": "double", - "canonical": "double" + "offset_bits": 64 }, { - "name": "ysize", + "name": "z", "cType": "double", - "canonical": "double" + "offset_bits": 128 }, { - "name": "zsize", + "name": "m", "cType": "double", - "canonical": "double" + "offset_bits": 192 + } + ] + }, + { + "name": "POINTARRAY", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "npoints", + "cType": "uint32_t", + "offset_bits": 0 }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "maxpoints", + "cType": "uint32_t", + "offset_bits": 32 }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 64 }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "serialized_pointlist", + "cType": "uint8_t *", + "offset_bits": 128 + } + ] + }, + { + "name": "GSERIALIZED", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "size", + "cType": "uint32_t", + "offset_bits": 0 }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "srid", + "cType": "uint8_t[3]", + "offset_bits": 32 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "gflags", + "cType": "uint8_t", + "offset_bits": 56 + }, + { + "name": "data", + "cType": "uint8_t[1]", + "offset_bits": 64 } ] }, { - "name": "stbox_time_tiles", - "file": "meos_geo.h", - "returnType": { - "c": "STBox *", - "canonical": "STBox *" - }, - "params": [ + "name": "LWGEOM", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const STBox *" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "data", + "cType": "void *", + "offset_bits": 64 }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 } ] }, { - "name": "tgeo_space_split", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" - }, - "params": [ + "name": "LWPOINT", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "xsize", - "cType": "double", - "canonical": "double" + "name": "point", + "cType": "POINTARRAY *", + "offset_bits": 64 }, { - "name": "ysize", - "cType": "double", - "canonical": "double" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "zsize", - "cType": "double", - "canonical": "double" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWLINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "points", + "cType": "POINTARRAY *", + "offset_bits": 64 }, { - "name": "space_bins", - "cType": "int ***", - "canonical": "int ***" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 } ] }, { - "name": "tgeo_space_time_split", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" - }, - "params": [ + "name": "LWTRIANGLE", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "xsize", - "cType": "double", - "canonical": "double" + "name": "points", + "cType": "POINTARRAY *", + "offset_bits": 64 }, { - "name": "ysize", - "cType": "double", - "canonical": "double" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "zsize", - "cType": "double", - "canonical": "double" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "duration", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWCIRCSTRING", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" + "name": "points", + "cType": "POINTARRAY *", + "offset_bits": 64 }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "space_bins", - "cType": "int ***", - "canonical": "int ***" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 } ] }, { - "name": "geo_cluster_kmeans", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + "name": "LWPOLY", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "rings", + "cType": "POINTARRAY **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "ngeoms", + "name": "nrings", "cType": "uint32_t", - "canonical": "unsigned int" + "offset_bits": 192 }, { - "name": "k", + "name": "maxrings", "cType": "uint32_t", - "canonical": "unsigned int" + "offset_bits": 224 } ] }, { - "name": "geo_cluster_dbscan", - "file": "meos_geo.h", - "returnType": { - "c": "uint32_t *", - "canonical": "unsigned int *" - }, - "params": [ + "name": "LWMPOINT", + "file": "postgis_ext_defs.in.h", + "fields": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" + "name": "geoms", + "cType": "LWPOINT **", + "offset_bits": 64 }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "minpoints", - "cType": "int", - "canonical": "int" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "geo_cluster_intersecting", - "file": "meos_geo.h", - "returnType": { - "c": "int **", - "canonical": "int **" - }, - "params": [ + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { "name": "ngeoms", "cType": "uint32_t", - "canonical": "unsigned int" + "offset_bits": 192 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "geo_cluster_within", - "file": "meos_geo.h", - "returnType": { - "c": "int **", - "canonical": "int **" - }, - "params": [ + "name": "LWMLINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, { "name": "geoms", - "cType": "const int **", - "canonical": "const int **" + "cType": "LWLINE **", + "offset_bits": 64 }, { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] - } - ], - "structs": [ + }, { - "name": "Set", - "file": "meos.h", + "name": "LWMPOLY", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "settype", - "cType": "uint8", - "offset_bits": 32 + "name": "geoms", + "cType": "LWPOLY **", + "offset_bits": 64 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": 40 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 48 + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int32", - "offset_bits": 64 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "maxcount", - "cType": "int32", - "offset_bits": 96 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "bboxsize", - "cType": "int16", - "offset_bits": 128 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "Span", - "file": "meos.h", + "name": "LWCOLLECTION", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "spantype", - "cType": "uint8", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": 8 + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 }, { - "name": "lower_inc", - "cType": "bool", - "offset_bits": 16 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "upper_inc", - "cType": "bool", - "offset_bits": 24 + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "padding", - "cType": "char[4]", - "offset_bits": 32 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "lower", - "cType": "Datum", - "offset_bits": 64 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "upper", - "cType": "Datum", - "offset_bits": 128 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "SpanSet", - "file": "meos.h", + "name": "LWCOMPOUND", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "spansettype", - "cType": "uint8", - "offset_bits": 32 - }, - { - "name": "spantype", - "cType": "uint8", - "offset_bits": 40 + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": 48 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "padding", - "cType": "char", - "offset_bits": 56 + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int32", - "offset_bits": 64 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "maxcount", - "cType": "int32", - "offset_bits": 96 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "span", - "cType": "Span", - "offset_bits": 128 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 }, { - "name": "elems", - "cType": "Span[1]", - "offset_bits": 320 + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "TBox", - "file": "meos.h", + "name": "LWCURVEPOLY", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "period", - "cType": "Span", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "span", - "cType": "Span", - "offset_bits": 192 + "name": "rings", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 384 + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "nrings", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxrings", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "STBox", - "file": "meos.h", + "name": "LWMCURVE", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "period", - "cType": "Span", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "xmin", - "cType": "double", - "offset_bits": 192 - }, - { - "name": "ymin", - "cType": "double", - "offset_bits": 256 + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 }, { - "name": "zmin", - "cType": "double", - "offset_bits": 320 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "xmax", - "cType": "double", - "offset_bits": 384 + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "ymax", - "cType": "double", - "offset_bits": 448 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "zmax", - "cType": "double", - "offset_bits": 512 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 576 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 }, { - "name": "flags", - "cType": "int16", - "offset_bits": 608 + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "Temporal", - "file": "meos.h", + "name": "LWMSURFACE", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "temptype", - "cType": "uint8", - "offset_bits": 32 + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 }, { - "name": "subtype", - "cType": "uint8", - "offset_bits": 40 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 48 + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "TInstant", - "file": "meos.h", + "name": "LWPSURFACE", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "temptype", - "cType": "uint8", - "offset_bits": 32 + "name": "geoms", + "cType": "LWPOLY **", + "offset_bits": 64 }, { - "name": "subtype", - "cType": "uint8", - "offset_bits": 40 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 48 + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "t", - "cType": "TimestampTz", - "offset_bits": 64 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "value", - "cType": "Datum", - "offset_bits": 128 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } - ], - "meosType": "TPointInst" + ] }, { - "name": "TSequence", - "file": "meos.h", + "name": "LWTIN", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "bbox", + "cType": "GBOX *", "offset_bits": 0 }, { - "name": "temptype", - "cType": "uint8", - "offset_bits": 32 + "name": "geoms", + "cType": "LWTRIANGLE **", + "offset_bits": 64 }, { - "name": "subtype", - "cType": "uint8", - "offset_bits": 40 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 48 - }, - { - "name": "count", - "cType": "int32", - "offset_bits": 64 + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "maxcount", - "cType": "int32", - "offset_bits": 96 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "bboxsize", - "cType": "int16", - "offset_bits": 128 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "padding", - "cType": "char[6]", - "offset_bits": 144 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 }, { - "name": "period", - "cType": "Span", - "offset_bits": 192 + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } - ], - "meosType": "TPointSeq" + ] }, { - "name": "TSequenceSet", - "file": "meos.h", + "name": "PJconsts", + "file": "postgis_ext_defs.in.h", + "fields": [] + }, + { + "name": "LWPROJ", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "pj", + "cType": "PJ *", "offset_bits": 0 }, { - "name": "temptype", - "cType": "uint8", - "offset_bits": 32 - }, - { - "name": "subtype", - "cType": "uint8", - "offset_bits": 40 - }, - { - "name": "flags", - "cType": "int16", - "offset_bits": 48 - }, - { - "name": "count", - "cType": "int32", + "name": "pipeline_is_forward", + "cType": "_Bool", "offset_bits": 64 }, { - "name": "totalcount", - "cType": "int32", - "offset_bits": 96 + "name": "source_is_latlong", + "cType": "uint8_t", + "offset_bits": 72 }, { - "name": "maxcount", - "cType": "int32", + "name": "source_semi_major_metre", + "cType": "double", "offset_bits": 128 }, { - "name": "bboxsize", - "cType": "int16", - "offset_bits": 160 + "name": "source_semi_minor_metre", + "cType": "double", + "offset_bits": 192 + } + ] + }, + { + "name": "Interval", + "file": "postgres_ext_defs.in.h", + "fields": [ + { + "name": "time", + "cType": "TimeOffset", + "offset_bits": 0 }, { - "name": "padding", - "cType": "int16", - "offset_bits": 176 + "name": "day", + "cType": "int32", + "offset_bits": 64 }, { - "name": "period", - "cType": "Span", - "offset_bits": 192 + "name": "month", + "cType": "int32", + "offset_bits": 96 } ] }, { - "name": "Match", - "file": "meos.h", + "name": "varlena", + "file": "postgres_ext_defs.in.h", "fields": [ { - "name": "i", - "cType": "int", + "name": "vl_len_", + "cType": "char[4]", "offset_bits": 0 }, { - "name": "j", - "cType": "int", + "name": "vl_dat", + "cType": "char[]", "offset_bits": 32 } ] - }, - { - "name": "SkipList", - "file": "meos.h", - "fields": [] - }, - { - "name": "RTree", - "file": "meos.h", - "fields": [] } ], "enums": [ @@ -34540,6 +60187,36 @@ } ] }, + { + "name": "H3Unit", + "file": "th3index_internal.h", + "values": [ + { + "name": "H3_UNIT_KM", + "value": 0 + }, + { + "name": "H3_UNIT_M", + "value": 1 + }, + { + "name": "H3_UNIT_RADS", + "value": 2 + }, + { + "name": "H3_UNIT_KM2", + "value": 3 + }, + { + "name": "H3_UNIT_M2", + "value": 4 + }, + { + "name": "H3_UNIT_RADS2", + "value": 5 + } + ] + }, { "name": "spatialRel", "file": "meos_geo.h", @@ -34561,6 +60238,20 @@ "value": 3 } ] + }, + { + "name": "SkipListType", + "file": "meos_internal.h", + "values": [ + { + "name": "TEMPORAL", + "value": 0 + }, + { + "name": "KEYVALUE", + "value": 1 + } + ] } ] } \ No newline at end of file diff --git a/codegen/src/main/java/FunctionsGenerator.java b/codegen/src/main/java/FunctionsGenerator.java index cf8cab50..2064f840 100644 --- a/codegen/src/main/java/FunctionsGenerator.java +++ b/codegen/src/main/java/FunctionsGenerator.java @@ -266,6 +266,10 @@ private String mapCTypeToJava(String cType) { // DateADT is int32 under the hood; Timestamp/TimestampTz are int64. case "DateADT" -> "int"; case "Timestamp", "TimestampTz" -> "long"; + // H3Index is a uint64 cell identifier (DGGRID/H3), not an opaque + // struct pointer; without this it hits the default branch and + // becomes Pointer, breaking every h3index/th3index binding. + case "H3Index" -> "long"; // Explicit enum names (in case not in JSON enums section) case "interpType", "RTreeSearchOp", diff --git a/codegen/src/test/java/FunctionsGeneratorTest.java b/codegen/src/test/java/FunctionsGeneratorTest.java index e8d91166..63e997c9 100644 --- a/codegen/src/test/java/FunctionsGeneratorTest.java +++ b/codegen/src/test/java/FunctionsGeneratorTest.java @@ -133,6 +133,7 @@ class MapCTypeToJavaTests { @Test void DateADT() throws Exception { assertEquals("int", mapJava("DateADT")); } @Test void Timestamp() throws Exception { assertEquals("long", mapJava("Timestamp")); } @Test void TimestampTz() throws Exception { assertEquals("long", mapJava("TimestampTz")); } + @Test void H3Index() throws Exception { assertEquals("long", mapJava("H3Index")); } @Test void charPointer() throws Exception { assertEquals("String", mapJava("char *")); } @Test void structPointer() throws Exception { assertEquals("Pointer", mapJava("STBox *")); } diff --git a/jmeos-core/src/main/java/functions/GeneratedFunctions.java b/jmeos-core/src/main/java/functions/GeneratedFunctions.java index 98385204..3dc0aae9 100644 --- a/jmeos-core/src/main/java/functions/GeneratedFunctions.java +++ b/jmeos-core/src/main/java/functions/GeneratedFunctions.java @@ -15,6 +15,22 @@ public class GeneratedFunctions { public interface MeosLibraryPartA { + Pointer meos_array_create(int elem_size); + + void meos_array_add(Pointer array, Pointer value); + + Pointer meos_array_get(Pointer array, int n); + + int meos_array_count(Pointer array); + + void meos_array_reset(Pointer array); + + void meos_array_reset_free(Pointer array); + + void meos_array_destroy(Pointer array); + + void meos_array_destroy_free(Pointer array); + Pointer rtree_create_intspan(); Pointer rtree_create_bigintspan(); @@ -35,9 +51,9 @@ public interface MeosLibraryPartA { void rtree_insert_temporal(Pointer rtree, Pointer temp, int id); - Pointer rtree_search(Pointer rtree, int op, Pointer query, Pointer count); + int rtree_search(Pointer rtree, int op, Pointer query, Pointer result); - Pointer rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer count); + int rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer result); void meos_error(int errlevel, int errcode, String format); @@ -283,9 +299,13 @@ public interface MeosLibraryPartA { Pointer bigint_to_set(long i); - Pointer bigint_to_span(int i); + Pointer bigint_to_span(long i); - Pointer bigint_to_spanset(int i); + Pointer bigint_to_spanset(long i); + + Pointer bigintspan_to_intspan(Pointer s); + + Pointer bigintspan_to_floatspan(Pointer s); Pointer date_to_set(int d); @@ -307,6 +327,8 @@ public interface MeosLibraryPartA { Pointer floatset_to_intset(Pointer s); + Pointer floatspan_to_bigintspan(Pointer s); + Pointer floatspan_to_intspan(Pointer s); Pointer floatspanset_to_intspanset(Pointer ss); @@ -319,6 +341,8 @@ public interface MeosLibraryPartA { Pointer intset_to_floatset(Pointer s); + Pointer intspan_to_bigintspan(Pointer s); + Pointer intspan_to_floatspan(Pointer s); Pointer intspanset_to_floatspanset(Pointer ss); @@ -859,10 +883,6 @@ public interface MeosLibraryPartA { boolean overafter_date_span(int d, Pointer s); - } - - public interface MeosLibraryPartB { - boolean overafter_date_spanset(int d, Pointer ss); boolean overafter_set_date(Pointer s, int d); @@ -1435,6 +1455,8 @@ public interface MeosLibraryPartB { Pointer spanset_to_tbox(Pointer ss); + Pointer tbox_to_bigintspan(Pointer box); + Pointer tbox_to_intspan(Pointer box); Pointer tbox_to_floatspan(Pointer box); @@ -1451,6 +1473,10 @@ public interface MeosLibraryPartB { boolean tbox_hasx(Pointer box); + } + + public interface MeosLibraryPartB { + boolean tbox_tmax(Pointer box, Pointer result); boolean tbox_tmax_inc(Pointer box, Pointer result); @@ -1475,6 +1501,10 @@ public interface MeosLibraryPartB { boolean tboxint_xmin(Pointer box, Pointer result); + Pointer tbigintbox_expand(Pointer box, long i); + + Pointer tbigintbox_shift_scale(Pointer box, long shift, long width, boolean hasshift, boolean haswidth); + Pointer tbox_expand_time(Pointer box, Pointer interv); Pointer tbox_round(Pointer box, int maxdd); @@ -1533,6 +1563,12 @@ public interface MeosLibraryPartB { boolean tbox_ne(Pointer box1, Pointer box2); + Pointer tbigint_from_mfjson(String str); + + Pointer tbigint_in(String str); + + String tbigint_out(Pointer temp); + Pointer tbool_from_mfjson(String str); Pointer tbool_in(String str); @@ -1567,6 +1603,16 @@ public interface MeosLibraryPartB { String ttext_out(Pointer temp); + Pointer tbigint_from_base_temp(long i, Pointer temp); + + Pointer tbigintinst_make(long i, long t); + + Pointer tbigintseq_from_base_tstzset(long i, Pointer s); + + Pointer tbigintseq_from_base_tstzspan(long i, Pointer s); + + Pointer tbigintseqset_from_base_tstzspanset(long i, Pointer ss); + Pointer tbool_from_base_temp(boolean b, Pointer temp); Pointer tboolinst_make(boolean b, long t); @@ -1615,18 +1661,40 @@ public interface MeosLibraryPartB { Pointer ttextseqset_from_base_tstzspanset(Pointer txt, Pointer ss); + Pointer tbigint_to_tfloat(Pointer temp); + + Pointer tbigint_to_tint(Pointer temp); + Pointer tbool_to_tint(Pointer temp); Pointer temporal_to_tstzspan(Pointer temp); + Pointer tfloat_to_tbigint(Pointer temp); + Pointer tfloat_to_tint(Pointer temp); + Pointer tint_to_tbigint(Pointer temp); + Pointer tint_to_tfloat(Pointer temp); Pointer tnumber_to_span(Pointer temp); Pointer tnumber_to_tbox(Pointer temp); + long tbigint_end_value(Pointer temp); + + long tbigint_max_value(Pointer temp); + + long tbigint_min_value(Pointer temp); + + long tbigint_start_value(Pointer temp); + + boolean tbigint_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); + + boolean tbigint_value_n(Pointer temp, long n, Pointer result); + + Pointer tbigint_values(Pointer temp, Pointer count); + boolean tbool_end_value(Pointer temp); boolean tbool_start_value(Pointer temp); @@ -1707,10 +1775,6 @@ public interface MeosLibraryPartB { Pointer tfloat_values(Pointer temp, Pointer count); - } - - public interface MeosLibraryPartC { - int tint_end_value(Pointer temp); int tint_max_value(Pointer temp); @@ -1749,6 +1813,12 @@ public interface MeosLibraryPartC { double float_degrees(double value, boolean normalize); + Pointer tbigint_scale_value(Pointer temp, long width); + + Pointer tbigint_shift_scale_value(Pointer temp, long shift, long width); + + Pointer tbigint_shift_value(Pointer temp, long shift); + Pointer temparr_round(Pointer temp, int count, int maxdd); Pointer temporal_round(Pointer temp, int maxdd); @@ -1807,6 +1877,10 @@ public interface MeosLibraryPartC { Pointer temporal_update(Pointer temp1, Pointer temp2, boolean connect); + Pointer tbigint_at_value(Pointer temp, long i); + + Pointer tbigint_minus_value(Pointer temp, long i); + Pointer tbool_at_value(Pointer temp, boolean b); Pointer tbool_minus_value(Pointer temp, boolean b); @@ -1881,6 +1955,8 @@ public interface MeosLibraryPartC { boolean temporal_ne(Pointer temp1, Pointer temp2); + int always_eq_bigint_tbigint(long i, Pointer temp); + int always_eq_bool_tbool(boolean b, Pointer temp); int always_eq_float_tfloat(double d, Pointer temp); @@ -1893,16 +1969,22 @@ public interface MeosLibraryPartC { int always_eq_text_ttext(Pointer txt, Pointer temp); + int always_eq_tbigint_bigint(Pointer temp, long i); + int always_eq_tfloat_float(Pointer temp, double d); int always_eq_tint_int(Pointer temp, int i); int always_eq_ttext_text(Pointer temp, Pointer txt); + int always_ge_bigint_tbigint(long i, Pointer temp); + int always_ge_float_tfloat(double d, Pointer temp); int always_ge_int_tint(int i, Pointer temp); + int always_ge_tbigint_bigint(Pointer temp, long i); + int always_ge_temporal_temporal(Pointer temp1, Pointer temp2); int always_ge_text_ttext(Pointer txt, Pointer temp); @@ -1913,10 +1995,14 @@ public interface MeosLibraryPartC { int always_ge_ttext_text(Pointer temp, Pointer txt); + int always_gt_bigint_tbigint(long i, Pointer temp); + int always_gt_float_tfloat(double d, Pointer temp); int always_gt_int_tint(int i, Pointer temp); + int always_gt_tbigint_bigint(Pointer temp, long i); + int always_gt_temporal_temporal(Pointer temp1, Pointer temp2); int always_gt_text_ttext(Pointer txt, Pointer temp); @@ -1927,10 +2013,14 @@ public interface MeosLibraryPartC { int always_gt_ttext_text(Pointer temp, Pointer txt); + int always_le_bigint_tbigint(long i, Pointer temp); + int always_le_float_tfloat(double d, Pointer temp); int always_le_int_tint(int i, Pointer temp); + int always_le_tbigint_bigint(Pointer temp, long i); + int always_le_temporal_temporal(Pointer temp1, Pointer temp2); int always_le_text_ttext(Pointer txt, Pointer temp); @@ -1941,6 +2031,8 @@ public interface MeosLibraryPartC { int always_le_ttext_text(Pointer temp, Pointer txt); + int always_lt_bigint_tbigint(long i, Pointer temp); + int always_lt_float_tfloat(double d, Pointer temp); int always_lt_int_tint(int i, Pointer temp); @@ -1961,8 +2053,14 @@ public interface MeosLibraryPartC { int always_ne_int_tint(int i, Pointer temp); + int always_lt_tbigint_bigint(Pointer temp, long i); + + int always_ne_bigint_tbigint(long i, Pointer temp); + int always_ne_tbool_bool(Pointer temp, boolean b); + int always_ne_tbigint_bigint(Pointer temp, long i); + int always_ne_temporal_temporal(Pointer temp1, Pointer temp2); int always_ne_text_ttext(Pointer txt, Pointer temp); @@ -1973,12 +2071,16 @@ public interface MeosLibraryPartC { int always_ne_ttext_text(Pointer temp, Pointer txt); + int ever_eq_bigint_tbigint(long i, Pointer temp); + int ever_eq_bool_tbool(boolean b, Pointer temp); int ever_eq_float_tfloat(double d, Pointer temp); int ever_eq_int_tint(int i, Pointer temp); + int ever_eq_tbigint_bigint(Pointer temp, long i); + int ever_eq_tbool_bool(Pointer temp, boolean b); int ever_eq_temporal_temporal(Pointer temp1, Pointer temp2); @@ -1991,10 +2093,14 @@ public interface MeosLibraryPartC { int ever_eq_ttext_text(Pointer temp, Pointer txt); + int ever_ge_bigint_tbigint(long i, Pointer temp); + int ever_ge_float_tfloat(double d, Pointer temp); int ever_ge_int_tint(int i, Pointer temp); + int ever_ge_tbigint_bigint(Pointer temp, long i); + int ever_ge_temporal_temporal(Pointer temp1, Pointer temp2); int ever_ge_text_ttext(Pointer txt, Pointer temp); @@ -2005,10 +2111,14 @@ public interface MeosLibraryPartC { int ever_ge_ttext_text(Pointer temp, Pointer txt); + int ever_gt_bigint_tbigint(long i, Pointer temp); + int ever_gt_float_tfloat(double d, Pointer temp); int ever_gt_int_tint(int i, Pointer temp); + int ever_gt_tbigint_bigint(Pointer temp, long i); + int ever_gt_temporal_temporal(Pointer temp1, Pointer temp2); int ever_gt_text_ttext(Pointer txt, Pointer temp); @@ -2019,10 +2129,14 @@ public interface MeosLibraryPartC { int ever_gt_ttext_text(Pointer temp, Pointer txt); + int ever_le_bigint_tbigint(long i, Pointer temp); + int ever_le_float_tfloat(double d, Pointer temp); int ever_le_int_tint(int i, Pointer temp); + int ever_le_tbigint_bigint(Pointer temp, long i); + int ever_le_temporal_temporal(Pointer temp1, Pointer temp2); int ever_le_text_ttext(Pointer txt, Pointer temp); @@ -2033,10 +2147,14 @@ public interface MeosLibraryPartC { int ever_le_ttext_text(Pointer temp, Pointer txt); + int ever_lt_bigint_tbigint(long i, Pointer temp); + int ever_lt_float_tfloat(double d, Pointer temp); int ever_lt_int_tint(int i, Pointer temp); + int ever_lt_tbigint_bigint(Pointer temp, long i); + int ever_lt_temporal_temporal(Pointer temp1, Pointer temp2); int ever_lt_text_ttext(Pointer txt, Pointer temp); @@ -2047,12 +2165,16 @@ public interface MeosLibraryPartC { int ever_lt_ttext_text(Pointer temp, Pointer txt); + int ever_ne_bigint_tbigint(long i, Pointer temp); + int ever_ne_bool_tbool(boolean b, Pointer temp); int ever_ne_float_tfloat(double d, Pointer temp); int ever_ne_int_tint(int i, Pointer temp); + int ever_ne_tbigint_bigint(Pointer temp, long i); + int ever_ne_tbool_bool(Pointer temp, boolean b); int ever_ne_temporal_temporal(Pointer temp1, Pointer temp2); @@ -2353,40 +2475,56 @@ public interface MeosLibraryPartC { Pointer tor_tbool_tbool(Pointer temp1, Pointer temp2); + Pointer add_bigint_tbigint(long i, Pointer tnumber); + Pointer add_float_tfloat(double d, Pointer tnumber); Pointer add_int_tint(int i, Pointer tnumber); + Pointer add_tbigint_bigint(Pointer tnumber, long i); + Pointer add_tfloat_float(Pointer tnumber, double d); Pointer add_tint_int(Pointer tnumber, int i); Pointer add_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); + Pointer div_bigint_tbigint(long i, Pointer tnumber); + Pointer div_float_tfloat(double d, Pointer tnumber); Pointer div_int_tint(int i, Pointer tnumber); + Pointer div_tbigint_bigint(Pointer tnumber, long i); + Pointer div_tfloat_float(Pointer tnumber, double d); Pointer div_tint_int(Pointer tnumber, int i); Pointer div_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); - Pointer mult_float_tfloat(double d, Pointer tnumber); + Pointer mul_bigint_tbigint(long i, Pointer tnumber); + + Pointer mul_float_tfloat(double d, Pointer tnumber); - Pointer mult_int_tint(int i, Pointer tnumber); + Pointer mul_int_tint(int i, Pointer tnumber); - Pointer mult_tfloat_float(Pointer tnumber, double d); + Pointer mul_tbigint_bigint(Pointer tnumber, long i); - Pointer mult_tint_int(Pointer tnumber, int i); + Pointer mul_tfloat_float(Pointer tnumber, double d); - Pointer mult_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); + Pointer mul_tint_int(Pointer tnumber, int i); + + Pointer mul_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); + + Pointer sub_bigint_tbigint(long i, Pointer tnumber); Pointer sub_float_tfloat(double d, Pointer tnumber); Pointer sub_int_tint(int i, Pointer tnumber); + Pointer sub_tbigint_bigint(Pointer tnumber, long i); + Pointer sub_tfloat_float(Pointer tnumber, double d); Pointer sub_tint_int(Pointer tnumber, int i); @@ -2451,6 +2589,10 @@ public interface MeosLibraryPartC { Pointer temporal_extent_transfn(Pointer s, Pointer temp); + Pointer temporal_merge_transfn(Pointer state, Pointer temp); + + Pointer temporal_merge_combinefn(Pointer state1, Pointer state2); + Pointer temporal_tagg_finalfn(Pointer state); Pointer temporal_tcount_transfn(Pointer state, Pointer temp); @@ -2555,16 +2697,194 @@ public interface MeosLibraryPartC { Pointer tint_value_time_split(Pointer temp, long size, Pointer duration, int vorigin, long torigin, Pointer value_bins, Pointer time_bins, Pointer count); - } - - public interface MeosLibraryPartD { - Pointer tintbox_time_tiles(Pointer box, Pointer duration, long torigin, Pointer count); Pointer tintbox_value_tiles(Pointer box, int xsize, int xorigin, Pointer count); Pointer tintbox_value_time_tiles(Pointer box, int xsize, Pointer duration, int xorigin, long torigin, Pointer count); + void meos_initialize_noexit_error_handler(); + + boolean h3_are_neighbor_cells_meos(long origin, long destination); + + long h3_cells_to_directed_edge_meos(long origin, long destination); + + boolean h3_is_valid_directed_edge_meos(long edge); + + long h3_get_directed_edge_origin_meos(long edge); + + long h3_get_directed_edge_destination_meos(long edge); + + long h3_cell_to_parent_meos(long origin, int resolution); + + long h3_cell_to_center_child_meos(long origin, int resolution); + + long h3_cell_to_child_pos_meos(long child, int parentRes); + + long h3_child_pos_to_cell_meos(long childPos, long parent, int childRes); + + int h3_get_resolution_meos(long hex); + + int h3_get_base_cell_number_meos(long hex); + + boolean h3_is_valid_cell_meos(long hex); + + boolean h3_is_res_class_iii_meos(long hex); + + boolean h3_is_pentagon_meos(long hex); + + long h3_get_num_cells_meos(int resolution); + + long h3_grid_distance_meos(long originIndex, long h3Index); + + long h3_cell_to_vertex_meos(long cell, int vertexNum); + + boolean h3_is_valid_vertex_meos(long vertex); + + long h3index_parse(String str); + + String h3index_to_string(long cell); + + boolean h3index_eq(long a, long b); + + boolean h3index_ne(long a, long b); + + boolean h3index_lt(long a, long b); + + boolean h3index_le(long a, long b); + + boolean h3index_gt(long a, long b); + + boolean h3index_ge(long a, long b); + + int h3index_cmp(long a, long b); + + int h3index_hash(long cell); + + Pointer h3_grid_disk(long origin, int k); + + Pointer h3_grid_ring(long origin, int k); + + Pointer h3_grid_path_cells(long start, long end); + + Pointer h3_cell_to_children(long origin, int childRes); + + Pointer h3_compact_cells(Pointer cells); + + Pointer h3_uncompact_cells(Pointer cells, int res); + + Pointer h3_origin_to_directed_edges(long origin); + + Pointer h3_cell_to_vertexes(long cell); + + Pointer h3_get_icosahedron_faces(long cell); + + boolean ensure_valid_th3index_th3index(Pointer temp1, Pointer temp2); + + boolean ensure_valid_th3index_h3index(Pointer temp, long cell); + + boolean ensure_valid_th3index_tgeogpoint(Pointer temp1, Pointer temp2); + + int datum2_h3index_eq(int d1, int d2, int type); + + int datum2_h3index_ne(int d1, int d2, int type); + + void th3indexinst_set_stbox(Pointer inst, Pointer box); + + void th3indexinstarr_set_stbox(Pointer instants, int count, Pointer box); + + void th3indexseq_expand_stbox(Pointer seq, Pointer inst); + + long h3_gs_point_to_cell(Pointer point, int resolution); + + Pointer h3_cell_to_gs_point(long cell); + + Pointer h3_cell_to_gs_boundary(long cell); + + Pointer cell_boundary_to_gs(Pointer bnd); + + double h3_sample_step_deg(int resolution); + + long h3_latlng_deg_to_cell(double lat_deg, double lng_deg, int resolution); + + long h3_cell_to_parent_next_meos(long cell); + + long h3_cell_to_center_child_next_meos(long cell); + + Pointer h3_directed_edge_to_gs_boundary(long edge); + + Pointer h3_vertex_to_gs_point(long vertex); + + Pointer h3_cell_to_local_ij_meos(long origin, long cell); + + long h3_local_ij_to_cell_meos(long origin, Pointer coord); + + int h3_unit_from_cstring(String unit); + + double h3_cell_area_meos(long cell, int unit); + + double h3_edge_length_meos(long edge, int unit); + + double h3_gs_great_circle_distance_meos(Pointer a, Pointer b, int unit); + + int datum_h3_get_resolution(int d); + + int datum_h3_get_base_cell_number(int d); + + int datum_h3_is_valid_cell(int d); + + int datum_h3_is_res_class_iii(int d); + + int datum_h3_is_pentagon(int d); + + int datum_h3_cell_to_parent(int cell_d, int res_d); + + int datum_h3_cell_to_parent_next(int cell_d); + + int datum_h3_cell_to_center_child(int cell_d, int res_d); + + int datum_h3_cell_to_center_child_next(int cell_d); + + int datum_h3_cell_to_child_pos(int cell_d, int parent_res_d); + + int datum_h3_child_pos_to_cell(int pos_d, int parent_d, int child_res_d); + + int datum_h3_are_neighbor_cells(int origin_d, int dest_d); + + int datum_h3_cells_to_directed_edge(int origin_d, int dest_d); + + int datum_h3_is_valid_directed_edge(int d); + + int datum_h3_get_directed_edge_origin(int d); + + int datum_h3_get_directed_edge_destination(int d); + + int datum_h3_directed_edge_to_boundary(int d); + + int datum_h3_cell_to_vertex(int cell_d, int vnum_d); + + int datum_h3_vertex_to_latlng(int d); + + int datum_h3_is_valid_vertex(int d); + + int datum_h3_grid_distance(int origin_d, int dest_d); + + int datum_h3_cell_to_local_ij(int origin_d, int cell_d); + + int datum_h3_local_ij_to_cell(int origin_d, int coord_d); + + int datum_h3_latlng_to_cell(int point_d, int res_d); + + int datum_h3_cell_to_latlng(int d); + + int datum_h3_cell_to_boundary(int d); + + int datum_h3_cell_area(int cell_d, int unit_d); + + int datum_h3_edge_length(int edge_d, int unit_d); + + int datum_h3_great_circle_distance(int a_d, int b_d, int unit_d); + Pointer geo_as_ewkb(Pointer gs, String endian, Pointer size); String geo_as_ewkt(Pointer gs, int precision); @@ -2615,6 +2935,10 @@ public interface MeosLibraryPartD { Pointer geog_to_geom(Pointer geog); + } + + public interface MeosLibraryPartC { + boolean geo_is_empty(Pointer g); boolean geo_is_unitary(Pointer gs); @@ -3079,11 +3403,15 @@ public interface MeosLibraryPartD { Pointer tgeo_minus_value(Pointer temp, Pointer gs); - Pointer tpoint_at_geom(Pointer temp, Pointer gs, Pointer zspan); + Pointer tpoint_at_elevation(Pointer temp, Pointer s); + + Pointer tpoint_at_geom(Pointer temp, Pointer gs); Pointer tpoint_at_value(Pointer temp, Pointer gs); - Pointer tpoint_minus_geom(Pointer temp, Pointer gs, Pointer zspan); + Pointer tpoint_minus_elevation(Pointer temp, Pointer s); + + Pointer tpoint_minus_geom(Pointer temp, Pointer gs); Pointer tpoint_minus_value(Pointer temp, Pointer gs); @@ -3309,41 +3637,41 @@ public interface MeosLibraryPartD { int etouches_tpoint_geo(Pointer temp, Pointer gs); - Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue); + Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp); - Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue); + Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs); - Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue); + Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2); - Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue); + Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp); - Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue); + Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs); - Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue); + Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2); - Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue); + Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp); - Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue); + Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs); - Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue); + Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2); - Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist, boolean restr, boolean atvalue); + Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist); - Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist, boolean restr, boolean atvalue); + Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist); - Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist, boolean restr, boolean atvalue); + Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist); - Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue); + Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp); - Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue); + Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs); - Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue); + Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2); - Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue); + Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp); - Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue); + Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs); - Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue); + Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2); Pointer tdistance_tgeo_geo(Pointer temp, Pointer gs); @@ -3367,6 +3695,10 @@ public interface MeosLibraryPartD { Pointer shortestline_tgeo_tgeo(Pointer temp1, Pointer temp2); + double tgeoarr_tgeoarr_mindist(Pointer arr1, int count1, Pointer arr2, int count2); + + double mindistance_tgeo_tgeo(Pointer temp1, Pointer temp2, double threshold); + Pointer tpoint_tcentroid_finalfn(Pointer state); Pointer tpoint_tcentroid_transfn(Pointer state, Pointer temp); @@ -3397,12082 +3729,22880 @@ public interface MeosLibraryPartD { Pointer geo_cluster_within(Pointer geoms, int ngeoms, double tolerance, Pointer count); - } + int acovers_geo_tgeo(Pointer gs, Pointer temp); - private static final String _LIB = "libmeos.so"; + int acovers_tgeo_geo(Pointer temp, Pointer gs); - static final MeosLibraryPartA _meos_a = - JarLibraryLoader.create(MeosLibraryPartA.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartB _meos_b = - JarLibraryLoader.create(MeosLibraryPartB.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartC _meos_c = - JarLibraryLoader.create(MeosLibraryPartC.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartD _meos_d = - JarLibraryLoader.create(MeosLibraryPartD.class, _LIB).getLibraryInstance(); + String cbuffer_as_ewkt(Pointer cb, int maxdd); - private static final java.util.Map _dispatch; - static { - _dispatch = new java.util.HashMap<>(4096); - for (java.lang.reflect.Method _m : MeosLibraryPartA.class.getMethods()) - _dispatch.put(_m.getName(), _meos_a); - for (java.lang.reflect.Method _m : MeosLibraryPartB.class.getMethods()) - _dispatch.put(_m.getName(), _meos_b); - for (java.lang.reflect.Method _m : MeosLibraryPartC.class.getMethods()) - _dispatch.put(_m.getName(), _meos_c); - for (java.lang.reflect.Method _m : MeosLibraryPartD.class.getMethods()) - _dispatch.put(_m.getName(), _meos_d); - } + String cbuffer_as_hexwkb(Pointer cb, byte variant, Pointer size); + String cbuffer_as_text(Pointer cb, int maxdd); + Pointer cbuffer_as_wkb(Pointer cb, byte variant, Pointer size_out); - @SuppressWarnings("unused") - public static Pointer rtree_create_intspan() { - var _result = _meos_a.rtree_create_intspan(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_from_hexwkb(String hexwkb); - @SuppressWarnings("unused") - public static Pointer rtree_create_bigintspan() { - var _result = _meos_a.rtree_create_bigintspan(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_from_wkb(Pointer wkb, long size); - @SuppressWarnings("unused") - public static Pointer rtree_create_floatspan() { - var _result = _meos_a.rtree_create_floatspan(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_in(String str); - @SuppressWarnings("unused") - public static Pointer rtree_create_datespan() { - var _result = _meos_a.rtree_create_datespan(); - MeosErrorHandler.checkError(); - return _result; - } + String cbuffer_out(Pointer cb, int maxdd); - @SuppressWarnings("unused") - public static Pointer rtree_create_tstzspan() { - var _result = _meos_a.rtree_create_tstzspan(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_copy(Pointer cb); - @SuppressWarnings("unused") - public static Pointer rtree_create_tbox() { - var _result = _meos_a.rtree_create_tbox(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_make(Pointer point, double radius); - @SuppressWarnings("unused") - public static Pointer rtree_create_stbox() { - var _result = _meos_a.rtree_create_stbox(); - MeosErrorHandler.checkError(); - return _result; - } + Pointer cbuffer_to_geom(Pointer cb); - @SuppressWarnings("unused") - public static void rtree_free(Pointer rtree) { - _meos_a.rtree_free(rtree); - MeosErrorHandler.checkError(); + Pointer cbuffer_to_stbox(Pointer cb); + + Pointer cbufferarr_to_geom(Pointer cbarr, int count); + + Pointer geom_to_cbuffer(Pointer gs); + + int cbuffer_hash(Pointer cb); + + long cbuffer_hash_extended(Pointer cb, long seed); + + Pointer cbuffer_point(Pointer cb); + + double cbuffer_radius(Pointer cb); + + Pointer cbuffer_round(Pointer cb, int maxdd); + + Pointer cbufferarr_round(Pointer cbarr, int count, int maxdd); + + void cbuffer_set_srid(Pointer cb, int srid); + + int cbuffer_srid(Pointer cb); + + Pointer cbuffer_transform(Pointer cb, int srid); + + Pointer cbuffer_transform_pipeline(Pointer cb, String pipelinestr, int srid, boolean is_forward); + + int contains_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + int covers_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + int disjoint_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + int dwithin_cbuffer_cbuffer(Pointer cb1, Pointer cb2, double dist); + + int intersects_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + int touches_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + Pointer cbuffer_tstzspan_to_stbox(Pointer cb, Pointer s); + + Pointer cbuffer_timestamptz_to_stbox(Pointer cb, long t); + + double distance_cbuffer_cbuffer(Pointer cb1, Pointer cb2); + + double distance_cbuffer_geo(Pointer cb, Pointer gs); + + double distance_cbuffer_stbox(Pointer cb, Pointer box); + + double nad_cbuffer_stbox(Pointer cb, Pointer box); + + int cbuffer_cmp(Pointer cb1, Pointer cb2); + + boolean cbuffer_eq(Pointer cb1, Pointer cb2); + + boolean cbuffer_ge(Pointer cb1, Pointer cb2); + + boolean cbuffer_gt(Pointer cb1, Pointer cb2); + + boolean cbuffer_le(Pointer cb1, Pointer cb2); + + boolean cbuffer_lt(Pointer cb1, Pointer cb2); + + boolean cbuffer_ne(Pointer cb1, Pointer cb2); + + boolean cbuffer_nsame(Pointer cb1, Pointer cb2); + + boolean cbuffer_same(Pointer cb1, Pointer cb2); + + Pointer cbufferset_in(String str); + + String cbufferset_out(Pointer s, int maxdd); + + Pointer cbufferset_make(Pointer values, int count); + + Pointer cbuffer_to_set(Pointer cb); + + Pointer cbufferset_end_value(Pointer s); + + Pointer cbufferset_start_value(Pointer s); + + boolean cbufferset_value_n(Pointer s, int n, Pointer result); + + Pointer cbufferset_values(Pointer s); + + Pointer cbuffer_union_transfn(Pointer state, Pointer cb); + + boolean contained_cbuffer_set(Pointer cb, Pointer s); + + boolean contains_set_cbuffer(Pointer s, Pointer cb); + + Pointer intersection_cbuffer_set(Pointer cb, Pointer s); + + Pointer intersection_set_cbuffer(Pointer s, Pointer cb); + + Pointer minus_cbuffer_set(Pointer cb, Pointer s); + + Pointer minus_set_cbuffer(Pointer s, Pointer cb); + + Pointer union_cbuffer_set(Pointer cb, Pointer s); + + Pointer union_set_cbuffer(Pointer s, Pointer cb); + + Pointer tcbuffer_in(String str); + + Pointer tcbuffer_from_mfjson(String mfjson); + + Pointer tcbuffer_make(Pointer tpoint, Pointer tfloat); + + Pointer tcbuffer_points(Pointer temp); + + Pointer tcbuffer_radius(Pointer temp); + + Pointer tcbuffer_trav_area(Pointer temp, boolean merge_union); + + Pointer tcbuffer_to_tfloat(Pointer temp); + + Pointer tcbuffer_to_tgeompoint(Pointer temp); + + Pointer tgeometry_to_tcbuffer(Pointer temp); + + Pointer tcbuffer_expand(Pointer temp, double dist); + + Pointer tcbuffer_at_cbuffer(Pointer temp, Pointer cb); + + Pointer tcbuffer_at_geom(Pointer temp, Pointer gs); + + Pointer tcbuffer_at_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tcbuffer_minus_cbuffer(Pointer temp, Pointer cb); + + Pointer tcbuffer_minus_geom(Pointer temp, Pointer gs); + + Pointer tcbuffer_minus_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tdistance_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tdistance_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer tdistance_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + double nad_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + double nad_tcbuffer_geo(Pointer temp, Pointer gs); + + double nad_tcbuffer_stbox(Pointer temp, Pointer box); + + double nad_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer nai_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer nai_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer nai_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer shortestline_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer shortestline_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer shortestline_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int always_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int always_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int always_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int always_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int always_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int always_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int ever_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int ever_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int ever_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int ever_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int ever_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int ever_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer teq_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer teq_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tne_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer tne_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int acontains_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int acontains_geo_tcbuffer(Pointer gs, Pointer temp); + + int acontains_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int acontains_tcbuffer_geo(Pointer temp, Pointer gs); + + int acovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int acovers_geo_tcbuffer(Pointer gs, Pointer temp); + + int acovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int acovers_tcbuffer_geo(Pointer temp, Pointer gs); + + int adisjoint_tcbuffer_geo(Pointer temp, Pointer gs); + + int adisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int adisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int adwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); + + int adwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); + + int adwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); + + int aintersects_tcbuffer_geo(Pointer temp, Pointer gs); + + int aintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int aintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int atouches_tcbuffer_geo(Pointer temp, Pointer gs); + + int atouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int atouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int econtains_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int econtains_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int econtains_tcbuffer_geo(Pointer temp, Pointer gs); + + int ecovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + int ecovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int ecovers_tcbuffer_geo(Pointer temp, Pointer gs); + + int ecovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int edisjoint_tcbuffer_geo(Pointer temp, Pointer gs); + + int edisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int edwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); + + int edwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); + + int edwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); + + int eintersects_tcbuffer_geo(Pointer temp, Pointer gs); + + int eintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int eintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int etouches_tcbuffer_geo(Pointer temp, Pointer gs); + + int etouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + int etouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer tcontains_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer tcontains_geo_tcbuffer(Pointer gs, Pointer temp); + + Pointer tcontains_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer tcontains_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tcontains_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer tcovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer tcovers_geo_tcbuffer(Pointer gs, Pointer temp); + + Pointer tcovers_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer tcovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tcovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer tdwithin_geo_tcbuffer(Pointer gs, Pointer temp, double dist); + + Pointer tdwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); + + Pointer tdwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); + + Pointer tdwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); + + Pointer tdisjoint_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer tdisjoint_geo_tcbuffer(Pointer gs, Pointer temp); + + Pointer tdisjoint_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer tdisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tdisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer tintersects_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer tintersects_geo_tcbuffer(Pointer gs, Pointer temp); + + Pointer tintersects_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer tintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer tintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + Pointer ttouches_geo_tcbuffer(Pointer gs, Pointer temp); + + Pointer ttouches_tcbuffer_geo(Pointer temp, Pointer gs); + + Pointer ttouches_cbuffer_tcbuffer(Pointer cb, Pointer temp); + + Pointer ttouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); + + Pointer ttouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + int acovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); + + long h3index_in(String str); + + String h3index_out(long cell); + + Pointer th3index_in(String str); + + Pointer th3indexinst_in(String str); + + Pointer th3indexseq_in(String str, int interp); + + Pointer th3indexseqset_in(String str); + + Pointer th3index_make(long value, long t); + + Pointer th3indexinst_make(long value, long t); + + Pointer th3indexseq_make(Pointer values, Pointer times, int count, boolean lower_inc, boolean upper_inc); + + Pointer th3indexseqset_make(Pointer sequences, int count); + + long th3index_start_value(Pointer temp); + + long th3index_end_value(Pointer temp); + + boolean th3index_value_n(Pointer temp, int n, Pointer result); + + Pointer th3index_values(Pointer temp, Pointer count); + + boolean th3index_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer result); + + Pointer tbigint_to_th3index(Pointer temp); + + Pointer th3index_to_tbigint(Pointer temp); + + int ever_eq_h3index_th3index(long cell, Pointer temp); + + int ever_eq_th3index_h3index(Pointer temp, long cell); + + int ever_ne_h3index_th3index(long cell, Pointer temp); + + int ever_ne_th3index_h3index(Pointer temp, long cell); + + int always_eq_h3index_th3index(long cell, Pointer temp); + + int always_eq_th3index_h3index(Pointer temp, long cell); + + int always_ne_h3index_th3index(long cell, Pointer temp); + + int always_ne_th3index_h3index(Pointer temp, long cell); + + int ever_eq_th3index_th3index(Pointer temp1, Pointer temp2); + + int ever_ne_th3index_th3index(Pointer temp1, Pointer temp2); + + int always_eq_th3index_th3index(Pointer temp1, Pointer temp2); + + int always_ne_th3index_th3index(Pointer temp1, Pointer temp2); + + Pointer teq_h3index_th3index(long cell, Pointer temp); + + Pointer teq_th3index_h3index(Pointer temp, long cell); + + Pointer teq_th3index_th3index(Pointer temp1, Pointer temp2); + + Pointer tne_h3index_th3index(long cell, Pointer temp); + + Pointer tne_th3index_h3index(Pointer temp, long cell); + + Pointer tne_th3index_th3index(Pointer temp1, Pointer temp2); + + Pointer th3index_get_resolution(Pointer temp); + + Pointer th3index_get_base_cell_number(Pointer temp); + + Pointer th3index_is_valid_cell(Pointer temp); + + Pointer th3index_is_res_class_iii(Pointer temp); + + Pointer th3index_is_pentagon(Pointer temp); + + Pointer th3index_cell_to_parent(Pointer temp, int resolution); + + Pointer th3index_cell_to_parent_next(Pointer temp); + + Pointer th3index_cell_to_center_child(Pointer temp, int resolution); + + Pointer th3index_cell_to_center_child_next(Pointer temp); + + Pointer th3index_cell_to_child_pos(Pointer temp, int parent_res); + + Pointer th3index_child_pos_to_cell(Pointer child_pos, Pointer parent, int child_res); + + Pointer tgeogpoint_to_th3index(Pointer temp, int resolution); + + Pointer tgeompoint_to_th3index(Pointer temp, int resolution); + + Pointer th3index_to_tgeogpoint(Pointer temp); + + Pointer th3index_to_tgeompoint(Pointer temp); + + Pointer th3index_cell_to_boundary(Pointer temp); + + Pointer geo_to_h3index_set(Pointer gs, int resolution); + + int ever_eq_h3indexset_th3index(Pointer cells, Pointer th3idx); + + Pointer th3index_are_neighbor_cells(Pointer origin, Pointer dest); + + Pointer th3index_cells_to_directed_edge(Pointer origin, Pointer dest); + + Pointer th3index_is_valid_directed_edge(Pointer edge); + + Pointer th3index_get_directed_edge_origin(Pointer edge); + + Pointer th3index_get_directed_edge_destination(Pointer edge); + + Pointer th3index_directed_edge_to_boundary(Pointer edge); + + Pointer th3index_cell_to_vertex(Pointer temp, int vertex_num); + + Pointer th3index_vertex_to_latlng(Pointer temp); + + Pointer th3index_is_valid_vertex(Pointer temp); + + Pointer th3index_grid_distance(Pointer origin, Pointer dest); + + Pointer th3index_cell_to_local_ij(Pointer origin, Pointer cell); + + Pointer th3index_local_ij_to_cell(Pointer origin, Pointer coord); + + Pointer th3index_cell_area(Pointer temp, String unit); + + Pointer th3index_edge_length(Pointer temp, String unit); + + Pointer tgeogpoint_great_circle_distance(Pointer a, Pointer b, String unit); + + Pointer gsl_get_generation_rng(); + + Pointer gsl_get_aggregation_rng(); + + int datum_ceil(Pointer d); + + int datum_degrees(Pointer d, Pointer normalize); + + int datum_float_round(Pointer value, Pointer size); + + int datum_floor(Pointer d); + + int datum_hash(Pointer d, int basetype); + + long datum_hash_extended(Pointer d, int basetype, long seed); + + int datum_radians(Pointer d); + + void floatspan_round_set(Pointer s, int maxdd, Pointer result); + + Pointer set_in(String str, int basetype); + + String set_out(Pointer s, int maxdd); + + Pointer span_in(String str, int spantype); + + String span_out(Pointer s, int maxdd); + + Pointer spanset_in(String str, int spantype); + + String spanset_out(Pointer ss, int maxdd); + + Pointer set_make(Pointer values, int count, int basetype, boolean order); + + Pointer set_make_exp(Pointer values, int count, int maxcount, int basetype, boolean order); + + Pointer set_make_free(Pointer values, int count, int basetype, boolean order); + + Pointer span_make(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype); + + void span_set(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype, int spantype, Pointer s); + + Pointer spanset_make_exp(Pointer spans, int count, int maxcount, boolean normalize, boolean order); + + Pointer spanset_make_free(Pointer spans, int count, boolean normalize, boolean order); + + Pointer set_span(Pointer s); + + Pointer set_spanset(Pointer s); + + void value_set_span(Pointer value, int basetype, Pointer s); + + Pointer value_set(Pointer d, int basetype); + + Pointer value_span(Pointer d, int basetype); + + Pointer value_spanset(Pointer d, int basetype); + + int numspan_width(Pointer s); + + int numspanset_width(Pointer ss, boolean boundspan); + + int set_end_value(Pointer s); + + int set_mem_size(Pointer s); + + void set_set_subspan(Pointer s, int minidx, int maxidx, Pointer result); + + void set_set_span(Pointer s, Pointer result); + + int set_start_value(Pointer s); + + boolean set_value_n(Pointer s, int n, Pointer result); + + Pointer set_vals(Pointer s); + + Pointer set_values(Pointer s); + + int spanset_lower(Pointer ss); + + int spanset_mem_size(Pointer ss); + + Pointer spanset_sps(Pointer ss); + + int spanset_upper(Pointer ss); + + void bigintspan_set_floatspan(Pointer s1, Pointer s2); + + void bigintspan_set_intspan(Pointer s1, Pointer s2); + + void datespan_set_tstzspan(Pointer s1, Pointer s2); + + void floatspan_set_bigintspan(Pointer s1, Pointer s2); + + void floatspan_set_intspan(Pointer s1, Pointer s2); + + void intspan_set_bigintspan(Pointer s1, Pointer s2); + + void intspan_set_floatspan(Pointer s1, Pointer s2); + + Pointer numset_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + Pointer numspan_expand(Pointer s, Pointer value); + + Pointer numspan_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + Pointer numspanset_shift_scale(Pointer ss, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + Pointer set_compact(Pointer s); + + void span_expand(Pointer s1, Pointer s2); + + Pointer spanset_compact(Pointer ss); + + Pointer tbox_expand_value(Pointer box, Pointer value, int basetyp); + + Pointer textcat_textset_text_common(Pointer s, Pointer txt, boolean invert); + + void tstzspan_set_datespan(Pointer s1, Pointer s2); + + boolean adjacent_span_value(Pointer s, Pointer value); + + boolean adjacent_spanset_value(Pointer ss, Pointer value); + + boolean adjacent_value_spanset(Pointer value, Pointer ss); + + boolean contained_value_set(Pointer value, Pointer s); + + boolean contained_value_span(Pointer value, Pointer s); + + boolean contained_value_spanset(Pointer value, Pointer ss); + + boolean contains_set_value(Pointer s, Pointer value); + + boolean contains_span_value(Pointer s, Pointer value); + + boolean contains_spanset_value(Pointer ss, Pointer value); + + boolean ovadj_span_span(Pointer s1, Pointer s2); + + boolean left_set_value(Pointer s, Pointer value); + + boolean left_span_value(Pointer s, Pointer value); + + boolean left_spanset_value(Pointer ss, Pointer value); + + boolean left_value_set(Pointer value, Pointer s); + + boolean left_value_span(Pointer value, Pointer s); + + boolean left_value_spanset(Pointer value, Pointer ss); + + boolean lfnadj_span_span(Pointer s1, Pointer s2); + + boolean overleft_set_value(Pointer s, Pointer value); + + boolean overleft_span_value(Pointer s, Pointer value); + + boolean overleft_spanset_value(Pointer ss, Pointer value); + + boolean overleft_value_set(Pointer value, Pointer s); + + boolean overleft_value_span(Pointer value, Pointer s); + + boolean overleft_value_spanset(Pointer value, Pointer ss); + + boolean overright_set_value(Pointer s, Pointer value); + + boolean overright_span_value(Pointer s, Pointer value); + + boolean overright_spanset_value(Pointer ss, Pointer value); + + boolean overright_value_set(Pointer value, Pointer s); + + boolean overright_value_span(Pointer value, Pointer s); + + boolean overright_value_spanset(Pointer value, Pointer ss); + + } + + public interface MeosLibraryPartD { + + boolean right_value_set(Pointer value, Pointer s); + + boolean right_set_value(Pointer s, Pointer value); + + boolean right_value_span(Pointer value, Pointer s); + + boolean right_value_spanset(Pointer value, Pointer ss); + + boolean right_span_value(Pointer s, Pointer value); + + boolean right_spanset_value(Pointer ss, Pointer value); + + boolean bbox_type(int bboxtype); + + long bbox_get_size(int bboxtype); + + int bbox_max_dims(int bboxtype); + + boolean temporal_bbox_eq(Pointer box1, Pointer box2, int temptype); + + int temporal_bbox_cmp(Pointer box1, Pointer box2, int temptype); + + void bbox_union_span_span(Pointer s1, Pointer s2, Pointer result); + + boolean inter_span_span(Pointer s1, Pointer s2, Pointer result); + + Pointer intersection_set_value(Pointer s, Pointer value); + + Pointer intersection_span_value(Pointer s, Pointer value); + + Pointer intersection_spanset_value(Pointer ss, Pointer value); + + Pointer intersection_value_set(Pointer value, Pointer s); + + Pointer intersection_value_span(Pointer value, Pointer s); + + Pointer intersection_value_spanset(Pointer value, Pointer ss); + + int mi_span_span(Pointer s1, Pointer s2, Pointer result); + + Pointer minus_set_value(Pointer s, Pointer value); + + Pointer minus_span_value(Pointer s, Pointer value); + + Pointer minus_spanset_value(Pointer ss, Pointer value); + + Pointer minus_value_set(Pointer value, Pointer s); + + Pointer minus_value_span(Pointer value, Pointer s); + + Pointer minus_value_spanset(Pointer value, Pointer ss); + + Pointer super_union_span_span(Pointer s1, Pointer s2); + + Pointer union_set_value(Pointer s, Pointer value); + + Pointer union_span_value(Pointer s, Pointer value); + + Pointer union_spanset_value(Pointer ss, Pointer value); + + Pointer union_value_set(Pointer value, Pointer s); + + Pointer union_value_span(Pointer value, Pointer s); + + Pointer union_value_spanset(Pointer value, Pointer ss); + + int distance_set_set(Pointer s1, Pointer s2); + + int distance_set_value(Pointer s, Pointer value); + + int distance_span_span(Pointer s1, Pointer s2); + + int distance_span_value(Pointer s, Pointer value); + + int distance_spanset_span(Pointer ss, Pointer s); + + int distance_spanset_spanset(Pointer ss1, Pointer ss2); + + int distance_spanset_value(Pointer ss, Pointer value); + + int distance_value_value(Pointer l, Pointer r, int basetype); + + Pointer spanbase_extent_transfn(Pointer state, Pointer value, int basetype); + + Pointer value_union_transfn(Pointer state, Pointer value, int basetype); + + Pointer number_tstzspan_to_tbox(Pointer d, int basetype, Pointer s); + + Pointer number_timestamptz_to_tbox(Pointer d, int basetype, long t); + + void tbox_set(Pointer s, Pointer p, Pointer box); + + void float_set_tbox(double d, Pointer box); + + void int_set_tbox(int i, Pointer box); + + void number_set_tbox(Pointer d, int basetype, Pointer box); + + Pointer number_tbox(Pointer value, int basetype); + + void numset_set_tbox(Pointer s, Pointer box); + + void numspan_set_tbox(Pointer span, Pointer box); + + void timestamptz_set_tbox(long t, Pointer box); + + void tstzset_set_tbox(Pointer s, Pointer box); + + void tstzspan_set_tbox(Pointer s, Pointer box); + + Pointer tbox_shift_scale_value(Pointer box, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + void tbox_expand(Pointer box1, Pointer box2); + + boolean inter_tbox_tbox(Pointer box1, Pointer box2, Pointer result); + + Pointer tboolinst_from_mfjson(Pointer mfjson); + + Pointer tboolinst_in(String str); + + Pointer tboolseq_from_mfjson(Pointer mfjson); + + Pointer tboolseq_in(String str, int interp); + + Pointer tboolseqset_from_mfjson(Pointer mfjson); + + Pointer tboolseqset_in(String str); + + Pointer temporal_in(String str, int temptype); + + String temporal_out(Pointer temp, int maxdd); + + Pointer temparr_out(Pointer temparr, int count, int maxdd); + + Pointer tfloatinst_from_mfjson(Pointer mfjson); + + Pointer tfloatinst_in(String str); + + Pointer tfloatseq_from_mfjson(Pointer mfjson, int interp); + + Pointer tfloatseq_in(String str, int interp); + + Pointer tfloatseqset_from_mfjson(Pointer mfjson, int interp); + + Pointer tfloatseqset_in(String str); + + Pointer tinstant_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype); + + Pointer tinstant_in(String str, int temptype); + + String tinstant_out(Pointer inst, int maxdd); + + Pointer tintinst_from_mfjson(Pointer mfjson); + + Pointer tintinst_in(String str); + + Pointer tintseq_from_mfjson(Pointer mfjson); + + Pointer tintseq_in(String str, int interp); + + Pointer tintseqset_from_mfjson(Pointer mfjson); + + Pointer tintseqset_in(String str); + + Pointer tsequence_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp); + + Pointer tsequence_in(String str, int temptype, int interp); + + String tsequence_out(Pointer seq, int maxdd); + + Pointer tsequenceset_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp); + + Pointer tsequenceset_in(String str, int temptype, int interp); + + String tsequenceset_out(Pointer ss, int maxdd); + + Pointer ttextinst_from_mfjson(Pointer mfjson); + + Pointer ttextinst_in(String str); + + Pointer ttextseq_from_mfjson(Pointer mfjson); + + Pointer ttextseq_in(String str, int interp); + + Pointer ttextseqset_from_mfjson(Pointer mfjson); + + Pointer ttextseqset_in(String str); + + Pointer temporal_from_mfjson(String mfjson, int temptype); + + Pointer temporal_from_base_temp(Pointer value, int temptype, Pointer temp); + + Pointer tinstant_copy(Pointer inst); + + Pointer tinstant_make(Pointer value, int temptype, long t); + + Pointer tinstant_make_free(Pointer value, int temptype, long t); + + Pointer tsequence_copy(Pointer seq); + + Pointer tsequence_from_base_temp(Pointer value, int temptype, Pointer seq); + + Pointer tsequence_from_base_tstzset(Pointer value, int temptype, Pointer s); + + Pointer tsequence_from_base_tstzspan(Pointer value, int temptype, Pointer s, int interp); + + Pointer tsequence_make_exp(Pointer instants, int count, int maxcount, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); + + Pointer tsequence_make_free(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); + + Pointer tsequenceset_copy(Pointer ss); + + Pointer tseqsetarr_to_tseqset(Pointer seqsets, int count, int totalseqs); + + Pointer tsequenceset_from_base_temp(Pointer value, int temptype, Pointer ss); + + Pointer tsequenceset_from_base_tstzspanset(Pointer value, int temptype, Pointer ss, int interp); + + Pointer tsequenceset_make_exp(Pointer sequences, int count, int maxcount, boolean normalize); + + Pointer tsequenceset_make_free(Pointer sequences, int count, boolean normalize); + + void temporal_set_tstzspan(Pointer temp, Pointer s); + + void tinstant_set_tstzspan(Pointer inst, Pointer s); + + void tnumber_set_tbox(Pointer temp, Pointer box); + + void tnumberinst_set_tbox(Pointer inst, Pointer box); + + void tnumberseq_set_tbox(Pointer seq, Pointer box); + + void tnumberseqset_set_tbox(Pointer ss, Pointer box); + + void tsequence_set_tstzspan(Pointer seq, Pointer s); + + void tsequenceset_set_tstzspan(Pointer ss, Pointer s); + + Pointer temporal_end_inst(Pointer temp); + + int temporal_end_value(Pointer temp); + + Pointer temporal_inst_n(Pointer temp, int n); + + Pointer temporal_insts_p(Pointer temp, Pointer count); + + Pointer temporal_max_inst_p(Pointer temp); + + int temporal_max_value(Pointer temp); + + long temporal_mem_size(Pointer temp); + + Pointer temporal_min_inst_p(Pointer temp); + + int temporal_min_value(Pointer temp); + + Pointer temporal_sequences_p(Pointer temp, Pointer count); + + void temporal_set_bbox(Pointer temp, Pointer box); + + Pointer temporal_start_inst(Pointer temp); + + int temporal_start_value(Pointer temp); + + Pointer temporal_values_p(Pointer temp, Pointer count); + + boolean temporal_value_n(Pointer temp, int n, Pointer result); + + Pointer temporal_values(Pointer temp, Pointer count); + + int tinstant_hash(Pointer inst); + + Pointer tinstant_insts(Pointer inst, Pointer count); + + void tinstant_set_bbox(Pointer inst, Pointer box); + + Pointer tinstant_time(Pointer inst); + + Pointer tinstant_timestamps(Pointer inst, Pointer count); + + int tinstant_value_p(Pointer inst); + + int tinstant_value(Pointer inst); + + boolean tinstant_value_at_timestamptz(Pointer inst, long t, Pointer result); + + Pointer tinstant_values_p(Pointer inst, Pointer count); + + void tnumber_set_span(Pointer temp, Pointer span); + + Pointer tnumberinst_valuespans(Pointer inst); + + double tnumberseq_avg_val(Pointer seq); + + Pointer tnumberseq_valuespans(Pointer seq); + + double tnumberseqset_avg_val(Pointer ss); + + Pointer tnumberseqset_valuespans(Pointer ss); + + Pointer tsequence_duration(Pointer seq); + + long tsequence_end_timestamptz(Pointer seq); + + int tsequence_hash(Pointer seq); + + Pointer tsequence_insts_p(Pointer seq); + + Pointer tsequence_max_inst_p(Pointer seq); + + int tsequence_max_val(Pointer seq); + + Pointer tsequence_min_inst_p(Pointer seq); + + int tsequence_min_val(Pointer seq); + + Pointer tsequence_segments(Pointer seq, Pointer count); + + Pointer tsequence_seqs(Pointer seq, Pointer count); + + long tsequence_start_timestamptz(Pointer seq); + + Pointer tsequence_time(Pointer seq); + + Pointer tsequence_timestamps(Pointer seq, Pointer count); + + boolean tsequence_value_at_timestamptz(Pointer seq, long t, boolean strict, Pointer result); + + Pointer tsequence_values_p(Pointer seq, Pointer count); + + Pointer tsequenceset_duration(Pointer ss, boolean boundspan); + + long tsequenceset_end_timestamptz(Pointer ss); + + int tsequenceset_hash(Pointer ss); + + Pointer tsequenceset_inst_n(Pointer ss, int n); + + Pointer tsequenceset_insts_p(Pointer ss); + + Pointer tsequenceset_max_inst_p(Pointer ss); + + int tsequenceset_max_val(Pointer ss); + + Pointer tsequenceset_min_inst_p(Pointer ss); + + int tsequenceset_min_val(Pointer ss); + + int tsequenceset_num_instants(Pointer ss); + + int tsequenceset_num_timestamps(Pointer ss); + + Pointer tsequenceset_segments(Pointer ss, Pointer count); + + Pointer tsequenceset_sequences_p(Pointer ss); + + long tsequenceset_start_timestamptz(Pointer ss); + + Pointer tsequenceset_time(Pointer ss); + + boolean tsequenceset_timestamptz_n(Pointer ss, int n, Pointer result); + + Pointer tsequenceset_timestamps(Pointer ss, Pointer count); + + boolean tsequenceset_value_at_timestamptz(Pointer ss, long t, boolean strict, Pointer result); + + boolean tsequenceset_value_n(Pointer ss, int n, Pointer result); + + Pointer tsequenceset_values_p(Pointer ss, Pointer count); + + void temporal_restart(Pointer temp, int count); + + Pointer temporal_tsequence(Pointer temp, int interp); + + Pointer temporal_tsequenceset(Pointer temp, int interp); + + Pointer tinstant_shift_time(Pointer inst, Pointer interv); + + Pointer tinstant_to_tsequence(Pointer inst, int interp); + + Pointer tinstant_to_tsequence_free(Pointer inst, int interp); + + Pointer tinstant_to_tsequenceset(Pointer inst, int interp); + + Pointer tnumber_shift_scale_value(Pointer temp, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + Pointer tnumberinst_shift_value(Pointer inst, Pointer shift); + + Pointer tnumberseq_shift_scale_value(Pointer seq, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); + + Pointer tnumberseqset_shift_scale_value(Pointer ss, Pointer start, Pointer width, boolean hasshift, boolean haswidth); + + void tsequence_restart(Pointer seq, int count); + + Pointer tsequence_set_interp(Pointer seq, int interp); + + Pointer tsequence_shift_scale_time(Pointer seq, Pointer shift, Pointer duration); + + Pointer tsequence_subseq(Pointer seq, int from, int to, boolean lower_inc, boolean upper_inc); + + Pointer tsequence_to_tinstant(Pointer seq); + + Pointer tsequence_to_tsequenceset(Pointer seq); + + Pointer tsequence_to_tsequenceset_free(Pointer seq); + + Pointer tsequence_to_tsequenceset_interp(Pointer seq, int interp); + + void tsequenceset_restart(Pointer ss, int count); + + Pointer tsequenceset_set_interp(Pointer ss, int interp); + + Pointer tsequenceset_shift_scale_time(Pointer ss, Pointer start, Pointer duration); + + Pointer tsequenceset_to_discrete(Pointer ss); + + Pointer tsequenceset_to_linear(Pointer ss); + + Pointer tsequenceset_to_step(Pointer ss); + + Pointer tsequenceset_to_tinstant(Pointer ss); + + Pointer tsequenceset_to_tsequence(Pointer ss); + + Pointer tinstant_merge(Pointer inst1, Pointer inst2); + + Pointer tinstant_merge_array(Pointer instants, int count); + + Pointer tsequence_append_tinstant(Pointer seq, Pointer inst, double maxdist, Pointer maxt, boolean expand); + + Pointer tsequence_append_tsequence(Pointer seq1, Pointer seq2, boolean expand); + + Pointer tsequence_delete_timestamptz(Pointer seq, long t, boolean connect); + + Pointer tsequence_delete_tstzset(Pointer seq, Pointer s, boolean connect); + + Pointer tsequence_delete_tstzspan(Pointer seq, Pointer s, boolean connect); + + Pointer tsequence_delete_tstzspanset(Pointer seq, Pointer ss, boolean connect); + + Pointer tsequence_insert(Pointer seq1, Pointer seq2, boolean connect); + + Pointer tsequence_merge(Pointer seq1, Pointer seq2); + + Pointer tsequence_merge_array(Pointer sequences, int count); + + Pointer tsequenceset_append_tinstant(Pointer ss, Pointer inst, double maxdist, Pointer maxt, boolean expand); + + Pointer tsequenceset_append_tsequence(Pointer ss, Pointer seq, boolean expand); + + Pointer tsequenceset_delete_timestamptz(Pointer ss, long t); + + Pointer tsequenceset_delete_tstzset(Pointer ss, Pointer s); + + Pointer tsequenceset_delete_tstzspan(Pointer ss, Pointer s); + + Pointer tsequenceset_delete_tstzspanset(Pointer ss, Pointer ps); + + Pointer tsequenceset_insert(Pointer ss1, Pointer ss2); + + Pointer tsequenceset_merge(Pointer ss1, Pointer ss2); + + Pointer tsequenceset_merge_array(Pointer seqsets, int count); + + void tsequence_expand_bbox(Pointer seq, Pointer inst); + + void tsequence_set_bbox(Pointer seq, Pointer box); + + void tsequenceset_expand_bbox(Pointer ss, Pointer seq); + + void tsequenceset_set_bbox(Pointer ss, Pointer box); + + Pointer tcontseq_after_timestamptz(Pointer seq, long t, boolean strict); + + Pointer tcontseq_before_timestamptz(Pointer seq, long t, boolean strict); + + Pointer tcontseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc); + + Pointer tdiscseq_after_timestamptz(Pointer seq, long t, boolean strict); + + Pointer tdiscseq_before_timestamptz(Pointer seq, long t, boolean strict); + + Pointer tdiscseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc); + + boolean temporal_bbox_restrict_set(Pointer temp, Pointer set); + + Pointer temporal_restrict_minmax(Pointer temp, boolean min, boolean atfunc); + + Pointer temporal_restrict_timestamptz(Pointer temp, long t, boolean atfunc); + + Pointer temporal_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc); + + Pointer temporal_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc); + + Pointer temporal_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc); + + Pointer temporal_restrict_value(Pointer temp, Pointer value, boolean atfunc); + + Pointer temporal_restrict_values(Pointer temp, Pointer set, boolean atfunc); + + boolean temporal_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer result); + + Pointer tinstant_after_timestamptz(Pointer inst, long t, boolean strict); + + Pointer tinstant_before_timestamptz(Pointer inst, long t, boolean strict); + + Pointer tinstant_restrict_tstzspan(Pointer inst, Pointer period, boolean atfunc); + + Pointer tinstant_restrict_tstzspanset(Pointer inst, Pointer ss, boolean atfunc); + + Pointer tinstant_restrict_timestamptz(Pointer inst, long t, boolean atfunc); + + Pointer tinstant_restrict_tstzset(Pointer inst, Pointer s, boolean atfunc); + + Pointer tinstant_restrict_value(Pointer inst, Pointer value, boolean atfunc); + + Pointer tinstant_restrict_values(Pointer inst, Pointer set, boolean atfunc); + + Pointer tnumber_restrict_span(Pointer temp, Pointer span, boolean atfunc); + + Pointer tnumber_restrict_spanset(Pointer temp, Pointer ss, boolean atfunc); + + Pointer tnumberinst_restrict_span(Pointer inst, Pointer span, boolean atfunc); + + Pointer tnumberinst_restrict_spanset(Pointer inst, Pointer ss, boolean atfunc); + + Pointer tnumberseqset_restrict_span(Pointer ss, Pointer span, boolean atfunc); + + Pointer tnumberseqset_restrict_spanset(Pointer ss, Pointer spanset, boolean atfunc); + + Pointer tsequence_at_timestamptz(Pointer seq, long t); + + Pointer tsequence_restrict_tstzspan(Pointer seq, Pointer s, boolean atfunc); + + Pointer tsequence_restrict_tstzspanset(Pointer seq, Pointer ss, boolean atfunc); + + Pointer tsequenceset_after_timestamptz(Pointer ss, long t, boolean strict); + + Pointer tsequenceset_before_timestamptz(Pointer ss, long t, boolean strict); + + Pointer tsequenceset_restrict_minmax(Pointer ss, boolean min, boolean atfunc); + + Pointer tsequenceset_restrict_tstzspan(Pointer ss, Pointer s, boolean atfunc); + + Pointer tsequenceset_restrict_tstzspanset(Pointer ss, Pointer ps, boolean atfunc); + + Pointer tsequenceset_restrict_timestamptz(Pointer ss, long t, boolean atfunc); + + Pointer tsequenceset_restrict_tstzset(Pointer ss, Pointer s, boolean atfunc); + + Pointer tsequenceset_restrict_value(Pointer ss, Pointer value, boolean atfunc); + + Pointer tsequenceset_restrict_values(Pointer ss, Pointer s, boolean atfunc); + + int tinstant_cmp(Pointer inst1, Pointer inst2); + + boolean tinstant_eq(Pointer inst1, Pointer inst2); + + int tsequence_cmp(Pointer seq1, Pointer seq2); + + boolean tsequence_eq(Pointer seq1, Pointer seq2); + + int tsequenceset_cmp(Pointer ss1, Pointer ss2); + + boolean tsequenceset_eq(Pointer ss1, Pointer ss2); + + int always_eq_base_temporal(Pointer value, Pointer temp); + + int always_eq_temporal_base(Pointer temp, Pointer value); + + int always_ne_base_temporal(Pointer value, Pointer temp); + + int always_ne_temporal_base(Pointer temp, Pointer value); + + int always_ge_base_temporal(Pointer value, Pointer temp); + + int always_ge_temporal_base(Pointer temp, Pointer value); + + int always_gt_base_temporal(Pointer value, Pointer temp); + + int always_gt_temporal_base(Pointer temp, Pointer value); + + int always_le_base_temporal(Pointer value, Pointer temp); + + int always_le_temporal_base(Pointer temp, Pointer value); + + int always_lt_base_temporal(Pointer value, Pointer temp); + + int always_lt_temporal_base(Pointer temp, Pointer value); + + int ever_eq_base_temporal(Pointer value, Pointer temp); + + int ever_eq_temporal_base(Pointer temp, Pointer value); + + int ever_ne_base_temporal(Pointer value, Pointer temp); + + int ever_ne_temporal_base(Pointer temp, Pointer value); + + int ever_ge_base_temporal(Pointer value, Pointer temp); + + int ever_ge_temporal_base(Pointer temp, Pointer value); + + int ever_gt_base_temporal(Pointer value, Pointer temp); + + int ever_gt_temporal_base(Pointer temp, Pointer value); + + int ever_le_base_temporal(Pointer value, Pointer temp); + + int ever_le_temporal_base(Pointer temp, Pointer value); + + int ever_lt_base_temporal(Pointer value, Pointer temp); + + int ever_lt_temporal_base(Pointer temp, Pointer value); + + Pointer tnumberinst_abs(Pointer inst); + + Pointer tnumberseq_abs(Pointer seq); + + Pointer tnumberseq_angular_difference(Pointer seq); + + Pointer tnumberseq_delta_value(Pointer seq); + + Pointer tnumberseqset_abs(Pointer ss); + + Pointer tnumberseqset_angular_difference(Pointer ss); + + Pointer tnumberseqset_delta_value(Pointer ss); + + double distance_span_span_double(Pointer s1, Pointer s2); + + double nad_tbox_tbox(Pointer box1, Pointer box2); + + double nad_tnumber_number(Pointer temp, Pointer value); + + double nad_tnumber_tbox(Pointer temp, Pointer box); + + double nad_tnumber_tnumber(Pointer temp1, Pointer temp2); + + Pointer tdistance_tnumber_number(Pointer temp, Pointer value); + + double tnumberinst_distance(Pointer inst1, Pointer inst2); + + double tnumberseq_integral(Pointer seq); + + double tnumberseq_twavg(Pointer seq); + + double tnumberseqset_integral(Pointer ss); + + double tnumberseqset_twavg(Pointer ss); + + Pointer temporal_compact(Pointer temp); + + Pointer tsequence_compact(Pointer seq); + + Pointer tsequenceset_compact(Pointer ss); + + Pointer temporal_skiplist_make(); + + Pointer skiplist_make(long key_size, long value_size, Pointer comp_fn, Pointer merge_fn); + + int skiplist_search(Pointer list, Pointer key, Pointer value); + + void skiplist_free(Pointer list); + + void skiplist_splice(Pointer list, Pointer keys, Pointer values, int count, Pointer func, boolean crossings, int sktype); + + void temporal_skiplist_splice(Pointer list, Pointer values, int count, Pointer func, boolean crossings); + + Pointer skiplist_values(Pointer list); + + Pointer skiplist_keys_values(Pointer list, Pointer values); + + Pointer temporal_app_tinst_transfn(Pointer state, Pointer inst, int interp, double maxdist, Pointer maxt); + + Pointer temporal_app_tseq_transfn(Pointer state, Pointer seq); + + Pointer span_bins(Pointer s, Pointer size, Pointer origin, Pointer count); + + Pointer spanset_bins(Pointer ss, Pointer size, Pointer origin, Pointer count); + + Pointer tnumber_value_bins(Pointer temp, Pointer size, Pointer origin, Pointer count); + + Pointer tnumber_value_time_boxes(Pointer temp, Pointer vsize, Pointer duration, Pointer vorigin, long torigin, Pointer count); + + Pointer tnumber_value_split(Pointer temp, Pointer vsize, Pointer vorigin, Pointer bins, Pointer count); + + Pointer tbox_get_value_time_tile(Pointer value, long t, Pointer vsize, Pointer duration, Pointer vorigin, long torigin, int basetype, int spantype); + + Pointer tnumber_value_time_split(Pointer temp, Pointer size, Pointer duration, Pointer vorigin, long torigin, Pointer value_bins, Pointer time_bins, Pointer count); + + Pointer proj_get_context(); + + int datum_geo_round(Pointer value, Pointer size); + + Pointer point_round(Pointer gs, int maxdd); + + void stbox_set(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s, Pointer box); + + void gbox_set_stbox(Pointer box, int srid, Pointer result); + + boolean geo_set_stbox(Pointer gs, Pointer box); + + void geoarr_set_stbox(Pointer values, int count, Pointer box); + + boolean spatial_set_stbox(Pointer d, int basetype, Pointer box); + + void spatialset_set_stbox(Pointer set, Pointer box); + + void stbox_set_box3d(Pointer box, Pointer box3d); + + void stbox_set_gbox(Pointer box, Pointer gbox); + + void tstzset_set_stbox(Pointer s, Pointer box); + + void tstzspan_set_stbox(Pointer s, Pointer box); + + void tstzspanset_set_stbox(Pointer s, Pointer box); + + void stbox_expand(Pointer box1, Pointer box2); + + boolean inter_stbox_stbox(Pointer box1, Pointer box2, Pointer result); + + Pointer stbox_geo(Pointer box); + + Pointer tgeogpointinst_from_mfjson(Pointer mfjson, int srid); + + Pointer tgeogpointinst_in(String str); + + Pointer tgeogpointseq_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeogpointseq_in(String str, int interp); + + Pointer tgeogpointseqset_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeogpointseqset_in(String str); + + Pointer tgeompointinst_from_mfjson(Pointer mfjson, int srid); + + Pointer tgeompointinst_in(String str); + + Pointer tgeompointseq_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeompointseq_in(String str, int interp); + + Pointer tgeompointseqset_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeompointseqset_in(String str); + + Pointer tgeographyinst_from_mfjson(Pointer mfjson, int srid); + + Pointer tgeographyinst_in(String str); + + Pointer tgeographyseq_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeographyseq_in(String str, int interp); + + Pointer tgeographyseqset_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeographyseqset_in(String str); + + Pointer tgeometryinst_from_mfjson(Pointer mfjson, int srid); + + Pointer tgeometryinst_in(String str); + + Pointer tgeometryseq_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeometryseq_in(String str, int interp); + + Pointer tgeometryseqset_from_mfjson(Pointer mfjson, int srid, int interp); + + Pointer tgeometryseqset_in(String str); + + void tspatial_set_stbox(Pointer temp, Pointer box); + + void tgeoinst_set_stbox(Pointer inst, Pointer box); + + void tspatialseq_set_stbox(Pointer seq, Pointer box); + + void tspatialseqset_set_stbox(Pointer ss, Pointer box); + + Pointer tgeo_restrict_elevation(Pointer temp, Pointer s, boolean atfunc); + + Pointer tgeo_restrict_geom(Pointer temp, Pointer gs, boolean atfunc); + + Pointer tgeo_restrict_stbox(Pointer temp, Pointer box, boolean border_inc, boolean atfunc); + + Pointer tgeoinst_restrict_geom(Pointer inst, Pointer gs, boolean atfunc); + + Pointer tgeoinst_restrict_stbox(Pointer inst, Pointer box, boolean border_inc, boolean atfunc); + + Pointer tgeoseq_restrict_geom(Pointer seq, Pointer gs, boolean atfunc); + + Pointer tgeoseq_restrict_stbox(Pointer seq, Pointer box, boolean border_inc, boolean atfunc); + + Pointer tgeoseqset_restrict_geom(Pointer ss, Pointer gs, boolean atfunc); + + Pointer tgeoseqset_restrict_stbox(Pointer ss, Pointer box, boolean border_inc, boolean atfunc); + + int spatial_srid(Pointer d, int basetype); + + boolean spatial_set_srid(Pointer d, int basetype, int srid); + + int tspatialinst_srid(Pointer inst); + + Pointer tpointseq_azimuth(Pointer seq); + + Pointer tpointseq_cumulative_length(Pointer seq, double prevlength); + + boolean tpointseq_is_simple(Pointer seq); + + double tpointseq_length(Pointer seq); + + Pointer tpointseq_linear_trajectory(Pointer seq, boolean unary_union); + + Pointer tgeoseq_stboxes(Pointer seq, Pointer count); + + Pointer tgeoseq_split_n_stboxes(Pointer seq, int max_count, Pointer count); + + Pointer tpointseqset_azimuth(Pointer ss); + + Pointer tpointseqset_cumulative_length(Pointer ss); + + boolean tpointseqset_is_simple(Pointer ss); + + double tpointseqset_length(Pointer ss); + + Pointer tgeoseqset_stboxes(Pointer ss, Pointer count); + + Pointer tgeoseqset_split_n_stboxes(Pointer ss, int max_count, Pointer count); + + Pointer tpoint_get_coord(Pointer temp, int coord); + + Pointer tgeominst_tgeoginst(Pointer inst, boolean oper); + + Pointer tgeomseq_tgeogseq(Pointer seq, boolean oper); + + Pointer tgeomseqset_tgeogseqset(Pointer ss, boolean oper); + + Pointer tgeom_tgeog(Pointer temp, boolean oper); + + Pointer tgeo_tpoint(Pointer temp, boolean oper); + + void tspatialinst_set_srid(Pointer inst, int srid); + + Pointer tpointseq_make_simple(Pointer seq, Pointer count); + + void tspatialseq_set_srid(Pointer seq, int srid); + + Pointer tpointseqset_make_simple(Pointer ss, Pointer count); + + void tspatialseqset_set_srid(Pointer ss, int srid); + + Pointer tpointseq_twcentroid(Pointer seq); + + Pointer tpointseqset_twcentroid(Pointer ss); + + String npoint_as_ewkt(Pointer np, int maxdd); + + String npoint_as_hexwkb(Pointer np, byte variant, Pointer size_out); + + String npoint_as_text(Pointer np, int maxdd); + + Pointer npoint_as_wkb(Pointer np, byte variant, Pointer size_out); + + Pointer npoint_from_hexwkb(String hexwkb); + + Pointer npoint_from_wkb(Pointer wkb, long size); + + Pointer npoint_in(String str); + + String npoint_out(Pointer np, int maxdd); + + Pointer nsegment_in(String str); + + String nsegment_out(Pointer ns, int maxdd); + + Pointer npoint_make(long rid, double pos); + + Pointer nsegment_make(long rid, double pos1, double pos2); + + Pointer geompoint_to_npoint(Pointer gs); + + Pointer geom_to_nsegment(Pointer gs); + + Pointer npoint_to_geompoint(Pointer np); + + Pointer npoint_to_nsegment(Pointer np); + + Pointer npoint_to_stbox(Pointer np); + + Pointer nsegment_to_geom(Pointer ns); + + Pointer nsegment_to_stbox(Pointer np); + + int npoint_hash(Pointer np); + + long npoint_hash_extended(Pointer np, long seed); + + double npoint_position(Pointer np); + + long npoint_route(Pointer np); + + double nsegment_end_position(Pointer ns); + + long nsegment_route(Pointer ns); + + double nsegment_start_position(Pointer ns); + + boolean route_exists(long rid); + + Pointer route_geom(long rid); + + double route_length(long rid); + + Pointer npoint_round(Pointer np, int maxdd); + + Pointer nsegment_round(Pointer ns, int maxdd); + + int get_srid_ways(); + + int npoint_srid(Pointer np); + + int nsegment_srid(Pointer ns); + + Pointer npoint_timestamptz_to_stbox(Pointer np, long t); + + Pointer npoint_tstzspan_to_stbox(Pointer np, Pointer s); + + int npoint_cmp(Pointer np1, Pointer np2); + + boolean npoint_eq(Pointer np1, Pointer np2); + + boolean npoint_ge(Pointer np1, Pointer np2); + + boolean npoint_gt(Pointer np1, Pointer np2); + + boolean npoint_le(Pointer np1, Pointer np2); + + boolean npoint_lt(Pointer np1, Pointer np2); + + boolean npoint_ne(Pointer np1, Pointer np2); + + boolean npoint_same(Pointer np1, Pointer np2); + + int nsegment_cmp(Pointer ns1, Pointer ns2); + + boolean nsegment_eq(Pointer ns1, Pointer ns2); + + boolean nsegment_ge(Pointer ns1, Pointer ns2); + + boolean nsegment_gt(Pointer ns1, Pointer ns2); + + boolean nsegment_le(Pointer ns1, Pointer ns2); + + boolean nsegment_lt(Pointer ns1, Pointer ns2); + + boolean nsegment_ne(Pointer ns1, Pointer ns2); + + Pointer npointset_in(String str); + + String npointset_out(Pointer s, int maxdd); + + Pointer npointset_make(Pointer values, int count); + + Pointer npoint_to_set(Pointer np); + + Pointer npointset_end_value(Pointer s); + + Pointer npointset_routes(Pointer s); + + Pointer npointset_start_value(Pointer s); + + boolean npointset_value_n(Pointer s, int n, Pointer result); + + Pointer npointset_values(Pointer s); + + boolean contained_npoint_set(Pointer np, Pointer s); + + boolean contains_set_npoint(Pointer s, Pointer np); + + Pointer intersection_npoint_set(Pointer np, Pointer s); + + Pointer intersection_set_npoint(Pointer s, Pointer np); + + Pointer minus_npoint_set(Pointer np, Pointer s); + + Pointer minus_set_npoint(Pointer s, Pointer np); + + Pointer npoint_union_transfn(Pointer state, Pointer np); + + Pointer union_npoint_set(Pointer np, Pointer s); + + Pointer union_set_npoint(Pointer s, Pointer np); + + Pointer tnpoint_in(String str); + + Pointer tnpoint_from_mfjson(String mfjson); + + String tnpoint_out(Pointer temp, int maxdd); + + Pointer tnpointinst_make(Pointer np, long t); + + Pointer tgeompoint_to_tnpoint(Pointer temp); + + Pointer tnpoint_to_tgeompoint(Pointer temp); + + Pointer tnpoint_cumulative_length(Pointer temp); + + double tnpoint_length(Pointer temp); + + Pointer tnpoint_positions(Pointer temp, Pointer count); + + long tnpoint_route(Pointer temp); + + Pointer tnpoint_routes(Pointer temp); + + Pointer tnpoint_speed(Pointer temp); + + Pointer tnpoint_trajectory(Pointer temp); + + Pointer tnpoint_twcentroid(Pointer temp); + + Pointer tnpoint_at_geom(Pointer temp, Pointer gs); + + Pointer tnpoint_at_npoint(Pointer temp, Pointer np); + + Pointer tnpoint_at_npointset(Pointer temp, Pointer s); + + Pointer tnpoint_at_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tnpoint_minus_geom(Pointer temp, Pointer gs); + + Pointer tnpoint_minus_npoint(Pointer temp, Pointer np); + + Pointer tnpoint_minus_npointset(Pointer temp, Pointer s); + + Pointer tnpoint_minus_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tdistance_tnpoint_npoint(Pointer temp, Pointer np); + + Pointer tdistance_tnpoint_point(Pointer temp, Pointer gs); + + Pointer tdistance_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + double nad_tnpoint_geo(Pointer temp, Pointer gs); + + double nad_tnpoint_npoint(Pointer temp, Pointer np); + + double nad_tnpoint_stbox(Pointer temp, Pointer box); + + double nad_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + Pointer nai_tnpoint_geo(Pointer temp, Pointer gs); + + Pointer nai_tnpoint_npoint(Pointer temp, Pointer np); + + Pointer nai_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + Pointer shortestline_tnpoint_geo(Pointer temp, Pointer gs); + + Pointer shortestline_tnpoint_npoint(Pointer temp, Pointer np); + + Pointer shortestline_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + Pointer tnpoint_tcentroid_transfn(Pointer state, Pointer temp); + + int always_eq_npoint_tnpoint(Pointer np, Pointer temp); + + int always_eq_tnpoint_npoint(Pointer temp, Pointer np); + + int always_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + int always_ne_npoint_tnpoint(Pointer np, Pointer temp); + + int always_ne_tnpoint_npoint(Pointer temp, Pointer np); + + int always_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + int ever_eq_npoint_tnpoint(Pointer np, Pointer temp); + + int ever_eq_tnpoint_npoint(Pointer temp, Pointer np); + + int ever_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + int ever_ne_npoint_tnpoint(Pointer np, Pointer temp); + + int ever_ne_tnpoint_npoint(Pointer temp, Pointer np); + + int ever_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2); + + Pointer teq_tnpoint_npoint(Pointer temp, Pointer np); + + Pointer tne_tnpoint_npoint(Pointer temp, Pointer np); + + String pose_as_ewkt(Pointer pose, int maxdd); + + String pose_as_hexwkb(Pointer pose, byte variant, Pointer size); + + String pose_as_text(Pointer pose, int maxdd); + + Pointer pose_as_wkb(Pointer pose, byte variant, Pointer size_out); + + Pointer pose_from_wkb(Pointer wkb, long size); + + Pointer pose_from_hexwkb(String hexwkb); + + Pointer pose_in(String str); + + String pose_out(Pointer pose, int maxdd); + + Pointer pose_copy(Pointer pose); + + Pointer pose_make_2d(double x, double y, double theta, int srid); + + Pointer pose_make_3d(double x, double y, double z, double W, double X, double Y, double Z, int srid); + + Pointer pose_make_point2d(Pointer gs, double theta); + + Pointer pose_make_point3d(Pointer gs, double W, double X, double Y, double Z); + + Pointer pose_to_point(Pointer pose); + + Pointer pose_to_stbox(Pointer pose); + + int pose_hash(Pointer pose); + + long pose_hash_extended(Pointer pose, long seed); + + Pointer pose_orientation(Pointer pose); + + double pose_rotation(Pointer pose); + + Pointer pose_round(Pointer pose, int maxdd); + + Pointer posearr_round(Pointer posearr, int count, int maxdd); + + void pose_set_srid(Pointer pose, int srid); + + int pose_srid(Pointer pose); + + Pointer pose_transform(Pointer pose, int srid); + + Pointer pose_transform_pipeline(Pointer pose, String pipelinestr, int srid, boolean is_forward); + + Pointer pose_tstzspan_to_stbox(Pointer pose, Pointer s); + + Pointer pose_timestamptz_to_stbox(Pointer pose, long t); + + double distance_pose_geo(Pointer pose, Pointer gs); + + double distance_pose_pose(Pointer pose1, Pointer pose2); + + double distance_pose_stbox(Pointer pose, Pointer box); + + int pose_cmp(Pointer pose1, Pointer pose2); + + boolean pose_eq(Pointer pose1, Pointer pose2); + + boolean pose_ge(Pointer pose1, Pointer pose2); + + boolean pose_gt(Pointer pose1, Pointer pose2); + + boolean pose_le(Pointer pose1, Pointer pose2); + + boolean pose_lt(Pointer pose1, Pointer pose2); + + boolean pose_ne(Pointer pose1, Pointer pose2); + + boolean pose_nsame(Pointer pose1, Pointer pose2); + + boolean pose_same(Pointer pose1, Pointer pose2); + + Pointer poseset_in(String str); + + String poseset_out(Pointer s, int maxdd); + + Pointer poseset_make(Pointer values, int count); + + Pointer pose_to_set(Pointer pose); + + Pointer poseset_end_value(Pointer s); + + Pointer poseset_start_value(Pointer s); + + boolean poseset_value_n(Pointer s, int n, Pointer result); + + Pointer poseset_values(Pointer s); + + boolean contained_pose_set(Pointer pose, Pointer s); + + boolean contains_set_pose(Pointer s, Pointer pose); + + Pointer intersection_pose_set(Pointer pose, Pointer s); + + Pointer intersection_set_pose(Pointer s, Pointer pose); + + Pointer minus_pose_set(Pointer pose, Pointer s); + + Pointer minus_set_pose(Pointer s, Pointer pose); + + Pointer pose_union_transfn(Pointer state, Pointer pose); + + Pointer union_pose_set(Pointer pose, Pointer s); + + Pointer union_set_pose(Pointer s, Pointer pose); + + Pointer tpose_in(String str); + + Pointer tpose_make(Pointer tpoint, Pointer tradius); + + Pointer tpose_to_tpoint(Pointer temp); + + Pointer tpose_end_value(Pointer temp); + + Pointer tpose_points(Pointer temp); + + Pointer tpose_rotation(Pointer temp); + + Pointer tpose_start_value(Pointer temp); + + Pointer tpose_trajectory(Pointer temp); + + boolean tpose_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); + + boolean tpose_value_n(Pointer temp, int n, Pointer result); + + Pointer tpose_values(Pointer temp, Pointer count); + + Pointer tpose_at_geom(Pointer temp, Pointer gs); + + Pointer tpose_at_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tpose_at_pose(Pointer temp, Pointer pose); + + Pointer tpose_minus_geom(Pointer temp, Pointer gs); + + Pointer tpose_minus_pose(Pointer temp, Pointer pose); + + Pointer tpose_minus_stbox(Pointer temp, Pointer box, boolean border_inc); + + Pointer tdistance_tpose_pose(Pointer temp, Pointer pose); + + Pointer tdistance_tpose_point(Pointer temp, Pointer gs); + + Pointer tdistance_tpose_tpose(Pointer temp1, Pointer temp2); + + double nad_tpose_geo(Pointer temp, Pointer gs); + + double nad_tpose_pose(Pointer temp, Pointer pose); + + double nad_tpose_stbox(Pointer temp, Pointer box); + + double nad_tpose_tpose(Pointer temp1, Pointer temp2); + + Pointer nai_tpose_geo(Pointer temp, Pointer gs); + + Pointer nai_tpose_pose(Pointer temp, Pointer pose); + + Pointer nai_tpose_tpose(Pointer temp1, Pointer temp2); + + Pointer shortestline_tpose_geo(Pointer temp, Pointer gs); + + Pointer shortestline_tpose_pose(Pointer temp, Pointer pose); + + Pointer shortestline_tpose_tpose(Pointer temp1, Pointer temp2); + + int always_eq_pose_tpose(Pointer pose, Pointer temp); + + int always_eq_tpose_pose(Pointer temp, Pointer pose); + + int always_eq_tpose_tpose(Pointer temp1, Pointer temp2); + + int always_ne_pose_tpose(Pointer pose, Pointer temp); + + int always_ne_tpose_pose(Pointer temp, Pointer pose); + + int always_ne_tpose_tpose(Pointer temp1, Pointer temp2); + + int ever_eq_pose_tpose(Pointer pose, Pointer temp); + + int ever_eq_tpose_pose(Pointer temp, Pointer pose); + + int ever_eq_tpose_tpose(Pointer temp1, Pointer temp2); + + int ever_ne_pose_tpose(Pointer pose, Pointer temp); + + int ever_ne_tpose_pose(Pointer temp, Pointer pose); + + int ever_ne_tpose_tpose(Pointer temp1, Pointer temp2); + + Pointer teq_pose_tpose(Pointer pose, Pointer temp); + + Pointer teq_tpose_pose(Pointer temp, Pointer pose); + + Pointer tne_pose_tpose(Pointer pose, Pointer temp); + + Pointer tne_tpose_pose(Pointer temp, Pointer pose); + + String trgeo_out(Pointer temp); + + Pointer trgeoinst_make(Pointer geom, Pointer pose, long t); + + Pointer geo_tpose_to_trgeo(Pointer gs, Pointer temp); + + Pointer trgeo_to_tpose(Pointer temp); + + Pointer trgeo_to_tpoint(Pointer temp); + + Pointer trgeo_end_instant(Pointer temp); + + Pointer trgeo_end_sequence(Pointer temp); + + Pointer trgeo_end_value(Pointer temp); + + Pointer trgeo_geom(Pointer temp); + + Pointer trgeo_instant_n(Pointer temp, int n); + + Pointer trgeo_instants(Pointer temp, Pointer count); + + Pointer trgeo_points(Pointer temp); + + Pointer trgeo_rotation(Pointer temp); + + Pointer trgeo_segments(Pointer temp, Pointer count); + + Pointer trgeo_sequence_n(Pointer temp, int i); + + Pointer trgeo_sequences(Pointer temp, Pointer count); + + Pointer trgeo_start_instant(Pointer temp); + + Pointer trgeo_start_sequence(Pointer temp); + + Pointer trgeo_start_value(Pointer temp); + + boolean trgeo_value_n(Pointer temp, int n, Pointer result); + + Pointer trgeo_traversed_area(Pointer temp, boolean unary_union); + + Pointer trgeo_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand); + + Pointer trgeo_append_tsequence(Pointer temp, Pointer seq, boolean expand); + + Pointer trgeo_delete_timestamptz(Pointer temp, long t, boolean connect); + + Pointer trgeo_delete_tstzset(Pointer temp, Pointer s, boolean connect); + + Pointer trgeo_delete_tstzspan(Pointer temp, Pointer s, boolean connect); + + Pointer trgeo_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect); + + Pointer trgeo_round(Pointer temp, int maxdd); + + Pointer trgeo_set_interp(Pointer temp, int interp); + + Pointer trgeo_to_tinstant(Pointer temp); + + Pointer trgeo_after_timestamptz(Pointer temp, long t, boolean strict); + + Pointer trgeo_before_timestamptz(Pointer temp, long t, boolean strict); + + Pointer trgeo_restrict_value(Pointer temp, Pointer value, boolean atfunc); + + Pointer trgeo_restrict_values(Pointer temp, Pointer s, boolean atfunc); + + Pointer trgeo_restrict_timestamptz(Pointer temp, long t, boolean atfunc); + + Pointer trgeo_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc); + + Pointer trgeo_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc); + + Pointer trgeo_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc); + + Pointer tdistance_trgeo_geo(Pointer temp, Pointer gs); + + Pointer tdistance_trgeo_tpoint(Pointer temp1, Pointer temp2); + + Pointer tdistance_trgeo_trgeo(Pointer temp1, Pointer temp2); + + double nad_stbox_trgeo(Pointer box, Pointer temp); + + double nad_trgeo_geo(Pointer temp, Pointer gs); + + double nad_trgeo_stbox(Pointer temp, Pointer box); + + double nad_trgeo_tpoint(Pointer temp1, Pointer temp2); + + double nad_trgeo_trgeo(Pointer temp1, Pointer temp2); + + Pointer nai_trgeo_geo(Pointer temp, Pointer gs); + + Pointer nai_trgeo_tpoint(Pointer temp1, Pointer temp2); + + Pointer nai_trgeo_trgeo(Pointer temp1, Pointer temp2); + + Pointer shortestline_trgeo_geo(Pointer temp, Pointer gs); + + Pointer shortestline_trgeo_tpoint(Pointer temp1, Pointer temp2); + + Pointer shortestline_trgeo_trgeo(Pointer temp1, Pointer temp2); + + int always_eq_geo_trgeo(Pointer gs, Pointer temp); + + int always_eq_trgeo_geo(Pointer temp, Pointer gs); + + int always_eq_trgeo_trgeo(Pointer temp1, Pointer temp2); + + int always_ne_geo_trgeo(Pointer gs, Pointer temp); + + int always_ne_trgeo_geo(Pointer temp, Pointer gs); + + int always_ne_trgeo_trgeo(Pointer temp1, Pointer temp2); + + int ever_eq_geo_trgeo(Pointer gs, Pointer temp); + + int ever_eq_trgeo_geo(Pointer temp, Pointer gs); + + int ever_eq_trgeo_trgeo(Pointer temp1, Pointer temp2); + + int ever_ne_geo_trgeo(Pointer gs, Pointer temp); + + int ever_ne_trgeo_geo(Pointer temp, Pointer gs); + + int ever_ne_trgeo_trgeo(Pointer temp1, Pointer temp2); + + Pointer teq_geo_trgeo(Pointer gs, Pointer temp); + + Pointer teq_trgeo_geo(Pointer temp, Pointer gs); + + Pointer tne_geo_trgeo(Pointer gs, Pointer temp); + + Pointer tne_trgeo_geo(Pointer temp, Pointer gs); + + int geo_get_srid(Pointer g); + + int date_in(String str); + + String date_out(int d); + + int interval_cmp(Pointer interv1, Pointer interv2); + + Pointer interval_in(String str, int typmod); + + String interval_out(Pointer interv); + + Pointer time_in(String str, int typmod); + + String time_out(Pointer t); + + long timestamp_in(String str, int typmod); + + String timestamp_out(long t); + + long timestamptz_in(String str, int typmod); + + String timestamptz_out(long t); + + } + + private static final String _LIB = "libmeos.so"; + + static final MeosLibraryPartA _meos_a = + JarLibraryLoader.create(MeosLibraryPartA.class, _LIB).getLibraryInstance(); + static final MeosLibraryPartB _meos_b = + JarLibraryLoader.create(MeosLibraryPartB.class, _LIB).getLibraryInstance(); + static final MeosLibraryPartC _meos_c = + JarLibraryLoader.create(MeosLibraryPartC.class, _LIB).getLibraryInstance(); + static final MeosLibraryPartD _meos_d = + JarLibraryLoader.create(MeosLibraryPartD.class, _LIB).getLibraryInstance(); + + private static final java.util.Map _dispatch; + static { + _dispatch = new java.util.HashMap<>(4096); + for (java.lang.reflect.Method _m : MeosLibraryPartA.class.getMethods()) + _dispatch.put(_m.getName(), _meos_a); + for (java.lang.reflect.Method _m : MeosLibraryPartB.class.getMethods()) + _dispatch.put(_m.getName(), _meos_b); + for (java.lang.reflect.Method _m : MeosLibraryPartC.class.getMethods()) + _dispatch.put(_m.getName(), _meos_c); + for (java.lang.reflect.Method _m : MeosLibraryPartD.class.getMethods()) + _dispatch.put(_m.getName(), _meos_d); + } + + + + @SuppressWarnings("unused") + public static Pointer meos_array_create(int elem_size) { + var _result = _meos_a.meos_array_create(elem_size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void meos_array_add(Pointer array, Pointer value) { + _meos_a.meos_array_add(array, value); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static Pointer meos_array_get(Pointer array, int n) { + var _result = _meos_a.meos_array_get(array, n); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int meos_array_count(Pointer array) { + var _result = _meos_a.meos_array_count(array); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void meos_array_reset(Pointer array) { + _meos_a.meos_array_reset(array); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_array_reset_free(Pointer array) { + _meos_a.meos_array_reset_free(array); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_array_destroy(Pointer array) { + _meos_a.meos_array_destroy(array); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_array_destroy_free(Pointer array) { + _meos_a.meos_array_destroy_free(array); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_intspan() { + var _result = _meos_a.rtree_create_intspan(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_bigintspan() { + var _result = _meos_a.rtree_create_bigintspan(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_floatspan() { + var _result = _meos_a.rtree_create_floatspan(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_datespan() { + var _result = _meos_a.rtree_create_datespan(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_tstzspan() { + var _result = _meos_a.rtree_create_tstzspan(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_tbox() { + var _result = _meos_a.rtree_create_tbox(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer rtree_create_stbox() { + var _result = _meos_a.rtree_create_stbox(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void rtree_free(Pointer rtree) { + _meos_a.rtree_free(rtree); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void rtree_insert(Pointer rtree, Pointer box, int id) { + _meos_a.rtree_insert(rtree, box, id); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void rtree_insert_temporal(Pointer rtree, Pointer temp, int id) { + _meos_a.rtree_insert_temporal(rtree, temp, id); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static int rtree_search(Pointer rtree, int op, Pointer query, Pointer result) { + var _result = _meos_a.rtree_search(rtree, op, query, result); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer result) { + var _result = _meos_a.rtree_search_temporal(rtree, op, temp, result); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void meos_error(int errlevel, int errcode, String format) { + _meos_a.meos_error(errlevel, errcode, format); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static int meos_errno() { + var _result = _meos_a.meos_errno(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int meos_errno_set(int err) { + var _result = _meos_a.meos_errno_set(err); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int meos_errno_restore(int err) { + var _result = _meos_a.meos_errno_restore(err); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int meos_errno_reset() { + var _result = _meos_a.meos_errno_reset(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void meos_initialize_timezone(String name) { + _meos_a.meos_initialize_timezone(name); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_initialize_error_handler(error_handler_fn err_handler) { + _meos_a.meos_initialize_error_handler(err_handler); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_finalize_timezone() { + _meos_a.meos_finalize_timezone(); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_finalize_projsrs() { + _meos_a.meos_finalize_projsrs(); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_finalize_ways() { + _meos_a.meos_finalize_ways(); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static boolean meos_set_datestyle(String newval, Pointer extra) { + var _result = _meos_a.meos_set_datestyle(newval, extra); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean meos_set_intervalstyle(String newval, int extra) { + var _result = _meos_a.meos_set_intervalstyle(newval, extra); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String meos_get_datestyle() { + var _result = _meos_a.meos_get_datestyle(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String meos_get_intervalstyle() { + var _result = _meos_a.meos_get_intervalstyle(); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static void meos_set_spatial_ref_sys_csv(String path) { + _meos_a.meos_set_spatial_ref_sys_csv(path); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_initialize() { + _meos_a.meos_initialize(); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static void meos_finalize() { + _meos_a.meos_finalize(); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static int add_date_int(int d, int days) { + var _result = _meos_a.add_date_int(d, days); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer add_interval_interval(Pointer interv1, Pointer interv2) { + var _result = _meos_a.add_interval_interval(interv1, interv2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime add_timestamptz_interval(OffsetDateTime t, Pointer interv) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.add_timestamptz_interval(t_new, interv); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static boolean bool_in(String str) { + var _result = _meos_a.bool_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String bool_out(boolean b) { + var _result = _meos_a.bool_out(b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer cstring2text(String str) { + var _result = _meos_a.cstring2text(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static LocalDateTime date_to_timestamp(int dateVal) { + var _result = _meos_a.date_to_timestamp(dateVal); + MeosErrorHandler.checkError(); + return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static OffsetDateTime date_to_timestamptz(int d) { + var _result = _meos_a.date_to_timestamptz(d); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static double float_exp(double d) { + var _result = _meos_a.float_exp(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_ln(double d) { + var _result = _meos_a.float_ln(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_log10(double d) { + var _result = _meos_a.float_log10(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String float8_out(double d, int maxdd) { + var _result = _meos_a.float8_out(d, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_round(double d, int maxdd) { + var _result = _meos_a.float_round(d, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int int32_cmp(int l, int r) { + var _result = _meos_a.int32_cmp(l, r); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int int64_cmp(long l, long r) { + var _result = _meos_a.int64_cmp(l, r); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer interval_make(int years, int months, int weeks, int days, int hours, int mins, double secs) { + var _result = _meos_a.interval_make(years, months, weeks, days, hours, mins, secs); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int minus_date_date(int d1, int d2) { + var _result = _meos_a.minus_date_date(d1, d2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int minus_date_int(int d, int days) { + var _result = _meos_a.minus_date_int(d, days); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime minus_timestamptz_interval(OffsetDateTime t, Pointer interv) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_timestamptz_interval(t_new, interv); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer minus_timestamptz_timestamptz(OffsetDateTime t1, OffsetDateTime t2) { + var t1_new = t1.toEpochSecond(); + var t2_new = t2.toEpochSecond(); + var _result = _meos_a.minus_timestamptz_timestamptz(t1_new, t2_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_interval_double(Pointer interv, double factor) { + var _result = _meos_a.mul_interval_double(interv, factor); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int pg_date_in(String str) { + var _result = _meos_a.pg_date_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String pg_date_out(int d) { + var _result = _meos_a.pg_date_out(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int pg_interval_cmp(Pointer interv1, Pointer interv2) { + var _result = _meos_a.pg_interval_cmp(interv1, interv2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer pg_interval_in(String str, int typmod) { + var _result = _meos_a.pg_interval_in(str, typmod); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String pg_interval_out(Pointer interv) { + var _result = _meos_a.pg_interval_out(interv); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static LocalDateTime pg_timestamp_in(String str, int typmod) { + var _result = _meos_a.pg_timestamp_in(str, typmod); + MeosErrorHandler.checkError(); + return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static String pg_timestamp_out(LocalDateTime t) { + var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); + var _result = _meos_a.pg_timestamp_out(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime pg_timestamptz_in(String str, int typmod) { + var _result = _meos_a.pg_timestamptz_in(str, typmod); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static String pg_timestamptz_out(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.pg_timestamptz_out(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String text2cstring(Pointer txt) { + var _result = _meos_a.text2cstring(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int text_cmp(Pointer txt1, Pointer txt2) { + var _result = _meos_a.text_cmp(txt1, txt2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_copy(Pointer txt) { + var _result = _meos_a.text_copy(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_in(String str) { + var _result = _meos_a.text_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_initcap(Pointer txt) { + var _result = _meos_a.text_initcap(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_lower(Pointer txt) { + var _result = _meos_a.text_lower(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String text_out(Pointer txt) { + var _result = _meos_a.text_out(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_upper(Pointer txt) { + var _result = _meos_a.text_upper(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_text_text(Pointer txt1, Pointer txt2) { + var _result = _meos_a.textcat_text_text(txt1, txt2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime timestamptz_shift(OffsetDateTime t, Pointer interv) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_shift(t_new, interv); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static int timestamp_to_date(LocalDateTime t) { + var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); + var _result = _meos_a.timestamp_to_date(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int timestamptz_to_date(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_to_date(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintset_in(String str) { + var _result = _meos_a.bigintset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String bigintset_out(Pointer set) { + var _result = _meos_a.bigintset_out(set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_expand(Pointer s, long value) { + var _result = _meos_a.bigintspan_expand(s, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_in(String str) { + var _result = _meos_a.bigintspan_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String bigintspan_out(Pointer s) { + var _result = _meos_a.bigintspan_out(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspanset_in(String str) { + var _result = _meos_a.bigintspanset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String bigintspanset_out(Pointer ss) { + var _result = _meos_a.bigintspanset_out(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer dateset_in(String str) { + var _result = _meos_a.dateset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String dateset_out(Pointer s) { + var _result = _meos_a.dateset_out(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_in(String str) { + var _result = _meos_a.datespan_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String datespan_out(Pointer s) { + var _result = _meos_a.datespan_out(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_in(String str) { + var _result = _meos_a.datespanset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String datespanset_out(Pointer ss) { + var _result = _meos_a.datespanset_out(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_in(String str) { + var _result = _meos_a.floatset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String floatset_out(Pointer set, int maxdd) { + var _result = _meos_a.floatset_out(set, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_expand(Pointer s, double value) { + var _result = _meos_a.floatspan_expand(s, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_in(String str) { + var _result = _meos_a.floatspan_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String floatspan_out(Pointer s, int maxdd) { + var _result = _meos_a.floatspan_out(s, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_in(String str) { + var _result = _meos_a.floatspanset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String floatspanset_out(Pointer ss, int maxdd) { + var _result = _meos_a.floatspanset_out(ss, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intset_in(String str) { + var _result = _meos_a.intset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String intset_out(Pointer set) { + var _result = _meos_a.intset_out(set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_expand(Pointer s, int value) { + var _result = _meos_a.intspan_expand(s, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_in(String str) { + var _result = _meos_a.intspan_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String intspan_out(Pointer s) { + var _result = _meos_a.intspan_out(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspanset_in(String str) { + var _result = _meos_a.intspanset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String intspanset_out(Pointer ss) { + var _result = _meos_a.intspanset_out(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String set_as_hexwkb(Pointer s, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.set_as_hexwkb(s, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_as_wkb(Pointer s, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.set_as_wkb(s, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_from_hexwkb(String hexwkb) { + var _result = _meos_a.set_from_hexwkb(hexwkb); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_from_wkb(Pointer wkb, long size) { + var _result = _meos_a.set_from_wkb(wkb, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String span_as_hexwkb(Pointer s, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.span_as_hexwkb(s, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_as_wkb(Pointer s, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.span_as_wkb(s, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_from_hexwkb(String hexwkb) { + var _result = _meos_a.span_from_hexwkb(hexwkb); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_from_wkb(Pointer wkb, long size) { + var _result = _meos_a.span_from_wkb(wkb, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String spanset_as_hexwkb(Pointer ss, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.spanset_as_hexwkb(ss, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_as_wkb(Pointer ss, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.spanset_as_wkb(ss, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_from_hexwkb(String hexwkb) { + var _result = _meos_a.spanset_from_hexwkb(hexwkb); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_from_wkb(Pointer wkb, long size) { + var _result = _meos_a.spanset_from_wkb(wkb, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_in(String str) { + var _result = _meos_a.textset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String textset_out(Pointer set) { + var _result = _meos_a.textset_out(set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzset_in(String str) { + var _result = _meos_a.tstzset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tstzset_out(Pointer set) { + var _result = _meos_a.tstzset_out(set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_in(String str) { + var _result = _meos_a.tstzspan_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tstzspan_out(Pointer s) { + var _result = _meos_a.tstzspan_out(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_in(String str) { + var _result = _meos_a.tstzspanset_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tstzspanset_out(Pointer ss) { + var _result = _meos_a.tstzspanset_out(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintset_make(Pointer values, int count) { + var _result = _meos_a.bigintset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_make(long lower, long upper, boolean lower_inc, boolean upper_inc) { + var _result = _meos_a.bigintspan_make(lower, upper, lower_inc, upper_inc); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer dateset_make(Pointer values, int count) { + var _result = _meos_a.dateset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { + var _result = _meos_a.datespan_make(lower, upper, lower_inc, upper_inc); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_make(Pointer values, int count) { + var _result = _meos_a.floatset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_make(double lower, double upper, boolean lower_inc, boolean upper_inc) { + var _result = _meos_a.floatspan_make(lower, upper, lower_inc, upper_inc); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intset_make(Pointer values, int count) { + var _result = _meos_a.intset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { + var _result = _meos_a.intspan_make(lower, upper, lower_inc, upper_inc); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_copy(Pointer s) { + var _result = _meos_a.set_copy(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_copy(Pointer s) { + var _result = _meos_a.span_copy(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_copy(Pointer ss) { + var _result = _meos_a.spanset_copy(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_make(Pointer spans, int count) { + var _result = _meos_a.spanset_make(spans, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_make(Pointer values, int count) { + var _result = _meos_a.textset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzset_make(Pointer values, int count) { + var _result = _meos_a.tstzset_make(values, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_make(OffsetDateTime lower, OffsetDateTime upper, boolean lower_inc, boolean upper_inc) { + var lower_new = lower.toEpochSecond(); + var upper_new = upper.toEpochSecond(); + var _result = _meos_a.tstzspan_make(lower_new, upper_new, lower_inc, upper_inc); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigint_to_set(long i) { + var _result = _meos_a.bigint_to_set(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigint_to_span(long i) { + var _result = _meos_a.bigint_to_span(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigint_to_spanset(long i) { + var _result = _meos_a.bigint_to_spanset(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_to_intspan(Pointer s) { + var _result = _meos_a.bigintspan_to_intspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_to_floatspan(Pointer s) { + var _result = _meos_a.bigintspan_to_floatspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer date_to_set(int d) { + var _result = _meos_a.date_to_set(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer date_to_span(int d) { + var _result = _meos_a.date_to_span(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer date_to_spanset(int d) { + var _result = _meos_a.date_to_spanset(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer dateset_to_tstzset(Pointer s) { + var _result = _meos_a.dateset_to_tstzset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_to_tstzspan(Pointer s) { + var _result = _meos_a.datespan_to_tstzspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_to_tstzspanset(Pointer ss) { + var _result = _meos_a.datespanset_to_tstzspanset(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_to_set(double d) { + var _result = _meos_a.float_to_set(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_to_span(double d) { + var _result = _meos_a.float_to_span(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_to_spanset(double d) { + var _result = _meos_a.float_to_spanset(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_to_intset(Pointer s) { + var _result = _meos_a.floatset_to_intset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_to_bigintspan(Pointer s) { + var _result = _meos_a.floatspan_to_bigintspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_to_intspan(Pointer s) { + var _result = _meos_a.floatspan_to_intspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_to_intspanset(Pointer ss) { + var _result = _meos_a.floatspanset_to_intspanset(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_to_set(int i) { + var _result = _meos_a.int_to_set(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_to_span(int i) { + var _result = _meos_a.int_to_span(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_to_spanset(int i) { + var _result = _meos_a.int_to_spanset(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intset_to_floatset(Pointer s) { + var _result = _meos_a.intset_to_floatset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_to_bigintspan(Pointer s) { + var _result = _meos_a.intspan_to_bigintspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_to_floatspan(Pointer s) { + var _result = _meos_a.intspan_to_floatspan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspanset_to_floatspanset(Pointer ss) { + var _result = _meos_a.intspanset_to_floatspanset(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_to_span(Pointer s) { + var _result = _meos_a.set_to_span(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_to_spanset(Pointer s) { + var _result = _meos_a.set_to_spanset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_to_spanset(Pointer s) { + var _result = _meos_a.span_to_spanset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_to_set(Pointer txt) { + var _result = _meos_a.text_to_set(txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_to_set(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_to_set(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_to_span(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_to_span(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_to_spanset(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_to_spanset(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzset_to_dateset(Pointer s) { + var _result = _meos_a.tstzset_to_dateset(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_to_datespan(Pointer s) { + var _result = _meos_a.tstzspan_to_datespan(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_to_datespanset(Pointer ss) { + var _result = _meos_a.tstzspanset_to_datespanset(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintset_end_value(Pointer s) { + var _result = _meos_a.bigintset_end_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintset_start_value(Pointer s) { + var _result = _meos_a.bigintset_start_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_a.bigintset_value_n(s, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer bigintset_values(Pointer s) { + var _result = _meos_a.bigintset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspan_lower(Pointer s) { + var _result = _meos_a.bigintspan_lower(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspan_upper(Pointer s) { + var _result = _meos_a.bigintspan_upper(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspan_width(Pointer s) { + var _result = _meos_a.bigintspan_width(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspanset_lower(Pointer ss) { + var _result = _meos_a.bigintspanset_lower(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspanset_upper(Pointer ss) { + var _result = _meos_a.bigintspanset_upper(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigintspanset_width(Pointer ss, boolean boundspan) { + var _result = _meos_a.bigintspanset_width(ss, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int dateset_end_value(Pointer s) { + var _result = _meos_a.dateset_end_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int dateset_start_value(Pointer s) { + var _result = _meos_a.dateset_start_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer dateset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_a.dateset_value_n(s, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer dateset_values(Pointer s) { + var _result = _meos_a.dateset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_duration(Pointer s) { + var _result = _meos_a.datespan_duration(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int datespan_lower(Pointer s) { + var _result = _meos_a.datespan_lower(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int datespan_upper(Pointer s) { + var _result = _meos_a.datespan_upper(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_date_n(Pointer ss, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_a.datespanset_date_n(ss, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_dates(Pointer ss) { + var _result = _meos_a.datespanset_dates(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_duration(Pointer ss, boolean boundspan) { + var _result = _meos_a.datespanset_duration(ss, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int datespanset_end_date(Pointer ss) { + var _result = _meos_a.datespanset_end_date(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int datespanset_num_dates(Pointer ss) { + var _result = _meos_a.datespanset_num_dates(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int datespanset_start_date(Pointer ss) { + var _result = _meos_a.datespanset_start_date(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatset_end_value(Pointer s) { + var _result = _meos_a.floatset_end_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatset_start_value(Pointer s) { + var _result = _meos_a.floatset_start_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_a.floatset_value_n(s, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer floatset_values(Pointer s) { + var _result = _meos_a.floatset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspan_lower(Pointer s) { + var _result = _meos_a.floatspan_lower(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspan_upper(Pointer s) { + var _result = _meos_a.floatspan_upper(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspan_width(Pointer s) { + var _result = _meos_a.floatspan_width(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspanset_lower(Pointer ss) { + var _result = _meos_a.floatspanset_lower(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspanset_upper(Pointer ss) { + var _result = _meos_a.floatspanset_upper(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double floatspanset_width(Pointer ss, boolean boundspan) { + var _result = _meos_a.floatspanset_width(ss, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intset_end_value(Pointer s) { + var _result = _meos_a.intset_end_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intset_start_value(Pointer s) { + var _result = _meos_a.intset_start_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_a.intset_value_n(s, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer intset_values(Pointer s) { + var _result = _meos_a.intset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspan_lower(Pointer s) { + var _result = _meos_a.intspan_lower(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspan_upper(Pointer s) { + var _result = _meos_a.intspan_upper(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspan_width(Pointer s) { + var _result = _meos_a.intspan_width(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspanset_lower(Pointer ss) { + var _result = _meos_a.intspanset_lower(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspanset_upper(Pointer ss) { + var _result = _meos_a.intspanset_upper(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int intspanset_width(Pointer ss, boolean boundspan) { + var _result = _meos_a.intspanset_width(ss, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int set_hash(Pointer s) { + var _result = _meos_a.set_hash(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long set_hash_extended(Pointer s, long seed) { + var _result = _meos_a.set_hash_extended(s, seed); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int set_num_values(Pointer s) { + var _result = _meos_a.set_num_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int span_hash(Pointer s) { + var _result = _meos_a.span_hash(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long span_hash_extended(Pointer s, long seed) { + var _result = _meos_a.span_hash_extended(s, seed); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_lower_inc(Pointer s) { + var _result = _meos_a.span_lower_inc(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_upper_inc(Pointer s) { + var _result = _meos_a.span_upper_inc(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_end_span(Pointer ss) { + var _result = _meos_a.spanset_end_span(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int spanset_hash(Pointer ss) { + var _result = _meos_a.spanset_hash(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long spanset_hash_extended(Pointer ss, long seed) { + var _result = _meos_a.spanset_hash_extended(ss, seed); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_lower_inc(Pointer ss) { + var _result = _meos_a.spanset_lower_inc(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int spanset_num_spans(Pointer ss) { + var _result = _meos_a.spanset_num_spans(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_span(Pointer ss) { + var _result = _meos_a.spanset_span(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_span_n(Pointer ss, int i) { + var _result = _meos_a.spanset_span_n(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_spanarr(Pointer ss) { + var _result = _meos_a.spanset_spanarr(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_start_span(Pointer ss) { + var _result = _meos_a.spanset_start_span(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_upper_inc(Pointer ss) { + var _result = _meos_a.spanset_upper_inc(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_end_value(Pointer s) { + var _result = _meos_a.textset_end_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_start_value(Pointer s) { + var _result = _meos_a.textset_start_value(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_a.textset_value_n(s, n, result); + Pointer new_result = result.getPointer(0); + MeosErrorHandler.checkError(); + return out ? new_result : null; + } + + @SuppressWarnings("unused") + public static Pointer textset_values(Pointer s) { + var _result = _meos_a.textset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzset_end_value(Pointer s) { + var _result = _meos_a.tstzset_end_value(s); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzset_start_value(Pointer s) { + var _result = _meos_a.tstzset_start_value(s); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer tstzset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_a.tstzset_value_n(s, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tstzset_values(Pointer s) { + var _result = _meos_a.tstzset_values(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_duration(Pointer s) { + var _result = _meos_a.tstzspan_duration(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspan_lower(Pointer s) { + var _result = _meos_a.tstzspan_lower(s); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspan_upper(Pointer s) { + var _result = _meos_a.tstzspan_upper(s); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_duration(Pointer ss, boolean boundspan) { + var _result = _meos_a.tstzspanset_duration(ss, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspanset_end_timestamptz(Pointer ss) { + var _result = _meos_a.tstzspanset_end_timestamptz(ss); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspanset_lower(Pointer ss) { + var _result = _meos_a.tstzspanset_lower(ss); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static int tstzspanset_num_timestamps(Pointer ss) { + var _result = _meos_a.tstzspanset_num_timestamps(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspanset_start_timestamptz(Pointer ss) { + var _result = _meos_a.tstzspanset_start_timestamptz(ss); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_timestamps(Pointer ss) { + var _result = _meos_a.tstzspanset_timestamps(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_timestamptz_n(Pointer ss, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_a.tstzspanset_timestamptz_n(ss, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static OffsetDateTime tstzspanset_upper(Pointer ss) { + var _result = _meos_a.tstzspanset_upper(ss); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer bigintset_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.bigintset_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.bigintspan_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspanset_shift_scale(Pointer ss, long shift, long width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.bigintspanset_shift_scale(ss, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer dateset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.dateset_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.datespan_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.datespanset_shift_scale(ss, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_ceil(Pointer s) { + var _result = _meos_a.floatset_ceil(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_degrees(Pointer s, boolean normalize) { + var _result = _meos_a.floatset_degrees(s, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_floor(Pointer s) { + var _result = _meos_a.floatset_floor(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_radians(Pointer s) { + var _result = _meos_a.floatset_radians(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatset_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.floatset_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_ceil(Pointer s) { + var _result = _meos_a.floatspan_ceil(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_degrees(Pointer s, boolean normalize) { + var _result = _meos_a.floatspan_degrees(s, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_floor(Pointer s) { + var _result = _meos_a.floatspan_floor(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_radians(Pointer s) { + var _result = _meos_a.floatspan_radians(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_round(Pointer s, int maxdd) { + var _result = _meos_a.floatspan_round(s, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.floatspan_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_ceil(Pointer ss) { + var _result = _meos_a.floatspanset_ceil(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_floor(Pointer ss) { + var _result = _meos_a.floatspanset_floor(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_degrees(Pointer ss, boolean normalize) { + var _result = _meos_a.floatspanset_degrees(ss, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_radians(Pointer ss) { + var _result = _meos_a.floatspanset_radians(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_round(Pointer ss, int maxdd) { + var _result = _meos_a.floatspanset_round(ss, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_shift_scale(Pointer ss, double shift, double width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.floatspanset_shift_scale(ss, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.intset_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.intspan_shift_scale(s, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_a.intspanset_shift_scale(ss, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_expand(Pointer s, Pointer interv) { + var _result = _meos_a.tstzspan_expand(s, interv); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_round(Pointer s, int maxdd) { + var _result = _meos_a.set_round(s, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_text_textset(Pointer txt, Pointer s) { + var _result = _meos_a.textcat_text_textset(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_textset_text(Pointer s, Pointer txt) { + var _result = _meos_a.textcat_textset_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_initcap(Pointer s) { + var _result = _meos_a.textset_initcap(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_lower(Pointer s) { + var _result = _meos_a.textset_lower(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textset_upper(Pointer s) { + var _result = _meos_a.textset_upper(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime timestamptz_tprecision(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { + var t_new = t.toEpochSecond(); + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.timestamptz_tprecision(t_new, duration, torigin_new); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer tstzset_shift_scale(Pointer s, Pointer shift, Pointer duration) { + var _result = _meos_a.tstzset_shift_scale(s, shift, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzset_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.tstzset_tprecision(s, duration, torigin_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_shift_scale(Pointer s, Pointer shift, Pointer duration) { + var _result = _meos_a.tstzspan_shift_scale(s, shift, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.tstzspan_tprecision(s, duration, torigin_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_shift_scale(Pointer ss, Pointer shift, Pointer duration) { + var _result = _meos_a.tstzspanset_shift_scale(ss, shift, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_tprecision(Pointer ss, Pointer duration, OffsetDateTime torigin) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.tstzspanset_tprecision(ss, duration, torigin_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int set_cmp(Pointer s1, Pointer s2) { + var _result = _meos_a.set_cmp(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_eq(Pointer s1, Pointer s2) { + var _result = _meos_a.set_eq(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_ge(Pointer s1, Pointer s2) { + var _result = _meos_a.set_ge(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_gt(Pointer s1, Pointer s2) { + var _result = _meos_a.set_gt(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_le(Pointer s1, Pointer s2) { + var _result = _meos_a.set_le(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_lt(Pointer s1, Pointer s2) { + var _result = _meos_a.set_lt(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean set_ne(Pointer s1, Pointer s2) { + var _result = _meos_a.set_ne(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int span_cmp(Pointer s1, Pointer s2) { + var _result = _meos_a.span_cmp(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_eq(Pointer s1, Pointer s2) { + var _result = _meos_a.span_eq(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_ge(Pointer s1, Pointer s2) { + var _result = _meos_a.span_ge(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_gt(Pointer s1, Pointer s2) { + var _result = _meos_a.span_gt(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_le(Pointer s1, Pointer s2) { + var _result = _meos_a.span_le(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_lt(Pointer s1, Pointer s2) { + var _result = _meos_a.span_lt(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean span_ne(Pointer s1, Pointer s2) { + var _result = _meos_a.span_ne(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int spanset_cmp(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_cmp(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_eq(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_eq(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_ge(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_ge(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_gt(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_gt(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_le(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_le(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_lt(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_lt(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean spanset_ne(Pointer ss1, Pointer ss2) { + var _result = _meos_a.spanset_ne(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_spans(Pointer s) { + var _result = _meos_a.set_spans(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_split_each_n_spans(Pointer s, int elems_per_span, Pointer count) { + var _result = _meos_a.set_split_each_n_spans(s, elems_per_span, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_split_n_spans(Pointer s, int span_count, Pointer count) { + var _result = _meos_a.set_split_n_spans(s, span_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_spans(Pointer ss) { + var _result = _meos_a.spanset_spans(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_split_each_n_spans(Pointer ss, int elems_per_span, Pointer count) { + var _result = _meos_a.spanset_split_each_n_spans(ss, elems_per_span, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_split_n_spans(Pointer ss, int span_count, Pointer count) { + var _result = _meos_a.spanset_split_n_spans(ss, span_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_bigint(Pointer s, long i) { + var _result = _meos_a.adjacent_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_date(Pointer s, int d) { + var _result = _meos_a.adjacent_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_float(Pointer s, double d) { + var _result = _meos_a.adjacent_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_int(Pointer s, int i) { + var _result = _meos_a.adjacent_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.adjacent_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.adjacent_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.adjacent_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.adjacent_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_date(Pointer ss, int d) { + var _result = _meos_a.adjacent_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_float(Pointer ss, double d) { + var _result = _meos_a.adjacent_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_int(Pointer ss, int i) { + var _result = _meos_a.adjacent_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.adjacent_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.adjacent_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.adjacent_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_bigint_set(long i, Pointer s) { + var _result = _meos_a.contained_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_bigint_span(long i, Pointer s) { + var _result = _meos_a.contained_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.contained_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_date_set(int d, Pointer s) { + var _result = _meos_a.contained_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_date_span(int d, Pointer s) { + var _result = _meos_a.contained_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_date_spanset(int d, Pointer ss) { + var _result = _meos_a.contained_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_float_set(double d, Pointer s) { + var _result = _meos_a.contained_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_float_span(double d, Pointer s) { + var _result = _meos_a.contained_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_float_spanset(double d, Pointer ss) { + var _result = _meos_a.contained_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_int_set(int i, Pointer s) { + var _result = _meos_a.contained_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_int_span(int i, Pointer s) { + var _result = _meos_a.contained_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_int_spanset(int i, Pointer ss) { + var _result = _meos_a.contained_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.contained_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.contained_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.contained_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.contained_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.contained_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.contained_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contained_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contained_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contained_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_bigint(Pointer s, long i) { + var _result = _meos_a.contains_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_date(Pointer s, int d) { + var _result = _meos_a.contains_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_float(Pointer s, double d) { + var _result = _meos_a.contains_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_int(Pointer s, int i) { + var _result = _meos_a.contains_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.contains_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_text(Pointer s, Pointer t) { + var _result = _meos_a.contains_set_text(s, t); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contains_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_bigint(Pointer s, long i) { + var _result = _meos_a.contains_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_date(Pointer s, int d) { + var _result = _meos_a.contains_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_float(Pointer s, double d) { + var _result = _meos_a.contains_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_int(Pointer s, int i) { + var _result = _meos_a.contains_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.contains_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.contains_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contains_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.contains_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_date(Pointer ss, int d) { + var _result = _meos_a.contains_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_float(Pointer ss, double d) { + var _result = _meos_a.contains_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_int(Pointer ss, int i) { + var _result = _meos_a.contains_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.contains_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.contains_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.contains_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.overlaps_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.overlaps_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.overlaps_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.overlaps_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.overlaps_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_date_set(int d, Pointer s) { + var _result = _meos_a.after_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_date_span(int d, Pointer s) { + var _result = _meos_a.after_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_date_spanset(int d, Pointer ss) { + var _result = _meos_a.after_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_set_date(Pointer s, int d) { + var _result = _meos_a.after_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_span_date(Pointer s, int d) { + var _result = _meos_a.after_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_spanset_date(Pointer ss, int d) { + var _result = _meos_a.after_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.after_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_date_set(int d, Pointer s) { + var _result = _meos_a.before_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_date_span(int d, Pointer s) { + var _result = _meos_a.before_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_date_spanset(int d, Pointer ss) { + var _result = _meos_a.before_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_set_date(Pointer s, int d) { + var _result = _meos_a.before_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_span_date(Pointer s, int d) { + var _result = _meos_a.before_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_spanset_date(Pointer ss, int d) { + var _result = _meos_a.before_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.before_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_bigint_set(long i, Pointer s) { + var _result = _meos_a.left_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_bigint_span(long i, Pointer s) { + var _result = _meos_a.left_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.left_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_float_set(double d, Pointer s) { + var _result = _meos_a.left_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_float_span(double d, Pointer s) { + var _result = _meos_a.left_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_float_spanset(double d, Pointer ss) { + var _result = _meos_a.left_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_int_set(int i, Pointer s) { + var _result = _meos_a.left_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_int_span(int i, Pointer s) { + var _result = _meos_a.left_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_int_spanset(int i, Pointer ss) { + var _result = _meos_a.left_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_set_bigint(Pointer s, long i) { + var _result = _meos_a.left_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_set_float(Pointer s, double d) { + var _result = _meos_a.left_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_set_int(Pointer s, int i) { + var _result = _meos_a.left_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.left_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.left_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_span_bigint(Pointer s, long i) { + var _result = _meos_a.left_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_span_float(Pointer s, double d) { + var _result = _meos_a.left_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_span_int(Pointer s, int i) { + var _result = _meos_a.left_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.left_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.left_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.left_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_spanset_float(Pointer ss, double d) { + var _result = _meos_a.left_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_spanset_int(Pointer ss, int i) { + var _result = _meos_a.left_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.left_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.left_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.left_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_date_set(int d, Pointer s) { + var _result = _meos_a.overafter_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_date_span(int d, Pointer s) { + var _result = _meos_a.overafter_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_date_spanset(int d, Pointer ss) { + var _result = _meos_a.overafter_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_set_date(Pointer s, int d) { + var _result = _meos_a.overafter_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_span_date(Pointer s, int d) { + var _result = _meos_a.overafter_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_spanset_date(Pointer ss, int d) { + var _result = _meos_a.overafter_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overafter_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_date_set(int d, Pointer s) { + var _result = _meos_a.overbefore_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_date_span(int d, Pointer s) { + var _result = _meos_a.overbefore_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_date_spanset(int d, Pointer ss) { + var _result = _meos_a.overbefore_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_set_date(Pointer s, int d) { + var _result = _meos_a.overbefore_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_span_date(Pointer s, int d) { + var _result = _meos_a.overbefore_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_spanset_date(Pointer ss, int d) { + var _result = _meos_a.overbefore_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.overbefore_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_bigint_set(long i, Pointer s) { + var _result = _meos_a.overleft_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_bigint_span(long i, Pointer s) { + var _result = _meos_a.overleft_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.overleft_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_float_set(double d, Pointer s) { + var _result = _meos_a.overleft_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_float_span(double d, Pointer s) { + var _result = _meos_a.overleft_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_float_spanset(double d, Pointer ss) { + var _result = _meos_a.overleft_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_int_set(int i, Pointer s) { + var _result = _meos_a.overleft_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_int_span(int i, Pointer s) { + var _result = _meos_a.overleft_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_int_spanset(int i, Pointer ss) { + var _result = _meos_a.overleft_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_set_bigint(Pointer s, long i) { + var _result = _meos_a.overleft_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_set_float(Pointer s, double d) { + var _result = _meos_a.overleft_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_set_int(Pointer s, int i) { + var _result = _meos_a.overleft_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.overleft_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.overleft_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_span_bigint(Pointer s, long i) { + var _result = _meos_a.overleft_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_span_float(Pointer s, double d) { + var _result = _meos_a.overleft_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_span_int(Pointer s, int i) { + var _result = _meos_a.overleft_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.overleft_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.overleft_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.overleft_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_spanset_float(Pointer ss, double d) { + var _result = _meos_a.overleft_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_spanset_int(Pointer ss, int i) { + var _result = _meos_a.overleft_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.overleft_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.overleft_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.overleft_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_bigint_set(long i, Pointer s) { + var _result = _meos_a.overright_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_bigint_span(long i, Pointer s) { + var _result = _meos_a.overright_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.overright_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_float_set(double d, Pointer s) { + var _result = _meos_a.overright_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_float_span(double d, Pointer s) { + var _result = _meos_a.overright_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_float_spanset(double d, Pointer ss) { + var _result = _meos_a.overright_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_int_set(int i, Pointer s) { + var _result = _meos_a.overright_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_int_span(int i, Pointer s) { + var _result = _meos_a.overright_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_int_spanset(int i, Pointer ss) { + var _result = _meos_a.overright_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_set_bigint(Pointer s, long i) { + var _result = _meos_a.overright_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_set_float(Pointer s, double d) { + var _result = _meos_a.overright_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_set_int(Pointer s, int i) { + var _result = _meos_a.overright_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.overright_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.overright_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_span_bigint(Pointer s, long i) { + var _result = _meos_a.overright_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_span_float(Pointer s, double d) { + var _result = _meos_a.overright_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_span_int(Pointer s, int i) { + var _result = _meos_a.overright_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.overright_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.overright_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.overright_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_spanset_float(Pointer ss, double d) { + var _result = _meos_a.overright_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_spanset_int(Pointer ss, int i) { + var _result = _meos_a.overright_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.overright_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.overright_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.overright_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_bigint_set(long i, Pointer s) { + var _result = _meos_a.right_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_bigint_span(long i, Pointer s) { + var _result = _meos_a.right_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.right_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_float_set(double d, Pointer s) { + var _result = _meos_a.right_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_float_span(double d, Pointer s) { + var _result = _meos_a.right_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_float_spanset(double d, Pointer ss) { + var _result = _meos_a.right_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_int_set(int i, Pointer s) { + var _result = _meos_a.right_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_int_span(int i, Pointer s) { + var _result = _meos_a.right_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_int_spanset(int i, Pointer ss) { + var _result = _meos_a.right_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_set_bigint(Pointer s, long i) { + var _result = _meos_a.right_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_set_float(Pointer s, double d) { + var _result = _meos_a.right_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_set_int(Pointer s, int i) { + var _result = _meos_a.right_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.right_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.right_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_span_bigint(Pointer s, long i) { + var _result = _meos_a.right_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_span_float(Pointer s, double d) { + var _result = _meos_a.right_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_span_int(Pointer s, int i) { + var _result = _meos_a.right_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.right_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.right_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.right_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_spanset_float(Pointer ss, double d) { + var _result = _meos_a.right_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_spanset_int(Pointer ss, int i) { + var _result = _meos_a.right_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.right_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.right_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.right_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_bigint_set(long i, Pointer s) { + var _result = _meos_a.intersection_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_date_set(int d, Pointer s) { + var _result = _meos_a.intersection_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_float_set(double d, Pointer s) { + var _result = _meos_a.intersection_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_int_set(int i, Pointer s) { + var _result = _meos_a.intersection_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_bigint(Pointer s, long i) { + var _result = _meos_a.intersection_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_date(Pointer s, int d) { + var _result = _meos_a.intersection_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_float(Pointer s, double d) { + var _result = _meos_a.intersection_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_int(Pointer s, int i) { + var _result = _meos_a.intersection_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.intersection_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.intersection_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.intersection_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_bigint(Pointer s, long i) { + var _result = _meos_a.intersection_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_date(Pointer s, int d) { + var _result = _meos_a.intersection_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_float(Pointer s, double d) { + var _result = _meos_a.intersection_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_int(Pointer s, int i) { + var _result = _meos_a.intersection_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.intersection_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.intersection_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.intersection_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.intersection_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_date(Pointer ss, int d) { + var _result = _meos_a.intersection_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_float(Pointer ss, double d) { + var _result = _meos_a.intersection_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_int(Pointer ss, int i) { + var _result = _meos_a.intersection_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.intersection_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.intersection_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.intersection_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.intersection_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.intersection_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_bigint_set(long i, Pointer s) { + var _result = _meos_a.minus_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_bigint_span(long i, Pointer s) { + var _result = _meos_a.minus_bigint_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.minus_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_date_set(int d, Pointer s) { + var _result = _meos_a.minus_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_date_span(int d, Pointer s) { + var _result = _meos_a.minus_date_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_date_spanset(int d, Pointer ss) { + var _result = _meos_a.minus_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_float_set(double d, Pointer s) { + var _result = _meos_a.minus_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_float_span(double d, Pointer s) { + var _result = _meos_a.minus_float_span(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_float_spanset(double d, Pointer ss) { + var _result = _meos_a.minus_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_int_set(int i, Pointer s) { + var _result = _meos_a.minus_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_int_span(int i, Pointer s) { + var _result = _meos_a.minus_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_int_spanset(int i, Pointer ss) { + var _result = _meos_a.minus_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_bigint(Pointer s, long i) { + var _result = _meos_a.minus_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_date(Pointer s, int d) { + var _result = _meos_a.minus_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_float(Pointer s, double d) { + var _result = _meos_a.minus_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_int(Pointer s, int i) { + var _result = _meos_a.minus_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.minus_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.minus_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_bigint(Pointer s, long i) { + var _result = _meos_a.minus_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_date(Pointer s, int d) { + var _result = _meos_a.minus_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_float(Pointer s, double d) { + var _result = _meos_a.minus_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_int(Pointer s, int i) { + var _result = _meos_a.minus_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.minus_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.minus_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.minus_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_date(Pointer ss, int d) { + var _result = _meos_a.minus_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_float(Pointer ss, double d) { + var _result = _meos_a.minus_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_int(Pointer ss, int i) { + var _result = _meos_a.minus_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.minus_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.minus_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.minus_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer minus_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.minus_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_bigint_set(long i, Pointer s) { + var _result = _meos_a.union_bigint_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_bigint_span(Pointer s, long i) { + var _result = _meos_a.union_bigint_span(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_bigint_spanset(long i, Pointer ss) { + var _result = _meos_a.union_bigint_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_date_set(int d, Pointer s) { + var _result = _meos_a.union_date_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_date_span(Pointer s, int d) { + var _result = _meos_a.union_date_span(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_date_spanset(int d, Pointer ss) { + var _result = _meos_a.union_date_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_float_set(double d, Pointer s) { + var _result = _meos_a.union_float_set(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_float_span(Pointer s, double d) { + var _result = _meos_a.union_float_span(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_float_spanset(double d, Pointer ss) { + var _result = _meos_a.union_float_spanset(d, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_int_set(int i, Pointer s) { + var _result = _meos_a.union_int_set(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_int_span(int i, Pointer s) { + var _result = _meos_a.union_int_span(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_int_spanset(int i, Pointer ss) { + var _result = _meos_a.union_int_spanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_bigint(Pointer s, long i) { + var _result = _meos_a.union_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_date(Pointer s, int d) { + var _result = _meos_a.union_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_float(Pointer s, double d) { + var _result = _meos_a.union_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_int(Pointer s, int i) { + var _result = _meos_a.union_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_set(Pointer s1, Pointer s2) { + var _result = _meos_a.union_set_set(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_text(Pointer s, Pointer txt) { + var _result = _meos_a.union_set_text(s, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_bigint(Pointer s, long i) { + var _result = _meos_a.union_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_date(Pointer s, int d) { + var _result = _meos_a.union_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_float(Pointer s, double d) { + var _result = _meos_a.union_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_int(Pointer s, int i) { + var _result = _meos_a.union_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_span(Pointer s1, Pointer s2) { + var _result = _meos_a.union_span_span(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_spanset(Pointer s, Pointer ss) { + var _result = _meos_a.union_span_spanset(s, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.union_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_date(Pointer ss, int d) { + var _result = _meos_a.union_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_float(Pointer ss, double d) { + var _result = _meos_a.union_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_int(Pointer ss, int i) { + var _result = _meos_a.union_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_a.union_spanset_span(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.union_spanset_spanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_text_set(Pointer txt, Pointer s) { + var _result = _meos_a.union_text_set(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_timestamptz_set(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_timestamptz_set(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_timestamptz_span(OffsetDateTime t, Pointer s) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_timestamptz_span(t_new, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_timestamptz_spanset(OffsetDateTime t, Pointer ss) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.union_timestamptz_spanset(t_new, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_bigintset_bigintset(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_bigintset_bigintset(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_bigintspan_bigintspan(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_bigintspan_bigintspan(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_bigintspanset_bigintspan(Pointer ss, Pointer s) { + var _result = _meos_a.distance_bigintspanset_bigintspan(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_bigintspanset_bigintspanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.distance_bigintspanset_bigintspanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_dateset_dateset(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_dateset_dateset(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_datespan_datespan(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_datespan_datespan(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_datespanset_datespan(Pointer ss, Pointer s) { + var _result = _meos_a.distance_datespanset_datespan(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_datespanset_datespanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.distance_datespanset_datespanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_floatset_floatset(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_floatset_floatset(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_floatspan_floatspan(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_floatspan_floatspan(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_floatspanset_floatspan(Pointer ss, Pointer s) { + var _result = _meos_a.distance_floatspanset_floatspan(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_floatspanset_floatspanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.distance_floatspanset_floatspanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_intset_intset(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_intset_intset(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_intspan_intspan(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_intspan_intspan(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_intspanset_intspan(Pointer ss, Pointer s) { + var _result = _meos_a.distance_intspanset_intspan(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_intspanset_intspanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.distance_intspanset_intspanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_set_bigint(Pointer s, long i) { + var _result = _meos_a.distance_set_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_set_date(Pointer s, int d) { + var _result = _meos_a.distance_set_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_set_float(Pointer s, double d) { + var _result = _meos_a.distance_set_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_set_int(Pointer s, int i) { + var _result = _meos_a.distance_set_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_set_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.distance_set_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_span_bigint(Pointer s, long i) { + var _result = _meos_a.distance_span_bigint(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_span_date(Pointer s, int d) { + var _result = _meos_a.distance_span_date(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_span_float(Pointer s, double d) { + var _result = _meos_a.distance_span_float(s, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_span_int(Pointer s, int i) { + var _result = _meos_a.distance_span_int(s, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_span_timestamptz(Pointer s, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.distance_span_timestamptz(s, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long distance_spanset_bigint(Pointer ss, long i) { + var _result = _meos_a.distance_spanset_bigint(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_spanset_date(Pointer ss, int d) { + var _result = _meos_a.distance_spanset_date(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_spanset_float(Pointer ss, double d) { + var _result = _meos_a.distance_spanset_float(ss, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int distance_spanset_int(Pointer ss, int i) { + var _result = _meos_a.distance_spanset_int(ss, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_spanset_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.distance_spanset_timestamptz(ss, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_tstzset_tstzset(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_tstzset_tstzset(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_tstzspan_tstzspan(Pointer s1, Pointer s2) { + var _result = _meos_a.distance_tstzspan_tstzspan(s1, s2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_tstzspanset_tstzspan(Pointer ss, Pointer s) { + var _result = _meos_a.distance_tstzspanset_tstzspan(ss, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double distance_tstzspanset_tstzspanset(Pointer ss1, Pointer ss2) { + var _result = _meos_a.distance_tstzspanset_tstzspanset(ss1, ss2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigint_extent_transfn(Pointer state, long i) { + var _result = _meos_a.bigint_extent_transfn(state, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigint_union_transfn(Pointer state, long i) { + var _result = _meos_a.bigint_union_transfn(state, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer date_extent_transfn(Pointer state, int d) { + var _result = _meos_a.date_extent_transfn(state, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer date_union_transfn(Pointer state, int d) { + var _result = _meos_a.date_union_transfn(state, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_extent_transfn(Pointer state, double d) { + var _result = _meos_a.float_extent_transfn(state, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_union_transfn(Pointer state, double d) { + var _result = _meos_a.float_union_transfn(state, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_extent_transfn(Pointer state, int i) { + var _result = _meos_a.int_extent_transfn(state, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_union_transfn(Pointer state, int i) { + var _result = _meos_a.int_union_transfn(state, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_extent_transfn(Pointer state, Pointer s) { + var _result = _meos_a.set_extent_transfn(state, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_union_finalfn(Pointer state) { + var _result = _meos_a.set_union_finalfn(state); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_union_transfn(Pointer state, Pointer s) { + var _result = _meos_a.set_union_transfn(state, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_extent_transfn(Pointer state, Pointer s) { + var _result = _meos_a.span_extent_transfn(state, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_union_transfn(Pointer state, Pointer s) { + var _result = _meos_a.span_union_transfn(state, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_extent_transfn(Pointer state, Pointer ss) { + var _result = _meos_a.spanset_extent_transfn(state, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_union_finalfn(Pointer state) { + var _result = _meos_a.spanset_union_finalfn(state); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_union_transfn(Pointer state, Pointer ss) { + var _result = _meos_a.spanset_union_transfn(state, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer text_union_transfn(Pointer state, Pointer txt) { + var _result = _meos_a.text_union_transfn(state, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_extent_transfn(Pointer state, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_extent_transfn(state, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_union_transfn(Pointer state, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_union_transfn(state, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long bigint_get_bin(long value, long vsize, long vorigin) { + var _result = _meos_a.bigint_get_bin(value, vsize, vorigin); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspan_bins(Pointer s, long vsize, long vorigin, Pointer count) { + var _result = _meos_a.bigintspan_bins(s, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer bigintspanset_bins(Pointer ss, long vsize, long vorigin, Pointer count) { + var _result = _meos_a.bigintspanset_bins(ss, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int date_get_bin(int d, Pointer duration, int torigin) { + var _result = _meos_a.date_get_bin(d, duration, torigin); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespan_bins(Pointer s, Pointer duration, int torigin, Pointer count) { + var _result = _meos_a.datespan_bins(s, duration, torigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer datespanset_bins(Pointer ss, Pointer duration, int torigin, Pointer count) { + var _result = _meos_a.datespanset_bins(ss, duration, torigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_get_bin(double value, double vsize, double vorigin) { + var _result = _meos_a.float_get_bin(value, vsize, vorigin); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspan_bins(Pointer s, double vsize, double vorigin, Pointer count) { + var _result = _meos_a.floatspan_bins(s, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer floatspanset_bins(Pointer ss, double vsize, double vorigin, Pointer count) { + var _result = _meos_a.floatspanset_bins(ss, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int int_get_bin(int value, int vsize, int vorigin) { + var _result = _meos_a.int_get_bin(value, vsize, vorigin); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspan_bins(Pointer s, int vsize, int vorigin, Pointer count) { + var _result = _meos_a.intspan_bins(s, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intspanset_bins(Pointer ss, int vsize, int vorigin, Pointer count) { + var _result = _meos_a.intspanset_bins(ss, vsize, vorigin, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime timestamptz_get_bin(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { + var t_new = t.toEpochSecond(); + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.timestamptz_get_bin(t_new, duration, torigin_new); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer tstzspan_bins(Pointer s, Pointer duration, OffsetDateTime origin, Pointer count) { + var origin_new = origin.toEpochSecond(); + var _result = _meos_a.tstzspan_bins(s, duration, origin_new, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tstzspanset_bins(Pointer ss, Pointer duration, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_a.tstzspanset_bins(ss, duration, torigin_new, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tbox_as_hexwkb(Pointer box, byte variant, Pointer size) { + var _result = _meos_a.tbox_as_hexwkb(box, variant, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_as_wkb(Pointer box, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_a.tbox_as_wkb(box, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_from_hexwkb(String hexwkb) { + var _result = _meos_a.tbox_from_hexwkb(hexwkb); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_from_wkb(Pointer wkb, long size) { + var _result = _meos_a.tbox_from_wkb(wkb, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_in(String str) { + var _result = _meos_a.tbox_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tbox_out(Pointer box, int maxdd) { + var _result = _meos_a.tbox_out(box, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_timestamptz_to_tbox(double d, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.float_timestamptz_to_tbox(d, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_tstzspan_to_tbox(double d, Pointer s) { + var _result = _meos_a.float_tstzspan_to_tbox(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_timestamptz_to_tbox(int i, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.int_timestamptz_to_tbox(i, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_tstzspan_to_tbox(int i, Pointer s) { + var _result = _meos_a.int_tstzspan_to_tbox(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer numspan_tstzspan_to_tbox(Pointer span, Pointer s) { + var _result = _meos_a.numspan_tstzspan_to_tbox(span, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer numspan_timestamptz_to_tbox(Pointer span, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.numspan_timestamptz_to_tbox(span, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_copy(Pointer box) { + var _result = _meos_a.tbox_copy(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_make(Pointer s, Pointer p) { + var _result = _meos_a.tbox_make(s, p); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer float_to_tbox(double d) { + var _result = _meos_a.float_to_tbox(d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer int_to_tbox(int i) { + var _result = _meos_a.int_to_tbox(i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer set_to_tbox(Pointer s) { + var _result = _meos_a.set_to_tbox(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer span_to_tbox(Pointer s) { + var _result = _meos_a.span_to_tbox(s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer spanset_to_tbox(Pointer ss) { + var _result = _meos_a.spanset_to_tbox(ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_to_bigintspan(Pointer box) { + var _result = _meos_a.tbox_to_bigintspan(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_to_intspan(Pointer box) { + var _result = _meos_a.tbox_to_intspan(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_to_floatspan(Pointer box) { + var _result = _meos_a.tbox_to_floatspan(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_to_tstzspan(Pointer box) { + var _result = _meos_a.tbox_to_tstzspan(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer timestamptz_to_tbox(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_a.timestamptz_to_tbox(t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tbox_hash(Pointer box) { + var _result = _meos_a.tbox_hash(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long tbox_hash_extended(Pointer box, long seed) { + var _result = _meos_a.tbox_hash_extended(box, seed); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_hast(Pointer box) { + var _result = _meos_a.tbox_hast(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_hasx(Pointer box) { + var _result = _meos_a.tbox_hasx(box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_tmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_b.tbox_tmax(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_tmax_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_b.tbox_tmax_inc(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_tmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_b.tbox_tmin(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_tmin_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_b.tbox_tmin_inc(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_xmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_b.tbox_xmax(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_xmax_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_b.tbox_xmax_inc(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_xmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_b.tbox_xmin(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbox_xmin_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_b.tbox_xmin_inc(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tboxfloat_xmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_b.tboxfloat_xmax(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tboxfloat_xmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_b.tboxfloat_xmin(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tboxint_xmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_b.tboxint_xmax(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tboxint_xmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_b.tboxint_xmin(box, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbigintbox_expand(Pointer box, long i) { + var _result = _meos_b.tbigintbox_expand(box, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigintbox_shift_scale(Pointer box, long shift, long width, boolean hasshift, boolean haswidth) { + var _result = _meos_b.tbigintbox_shift_scale(box, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_expand_time(Pointer box, Pointer interv) { + var _result = _meos_b.tbox_expand_time(box, interv); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_round(Pointer box, int maxdd) { + var _result = _meos_b.tbox_round(box, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { + var _result = _meos_b.tbox_shift_scale_time(box, shift, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatbox_expand(Pointer box, double d) { + var _result = _meos_b.tfloatbox_expand(box, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatbox_shift_scale(Pointer box, double shift, double width, boolean hasshift, boolean haswidth) { + var _result = _meos_b.tfloatbox_shift_scale(box, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintbox_expand(Pointer box, int i) { + var _result = _meos_b.tintbox_expand(box, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintbox_shift_scale(Pointer box, int shift, int width, boolean hasshift, boolean haswidth) { + var _result = _meos_b.tintbox_shift_scale(box, shift, width, hasshift, haswidth); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer union_tbox_tbox(Pointer box1, Pointer box2, boolean strict) { + var _result = _meos_b.union_tbox_tbox(box1, box2, strict); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer intersection_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.intersection_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.adjacent_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.contained_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.contains_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.overlaps_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.same_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.after_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.before_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.left_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.overafter_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.overbefore_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.overleft_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.overright_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean right_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_b.right_tbox_tbox(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tbox_cmp(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_cmp(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_eq(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_eq(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_ge(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_ge(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_gt(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_gt(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_le(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_le(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_lt(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_lt(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbox_ne(Pointer box1, Pointer box2) { + var _result = _meos_b.tbox_ne(box1, box2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_from_mfjson(String str) { + var _result = _meos_b.tbigint_from_mfjson(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_in(String str) { + var _result = _meos_b.tbigint_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tbigint_out(Pointer temp) { + var _result = _meos_b.tbigint_out(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_from_mfjson(String str) { + var _result = _meos_b.tbool_from_mfjson(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_in(String str) { + var _result = _meos_b.tbool_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tbool_out(Pointer temp) { + var _result = _meos_b.tbool_out(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String temporal_as_hexwkb(Pointer temp, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_b.temporal_as_hexwkb(temp, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String temporal_as_mfjson(Pointer temp, boolean with_bbox, int flags, int precision, String srs) { + var _result = _meos_b.temporal_as_mfjson(temp, with_bbox, flags, precision, srs); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_as_wkb(Pointer temp, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_b.temporal_as_wkb(temp, variant, size_out); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_from_hexwkb(String hexwkb) { + var _result = _meos_b.temporal_from_hexwkb(hexwkb); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_from_wkb(Pointer wkb, long size) { + var _result = _meos_b.temporal_from_wkb(wkb, size); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_from_mfjson(String str) { + var _result = _meos_b.tfloat_from_mfjson(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_in(String str) { + var _result = _meos_b.tfloat_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tfloat_out(Pointer temp, int maxdd) { + var _result = _meos_b.tfloat_out(temp, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_from_mfjson(String str) { + var _result = _meos_b.tint_from_mfjson(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_in(String str) { + var _result = _meos_b.tint_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String tint_out(Pointer temp) { + var _result = _meos_b.tint_out(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_from_mfjson(String str) { + var _result = _meos_b.ttext_from_mfjson(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_in(String str) { + var _result = _meos_b.ttext_in(str); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String ttext_out(Pointer temp) { + var _result = _meos_b.ttext_out(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_from_base_temp(long i, Pointer temp) { + var _result = _meos_b.tbigint_from_base_temp(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigintinst_make(long i, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tbigintinst_make(i, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigintseq_from_base_tstzset(long i, Pointer s) { + var _result = _meos_b.tbigintseq_from_base_tstzset(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigintseq_from_base_tstzspan(long i, Pointer s) { + var _result = _meos_b.tbigintseq_from_base_tstzspan(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigintseqset_from_base_tstzspanset(long i, Pointer ss) { + var _result = _meos_b.tbigintseqset_from_base_tstzspanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_from_base_temp(boolean b, Pointer temp) { + var _result = _meos_b.tbool_from_base_temp(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tboolinst_make(boolean b, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tboolinst_make(b, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tboolseq_from_base_tstzset(boolean b, Pointer s) { + var _result = _meos_b.tboolseq_from_base_tstzset(b, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tboolseq_from_base_tstzspan(boolean b, Pointer s) { + var _result = _meos_b.tboolseq_from_base_tstzspan(b, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tboolseqset_from_base_tstzspanset(boolean b, Pointer ss) { + var _result = _meos_b.tboolseqset_from_base_tstzspanset(b, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_copy(Pointer temp) { + var _result = _meos_b.temporal_copy(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_from_base_temp(double d, Pointer temp) { + var _result = _meos_b.tfloat_from_base_temp(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatinst_make(double d, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tfloatinst_make(d, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatseq_from_base_tstzset(double d, Pointer s) { + var _result = _meos_b.tfloatseq_from_base_tstzset(d, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatseq_from_base_tstzspan(double d, Pointer s, int interp) { + var _result = _meos_b.tfloatseq_from_base_tstzspan(d, s, interp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloatseqset_from_base_tstzspanset(double d, Pointer ss, int interp) { + var _result = _meos_b.tfloatseqset_from_base_tstzspanset(d, ss, interp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_from_base_temp(int i, Pointer temp) { + var _result = _meos_b.tint_from_base_temp(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintinst_make(int i, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tintinst_make(i, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintseq_from_base_tstzset(int i, Pointer s) { + var _result = _meos_b.tintseq_from_base_tstzset(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintseq_from_base_tstzspan(int i, Pointer s) { + var _result = _meos_b.tintseq_from_base_tstzspan(i, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tintseqset_from_base_tstzspanset(int i, Pointer ss) { + var _result = _meos_b.tintseqset_from_base_tstzspanset(i, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tsequence_make(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { + var _result = _meos_b.tsequence_make(instants, count, lower_inc, upper_inc, interp, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tsequenceset_make(Pointer sequences, int count, boolean normalize) { + var _result = _meos_b.tsequenceset_make(sequences, count, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tsequenceset_make_gaps(Pointer instants, int count, int interp, Pointer maxt, double maxdist) { + var _result = _meos_b.tsequenceset_make_gaps(instants, count, interp, maxt, maxdist); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_from_base_temp(Pointer txt, Pointer temp) { + var _result = _meos_b.ttext_from_base_temp(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttextinst_make(Pointer txt, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.ttextinst_make(txt, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttextseq_from_base_tstzset(Pointer txt, Pointer s) { + var _result = _meos_b.ttextseq_from_base_tstzset(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttextseq_from_base_tstzspan(Pointer txt, Pointer s) { + var _result = _meos_b.ttextseq_from_base_tstzspan(txt, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttextseqset_from_base_tstzspanset(Pointer txt, Pointer ss) { + var _result = _meos_b.ttextseqset_from_base_tstzspanset(txt, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_to_tfloat(Pointer temp) { + var _result = _meos_b.tbigint_to_tfloat(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_to_tint(Pointer temp) { + var _result = _meos_b.tbigint_to_tint(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_to_tint(Pointer temp) { + var _result = _meos_b.tbool_to_tint(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_to_tstzspan(Pointer temp) { + var _result = _meos_b.temporal_to_tstzspan(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_to_tbigint(Pointer temp) { + var _result = _meos_b.tfloat_to_tbigint(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_to_tint(Pointer temp) { + var _result = _meos_b.tfloat_to_tint(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_to_tbigint(Pointer temp) { + var _result = _meos_b.tint_to_tbigint(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_to_tfloat(Pointer temp) { + var _result = _meos_b.tint_to_tfloat(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_to_span(Pointer temp) { + var _result = _meos_b.tnumber_to_span(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_to_tbox(Pointer temp) { + var _result = _meos_b.tnumber_to_tbox(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long tbigint_end_value(Pointer temp) { + var _result = _meos_b.tbigint_end_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long tbigint_max_value(Pointer temp) { + var _result = _meos_b.tbigint_max_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long tbigint_min_value(Pointer temp) { + var _result = _meos_b.tbigint_min_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static long tbigint_start_value(Pointer temp) { + var _result = _meos_b.tbigint_start_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbigint_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tbigint_value_at_timestamptz(temp, t_new, strict, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_value_n(Pointer temp, long n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_b.tbigint_value_n(temp, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_values(Pointer temp, Pointer count) { + var _result = _meos_b.tbigint_values(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbool_end_value(Pointer temp) { + var _result = _meos_b.tbool_end_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbool_start_value(Pointer temp) { + var _result = _meos_b.tbool_start_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tbool_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tbool_value_at_timestamptz(temp, t_new, strict, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_b.tbool_value_n(temp, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tbool_values(Pointer temp, Pointer count) { + var _result = _meos_b.tbool_values(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_duration(Pointer temp, boolean boundspan) { + var _result = _meos_b.temporal_duration(temp, boundspan); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_end_instant(Pointer temp) { + var _result = _meos_b.temporal_end_instant(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_end_sequence(Pointer temp) { + var _result = _meos_b.temporal_end_sequence(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime temporal_end_timestamptz(Pointer temp) { + var _result = _meos_b.temporal_end_timestamptz(temp); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static int temporal_hash(Pointer temp) { + var _result = _meos_b.temporal_hash(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_instant_n(Pointer temp, int n) { + var _result = _meos_b.temporal_instant_n(temp, n); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_instants(Pointer temp, Pointer count) { + var _result = _meos_b.temporal_instants(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String temporal_interp(Pointer temp) { + var _result = _meos_b.temporal_interp(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_lower_inc(Pointer temp) { + var _result = _meos_b.temporal_lower_inc(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_max_instant(Pointer temp) { + var _result = _meos_b.temporal_max_instant(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_min_instant(Pointer temp) { + var _result = _meos_b.temporal_min_instant(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int temporal_num_instants(Pointer temp) { + var _result = _meos_b.temporal_num_instants(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int temporal_num_sequences(Pointer temp) { + var _result = _meos_b.temporal_num_sequences(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int temporal_num_timestamps(Pointer temp) { + var _result = _meos_b.temporal_num_timestamps(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_segm_duration(Pointer temp, Pointer duration, boolean atleast, boolean strict) { + var _result = _meos_b.temporal_segm_duration(temp, duration, atleast, strict); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_segments(Pointer temp, Pointer count) { + var _result = _meos_b.temporal_segments(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_sequence_n(Pointer temp, int i) { + var _result = _meos_b.temporal_sequence_n(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_sequences(Pointer temp, Pointer count) { + var _result = _meos_b.temporal_sequences(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_start_instant(Pointer temp) { + var _result = _meos_b.temporal_start_instant(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_start_sequence(Pointer temp) { + var _result = _meos_b.temporal_start_sequence(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static OffsetDateTime temporal_start_timestamptz(Pointer temp) { + var _result = _meos_b.temporal_start_timestamptz(temp); + MeosErrorHandler.checkError(); + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + } + + @SuppressWarnings("unused") + public static Pointer temporal_stops(Pointer temp, double maxdist, Pointer minduration) { + var _result = _meos_b.temporal_stops(temp, maxdist, minduration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static String temporal_subtype(Pointer temp) { + var _result = _meos_b.temporal_subtype(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_time(Pointer temp) { + var _result = _meos_b.temporal_time(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_timestamps(Pointer temp, Pointer count) { + var _result = _meos_b.temporal_timestamps(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_timestamptz_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_b.temporal_timestamptz_n(temp, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static boolean temporal_upper_inc(Pointer temp) { + var _result = _meos_b.temporal_upper_inc(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tfloat_avg_value(Pointer temp) { + var _result = _meos_b.tfloat_avg_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tfloat_end_value(Pointer temp) { + var _result = _meos_b.tfloat_end_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tfloat_min_value(Pointer temp) { + var _result = _meos_b.tfloat_min_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tfloat_max_value(Pointer temp) { + var _result = _meos_b.tfloat_max_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tfloat_start_value(Pointer temp) { + var _result = _meos_b.tfloat_start_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tfloat_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tfloat_value_at_timestamptz(temp, t_new, strict, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_b.tfloat_value_n(temp, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_values(Pointer temp, Pointer count) { + var _result = _meos_b.tfloat_values(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tint_end_value(Pointer temp) { + var _result = _meos_b.tint_end_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tint_max_value(Pointer temp) { + var _result = _meos_b.tint_max_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tint_min_value(Pointer temp) { + var _result = _meos_b.tint_min_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int tint_start_value(Pointer temp) { + var _result = _meos_b.tint_start_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean tint_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.tint_value_at_timestamptz(temp, t_new, strict, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); + out = _meos_b.tint_value_n(temp, n, result); + MeosErrorHandler.checkError(); + return out ? result : null; + } + + @SuppressWarnings("unused") + public static Pointer tint_values(Pointer temp, Pointer count) { + var _result = _meos_b.tint_values(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tnumber_avg_value(Pointer temp) { + var _result = _meos_b.tnumber_avg_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tnumber_integral(Pointer temp) { + var _result = _meos_b.tnumber_integral(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double tnumber_twavg(Pointer temp) { + var _result = _meos_b.tnumber_twavg(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_valuespans(Pointer temp) { + var _result = _meos_b.tnumber_valuespans(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_end_value(Pointer temp) { + var _result = _meos_b.ttext_end_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_max_value(Pointer temp) { + var _result = _meos_b.ttext_max_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_min_value(Pointer temp) { + var _result = _meos_b.ttext_min_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_start_value(Pointer temp) { + var _result = _meos_b.ttext_start_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean ttext_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.ttext_value_at_timestamptz(temp, t_new, strict, value); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_b.ttext_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); + MeosErrorHandler.checkError(); + return out ? new_result : null; + } + + @SuppressWarnings("unused") + public static Pointer ttext_values(Pointer temp, Pointer count) { + var _result = _meos_b.ttext_values(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_degrees(double value, boolean normalize) { + var _result = _meos_b.float_degrees(value, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_scale_value(Pointer temp, long width) { + var _result = _meos_b.tbigint_scale_value(temp, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_shift_scale_value(Pointer temp, long shift, long width) { + var _result = _meos_b.tbigint_shift_scale_value(temp, shift, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_shift_value(Pointer temp, long shift) { + var _result = _meos_b.tbigint_shift_value(temp, shift); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temparr_round(Pointer temp, int count, int maxdd) { + var _result = _meos_b.temparr_round(temp, count, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_round(Pointer temp, int maxdd) { + var _result = _meos_b.temporal_round(temp, maxdd); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_scale_time(Pointer temp, Pointer duration) { + var _result = _meos_b.temporal_scale_time(temp, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_set_interp(Pointer temp, int interp) { + var _result = _meos_b.temporal_set_interp(temp, interp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_shift_scale_time(Pointer temp, Pointer shift, Pointer duration) { + var _result = _meos_b.temporal_shift_scale_time(temp, shift, duration); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_shift_time(Pointer temp, Pointer shift) { + var _result = _meos_b.temporal_shift_time(temp, shift); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_to_tinstant(Pointer temp) { + var _result = _meos_b.temporal_to_tinstant(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_to_tsequence(Pointer temp, int interp) { + var _result = _meos_b.temporal_to_tsequence(temp, interp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_to_tsequenceset(Pointer temp, int interp) { + var _result = _meos_b.temporal_to_tsequenceset(temp, interp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_ceil(Pointer temp) { + var _result = _meos_b.tfloat_ceil(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_degrees(Pointer temp, boolean normalize) { + var _result = _meos_b.tfloat_degrees(temp, normalize); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_floor(Pointer temp) { + var _result = _meos_b.tfloat_floor(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_radians(Pointer temp) { + var _result = _meos_b.tfloat_radians(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_scale_value(Pointer temp, double width) { + var _result = _meos_b.tfloat_scale_value(temp, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_shift_scale_value(Pointer temp, double shift, double width) { + var _result = _meos_b.tfloat_shift_scale_value(temp, shift, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_shift_value(Pointer temp, double shift) { + var _result = _meos_b.tfloat_shift_value(temp, shift); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_scale_value(Pointer temp, int width) { + var _result = _meos_b.tint_scale_value(temp, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_shift_scale_value(Pointer temp, int shift, int width) { + var _result = _meos_b.tint_shift_scale_value(temp, shift, width); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_shift_value(Pointer temp, int shift) { + var _result = _meos_b.tint_shift_value(temp, shift); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand) { + var _result = _meos_b.temporal_append_tinstant(temp, inst, interp, maxdist, maxt, expand); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_append_tsequence(Pointer temp, Pointer seq, boolean expand) { + var _result = _meos_b.temporal_append_tsequence(temp, seq, expand); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_delete_timestamptz(Pointer temp, OffsetDateTime t, boolean connect) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.temporal_delete_timestamptz(temp, t_new, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_delete_tstzset(Pointer temp, Pointer s, boolean connect) { + var _result = _meos_b.temporal_delete_tstzset(temp, s, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_delete_tstzspan(Pointer temp, Pointer s, boolean connect) { + var _result = _meos_b.temporal_delete_tstzspan(temp, s, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect) { + var _result = _meos_b.temporal_delete_tstzspanset(temp, ss, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_insert(Pointer temp1, Pointer temp2, boolean connect) { + var _result = _meos_b.temporal_insert(temp1, temp2, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_merge(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_merge(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_merge_array(Pointer temparr, int count) { + var _result = _meos_b.temporal_merge_array(temparr, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_update(Pointer temp1, Pointer temp2, boolean connect) { + var _result = _meos_b.temporal_update(temp1, temp2, connect); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_at_value(Pointer temp, long i) { + var _result = _meos_b.tbigint_at_value(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbigint_minus_value(Pointer temp, long i) { + var _result = _meos_b.tbigint_minus_value(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_at_value(Pointer temp, boolean b) { + var _result = _meos_b.tbool_at_value(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tbool_minus_value(Pointer temp, boolean b) { + var _result = _meos_b.tbool_minus_value(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_after_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.temporal_after_timestamptz(temp, t_new, strict); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_max(Pointer temp) { + var _result = _meos_b.temporal_at_max(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_min(Pointer temp) { + var _result = _meos_b.temporal_at_min(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_timestamptz(Pointer temp, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.temporal_at_timestamptz(temp, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_tstzset(Pointer temp, Pointer s) { + var _result = _meos_b.temporal_at_tstzset(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.temporal_at_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_tstzspanset(Pointer temp, Pointer ss) { + var _result = _meos_b.temporal_at_tstzspanset(temp, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_at_values(Pointer temp, Pointer set) { + var _result = _meos_b.temporal_at_values(temp, set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_before_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.temporal_before_timestamptz(temp, t_new, strict); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_max(Pointer temp) { + var _result = _meos_b.temporal_minus_max(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_min(Pointer temp) { + var _result = _meos_b.temporal_minus_min(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_timestamptz(Pointer temp, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.temporal_minus_timestamptz(temp, t_new); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_tstzset(Pointer temp, Pointer s) { + var _result = _meos_b.temporal_minus_tstzset(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.temporal_minus_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_tstzspanset(Pointer temp, Pointer ss) { + var _result = _meos_b.temporal_minus_tstzspanset(temp, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_minus_values(Pointer temp, Pointer set) { + var _result = _meos_b.temporal_minus_values(temp, set); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_at_value(Pointer temp, double d) { + var _result = _meos_b.tfloat_at_value(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_minus_value(Pointer temp, double d) { + var _result = _meos_b.tfloat_minus_value(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_at_value(Pointer temp, int i) { + var _result = _meos_b.tint_at_value(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tint_minus_value(Pointer temp, int i) { + var _result = _meos_b.tint_minus_value(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_at_span(Pointer temp, Pointer span) { + var _result = _meos_b.tnumber_at_span(temp, span); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_at_spanset(Pointer temp, Pointer ss) { + var _result = _meos_b.tnumber_at_spanset(temp, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_at_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.tnumber_at_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_minus_span(Pointer temp, Pointer span) { + var _result = _meos_b.tnumber_minus_span(temp, span); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_minus_spanset(Pointer temp, Pointer ss) { + var _result = _meos_b.tnumber_minus_spanset(temp, ss); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_minus_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.tnumber_minus_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_at_value(Pointer temp, Pointer txt) { + var _result = _meos_b.ttext_at_value(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_minus_value(Pointer temp, Pointer txt) { + var _result = _meos_b.ttext_minus_value(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int temporal_cmp(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_cmp(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_eq(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_eq(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_ge(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_ge(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_gt(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_gt(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_le(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_le(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_lt(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_lt(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean temporal_ne(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_ne(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_eq_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.always_eq_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_eq_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_eq_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.always_eq_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_eq_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_eq_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_eq_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_eq_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_eq_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_eq_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_eq_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_ge_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_ge_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_ge_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_ge_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_ge_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_ge_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_ge_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_ge_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ge_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_ge_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_gt_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_gt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_gt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_gt_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_gt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_gt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_gt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_gt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_gt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_gt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_le_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_le_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_le_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_le_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_le_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_le_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_le_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_le_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_le_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_le_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_lt_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_lt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_lt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_lt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_lt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_lt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_lt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_lt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.always_ne_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.always_ne_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_int_tint(int i, Pointer temp) { + var _result = _meos_b.always_ne_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_lt_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_lt_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.always_ne_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.always_ne_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.always_ne_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.always_ne_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.always_ne_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.always_ne_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_tint_int(Pointer temp, int i) { + var _result = _meos_b.always_ne_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int always_ne_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.always_ne_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_eq_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.ever_eq_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_eq_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_eq_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_eq_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.ever_eq_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_eq_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_eq_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_eq_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_eq_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_eq_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_eq_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_ge_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_ge_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_ge_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_ge_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_ge_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_ge_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_ge_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_ge_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ge_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_ge_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_gt_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_gt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_gt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_gt_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_gt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_gt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_gt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_gt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_gt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_gt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_le_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_le_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_le_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_le_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_le_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_le_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_le_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_le_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_le_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_le_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_lt_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_lt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_lt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_lt_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_lt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_lt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_lt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_lt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_lt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_lt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_bigint_tbigint(long i, Pointer temp) { + var _result = _meos_b.ever_ne_bigint_tbigint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.ever_ne_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.ever_ne_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_int_tint(int i, Pointer temp) { + var _result = _meos_b.ever_ne_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_tbigint_bigint(Pointer temp, long i) { + var _result = _meos_b.ever_ne_tbigint_bigint(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.ever_ne_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ever_ne_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.ever_ne_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.ever_ne_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_tint_int(Pointer temp, int i) { + var _result = _meos_b.ever_ne_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static int ever_ne_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.ever_ne_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.teq_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.teq_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_int_tint(int i, Pointer temp) { + var _result = _meos_b.teq_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.teq_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.teq_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.teq_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.teq_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_tint_int(Pointer temp, int i) { + var _result = _meos_b.teq_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer teq_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.teq_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.tge_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_int_tint(int i, Pointer temp) { + var _result = _meos_b.tge_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tge_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.tge_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tge_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_tint_int(Pointer temp, int i) { + var _result = _meos_b.tge_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tge_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.tge_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.tgt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_int_tint(int i, Pointer temp) { + var _result = _meos_b.tgt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tgt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.tgt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tgt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_tint_int(Pointer temp, int i) { + var _result = _meos_b.tgt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tgt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.tgt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.tle_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_int_tint(int i, Pointer temp) { + var _result = _meos_b.tle_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tle_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.tle_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tle_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_tint_int(Pointer temp, int i) { + var _result = _meos_b.tle_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tle_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.tle_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.tlt_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_int_tint(int i, Pointer temp) { + var _result = _meos_b.tlt_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tlt_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.tlt_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tlt_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_tint_int(Pointer temp, int i) { + var _result = _meos_b.tlt_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tlt_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.tlt_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.tne_bool_tbool(b, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_float_tfloat(double d, Pointer temp) { + var _result = _meos_b.tne_float_tfloat(d, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_int_tint(int i, Pointer temp) { + var _result = _meos_b.tne_int_tint(i, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.tne_tbool_bool(temp, b); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tne_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.tne_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tne_tfloat_float(temp, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_tint_int(Pointer temp, int i) { + var _result = _meos_b.tne_tint_int(temp, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tne_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.tne_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_spans(Pointer temp, Pointer count) { + var _result = _meos_b.temporal_spans(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_split_each_n_spans(Pointer temp, int elem_count, Pointer count) { + var _result = _meos_b.temporal_split_each_n_spans(temp, elem_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_split_n_spans(Pointer temp, int span_count, Pointer count) { + var _result = _meos_b.temporal_split_n_spans(temp, span_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_split_each_n_tboxes(Pointer temp, int elem_count, Pointer count) { + var _result = _meos_b.tnumber_split_each_n_tboxes(temp, elem_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_split_n_tboxes(Pointer temp, int box_count, Pointer count) { + var _result = _meos_b.tnumber_split_n_tboxes(temp, box_count, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_tboxes(Pointer temp, Pointer count) { + var _result = _meos_b.tnumber_tboxes(temp, count); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.adjacent_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.adjacent_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.adjacent_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.adjacent_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.adjacent_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.adjacent_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.adjacent_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean adjacent_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.adjacent_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.contained_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.contained_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.contained_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.contained_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.contained_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.contained_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.contained_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contained_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.contained_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.contains_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.contains_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.contains_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.contains_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.contains_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.contains_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.contains_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean contains_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.contains_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.overlaps_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.overlaps_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overlaps_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.overlaps_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.overlaps_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.overlaps_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overlaps_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overlaps_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.overlaps_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.same_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.same_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.same_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.same_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.same_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.same_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.same_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean same_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.same_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.after_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.after_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.after_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.after_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.after_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean after_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.after_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.before_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.before_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.before_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.before_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.before_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean before_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.before_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.left_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.left_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.left_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.left_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean left_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.left_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.overafter_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.overafter_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overafter_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.overafter_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overafter_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overafter_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.overafter_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.overbefore_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_temporal_tstzspan(Pointer temp, Pointer s) { + var _result = _meos_b.overbefore_temporal_tstzspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_temporal_temporal(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overbefore_temporal_temporal(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.overbefore_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overbefore_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overbefore_tstzspan_temporal(Pointer s, Pointer temp) { + var _result = _meos_b.overbefore_tstzspan_temporal(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.overleft_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.overleft_tbox_tnumber(box, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.overleft_tnumber_numspan(temp, s); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.overleft_tnumber_tbox(temp, box); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overleft_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overleft_tnumber_tnumber(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static boolean overright_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.overright_numspan_tnumber(s, temp); + MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void rtree_insert(Pointer rtree, Pointer box, int id) { - _meos_a.rtree_insert(rtree, box, id); + public static boolean overright_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.overright_tbox_tnumber(box, temp); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void rtree_insert_temporal(Pointer rtree, Pointer temp, int id) { - _meos_a.rtree_insert_temporal(rtree, temp, id); + public static boolean overright_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.overright_tnumber_numspan(temp, s); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static Pointer rtree_search(Pointer rtree, int op, Pointer query, Pointer count) { - var _result = _meos_a.rtree_search(rtree, op, query, count); + public static boolean overright_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.overright_tnumber_tbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer count) { - var _result = _meos_a.rtree_search_temporal(rtree, op, temp, count); + public static boolean overright_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.overright_tnumber_tnumber(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static void meos_error(int errlevel, int errcode, String format) { - _meos_a.meos_error(errlevel, errcode, format); + public static boolean right_numspan_tnumber(Pointer s, Pointer temp) { + var _result = _meos_b.right_numspan_tnumber(s, temp); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static int meos_errno() { - var _result = _meos_a.meos_errno(); + public static boolean right_tbox_tnumber(Pointer box, Pointer temp) { + var _result = _meos_b.right_tbox_tnumber(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int meos_errno_set(int err) { - var _result = _meos_a.meos_errno_set(err); + public static boolean right_tnumber_numspan(Pointer temp, Pointer s) { + var _result = _meos_b.right_tnumber_numspan(temp, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int meos_errno_restore(int err) { - var _result = _meos_a.meos_errno_restore(err); + public static boolean right_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.right_tnumber_tbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int meos_errno_reset() { - var _result = _meos_a.meos_errno_reset(); + public static boolean right_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.right_tnumber_tnumber(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static void meos_initialize_timezone(String name) { - _meos_a.meos_initialize_timezone(name); + public static Pointer tand_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.tand_bool_tbool(b, temp); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_initialize_error_handler(error_handler_fn err_handler) { - _meos_a.meos_initialize_error_handler(err_handler); + public static Pointer tand_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.tand_tbool_bool(temp, b); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_finalize_timezone() { - _meos_a.meos_finalize_timezone(); + public static Pointer tand_tbool_tbool(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tand_tbool_tbool(temp1, temp2); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_finalize_projsrs() { - _meos_a.meos_finalize_projsrs(); + public static Pointer tbool_when_true(Pointer temp) { + var _result = _meos_b.tbool_when_true(temp); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_finalize_ways() { - _meos_a.meos_finalize_ways(); + public static Pointer tnot_tbool(Pointer temp) { + var _result = _meos_b.tnot_tbool(temp); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static boolean meos_set_datestyle(String newval, Pointer extra) { - var _result = _meos_a.meos_set_datestyle(newval, extra); + public static Pointer tor_bool_tbool(boolean b, Pointer temp) { + var _result = _meos_b.tor_bool_tbool(b, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean meos_set_intervalstyle(String newval, int extra) { - var _result = _meos_a.meos_set_intervalstyle(newval, extra); + public static Pointer tor_tbool_bool(Pointer temp, boolean b) { + var _result = _meos_b.tor_tbool_bool(temp, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String meos_get_datestyle() { - var _result = _meos_a.meos_get_datestyle(); + public static Pointer tor_tbool_tbool(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tor_tbool_tbool(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String meos_get_intervalstyle() { - var _result = _meos_a.meos_get_intervalstyle(); + public static Pointer add_bigint_tbigint(long i, Pointer tnumber) { + var _result = _meos_b.add_bigint_tbigint(i, tnumber); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static void meos_set_spatial_ref_sys_csv(String path) { - _meos_a.meos_set_spatial_ref_sys_csv(path); + public static Pointer add_float_tfloat(double d, Pointer tnumber) { + var _result = _meos_b.add_float_tfloat(d, tnumber); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_initialize() { - _meos_a.meos_initialize(); + public static Pointer add_int_tint(int i, Pointer tnumber) { + var _result = _meos_b.add_int_tint(i, tnumber); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static void meos_finalize() { - _meos_a.meos_finalize(); + public static Pointer add_tbigint_bigint(Pointer tnumber, long i) { + var _result = _meos_b.add_tbigint_bigint(tnumber, i); MeosErrorHandler.checkError(); + return _result; } @SuppressWarnings("unused") - public static int add_date_int(int d, int days) { - var _result = _meos_a.add_date_int(d, days); + public static Pointer add_tfloat_float(Pointer tnumber, double d) { + var _result = _meos_b.add_tfloat_float(tnumber, d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_interval_interval(Pointer interv1, Pointer interv2) { - var _result = _meos_a.add_interval_interval(interv1, interv2); + public static Pointer add_tint_int(Pointer tnumber, int i) { + var _result = _meos_b.add_tint_int(tnumber, i); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime add_timestamptz_interval(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.add_timestamptz_interval(t_new, interv); + public static Pointer add_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { + var _result = _meos_b.add_tnumber_tnumber(tnumber1, tnumber2); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static boolean bool_in(String str) { - var _result = _meos_a.bool_in(str); + public static Pointer div_bigint_tbigint(long i, Pointer tnumber) { + var _result = _meos_b.div_bigint_tbigint(i, tnumber); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String bool_out(boolean b) { - var _result = _meos_a.bool_out(b); + public static Pointer div_float_tfloat(double d, Pointer tnumber) { + var _result = _meos_b.div_float_tfloat(d, tnumber); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer cstring2text(String str) { - var _result = _meos_a.cstring2text(str); + public static Pointer div_int_tint(int i, Pointer tnumber) { + var _result = _meos_b.div_int_tint(i, tnumber); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static LocalDateTime date_to_timestamp(int dateVal) { - var _result = _meos_a.date_to_timestamp(dateVal); + public static Pointer div_tbigint_bigint(Pointer tnumber, long i) { + var _result = _meos_b.div_tbigint_bigint(tnumber, i); MeosErrorHandler.checkError(); - return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static OffsetDateTime date_to_timestamptz(int d) { - var _result = _meos_a.date_to_timestamptz(d); + public static Pointer div_tfloat_float(Pointer tnumber, double d) { + var _result = _meos_b.div_tfloat_float(tnumber, d); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static double float_exp(double d) { - var _result = _meos_a.float_exp(d); + public static Pointer div_tint_int(Pointer tnumber, int i) { + var _result = _meos_b.div_tint_int(tnumber, i); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double float_ln(double d) { - var _result = _meos_a.float_ln(d); + public static Pointer div_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { + var _result = _meos_b.div_tnumber_tnumber(tnumber1, tnumber2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_bigint_tbigint(long i, Pointer tnumber) { + var _result = _meos_b.mul_bigint_tbigint(i, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_float_tfloat(double d, Pointer tnumber) { + var _result = _meos_b.mul_float_tfloat(d, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_int_tint(int i, Pointer tnumber) { + var _result = _meos_b.mul_int_tint(i, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_tbigint_bigint(Pointer tnumber, long i) { + var _result = _meos_b.mul_tbigint_bigint(tnumber, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_tfloat_float(Pointer tnumber, double d) { + var _result = _meos_b.mul_tfloat_float(tnumber, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_tint_int(Pointer tnumber, int i) { + var _result = _meos_b.mul_tint_int(tnumber, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer mul_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { + var _result = _meos_b.mul_tnumber_tnumber(tnumber1, tnumber2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_bigint_tbigint(long i, Pointer tnumber) { + var _result = _meos_b.sub_bigint_tbigint(i, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_float_tfloat(double d, Pointer tnumber) { + var _result = _meos_b.sub_float_tfloat(d, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_int_tint(int i, Pointer tnumber) { + var _result = _meos_b.sub_int_tint(i, tnumber); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_tbigint_bigint(Pointer tnumber, long i) { + var _result = _meos_b.sub_tbigint_bigint(tnumber, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_tfloat_float(Pointer tnumber, double d) { + var _result = _meos_b.sub_tfloat_float(tnumber, d); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_tint_int(Pointer tnumber, int i) { + var _result = _meos_b.sub_tint_int(tnumber, i); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer sub_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { + var _result = _meos_b.sub_tnumber_tnumber(tnumber1, tnumber2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer temporal_derivative(Pointer temp) { + var _result = _meos_b.temporal_derivative(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_exp(Pointer temp) { + var _result = _meos_b.tfloat_exp(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_ln(Pointer temp) { + var _result = _meos_b.tfloat_ln(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tfloat_log10(Pointer temp) { + var _result = _meos_b.tfloat_log10(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_abs(Pointer temp) { + var _result = _meos_b.tnumber_abs(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_trend(Pointer temp) { + var _result = _meos_b.tnumber_trend(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static double float_angular_difference(double degrees1, double degrees2) { + var _result = _meos_b.float_angular_difference(degrees1, degrees2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_angular_difference(Pointer temp) { + var _result = _meos_b.tnumber_angular_difference(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer tnumber_delta_value(Pointer temp) { + var _result = _meos_b.tnumber_delta_value(temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_text_ttext(Pointer txt, Pointer temp) { + var _result = _meos_b.textcat_text_ttext(txt, temp); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_ttext_text(Pointer temp, Pointer txt) { + var _result = _meos_b.textcat_ttext_text(temp, txt); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer textcat_ttext_ttext(Pointer temp1, Pointer temp2) { + var _result = _meos_b.textcat_ttext_ttext(temp1, temp2); + MeosErrorHandler.checkError(); + return _result; + } + + @SuppressWarnings("unused") + public static Pointer ttext_initcap(Pointer temp) { + var _result = _meos_b.ttext_initcap(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double float_log10(double d) { - var _result = _meos_a.float_log10(d); + public static Pointer ttext_upper(Pointer temp) { + var _result = _meos_b.ttext_upper(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String float8_out(double d, int maxdd) { - var _result = _meos_a.float8_out(d, maxdd); + public static Pointer ttext_lower(Pointer temp) { + var _result = _meos_b.ttext_lower(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double float_round(double d, int maxdd) { - var _result = _meos_a.float_round(d, maxdd); + public static Pointer tdistance_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.tdistance_tfloat_float(temp, d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int int32_cmp(int l, int r) { - var _result = _meos_a.int32_cmp(l, r); + public static Pointer tdistance_tint_int(Pointer temp, int i) { + var _result = _meos_b.tdistance_tint_int(temp, i); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int int64_cmp(long l, long r) { - var _result = _meos_a.int64_cmp(l, r); + public static Pointer tdistance_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_b.tdistance_tnumber_tnumber(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer interval_make(int years, int months, int weeks, int days, int hours, int mins, double secs) { - var _result = _meos_a.interval_make(years, months, weeks, days, hours, mins, secs); + public static double nad_tboxfloat_tboxfloat(Pointer box1, Pointer box2) { + var _result = _meos_b.nad_tboxfloat_tboxfloat(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int minus_date_date(int d1, int d2) { - var _result = _meos_a.minus_date_date(d1, d2); + public static int nad_tboxint_tboxint(Pointer box1, Pointer box2) { + var _result = _meos_b.nad_tboxint_tboxint(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int minus_date_int(int d, int days) { - var _result = _meos_a.minus_date_int(d, days); + public static double nad_tfloat_float(Pointer temp, double d) { + var _result = _meos_b.nad_tfloat_float(temp, d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime minus_timestamptz_interval(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_interval(t_new, interv); + public static double nad_tfloat_tfloat(Pointer temp1, Pointer temp2) { + var _result = _meos_b.nad_tfloat_tfloat(temp1, temp2); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer minus_timestamptz_timestamptz(OffsetDateTime t1, OffsetDateTime t2) { - var t1_new = t1.toEpochSecond(); - var t2_new = t2.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_timestamptz(t1_new, t2_new); + public static double nad_tfloat_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.nad_tfloat_tbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mul_interval_double(Pointer interv, double factor) { - var _result = _meos_a.mul_interval_double(interv, factor); + public static int nad_tint_int(Pointer temp, int i) { + var _result = _meos_b.nad_tint_int(temp, i); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int pg_date_in(String str) { - var _result = _meos_a.pg_date_in(str); + public static int nad_tint_tbox(Pointer temp, Pointer box) { + var _result = _meos_b.nad_tint_tbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String pg_date_out(int d) { - var _result = _meos_a.pg_date_out(d); + public static int nad_tint_tint(Pointer temp1, Pointer temp2) { + var _result = _meos_b.nad_tint_tint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int pg_interval_cmp(Pointer interv1, Pointer interv2) { - var _result = _meos_a.pg_interval_cmp(interv1, interv2); + public static Pointer tbool_tand_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tbool_tand_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer pg_interval_in(String str, int typmod) { - var _result = _meos_a.pg_interval_in(str, typmod); + public static Pointer tbool_tor_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tbool_tor_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String pg_interval_out(Pointer interv) { - var _result = _meos_a.pg_interval_out(interv); + public static Pointer temporal_extent_transfn(Pointer s, Pointer temp) { + var _result = _meos_b.temporal_extent_transfn(s, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static LocalDateTime pg_timestamp_in(String str, int typmod) { - var _result = _meos_a.pg_timestamp_in(str, typmod); + public static Pointer temporal_merge_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.temporal_merge_transfn(state, temp); MeosErrorHandler.checkError(); - return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static String pg_timestamp_out(LocalDateTime t) { - var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); - var _result = _meos_a.pg_timestamp_out(t_new); + public static Pointer temporal_merge_combinefn(Pointer state1, Pointer state2) { + var _result = _meos_b.temporal_merge_combinefn(state1, state2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime pg_timestamptz_in(String str, int typmod) { - var _result = _meos_a.pg_timestamptz_in(str, typmod); + public static Pointer temporal_tagg_finalfn(Pointer state) { + var _result = _meos_b.temporal_tagg_finalfn(state); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static String pg_timestamptz_out(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.pg_timestamptz_out(t_new); + public static Pointer temporal_tcount_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.temporal_tcount_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String text2cstring(Pointer txt) { - var _result = _meos_a.text2cstring(txt); + public static Pointer tfloat_tmax_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tfloat_tmax_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int text_cmp(Pointer txt1, Pointer txt2) { - var _result = _meos_a.text_cmp(txt1, txt2); + public static Pointer tfloat_tmin_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tfloat_tmin_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_copy(Pointer txt) { - var _result = _meos_a.text_copy(txt); + public static Pointer tfloat_tsum_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tfloat_tsum_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_in(String str) { - var _result = _meos_a.text_in(str); + public static Pointer tfloat_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tfloat_wmax_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_initcap(Pointer txt) { - var _result = _meos_a.text_initcap(txt); + public static Pointer tfloat_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tfloat_wmin_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_lower(Pointer txt) { - var _result = _meos_a.text_lower(txt); + public static Pointer tfloat_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tfloat_wsum_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String text_out(Pointer txt) { - var _result = _meos_a.text_out(txt); + public static Pointer timestamptz_tcount_transfn(Pointer state, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_b.timestamptz_tcount_transfn(state, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_upper(Pointer txt) { - var _result = _meos_a.text_upper(txt); + public static Pointer tint_tmax_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tint_tmax_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_text_text(Pointer txt1, Pointer txt2) { - var _result = _meos_a.textcat_text_text(txt1, txt2); + public static Pointer tint_tmin_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tint_tmin_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_shift(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_shift(t_new, interv); + public static Pointer tint_tsum_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tint_tsum_transfn(state, temp); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static int timestamp_to_date(LocalDateTime t) { - var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); - var _result = _meos_a.timestamp_to_date(t_new); + public static Pointer tint_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tint_wmax_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int timestamptz_to_date(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_date(t_new); + public static Pointer tint_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tint_wmin_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintset_in(String str) { - var _result = _meos_a.bigintset_in(str); + public static Pointer tint_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tint_wsum_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String bigintset_out(Pointer set) { - var _result = _meos_a.bigintset_out(set); + public static Pointer tnumber_extent_transfn(Pointer box, Pointer temp) { + var _result = _meos_b.tnumber_extent_transfn(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspan_expand(Pointer s, long value) { - var _result = _meos_a.bigintspan_expand(s, value); + public static Pointer tnumber_tavg_finalfn(Pointer state) { + var _result = _meos_b.tnumber_tavg_finalfn(state); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspan_in(String str) { - var _result = _meos_a.bigintspan_in(str); + public static Pointer tnumber_tavg_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.tnumber_tavg_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String bigintspan_out(Pointer s) { - var _result = _meos_a.bigintspan_out(s); + public static Pointer tnumber_wavg_transfn(Pointer state, Pointer temp, Pointer interv) { + var _result = _meos_b.tnumber_wavg_transfn(state, temp, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspanset_in(String str) { - var _result = _meos_a.bigintspanset_in(str); + public static Pointer tstzset_tcount_transfn(Pointer state, Pointer s) { + var _result = _meos_b.tstzset_tcount_transfn(state, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String bigintspanset_out(Pointer ss) { - var _result = _meos_a.bigintspanset_out(ss); + public static Pointer tstzspan_tcount_transfn(Pointer state, Pointer s) { + var _result = _meos_b.tstzspan_tcount_transfn(state, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer dateset_in(String str) { - var _result = _meos_a.dateset_in(str); + public static Pointer tstzspanset_tcount_transfn(Pointer state, Pointer ss) { + var _result = _meos_b.tstzspanset_tcount_transfn(state, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String dateset_out(Pointer s) { - var _result = _meos_a.dateset_out(s); + public static Pointer ttext_tmax_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.ttext_tmax_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_in(String str) { - var _result = _meos_a.datespan_in(str); + public static Pointer ttext_tmin_transfn(Pointer state, Pointer temp) { + var _result = _meos_b.ttext_tmin_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String datespan_out(Pointer s) { - var _result = _meos_a.datespan_out(s); + public static Pointer temporal_simplify_dp(Pointer temp, double eps_dist, boolean synchronize) { + var _result = _meos_b.temporal_simplify_dp(temp, eps_dist, synchronize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_in(String str) { - var _result = _meos_a.datespanset_in(str); + public static Pointer temporal_simplify_max_dist(Pointer temp, double eps_dist, boolean synchronize) { + var _result = _meos_b.temporal_simplify_max_dist(temp, eps_dist, synchronize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String datespanset_out(Pointer ss) { - var _result = _meos_a.datespanset_out(ss); + public static Pointer temporal_simplify_min_dist(Pointer temp, double dist) { + var _result = _meos_b.temporal_simplify_min_dist(temp, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_in(String str) { - var _result = _meos_a.floatset_in(str); + public static Pointer temporal_simplify_min_tdelta(Pointer temp, Pointer mint) { + var _result = _meos_b.temporal_simplify_min_tdelta(temp, mint); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String floatset_out(Pointer set, int maxdd) { - var _result = _meos_a.floatset_out(set, maxdd); + public static Pointer temporal_tprecision(Pointer temp, Pointer duration, OffsetDateTime origin) { + var origin_new = origin.toEpochSecond(); + var _result = _meos_b.temporal_tprecision(temp, duration, origin_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_expand(Pointer s, double value) { - var _result = _meos_a.floatspan_expand(s, value); + public static Pointer temporal_tsample(Pointer temp, Pointer duration, OffsetDateTime origin, int interp) { + var origin_new = origin.toEpochSecond(); + var _result = _meos_b.temporal_tsample(temp, duration, origin_new, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_in(String str) { - var _result = _meos_a.floatspan_in(str); + public static double temporal_dyntimewarp_distance(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_dyntimewarp_distance(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String floatspan_out(Pointer s, int maxdd) { - var _result = _meos_a.floatspan_out(s, maxdd); + public static Pointer temporal_dyntimewarp_path(Pointer temp1, Pointer temp2, Pointer count) { + var _result = _meos_b.temporal_dyntimewarp_path(temp1, temp2, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_in(String str) { - var _result = _meos_a.floatspanset_in(str); + public static double temporal_frechet_distance(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_frechet_distance(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String floatspanset_out(Pointer ss, int maxdd) { - var _result = _meos_a.floatspanset_out(ss, maxdd); + public static Pointer temporal_frechet_path(Pointer temp1, Pointer temp2, Pointer count) { + var _result = _meos_b.temporal_frechet_path(temp1, temp2, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intset_in(String str) { - var _result = _meos_a.intset_in(str); + public static double temporal_hausdorff_distance(Pointer temp1, Pointer temp2) { + var _result = _meos_b.temporal_hausdorff_distance(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String intset_out(Pointer set) { - var _result = _meos_a.intset_out(set); + public static Pointer temporal_time_bins(Pointer temp, Pointer duration, OffsetDateTime origin, Pointer count) { + var origin_new = origin.toEpochSecond(); + var _result = _meos_b.temporal_time_bins(temp, duration, origin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_expand(Pointer s, int value) { - var _result = _meos_a.intspan_expand(s, value); + public static Pointer temporal_time_split(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer time_bins, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.temporal_time_split(temp, duration, torigin_new, time_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_in(String str) { - var _result = _meos_a.intspan_in(str); + public static Pointer tfloat_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tfloat_time_boxes(temp, duration, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String intspan_out(Pointer s) { - var _result = _meos_a.intspan_out(s); + public static Pointer tfloat_value_bins(Pointer temp, double vsize, double vorigin, Pointer count) { + var _result = _meos_b.tfloat_value_bins(temp, vsize, vorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspanset_in(String str) { - var _result = _meos_a.intspanset_in(str); + public static Pointer tfloat_value_boxes(Pointer temp, double vsize, double vorigin, Pointer count) { + var _result = _meos_b.tfloat_value_boxes(temp, vsize, vorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String intspanset_out(Pointer ss) { - var _result = _meos_a.intspanset_out(ss); + public static Pointer tfloat_value_split(Pointer temp, double size, double origin, Pointer bins, Pointer count) { + var _result = _meos_b.tfloat_value_split(temp, size, origin, bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String set_as_hexwkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.set_as_hexwkb(s, variant, size_out); + public static Pointer tfloat_value_time_boxes(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tfloat_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_as_wkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.set_as_wkb(s, variant, size_out); + public static Pointer tfloat_value_time_split(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tfloat_value_time_split(temp, vsize, duration, vorigin, torigin_new, value_bins, time_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_from_hexwkb(String hexwkb) { - var _result = _meos_a.set_from_hexwkb(hexwkb); + public static Pointer tfloatbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tfloatbox_time_tiles(box, duration, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.set_from_wkb(wkb, size); + public static Pointer tfloatbox_value_tiles(Pointer box, double vsize, double vorigin, Pointer count) { + var _result = _meos_b.tfloatbox_value_tiles(box, vsize, vorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String span_as_hexwkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.span_as_hexwkb(s, variant, size_out); + public static Pointer tfloatbox_value_time_tiles(Pointer box, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tfloatbox_value_time_tiles(box, vsize, duration, vorigin, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_as_wkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.span_as_wkb(s, variant, size_out); + public static Pointer tint_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tint_time_boxes(temp, duration, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_from_hexwkb(String hexwkb) { - var _result = _meos_a.span_from_hexwkb(hexwkb); + public static Pointer tint_value_bins(Pointer temp, int vsize, int vorigin, Pointer count) { + var _result = _meos_b.tint_value_bins(temp, vsize, vorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.span_from_wkb(wkb, size); + public static Pointer tint_value_boxes(Pointer temp, int vsize, int vorigin, Pointer count) { + var _result = _meos_b.tint_value_boxes(temp, vsize, vorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String spanset_as_hexwkb(Pointer ss, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.spanset_as_hexwkb(ss, variant, size_out); + public static Pointer tint_value_split(Pointer temp, int vsize, int vorigin, Pointer bins, Pointer count) { + var _result = _meos_b.tint_value_split(temp, vsize, vorigin, bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_as_wkb(Pointer ss, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.spanset_as_wkb(ss, variant, size_out); + public static Pointer tint_value_time_boxes(Pointer temp, int vsize, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tint_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_from_hexwkb(String hexwkb) { - var _result = _meos_a.spanset_from_hexwkb(hexwkb); + public static Pointer tint_value_time_split(Pointer temp, long size, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tint_value_time_split(temp, size, duration, vorigin, torigin_new, value_bins, time_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.spanset_from_wkb(wkb, size); + public static Pointer tintbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tintbox_time_tiles(box, duration, torigin_new, count); MeosErrorHandler.checkError(); return _result; } - @SuppressWarnings("unused") - public static Pointer textset_in(String str) { - var _result = _meos_a.textset_in(str); + @SuppressWarnings("unused") + public static Pointer tintbox_value_tiles(Pointer box, int xsize, int xorigin, Pointer count) { + var _result = _meos_b.tintbox_value_tiles(box, xsize, xorigin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String textset_out(Pointer set) { - var _result = _meos_a.textset_out(set); + public static Pointer tintbox_value_time_tiles(Pointer box, int xsize, Pointer duration, int xorigin, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_b.tintbox_value_time_tiles(box, xsize, duration, xorigin, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_in(String str) { - var _result = _meos_a.tstzset_in(str); + public static void meos_initialize_noexit_error_handler() { + _meos_b.meos_initialize_noexit_error_handler(); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static String tstzset_out(Pointer set) { - var _result = _meos_a.tstzset_out(set); + public static boolean h3_are_neighbor_cells_meos(long origin, long destination) { + var _result = _meos_b.h3_are_neighbor_cells_meos(origin, destination); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_in(String str) { - var _result = _meos_a.tstzspan_in(str); + public static long h3_cells_to_directed_edge_meos(long origin, long destination) { + var _result = _meos_b.h3_cells_to_directed_edge_meos(origin, destination); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tstzspan_out(Pointer s) { - var _result = _meos_a.tstzspan_out(s); + public static boolean h3_is_valid_directed_edge_meos(long edge) { + var _result = _meos_b.h3_is_valid_directed_edge_meos(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_in(String str) { - var _result = _meos_a.tstzspanset_in(str); + public static long h3_get_directed_edge_origin_meos(long edge) { + var _result = _meos_b.h3_get_directed_edge_origin_meos(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tstzspanset_out(Pointer ss) { - var _result = _meos_a.tstzspanset_out(ss); + public static long h3_get_directed_edge_destination_meos(long edge) { + var _result = _meos_b.h3_get_directed_edge_destination_meos(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintset_make(Pointer values, int count) { - var _result = _meos_a.bigintset_make(values, count); + public static long h3_cell_to_parent_meos(long origin, int resolution) { + var _result = _meos_b.h3_cell_to_parent_meos(origin, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspan_make(long lower, long upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.bigintspan_make(lower, upper, lower_inc, upper_inc); + public static long h3_cell_to_center_child_meos(long origin, int resolution) { + var _result = _meos_b.h3_cell_to_center_child_meos(origin, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer dateset_make(Pointer values, int count) { - var _result = _meos_a.dateset_make(values, count); + public static long h3_cell_to_child_pos_meos(long child, int parentRes) { + var _result = _meos_b.h3_cell_to_child_pos_meos(child, parentRes); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.datespan_make(lower, upper, lower_inc, upper_inc); + public static long h3_child_pos_to_cell_meos(long childPos, long parent, int childRes) { + var _result = _meos_b.h3_child_pos_to_cell_meos(childPos, parent, childRes); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_make(Pointer values, int count) { - var _result = _meos_a.floatset_make(values, count); + public static int h3_get_resolution_meos(long hex) { + var _result = _meos_b.h3_get_resolution_meos(hex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_make(double lower, double upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.floatspan_make(lower, upper, lower_inc, upper_inc); + public static int h3_get_base_cell_number_meos(long hex) { + var _result = _meos_b.h3_get_base_cell_number_meos(hex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intset_make(Pointer values, int count) { - var _result = _meos_a.intset_make(values, count); + public static boolean h3_is_valid_cell_meos(long hex) { + var _result = _meos_b.h3_is_valid_cell_meos(hex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.intspan_make(lower, upper, lower_inc, upper_inc); + public static boolean h3_is_res_class_iii_meos(long hex) { + var _result = _meos_b.h3_is_res_class_iii_meos(hex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_copy(Pointer s) { - var _result = _meos_a.set_copy(s); + public static boolean h3_is_pentagon_meos(long hex) { + var _result = _meos_b.h3_is_pentagon_meos(hex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_copy(Pointer s) { - var _result = _meos_a.span_copy(s); + public static long h3_get_num_cells_meos(int resolution) { + var _result = _meos_b.h3_get_num_cells_meos(resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_copy(Pointer ss) { - var _result = _meos_a.spanset_copy(ss); + public static long h3_grid_distance_meos(long originIndex, long h3Index) { + var _result = _meos_b.h3_grid_distance_meos(originIndex, h3Index); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_make(Pointer spans, int count) { - var _result = _meos_a.spanset_make(spans, count); + public static long h3_cell_to_vertex_meos(long cell, int vertexNum) { + var _result = _meos_b.h3_cell_to_vertex_meos(cell, vertexNum); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_make(Pointer values, int count) { - var _result = _meos_a.textset_make(values, count); + public static boolean h3_is_valid_vertex_meos(long vertex) { + var _result = _meos_b.h3_is_valid_vertex_meos(vertex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_make(Pointer values, int count) { - var _result = _meos_a.tstzset_make(values, count); + public static long h3index_parse(String str) { + var _result = _meos_b.h3index_parse(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_make(OffsetDateTime lower, OffsetDateTime upper, boolean lower_inc, boolean upper_inc) { - var lower_new = lower.toEpochSecond(); - var upper_new = upper.toEpochSecond(); - var _result = _meos_a.tstzspan_make(lower_new, upper_new, lower_inc, upper_inc); + public static String h3index_to_string(long cell) { + var _result = _meos_b.h3index_to_string(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigint_to_set(long i) { - var _result = _meos_a.bigint_to_set(i); + public static boolean h3index_eq(long a, long b) { + var _result = _meos_b.h3index_eq(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigint_to_span(int i) { - var _result = _meos_a.bigint_to_span(i); + public static boolean h3index_ne(long a, long b) { + var _result = _meos_b.h3index_ne(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigint_to_spanset(int i) { - var _result = _meos_a.bigint_to_spanset(i); + public static boolean h3index_lt(long a, long b) { + var _result = _meos_b.h3index_lt(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer date_to_set(int d) { - var _result = _meos_a.date_to_set(d); + public static boolean h3index_le(long a, long b) { + var _result = _meos_b.h3index_le(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer date_to_span(int d) { - var _result = _meos_a.date_to_span(d); + public static boolean h3index_gt(long a, long b) { + var _result = _meos_b.h3index_gt(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer date_to_spanset(int d) { - var _result = _meos_a.date_to_spanset(d); + public static boolean h3index_ge(long a, long b) { + var _result = _meos_b.h3index_ge(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer dateset_to_tstzset(Pointer s) { - var _result = _meos_a.dateset_to_tstzset(s); + public static int h3index_cmp(long a, long b) { + var _result = _meos_b.h3index_cmp(a, b); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_to_tstzspan(Pointer s) { - var _result = _meos_a.datespan_to_tstzspan(s); + public static int h3index_hash(long cell) { + var _result = _meos_b.h3index_hash(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_to_tstzspanset(Pointer ss) { - var _result = _meos_a.datespanset_to_tstzspanset(ss); + public static Pointer h3_grid_disk(long origin, int k) { + var _result = _meos_b.h3_grid_disk(origin, k); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_to_set(double d) { - var _result = _meos_a.float_to_set(d); + public static Pointer h3_grid_ring(long origin, int k) { + var _result = _meos_b.h3_grid_ring(origin, k); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_to_span(double d) { - var _result = _meos_a.float_to_span(d); + public static Pointer h3_grid_path_cells(long start, long end) { + var _result = _meos_b.h3_grid_path_cells(start, end); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_to_spanset(double d) { - var _result = _meos_a.float_to_spanset(d); + public static Pointer h3_cell_to_children(long origin, int childRes) { + var _result = _meos_b.h3_cell_to_children(origin, childRes); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_to_intset(Pointer s) { - var _result = _meos_a.floatset_to_intset(s); + public static Pointer h3_compact_cells(Pointer cells) { + var _result = _meos_b.h3_compact_cells(cells); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_to_intspan(Pointer s) { - var _result = _meos_a.floatspan_to_intspan(s); + public static Pointer h3_uncompact_cells(Pointer cells, int res) { + var _result = _meos_b.h3_uncompact_cells(cells, res); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_to_intspanset(Pointer ss) { - var _result = _meos_a.floatspanset_to_intspanset(ss); + public static Pointer h3_origin_to_directed_edges(long origin) { + var _result = _meos_b.h3_origin_to_directed_edges(origin); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_to_set(int i) { - var _result = _meos_a.int_to_set(i); + public static Pointer h3_cell_to_vertexes(long cell) { + var _result = _meos_b.h3_cell_to_vertexes(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_to_span(int i) { - var _result = _meos_a.int_to_span(i); + public static Pointer h3_get_icosahedron_faces(long cell) { + var _result = _meos_b.h3_get_icosahedron_faces(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_to_spanset(int i) { - var _result = _meos_a.int_to_spanset(i); + public static boolean ensure_valid_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ensure_valid_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intset_to_floatset(Pointer s) { - var _result = _meos_a.intset_to_floatset(s); + public static boolean ensure_valid_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_b.ensure_valid_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_to_floatspan(Pointer s) { - var _result = _meos_a.intspan_to_floatspan(s); + public static boolean ensure_valid_th3index_tgeogpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_b.ensure_valid_th3index_tgeogpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspanset_to_floatspanset(Pointer ss) { - var _result = _meos_a.intspanset_to_floatspanset(ss); + public static int datum2_h3index_eq(int d1, int d2, int type) { + var _result = _meos_b.datum2_h3index_eq(d1, d2, type); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_to_span(Pointer s) { - var _result = _meos_a.set_to_span(s); + public static int datum2_h3index_ne(int d1, int d2, int type) { + var _result = _meos_b.datum2_h3index_ne(d1, d2, type); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_to_spanset(Pointer s) { - var _result = _meos_a.set_to_spanset(s); + public static void th3indexinst_set_stbox(Pointer inst, Pointer box) { + _meos_b.th3indexinst_set_stbox(inst, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer span_to_spanset(Pointer s) { - var _result = _meos_a.span_to_spanset(s); + public static void th3indexinstarr_set_stbox(Pointer instants, int count, Pointer box) { + _meos_b.th3indexinstarr_set_stbox(instants, count, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer text_to_set(Pointer txt) { - var _result = _meos_a.text_to_set(txt); + public static void th3indexseq_expand_stbox(Pointer seq, Pointer inst) { + _meos_b.th3indexseq_expand_stbox(seq, inst); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_to_set(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_set(t_new); + public static long h3_gs_point_to_cell(Pointer point, int resolution) { + var _result = _meos_b.h3_gs_point_to_cell(point, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_to_span(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_span(t_new); + public static Pointer h3_cell_to_gs_point(long cell) { + var _result = _meos_b.h3_cell_to_gs_point(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_to_spanset(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_spanset(t_new); + public static Pointer h3_cell_to_gs_boundary(long cell) { + var _result = _meos_b.h3_cell_to_gs_boundary(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_to_dateset(Pointer s) { - var _result = _meos_a.tstzset_to_dateset(s); + public static Pointer cell_boundary_to_gs(Pointer bnd) { + var _result = _meos_b.cell_boundary_to_gs(bnd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_to_datespan(Pointer s) { - var _result = _meos_a.tstzspan_to_datespan(s); + public static double h3_sample_step_deg(int resolution) { + var _result = _meos_b.h3_sample_step_deg(resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_to_datespanset(Pointer ss) { - var _result = _meos_a.tstzspanset_to_datespanset(ss); + public static long h3_latlng_deg_to_cell(double lat_deg, double lng_deg, int resolution) { + var _result = _meos_b.h3_latlng_deg_to_cell(lat_deg, lng_deg, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintset_end_value(Pointer s) { - var _result = _meos_a.bigintset_end_value(s); + public static long h3_cell_to_parent_next_meos(long cell) { + var _result = _meos_b.h3_cell_to_parent_next_meos(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintset_start_value(Pointer s) { - var _result = _meos_a.bigintset_start_value(s); + public static long h3_cell_to_center_child_next_meos(long cell) { + var _result = _meos_b.h3_cell_to_center_child_next_meos(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.bigintset_value_n(s, n, result); + public static Pointer h3_directed_edge_to_gs_boundary(long edge) { + var _result = _meos_b.h3_directed_edge_to_gs_boundary(edge); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer bigintset_values(Pointer s) { - var _result = _meos_a.bigintset_values(s); + public static Pointer h3_vertex_to_gs_point(long vertex) { + var _result = _meos_b.h3_vertex_to_gs_point(vertex); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspan_lower(Pointer s) { - var _result = _meos_a.bigintspan_lower(s); + public static Pointer h3_cell_to_local_ij_meos(long origin, long cell) { + var _result = _meos_b.h3_cell_to_local_ij_meos(origin, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspan_upper(Pointer s) { - var _result = _meos_a.bigintspan_upper(s); + public static long h3_local_ij_to_cell_meos(long origin, Pointer coord) { + var _result = _meos_b.h3_local_ij_to_cell_meos(origin, coord); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspan_width(Pointer s) { - var _result = _meos_a.bigintspan_width(s); + public static int h3_unit_from_cstring(String unit) { + var _result = _meos_b.h3_unit_from_cstring(unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspanset_lower(Pointer ss) { - var _result = _meos_a.bigintspanset_lower(ss); + public static double h3_cell_area_meos(long cell, int unit) { + var _result = _meos_b.h3_cell_area_meos(cell, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspanset_upper(Pointer ss) { - var _result = _meos_a.bigintspanset_upper(ss); + public static double h3_edge_length_meos(long edge, int unit) { + var _result = _meos_b.h3_edge_length_meos(edge, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigintspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.bigintspanset_width(ss, boundspan); + public static double h3_gs_great_circle_distance_meos(Pointer a, Pointer b, int unit) { + var _result = _meos_b.h3_gs_great_circle_distance_meos(a, b, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int dateset_end_value(Pointer s) { - var _result = _meos_a.dateset_end_value(s); + public static int datum_h3_get_resolution(int d) { + var _result = _meos_b.datum_h3_get_resolution(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int dateset_start_value(Pointer s) { - var _result = _meos_a.dateset_start_value(s); + public static int datum_h3_get_base_cell_number(int d) { + var _result = _meos_b.datum_h3_get_base_cell_number(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer dateset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.dateset_value_n(s, n, result); + public static int datum_h3_is_valid_cell(int d) { + var _result = _meos_b.datum_h3_is_valid_cell(d); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer dateset_values(Pointer s) { - var _result = _meos_a.dateset_values(s); + public static int datum_h3_is_res_class_iii(int d) { + var _result = _meos_b.datum_h3_is_res_class_iii(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_duration(Pointer s) { - var _result = _meos_a.datespan_duration(s); + public static int datum_h3_is_pentagon(int d) { + var _result = _meos_b.datum_h3_is_pentagon(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int datespan_lower(Pointer s) { - var _result = _meos_a.datespan_lower(s); + public static int datum_h3_cell_to_parent(int cell_d, int res_d) { + var _result = _meos_b.datum_h3_cell_to_parent(cell_d, res_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int datespan_upper(Pointer s) { - var _result = _meos_a.datespan_upper(s); + public static int datum_h3_cell_to_parent_next(int cell_d) { + var _result = _meos_b.datum_h3_cell_to_parent_next(cell_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_date_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.datespanset_date_n(ss, n, result); + public static int datum_h3_cell_to_center_child(int cell_d, int res_d) { + var _result = _meos_b.datum_h3_cell_to_center_child(cell_d, res_d); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_dates(Pointer ss) { - var _result = _meos_a.datespanset_dates(ss); + public static int datum_h3_cell_to_center_child_next(int cell_d) { + var _result = _meos_b.datum_h3_cell_to_center_child_next(cell_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_duration(Pointer ss, boolean boundspan) { - var _result = _meos_a.datespanset_duration(ss, boundspan); + public static int datum_h3_cell_to_child_pos(int cell_d, int parent_res_d) { + var _result = _meos_b.datum_h3_cell_to_child_pos(cell_d, parent_res_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int datespanset_end_date(Pointer ss) { - var _result = _meos_a.datespanset_end_date(ss); + public static int datum_h3_child_pos_to_cell(int pos_d, int parent_d, int child_res_d) { + var _result = _meos_b.datum_h3_child_pos_to_cell(pos_d, parent_d, child_res_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int datespanset_num_dates(Pointer ss) { - var _result = _meos_a.datespanset_num_dates(ss); + public static int datum_h3_are_neighbor_cells(int origin_d, int dest_d) { + var _result = _meos_b.datum_h3_are_neighbor_cells(origin_d, dest_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int datespanset_start_date(Pointer ss) { - var _result = _meos_a.datespanset_start_date(ss); + public static int datum_h3_cells_to_directed_edge(int origin_d, int dest_d) { + var _result = _meos_b.datum_h3_cells_to_directed_edge(origin_d, dest_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatset_end_value(Pointer s) { - var _result = _meos_a.floatset_end_value(s); + public static int datum_h3_is_valid_directed_edge(int d) { + var _result = _meos_b.datum_h3_is_valid_directed_edge(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatset_start_value(Pointer s) { - var _result = _meos_a.floatset_start_value(s); + public static int datum_h3_get_directed_edge_origin(int d) { + var _result = _meos_b.datum_h3_get_directed_edge_origin(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_a.floatset_value_n(s, n, result); + public static int datum_h3_get_directed_edge_destination(int d) { + var _result = _meos_b.datum_h3_get_directed_edge_destination(d); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer floatset_values(Pointer s) { - var _result = _meos_a.floatset_values(s); + public static int datum_h3_directed_edge_to_boundary(int d) { + var _result = _meos_b.datum_h3_directed_edge_to_boundary(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspan_lower(Pointer s) { - var _result = _meos_a.floatspan_lower(s); + public static int datum_h3_cell_to_vertex(int cell_d, int vnum_d) { + var _result = _meos_b.datum_h3_cell_to_vertex(cell_d, vnum_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspan_upper(Pointer s) { - var _result = _meos_a.floatspan_upper(s); + public static int datum_h3_vertex_to_latlng(int d) { + var _result = _meos_b.datum_h3_vertex_to_latlng(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspan_width(Pointer s) { - var _result = _meos_a.floatspan_width(s); + public static int datum_h3_is_valid_vertex(int d) { + var _result = _meos_b.datum_h3_is_valid_vertex(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspanset_lower(Pointer ss) { - var _result = _meos_a.floatspanset_lower(ss); + public static int datum_h3_grid_distance(int origin_d, int dest_d) { + var _result = _meos_b.datum_h3_grid_distance(origin_d, dest_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspanset_upper(Pointer ss) { - var _result = _meos_a.floatspanset_upper(ss); + public static int datum_h3_cell_to_local_ij(int origin_d, int cell_d) { + var _result = _meos_b.datum_h3_cell_to_local_ij(origin_d, cell_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double floatspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.floatspanset_width(ss, boundspan); + public static int datum_h3_local_ij_to_cell(int origin_d, int coord_d) { + var _result = _meos_b.datum_h3_local_ij_to_cell(origin_d, coord_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intset_end_value(Pointer s) { - var _result = _meos_a.intset_end_value(s); + public static int datum_h3_latlng_to_cell(int point_d, int res_d) { + var _result = _meos_b.datum_h3_latlng_to_cell(point_d, res_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intset_start_value(Pointer s) { - var _result = _meos_a.intset_start_value(s); + public static int datum_h3_cell_to_latlng(int d) { + var _result = _meos_b.datum_h3_cell_to_latlng(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.intset_value_n(s, n, result); + public static int datum_h3_cell_to_boundary(int d) { + var _result = _meos_b.datum_h3_cell_to_boundary(d); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer intset_values(Pointer s) { - var _result = _meos_a.intset_values(s); + public static int datum_h3_cell_area(int cell_d, int unit_d) { + var _result = _meos_b.datum_h3_cell_area(cell_d, unit_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspan_lower(Pointer s) { - var _result = _meos_a.intspan_lower(s); + public static int datum_h3_edge_length(int edge_d, int unit_d) { + var _result = _meos_b.datum_h3_edge_length(edge_d, unit_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspan_upper(Pointer s) { - var _result = _meos_a.intspan_upper(s); + public static int datum_h3_great_circle_distance(int a_d, int b_d, int unit_d) { + var _result = _meos_b.datum_h3_great_circle_distance(a_d, b_d, unit_d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspan_width(Pointer s) { - var _result = _meos_a.intspan_width(s); + public static Pointer geo_as_ewkb(Pointer gs, String endian, Pointer size) { + var _result = _meos_b.geo_as_ewkb(gs, endian, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspanset_lower(Pointer ss) { - var _result = _meos_a.intspanset_lower(ss); + public static String geo_as_ewkt(Pointer gs, int precision) { + var _result = _meos_b.geo_as_ewkt(gs, precision); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspanset_upper(Pointer ss) { - var _result = _meos_a.intspanset_upper(ss); + public static String geo_as_geojson(Pointer gs, int option, int precision, String srs) { + var _result = _meos_b.geo_as_geojson(gs, option, precision, srs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int intspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.intspanset_width(ss, boundspan); + public static String geo_as_hexewkb(Pointer gs, String endian) { + var _result = _meos_b.geo_as_hexewkb(gs, endian); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int set_hash(Pointer s) { - var _result = _meos_a.set_hash(s); + public static String geo_as_text(Pointer gs, int precision) { + var _result = _meos_b.geo_as_text(gs, precision); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long set_hash_extended(Pointer s, long seed) { - var _result = _meos_a.set_hash_extended(s, seed); + public static Pointer geo_from_ewkb(Pointer wkb, long wkb_size, int srid) { + var _result = _meos_b.geo_from_ewkb(wkb, wkb_size, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int set_num_values(Pointer s) { - var _result = _meos_a.set_num_values(s); + public static Pointer geo_from_geojson(String geojson) { + var _result = _meos_b.geo_from_geojson(geojson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int span_hash(Pointer s) { - var _result = _meos_a.span_hash(s); + public static Pointer geo_from_text(String wkt, int srid) { + var _result = _meos_b.geo_from_text(wkt, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long span_hash_extended(Pointer s, long seed) { - var _result = _meos_a.span_hash_extended(s, seed); + public static String geo_out(Pointer gs) { + var _result = _meos_b.geo_out(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_lower_inc(Pointer s) { - var _result = _meos_a.span_lower_inc(s); + public static Pointer geog_from_binary(String wkb_bytea) { + var _result = _meos_b.geog_from_binary(wkb_bytea); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_upper_inc(Pointer s) { - var _result = _meos_a.span_upper_inc(s); + public static Pointer geog_from_hexewkb(String wkt) { + var _result = _meos_b.geog_from_hexewkb(wkt); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_end_span(Pointer ss) { - var _result = _meos_a.spanset_end_span(ss); + public static Pointer geog_in(String str, int typmod) { + var _result = _meos_b.geog_in(str, typmod); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int spanset_hash(Pointer ss) { - var _result = _meos_a.spanset_hash(ss); + public static Pointer geom_from_hexewkb(String wkt) { + var _result = _meos_b.geom_from_hexewkb(wkt); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long spanset_hash_extended(Pointer ss, long seed) { - var _result = _meos_a.spanset_hash_extended(ss, seed); + public static Pointer geom_in(String str, int typmod) { + var _result = _meos_b.geom_in(str, typmod); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_lower_inc(Pointer ss) { - var _result = _meos_a.spanset_lower_inc(ss); + public static Pointer box3d_make(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int srid) { + var _result = _meos_b.box3d_make(xmin, xmax, ymin, ymax, zmin, zmax, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int spanset_num_spans(Pointer ss) { - var _result = _meos_a.spanset_num_spans(ss); + public static String box3d_out(Pointer box, int maxdd) { + var _result = _meos_b.box3d_out(box, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_span(Pointer ss) { - var _result = _meos_a.spanset_span(ss); + public static Pointer gbox_make(boolean hasz, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) { + var _result = _meos_b.gbox_make(hasz, xmin, xmax, ymin, ymax, zmin, zmax); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_span_n(Pointer ss, int i) { - var _result = _meos_a.spanset_span_n(ss, i); + public static String gbox_out(Pointer box, int maxdd) { + var _result = _meos_b.gbox_out(box, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_spanarr(Pointer ss) { - var _result = _meos_a.spanset_spanarr(ss); + public static Pointer geo_copy(Pointer g) { + var _result = _meos_b.geo_copy(g); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_start_span(Pointer ss) { - var _result = _meos_a.spanset_start_span(ss); + public static Pointer geogpoint_make2d(int srid, double x, double y) { + var _result = _meos_b.geogpoint_make2d(srid, x, y); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_upper_inc(Pointer ss) { - var _result = _meos_a.spanset_upper_inc(ss); + public static Pointer geogpoint_make3dz(int srid, double x, double y, double z) { + var _result = _meos_b.geogpoint_make3dz(srid, x, y, z); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_end_value(Pointer s) { - var _result = _meos_a.textset_end_value(s); + public static Pointer geompoint_make2d(int srid, double x, double y) { + var _result = _meos_b.geompoint_make2d(srid, x, y); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_start_value(Pointer s) { - var _result = _meos_a.textset_start_value(s); + public static Pointer geompoint_make3dz(int srid, double x, double y, double z) { + var _result = _meos_b.geompoint_make3dz(srid, x, y, z); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.textset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); + public static Pointer geom_to_geog(Pointer geom) { + var _result = _meos_b.geom_to_geog(geom); MeosErrorHandler.checkError(); - return out ? new_result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer textset_values(Pointer s) { - var _result = _meos_a.textset_values(s); + public static Pointer geog_to_geom(Pointer geog) { + var _result = _meos_b.geog_to_geom(geog); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzset_end_value(Pointer s) { - var _result = _meos_a.tstzset_end_value(s); + public static boolean geo_is_empty(Pointer g) { + var _result = _meos_c.geo_is_empty(g); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzset_start_value(Pointer s) { - var _result = _meos_a.tstzset_start_value(s); + public static boolean geo_is_unitary(Pointer gs) { + var _result = _meos_c.geo_is_unitary(gs); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.tstzset_value_n(s, n, result); + public static String geo_typename(int type) { + var _result = _meos_c.geo_typename(type); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_values(Pointer s) { - var _result = _meos_a.tstzset_values(s); + public static double geog_area(Pointer g, boolean use_spheroid) { + var _result = _meos_c.geog_area(g, use_spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_duration(Pointer s) { - var _result = _meos_a.tstzspan_duration(s); + public static Pointer geog_centroid(Pointer g, boolean use_spheroid) { + var _result = _meos_c.geog_centroid(g, use_spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspan_lower(Pointer s) { - var _result = _meos_a.tstzspan_lower(s); + public static double geog_length(Pointer g, boolean use_spheroid) { + var _result = _meos_c.geog_length(g, use_spheroid); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspan_upper(Pointer s) { - var _result = _meos_a.tstzspan_upper(s); + public static double geog_perimeter(Pointer g, boolean use_spheroid) { + var _result = _meos_c.geog_perimeter(g, use_spheroid); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_duration(Pointer ss, boolean boundspan) { - var _result = _meos_a.tstzspanset_duration(ss, boundspan); + public static Pointer geom_azimuth(Pointer gs1, Pointer gs2) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.geom_azimuth(gs1, gs2, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_end_timestamptz(Pointer ss) { - var _result = _meos_a.tstzspanset_end_timestamptz(ss); + public static double geom_length(Pointer gs) { + var _result = _meos_c.geom_length(gs); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_lower(Pointer ss) { - var _result = _meos_a.tstzspanset_lower(ss); + public static double geom_perimeter(Pointer gs) { + var _result = _meos_c.geom_perimeter(gs); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static int tstzspanset_num_timestamps(Pointer ss) { - var _result = _meos_a.tstzspanset_num_timestamps(ss); + public static int line_numpoints(Pointer gs) { + var _result = _meos_c.line_numpoints(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_start_timestamptz(Pointer ss) { - var _result = _meos_a.tstzspanset_start_timestamptz(ss); + public static Pointer line_point_n(Pointer geom, int n) { + var _result = _meos_c.line_point_n(geom, n); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_timestamps(Pointer ss) { - var _result = _meos_a.tstzspanset_timestamps(ss); + public static Pointer geo_reverse(Pointer gs) { + var _result = _meos_c.geo_reverse(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_timestamptz_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.tstzspanset_timestamptz_n(ss, n, result); + public static Pointer geo_round(Pointer gs, int maxdd) { + var _result = _meos_c.geo_round(gs, maxdd); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_upper(Pointer ss) { - var _result = _meos_a.tstzspanset_upper(ss); + public static Pointer geo_set_srid(Pointer gs, int srid) { + var _result = _meos_c.geo_set_srid(gs, srid); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer bigintset_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintset_shift_scale(s, shift, width, hasshift, haswidth); + public static int geo_srid(Pointer gs) { + var _result = _meos_c.geo_srid(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspan_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintspan_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer geo_transform(Pointer geom, int srid_to) { + var _result = _meos_c.geo_transform(geom, srid_to); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspanset_shift_scale(Pointer ss, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintspanset_shift_scale(ss, shift, width, hasshift, haswidth); + public static Pointer geo_transform_pipeline(Pointer gs, String pipeline, int srid_to, boolean is_forward) { + var _result = _meos_c.geo_transform_pipeline(gs, pipeline, srid_to, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer dateset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.dateset_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer geo_collect_garray(Pointer gsarr, int count) { + var _result = _meos_c.geo_collect_garray(gsarr, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.datespan_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer geo_makeline_garray(Pointer gsarr, int count) { + var _result = _meos_c.geo_makeline_garray(gsarr, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.datespanset_shift_scale(ss, shift, width, hasshift, haswidth); + public static int geo_num_points(Pointer gs) { + var _result = _meos_c.geo_num_points(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_ceil(Pointer s) { - var _result = _meos_a.floatset_ceil(s); + public static int geo_num_geos(Pointer gs) { + var _result = _meos_c.geo_num_geos(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_degrees(Pointer s, boolean normalize) { - var _result = _meos_a.floatset_degrees(s, normalize); + public static Pointer geo_geo_n(Pointer geom, int n) { + var _result = _meos_c.geo_geo_n(geom, n); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_floor(Pointer s) { - var _result = _meos_a.floatset_floor(s); + public static Pointer geo_pointarr(Pointer gs, Pointer count) { + var _result = _meos_c.geo_pointarr(gs, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_radians(Pointer s) { - var _result = _meos_a.floatset_radians(s); + public static Pointer geo_points(Pointer gs) { + var _result = _meos_c.geo_points(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatset_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatset_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer geom_array_union(Pointer gsarr, int count) { + var _result = _meos_c.geom_array_union(gsarr, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_ceil(Pointer s) { - var _result = _meos_a.floatspan_ceil(s); + public static Pointer geom_boundary(Pointer gs) { + var _result = _meos_c.geom_boundary(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_degrees(Pointer s, boolean normalize) { - var _result = _meos_a.floatspan_degrees(s, normalize); + public static Pointer geom_buffer(Pointer gs, double size, String params) { + var _result = _meos_c.geom_buffer(gs, size, params); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_floor(Pointer s) { - var _result = _meos_a.floatspan_floor(s); + public static Pointer geom_centroid(Pointer gs) { + var _result = _meos_c.geom_centroid(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_radians(Pointer s) { - var _result = _meos_a.floatspan_radians(s); + public static Pointer geom_convex_hull(Pointer gs) { + var _result = _meos_c.geom_convex_hull(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_round(Pointer s, int maxdd) { - var _result = _meos_a.floatspan_round(s, maxdd); + public static Pointer geom_difference2d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_difference2d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatspan_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer geom_intersection2d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_intersection2d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_ceil(Pointer ss) { - var _result = _meos_a.floatspanset_ceil(ss); + public static Pointer geom_intersection2d_coll(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_intersection2d_coll(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_floor(Pointer ss) { - var _result = _meos_a.floatspanset_floor(ss); + public static Pointer geom_min_bounding_radius(Pointer geom, Pointer radius) { + var _result = _meos_c.geom_min_bounding_radius(geom, radius); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_degrees(Pointer ss, boolean normalize) { - var _result = _meos_a.floatspanset_degrees(ss, normalize); + public static Pointer geom_shortestline2d(Pointer gs1, Pointer s2) { + var _result = _meos_c.geom_shortestline2d(gs1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_radians(Pointer ss) { - var _result = _meos_a.floatspanset_radians(ss); + public static Pointer geom_shortestline3d(Pointer gs1, Pointer s2) { + var _result = _meos_c.geom_shortestline3d(gs1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_round(Pointer ss, int maxdd) { - var _result = _meos_a.floatspanset_round(ss, maxdd); + public static Pointer geom_unary_union(Pointer gs, double prec) { + var _result = _meos_c.geom_unary_union(gs, prec); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_shift_scale(Pointer ss, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatspanset_shift_scale(ss, shift, width, hasshift, haswidth); + public static Pointer line_interpolate_point(Pointer gs, double distance_fraction, boolean repeat) { + var _result = _meos_c.line_interpolate_point(gs, distance_fraction, repeat); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intset_shift_scale(s, shift, width, hasshift, haswidth); + public static double line_locate_point(Pointer gs1, Pointer gs2) { + var _result = _meos_c.line_locate_point(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intspan_shift_scale(s, shift, width, hasshift, haswidth); + public static Pointer line_substring(Pointer gs, double from, double to) { + var _result = _meos_c.line_substring(gs, from, to); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intspanset_shift_scale(ss, shift, width, hasshift, haswidth); + public static boolean geog_dwithin(Pointer g1, Pointer g2, double tolerance, boolean use_spheroid) { + var _result = _meos_c.geog_dwithin(g1, g2, tolerance, use_spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_expand(Pointer s, Pointer interv) { - var _result = _meos_a.tstzspan_expand(s, interv); + public static boolean geog_intersects(Pointer gs1, Pointer gs2, boolean use_spheroid) { + var _result = _meos_c.geog_intersects(gs1, gs2, use_spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_round(Pointer s, int maxdd) { - var _result = _meos_a.set_round(s, maxdd); + public static boolean geom_contains(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_contains(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_text_textset(Pointer txt, Pointer s) { - var _result = _meos_a.textcat_text_textset(txt, s); + public static boolean geom_covers(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_covers(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_textset_text(Pointer s, Pointer txt) { - var _result = _meos_a.textcat_textset_text(s, txt); + public static boolean geom_disjoint2d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_disjoint2d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_initcap(Pointer s) { - var _result = _meos_a.textset_initcap(s); + public static boolean geom_dwithin2d(Pointer gs1, Pointer gs2, double tolerance) { + var _result = _meos_c.geom_dwithin2d(gs1, gs2, tolerance); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_lower(Pointer s) { - var _result = _meos_a.textset_lower(s); + public static boolean geom_dwithin3d(Pointer gs1, Pointer gs2, double tolerance) { + var _result = _meos_c.geom_dwithin3d(gs1, gs2, tolerance); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textset_upper(Pointer s) { - var _result = _meos_a.textset_upper(s); + public static boolean geom_intersects2d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_intersects2d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_tprecision(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.timestamptz_tprecision(t_new, duration, torigin_new); + public static boolean geom_intersects3d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_intersects3d(gs1, gs2); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_shift_scale(Pointer s, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzset_shift_scale(s, shift, duration); + public static boolean geom_relate_pattern(Pointer gs1, Pointer gs2, String patt) { + var _result = _meos_c.geom_relate_pattern(gs1, gs2, patt); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzset_tprecision(s, duration, torigin_new); + public static boolean geom_touches(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_touches(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_shift_scale(Pointer s, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzspan_shift_scale(s, shift, duration); + public static Pointer geo_stboxes(Pointer gs, Pointer count) { + var _result = _meos_c.geo_stboxes(gs, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzspan_tprecision(s, duration, torigin_new); + public static Pointer geo_split_each_n_stboxes(Pointer gs, int elem_count, Pointer count) { + var _result = _meos_c.geo_split_each_n_stboxes(gs, elem_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_shift_scale(Pointer ss, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzspanset_shift_scale(ss, shift, duration); + public static Pointer geo_split_n_stboxes(Pointer gs, int box_count, Pointer count) { + var _result = _meos_c.geo_split_n_stboxes(gs, box_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_tprecision(Pointer ss, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzspanset_tprecision(ss, duration, torigin_new); + public static double geog_distance(Pointer g1, Pointer g2) { + var _result = _meos_c.geog_distance(g1, g2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int set_cmp(Pointer s1, Pointer s2) { - var _result = _meos_a.set_cmp(s1, s2); + public static double geom_distance2d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_distance2d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_eq(Pointer s1, Pointer s2) { - var _result = _meos_a.set_eq(s1, s2); + public static double geom_distance3d(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geom_distance3d(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_ge(Pointer s1, Pointer s2) { - var _result = _meos_a.set_ge(s1, s2); + public static int geo_equals(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geo_equals(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_gt(Pointer s1, Pointer s2) { - var _result = _meos_a.set_gt(s1, s2); + public static boolean geo_same(Pointer gs1, Pointer gs2) { + var _result = _meos_c.geo_same(gs1, gs2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_le(Pointer s1, Pointer s2) { - var _result = _meos_a.set_le(s1, s2); + public static Pointer geogset_in(String str) { + var _result = _meos_c.geogset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_lt(Pointer s1, Pointer s2) { - var _result = _meos_a.set_lt(s1, s2); + public static Pointer geomset_in(String str) { + var _result = _meos_c.geomset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean set_ne(Pointer s1, Pointer s2) { - var _result = _meos_a.set_ne(s1, s2); + public static String spatialset_as_text(Pointer set, int maxdd) { + var _result = _meos_c.spatialset_as_text(set, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int span_cmp(Pointer s1, Pointer s2) { - var _result = _meos_a.span_cmp(s1, s2); + public static String spatialset_as_ewkt(Pointer set, int maxdd) { + var _result = _meos_c.spatialset_as_ewkt(set, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_eq(Pointer s1, Pointer s2) { - var _result = _meos_a.span_eq(s1, s2); + public static Pointer geoset_make(Pointer values, int count) { + var _result = _meos_c.geoset_make(values, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_ge(Pointer s1, Pointer s2) { - var _result = _meos_a.span_ge(s1, s2); + public static Pointer geo_to_set(Pointer gs) { + var _result = _meos_c.geo_to_set(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_gt(Pointer s1, Pointer s2) { - var _result = _meos_a.span_gt(s1, s2); + public static Pointer geoset_end_value(Pointer s) { + var _result = _meos_c.geoset_end_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_le(Pointer s1, Pointer s2) { - var _result = _meos_a.span_le(s1, s2); + public static Pointer geoset_start_value(Pointer s) { + var _result = _meos_c.geoset_start_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean span_lt(Pointer s1, Pointer s2) { - var _result = _meos_a.span_lt(s1, s2); + public static Pointer geoset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.geoset_value_n(s, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean span_ne(Pointer s1, Pointer s2) { - var _result = _meos_a.span_ne(s1, s2); + public static Pointer geoset_values(Pointer s) { + var _result = _meos_c.geoset_values(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int spanset_cmp(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_cmp(ss1, ss2); + public static boolean contained_geo_set(Pointer gs, Pointer s) { + var _result = _meos_c.contained_geo_set(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_eq(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_eq(ss1, ss2); + public static boolean contains_set_geo(Pointer s, Pointer gs) { + var _result = _meos_c.contains_set_geo(s, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_ge(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_ge(ss1, ss2); + public static Pointer geo_union_transfn(Pointer state, Pointer gs) { + var _result = _meos_c.geo_union_transfn(state, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_gt(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_gt(ss1, ss2); + public static Pointer intersection_geo_set(Pointer gs, Pointer s) { + var _result = _meos_c.intersection_geo_set(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_le(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_le(ss1, ss2); + public static Pointer intersection_set_geo(Pointer s, Pointer gs) { + var _result = _meos_c.intersection_set_geo(s, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_lt(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_lt(ss1, ss2); + public static Pointer minus_geo_set(Pointer gs, Pointer s) { + var _result = _meos_c.minus_geo_set(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean spanset_ne(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_ne(ss1, ss2); + public static Pointer minus_set_geo(Pointer s, Pointer gs) { + var _result = _meos_c.minus_set_geo(s, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_spans(Pointer s) { - var _result = _meos_a.set_spans(s); + public static Pointer union_geo_set(Pointer gs, Pointer s) { + var _result = _meos_c.union_geo_set(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_split_each_n_spans(Pointer s, int elems_per_span, Pointer count) { - var _result = _meos_a.set_split_each_n_spans(s, elems_per_span, count); + public static Pointer union_set_geo(Pointer s, Pointer gs) { + var _result = _meos_c.union_set_geo(s, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_split_n_spans(Pointer s, int span_count, Pointer count) { - var _result = _meos_a.set_split_n_spans(s, span_count, count); + public static Pointer spatialset_set_srid(Pointer s, int srid) { + var _result = _meos_c.spatialset_set_srid(s, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_spans(Pointer ss) { - var _result = _meos_a.spanset_spans(ss); + public static int spatialset_srid(Pointer s) { + var _result = _meos_c.spatialset_srid(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_split_each_n_spans(Pointer ss, int elems_per_span, Pointer count) { - var _result = _meos_a.spanset_split_each_n_spans(ss, elems_per_span, count); + public static Pointer spatialset_transform(Pointer s, int srid) { + var _result = _meos_c.spatialset_transform(s, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_split_n_spans(Pointer ss, int span_count, Pointer count) { - var _result = _meos_a.spanset_split_n_spans(ss, span_count, count); + public static Pointer spatialset_transform_pipeline(Pointer s, String pipelinestr, int srid, boolean is_forward) { + var _result = _meos_c.spatialset_transform_pipeline(s, pipelinestr, srid, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_bigint(Pointer s, long i) { - var _result = _meos_a.adjacent_span_bigint(s, i); + public static String stbox_as_hexwkb(Pointer box, byte variant, Pointer size) { + var _result = _meos_c.stbox_as_hexwkb(box, variant, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_date(Pointer s, int d) { - var _result = _meos_a.adjacent_span_date(s, d); + public static Pointer stbox_as_wkb(Pointer box, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_c.stbox_as_wkb(box, variant, size_out); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_float(Pointer s, double d) { - var _result = _meos_a.adjacent_span_float(s, d); + public static Pointer stbox_from_hexwkb(String hexwkb) { + var _result = _meos_c.stbox_from_hexwkb(hexwkb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_int(Pointer s, int i) { - var _result = _meos_a.adjacent_span_int(s, i); + public static Pointer stbox_from_wkb(Pointer wkb, long size) { + var _result = _meos_c.stbox_from_wkb(wkb, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.adjacent_span_span(s1, s2); + public static Pointer stbox_in(String str) { + var _result = _meos_c.stbox_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.adjacent_span_spanset(s, ss); + public static String stbox_out(Pointer box, int maxdd) { + var _result = _meos_c.stbox_out(box, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_span_timestamptz(Pointer s, OffsetDateTime t) { + public static Pointer geo_timestamptz_to_stbox(Pointer gs, OffsetDateTime t) { var t_new = t.toEpochSecond(); - var _result = _meos_a.adjacent_span_timestamptz(s, t_new); + var _result = _meos_c.geo_timestamptz_to_stbox(gs, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.adjacent_spanset_bigint(ss, i); + public static Pointer geo_tstzspan_to_stbox(Pointer gs, Pointer s) { + var _result = _meos_c.geo_tstzspan_to_stbox(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_date(Pointer ss, int d) { - var _result = _meos_a.adjacent_spanset_date(ss, d); + public static Pointer stbox_copy(Pointer box) { + var _result = _meos_c.stbox_copy(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_float(Pointer ss, double d) { - var _result = _meos_a.adjacent_spanset_float(ss, d); + public static Pointer stbox_make(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s) { + var _result = _meos_c.stbox_make(hasx, hasz, geodetic, srid, xmin, xmax, ymin, ymax, zmin, zmax, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_int(Pointer ss, int i) { - var _result = _meos_a.adjacent_spanset_int(ss, i); + public static Pointer geo_to_stbox(Pointer gs) { + var _result = _meos_c.geo_to_stbox(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.adjacent_spanset_timestamptz(ss, t_new); + public static Pointer spatialset_to_stbox(Pointer s) { + var _result = _meos_c.spatialset_to_stbox(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.adjacent_spanset_span(ss, s); + public static Pointer stbox_to_box3d(Pointer box) { + var _result = _meos_c.stbox_to_box3d(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.adjacent_spanset_spanset(ss1, ss2); + public static Pointer stbox_to_gbox(Pointer box) { + var _result = _meos_c.stbox_to_gbox(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_bigint_set(long i, Pointer s) { - var _result = _meos_a.contained_bigint_set(i, s); + public static Pointer stbox_to_geo(Pointer box) { + var _result = _meos_c.stbox_to_geo(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_bigint_span(long i, Pointer s) { - var _result = _meos_a.contained_bigint_span(i, s); + public static Pointer stbox_to_tstzspan(Pointer box) { + var _result = _meos_c.stbox_to_tstzspan(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.contained_bigint_spanset(i, ss); + public static Pointer timestamptz_to_stbox(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.timestamptz_to_stbox(t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_date_set(int d, Pointer s) { - var _result = _meos_a.contained_date_set(d, s); + public static Pointer tstzset_to_stbox(Pointer s) { + var _result = _meos_c.tstzset_to_stbox(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_date_span(int d, Pointer s) { - var _result = _meos_a.contained_date_span(d, s); + public static Pointer tstzspan_to_stbox(Pointer s) { + var _result = _meos_c.tstzspan_to_stbox(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_date_spanset(int d, Pointer ss) { - var _result = _meos_a.contained_date_spanset(d, ss); + public static Pointer tstzspanset_to_stbox(Pointer ss) { + var _result = _meos_c.tstzspanset_to_stbox(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_float_set(double d, Pointer s) { - var _result = _meos_a.contained_float_set(d, s); + public static double stbox_area(Pointer box, boolean spheroid) { + var _result = _meos_c.stbox_area(box, spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_float_span(double d, Pointer s) { - var _result = _meos_a.contained_float_span(d, s); + public static int stbox_hash(Pointer box) { + var _result = _meos_c.stbox_hash(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_float_spanset(double d, Pointer ss) { - var _result = _meos_a.contained_float_spanset(d, ss); + public static long stbox_hash_extended(Pointer box, long seed) { + var _result = _meos_c.stbox_hash_extended(box, seed); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_int_set(int i, Pointer s) { - var _result = _meos_a.contained_int_set(i, s); + public static boolean stbox_hast(Pointer box) { + var _result = _meos_c.stbox_hast(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_int_span(int i, Pointer s) { - var _result = _meos_a.contained_int_span(i, s); + public static boolean stbox_hasx(Pointer box) { + var _result = _meos_c.stbox_hasx(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_int_spanset(int i, Pointer ss) { - var _result = _meos_a.contained_int_spanset(i, ss); + public static boolean stbox_hasz(Pointer box) { + var _result = _meos_c.stbox_hasz(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.contained_set_set(s1, s2); + public static boolean stbox_isgeodetic(Pointer box) { + var _result = _meos_c.stbox_isgeodetic(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.contained_span_span(s1, s2); + public static double stbox_perimeter(Pointer box, boolean spheroid) { + var _result = _meos_c.stbox_perimeter(box, spheroid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.contained_span_spanset(s, ss); + public static Pointer stbox_tmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.stbox_tmax(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contained_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.contained_spanset_span(ss, s); + public static Pointer stbox_tmax_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_c.stbox_tmax_inc(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contained_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.contained_spanset_spanset(ss1, ss2); + public static Pointer stbox_tmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.stbox_tmin(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contained_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.contained_text_set(txt, s); + public static Pointer stbox_tmin_inc(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); + out = _meos_c.stbox_tmin_inc(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contained_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_set(t_new, s); + public static double stbox_volume(Pointer box) { + var _result = _meos_c.stbox_volume(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_span(t_new, s); + public static Pointer stbox_xmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_xmax(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contained_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_spanset(t_new, ss); + public static Pointer stbox_xmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_xmin(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contains_set_bigint(Pointer s, long i) { - var _result = _meos_a.contains_set_bigint(s, i); + public static Pointer stbox_ymax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_ymax(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contains_set_date(Pointer s, int d) { - var _result = _meos_a.contains_set_date(s, d); + public static Pointer stbox_ymin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_ymin(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contains_set_float(Pointer s, double d) { - var _result = _meos_a.contains_set_float(s, d); + public static Pointer stbox_zmax(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_zmax(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contains_set_int(Pointer s, int i) { - var _result = _meos_a.contains_set_int(s, i); + public static Pointer stbox_zmin(Pointer box) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.stbox_zmin(box, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean contains_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.contains_set_set(s1, s2); + public static Pointer stbox_expand_space(Pointer box, double d) { + var _result = _meos_c.stbox_expand_space(box, d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_set_text(Pointer s, Pointer t) { - var _result = _meos_a.contains_set_text(s, t); + public static Pointer stbox_expand_time(Pointer box, Pointer interv) { + var _result = _meos_c.stbox_expand_time(box, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_set_timestamptz(s, t_new); + public static Pointer stbox_get_space(Pointer box) { + var _result = _meos_c.stbox_get_space(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_bigint(Pointer s, long i) { - var _result = _meos_a.contains_span_bigint(s, i); + public static Pointer stbox_quad_split(Pointer box, Pointer count) { + var _result = _meos_c.stbox_quad_split(box, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_date(Pointer s, int d) { - var _result = _meos_a.contains_span_date(s, d); + public static Pointer stbox_round(Pointer box, int maxdd) { + var _result = _meos_c.stbox_round(box, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_float(Pointer s, double d) { - var _result = _meos_a.contains_span_float(s, d); + public static Pointer stbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { + var _result = _meos_c.stbox_shift_scale_time(box, shift, duration); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_int(Pointer s, int i) { - var _result = _meos_a.contains_span_int(s, i); + public static Pointer stboxarr_round(Pointer boxarr, int count, int maxdd) { + var _result = _meos_c.stboxarr_round(boxarr, count, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.contains_span_span(s1, s2); + public static Pointer stbox_set_srid(Pointer box, int srid) { + var _result = _meos_c.stbox_set_srid(box, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.contains_span_spanset(s, ss); + public static int stbox_srid(Pointer box) { + var _result = _meos_c.stbox_srid(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_span_timestamptz(s, t_new); + public static Pointer stbox_transform(Pointer box, int srid) { + var _result = _meos_c.stbox_transform(box, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.contains_spanset_bigint(ss, i); + public static Pointer stbox_transform_pipeline(Pointer box, String pipelinestr, int srid, boolean is_forward) { + var _result = _meos_c.stbox_transform_pipeline(box, pipelinestr, srid, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_date(Pointer ss, int d) { - var _result = _meos_a.contains_spanset_date(ss, d); + public static boolean adjacent_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.adjacent_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_float(Pointer ss, double d) { - var _result = _meos_a.contains_spanset_float(ss, d); + public static boolean contained_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.contained_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_int(Pointer ss, int i) { - var _result = _meos_a.contains_spanset_int(ss, i); + public static boolean contains_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.contains_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.contains_spanset_span(ss, s); + public static boolean overlaps_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overlaps_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.contains_spanset_spanset(ss1, ss2); + public static boolean same_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.same_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_spanset_timestamptz(ss, t_new); + public static boolean above_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.above_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.overlaps_set_set(s1, s2); + public static boolean after_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.after_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.overlaps_span_span(s1, s2); + public static boolean back_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.back_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.overlaps_span_spanset(s, ss); + public static boolean before_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.before_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.overlaps_spanset_span(ss, s); + public static boolean below_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.below_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.overlaps_spanset_spanset(ss1, ss2); + public static boolean front_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.front_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_date_set(int d, Pointer s) { - var _result = _meos_a.after_date_set(d, s); + public static boolean left_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.left_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_date_span(int d, Pointer s) { - var _result = _meos_a.after_date_span(d, s); + public static boolean overabove_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overabove_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_date_spanset(int d, Pointer ss) { - var _result = _meos_a.after_date_spanset(d, ss); + public static boolean overafter_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overafter_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_set_date(Pointer s, int d) { - var _result = _meos_a.after_set_date(s, d); + public static boolean overback_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overback_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_set_timestamptz(s, t_new); + public static boolean overbefore_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overbefore_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_span_date(Pointer s, int d) { - var _result = _meos_a.after_span_date(s, d); + public static boolean overbelow_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overbelow_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_span_timestamptz(s, t_new); + public static boolean overfront_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overfront_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_spanset_date(Pointer ss, int d) { - var _result = _meos_a.after_spanset_date(ss, d); + public static boolean overleft_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overleft_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_spanset_timestamptz(ss, t_new); + public static boolean overright_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.overright_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_set(t_new, s); + public static boolean right_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.right_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_span(t_new, s); + public static Pointer union_stbox_stbox(Pointer box1, Pointer box2, boolean strict) { + var _result = _meos_c.union_stbox_stbox(box1, box2, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_spanset(t_new, ss); + public static Pointer intersection_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.intersection_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_date_set(int d, Pointer s) { - var _result = _meos_a.before_date_set(d, s); + public static int stbox_cmp(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_cmp(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_date_span(int d, Pointer s) { - var _result = _meos_a.before_date_span(d, s); + public static boolean stbox_eq(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_eq(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_date_spanset(int d, Pointer ss) { - var _result = _meos_a.before_date_spanset(d, ss); + public static boolean stbox_ge(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_ge(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_set_date(Pointer s, int d) { - var _result = _meos_a.before_set_date(s, d); + public static boolean stbox_gt(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_gt(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_set_timestamptz(s, t_new); + public static boolean stbox_le(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_le(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_span_date(Pointer s, int d) { - var _result = _meos_a.before_span_date(s, d); + public static boolean stbox_lt(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_lt(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_span_timestamptz(s, t_new); + public static boolean stbox_ne(Pointer box1, Pointer box2) { + var _result = _meos_c.stbox_ne(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_spanset_date(Pointer ss, int d) { - var _result = _meos_a.before_spanset_date(ss, d); + public static Pointer tgeogpoint_from_mfjson(String str) { + var _result = _meos_c.tgeogpoint_from_mfjson(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_spanset_timestamptz(ss, t_new); + public static Pointer tgeogpoint_in(String str) { + var _result = _meos_c.tgeogpoint_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_set(t_new, s); + public static Pointer tgeography_from_mfjson(String mfjson) { + var _result = _meos_c.tgeography_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_span(t_new, s); + public static Pointer tgeography_in(String str) { + var _result = _meos_c.tgeography_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_spanset(t_new, ss); + public static Pointer tgeometry_from_mfjson(String str) { + var _result = _meos_c.tgeometry_from_mfjson(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_bigint_set(long i, Pointer s) { - var _result = _meos_a.left_bigint_set(i, s); + public static Pointer tgeometry_in(String str) { + var _result = _meos_c.tgeometry_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_bigint_span(long i, Pointer s) { - var _result = _meos_a.left_bigint_span(i, s); + public static Pointer tgeompoint_from_mfjson(String str) { + var _result = _meos_c.tgeompoint_from_mfjson(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.left_bigint_spanset(i, ss); + public static Pointer tgeompoint_in(String str) { + var _result = _meos_c.tgeompoint_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_float_set(double d, Pointer s) { - var _result = _meos_a.left_float_set(d, s); + public static String tspatial_as_ewkt(Pointer temp, int maxdd) { + var _result = _meos_c.tspatial_as_ewkt(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_float_span(double d, Pointer s) { - var _result = _meos_a.left_float_span(d, s); + public static String tspatial_as_text(Pointer temp, int maxdd) { + var _result = _meos_c.tspatial_as_text(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_float_spanset(double d, Pointer ss) { - var _result = _meos_a.left_float_spanset(d, ss); + public static String tspatial_out(Pointer temp, int maxdd) { + var _result = _meos_c.tspatial_out(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_int_set(int i, Pointer s) { - var _result = _meos_a.left_int_set(i, s); + public static Pointer tgeo_from_base_temp(Pointer gs, Pointer temp) { + var _result = _meos_c.tgeo_from_base_temp(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_int_span(int i, Pointer s) { - var _result = _meos_a.left_int_span(i, s); + public static Pointer tgeoinst_make(Pointer gs, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.tgeoinst_make(gs, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_int_spanset(int i, Pointer ss) { - var _result = _meos_a.left_int_spanset(i, ss); + public static Pointer tgeoseq_from_base_tstzset(Pointer gs, Pointer s) { + var _result = _meos_c.tgeoseq_from_base_tstzset(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_set_bigint(Pointer s, long i) { - var _result = _meos_a.left_set_bigint(s, i); + public static Pointer tgeoseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { + var _result = _meos_c.tgeoseq_from_base_tstzspan(gs, s, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_set_float(Pointer s, double d) { - var _result = _meos_a.left_set_float(s, d); + public static Pointer tgeoseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { + var _result = _meos_c.tgeoseqset_from_base_tstzspanset(gs, ss, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_set_int(Pointer s, int i) { - var _result = _meos_a.left_set_int(s, i); + public static Pointer tpoint_from_base_temp(Pointer gs, Pointer temp) { + var _result = _meos_c.tpoint_from_base_temp(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.left_set_set(s1, s2); + public static Pointer tpointinst_make(Pointer gs, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.tpointinst_make(gs, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.left_set_text(s, txt); + public static Pointer tpointseq_from_base_tstzset(Pointer gs, Pointer s) { + var _result = _meos_c.tpointseq_from_base_tstzset(gs, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_span_bigint(Pointer s, long i) { - var _result = _meos_a.left_span_bigint(s, i); + public static Pointer tpointseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { + var _result = _meos_c.tpointseq_from_base_tstzspan(gs, s, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_span_float(Pointer s, double d) { - var _result = _meos_a.left_span_float(s, d); + public static Pointer tpointseq_make_coords(Pointer xcoords, Pointer ycoords, Pointer zcoords, Pointer times, int count, int srid, boolean geodetic, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { + var _result = _meos_c.tpointseq_make_coords(xcoords, ycoords, zcoords, times, count, srid, geodetic, lower_inc, upper_inc, interp, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_span_int(Pointer s, int i) { - var _result = _meos_a.left_span_int(s, i); + public static Pointer tpointseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { + var _result = _meos_c.tpointseqset_from_base_tstzspanset(gs, ss, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.left_span_span(s1, s2); + public static Pointer box3d_to_stbox(Pointer box) { + var _result = _meos_c.box3d_to_stbox(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.left_span_spanset(s, ss); + public static Pointer gbox_to_stbox(Pointer box) { + var _result = _meos_c.gbox_to_stbox(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.left_spanset_bigint(ss, i); + public static Pointer geomeas_to_tpoint(Pointer gs) { + var _result = _meos_c.geomeas_to_tpoint(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_spanset_float(Pointer ss, double d) { - var _result = _meos_a.left_spanset_float(ss, d); + public static Pointer tgeogpoint_to_tgeography(Pointer temp) { + var _result = _meos_c.tgeogpoint_to_tgeography(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_spanset_int(Pointer ss, int i) { - var _result = _meos_a.left_spanset_int(ss, i); + public static Pointer tgeography_to_tgeogpoint(Pointer temp) { + var _result = _meos_c.tgeography_to_tgeogpoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.left_spanset_span(ss, s); + public static Pointer tgeography_to_tgeometry(Pointer temp) { + var _result = _meos_c.tgeography_to_tgeometry(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.left_spanset_spanset(ss1, ss2); + public static Pointer tgeometry_to_tgeography(Pointer temp) { + var _result = _meos_c.tgeometry_to_tgeography(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.left_text_set(txt, s); + public static Pointer tgeometry_to_tgeompoint(Pointer temp) { + var _result = _meos_c.tgeometry_to_tgeompoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_date_set(int d, Pointer s) { - var _result = _meos_a.overafter_date_set(d, s); + public static Pointer tgeompoint_to_tgeometry(Pointer temp) { + var _result = _meos_c.tgeompoint_to_tgeometry(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_date_span(int d, Pointer s) { - var _result = _meos_a.overafter_date_span(d, s); + public static boolean tpoint_as_mvtgeom(Pointer temp, Pointer bounds, int extent, int buffer, boolean clip_geom, Pointer gsarr, Pointer timesarr, Pointer count) { + var _result = _meos_c.tpoint_as_mvtgeom(temp, bounds, extent, buffer, clip_geom, gsarr, timesarr, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_date_spanset(int d, Pointer ss) { - var _result = _meos_b.overafter_date_spanset(d, ss); + public static Pointer tpoint_tfloat_to_geomeas(Pointer tpoint, Pointer measure, boolean segmentize) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.tpoint_tfloat_to_geomeas(tpoint, measure, segmentize, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overafter_set_date(Pointer s, int d) { - var _result = _meos_b.overafter_set_date(s, d); + public static Pointer tspatial_to_stbox(Pointer temp) { + var _result = _meos_c.tspatial_to_stbox(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_set_timestamptz(s, t_new); + public static Pointer bearing_point_point(Pointer gs1, Pointer gs2) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.bearing_point_point(gs1, gs2, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean overafter_span_date(Pointer s, int d) { - var _result = _meos_b.overafter_span_date(s, d); + public static Pointer bearing_tpoint_point(Pointer temp, Pointer gs, boolean invert) { + var _result = _meos_c.bearing_tpoint_point(temp, gs, invert); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_span_timestamptz(s, t_new); + public static Pointer bearing_tpoint_tpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_c.bearing_tpoint_tpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_spanset_date(Pointer ss, int d) { - var _result = _meos_b.overafter_spanset_date(ss, d); + public static Pointer tgeo_centroid(Pointer temp) { + var _result = _meos_c.tgeo_centroid(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_spanset_timestamptz(ss, t_new); + public static Pointer tgeo_convex_hull(Pointer temp) { + var _result = _meos_c.tgeo_convex_hull(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_timestamptz_set(t_new, s); + public static Pointer tgeo_end_value(Pointer temp) { + var _result = _meos_c.tgeo_end_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_timestamptz_span(t_new, s); + public static Pointer tgeo_start_value(Pointer temp) { + var _result = _meos_c.tgeo_start_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overafter_timestamptz_spanset(t_new, ss); + public static Pointer tgeo_traversed_area(Pointer temp, boolean unary_union) { + var _result = _meos_c.tgeo_traversed_area(temp, unary_union); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_date_set(int d, Pointer s) { - var _result = _meos_b.overbefore_date_set(d, s); + public static boolean tgeo_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.tgeo_value_at_timestamptz(temp, t_new, strict, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_date_span(int d, Pointer s) { - var _result = _meos_b.overbefore_date_span(d, s); + public static Pointer tgeo_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.tgeo_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overbefore_date_spanset(int d, Pointer ss) { - var _result = _meos_b.overbefore_date_spanset(d, ss); + public static Pointer tgeo_values(Pointer temp, Pointer count) { + var _result = _meos_c.tgeo_values(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_set_date(Pointer s, int d) { - var _result = _meos_b.overbefore_set_date(s, d); + public static Pointer tpoint_angular_difference(Pointer temp) { + var _result = _meos_c.tpoint_angular_difference(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_set_timestamptz(s, t_new); + public static Pointer tpoint_azimuth(Pointer temp) { + var _result = _meos_c.tpoint_azimuth(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_span_date(Pointer s, int d) { - var _result = _meos_b.overbefore_span_date(s, d); + public static Pointer tpoint_cumulative_length(Pointer temp) { + var _result = _meos_c.tpoint_cumulative_length(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_span_timestamptz(s, t_new); + public static Pointer tpoint_direction(Pointer temp) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Double.BYTES); + out = _meos_c.tpoint_direction(temp, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean overbefore_spanset_date(Pointer ss, int d) { - var _result = _meos_b.overbefore_spanset_date(ss, d); + public static Pointer tpoint_get_x(Pointer temp) { + var _result = _meos_c.tpoint_get_x(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_spanset_timestamptz(ss, t_new); + public static Pointer tpoint_get_y(Pointer temp) { + var _result = _meos_c.tpoint_get_y(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_timestamptz_set(t_new, s); + public static Pointer tpoint_get_z(Pointer temp) { + var _result = _meos_c.tpoint_get_z(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_timestamptz_span(t_new, s); + public static boolean tpoint_is_simple(Pointer temp) { + var _result = _meos_c.tpoint_is_simple(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.overbefore_timestamptz_spanset(t_new, ss); + public static double tpoint_length(Pointer temp) { + var _result = _meos_c.tpoint_length(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_bigint_set(long i, Pointer s) { - var _result = _meos_b.overleft_bigint_set(i, s); + public static Pointer tpoint_speed(Pointer temp) { + var _result = _meos_c.tpoint_speed(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_bigint_span(long i, Pointer s) { - var _result = _meos_b.overleft_bigint_span(i, s); + public static Pointer tpoint_trajectory(Pointer temp, boolean unary_union) { + var _result = _meos_c.tpoint_trajectory(temp, unary_union); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_bigint_spanset(long i, Pointer ss) { - var _result = _meos_b.overleft_bigint_spanset(i, ss); + public static Pointer tpoint_twcentroid(Pointer temp) { + var _result = _meos_c.tpoint_twcentroid(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_float_set(double d, Pointer s) { - var _result = _meos_b.overleft_float_set(d, s); + public static Pointer tgeo_affine(Pointer temp, Pointer a) { + var _result = _meos_c.tgeo_affine(temp, a); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_float_span(double d, Pointer s) { - var _result = _meos_b.overleft_float_span(d, s); + public static Pointer tgeo_scale(Pointer temp, Pointer scale, Pointer sorigin) { + var _result = _meos_c.tgeo_scale(temp, scale, sorigin); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_float_spanset(double d, Pointer ss) { - var _result = _meos_b.overleft_float_spanset(d, ss); + public static Pointer tpoint_make_simple(Pointer temp, Pointer count) { + var _result = _meos_c.tpoint_make_simple(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_int_set(int i, Pointer s) { - var _result = _meos_b.overleft_int_set(i, s); + public static int tspatial_srid(Pointer temp) { + var _result = _meos_c.tspatial_srid(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_int_span(int i, Pointer s) { - var _result = _meos_b.overleft_int_span(i, s); + public static Pointer tspatial_set_srid(Pointer temp, int srid) { + var _result = _meos_c.tspatial_set_srid(temp, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_int_spanset(int i, Pointer ss) { - var _result = _meos_b.overleft_int_spanset(i, ss); + public static Pointer tspatial_transform(Pointer temp, int srid) { + var _result = _meos_c.tspatial_transform(temp, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_set_bigint(Pointer s, long i) { - var _result = _meos_b.overleft_set_bigint(s, i); + public static Pointer tspatial_transform_pipeline(Pointer temp, String pipelinestr, int srid, boolean is_forward) { + var _result = _meos_c.tspatial_transform_pipeline(temp, pipelinestr, srid, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_set_float(Pointer s, double d) { - var _result = _meos_b.overleft_set_float(s, d); + public static Pointer tgeo_at_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tgeo_at_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_set_int(Pointer s, int i) { - var _result = _meos_b.overleft_set_int(s, i); + public static Pointer tgeo_at_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_c.tgeo_at_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.overleft_set_set(s1, s2); + public static Pointer tgeo_at_value(Pointer temp, Pointer gs) { + var _result = _meos_c.tgeo_at_value(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.overleft_set_text(s, txt); + public static Pointer tgeo_minus_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tgeo_minus_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_span_bigint(Pointer s, long i) { - var _result = _meos_b.overleft_span_bigint(s, i); + public static Pointer tgeo_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_c.tgeo_minus_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_span_float(Pointer s, double d) { - var _result = _meos_b.overleft_span_float(s, d); + public static Pointer tgeo_minus_value(Pointer temp, Pointer gs) { + var _result = _meos_c.tgeo_minus_value(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_span_int(Pointer s, int i) { - var _result = _meos_b.overleft_span_int(s, i); + public static Pointer tpoint_at_elevation(Pointer temp, Pointer s) { + var _result = _meos_c.tpoint_at_elevation(temp, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.overleft_span_span(s1, s2); + public static Pointer tpoint_at_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tpoint_at_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.overleft_span_spanset(s, ss); + public static Pointer tpoint_at_value(Pointer temp, Pointer gs) { + var _result = _meos_c.tpoint_at_value(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.overleft_spanset_bigint(ss, i); + public static Pointer tpoint_minus_elevation(Pointer temp, Pointer s) { + var _result = _meos_c.tpoint_minus_elevation(temp, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_spanset_float(Pointer ss, double d) { - var _result = _meos_b.overleft_spanset_float(ss, d); + public static Pointer tpoint_minus_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tpoint_minus_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_spanset_int(Pointer ss, int i) { - var _result = _meos_b.overleft_spanset_int(ss, i); + public static Pointer tpoint_minus_value(Pointer temp, Pointer gs) { + var _result = _meos_c.tpoint_minus_value(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.overleft_spanset_span(ss, s); + public static int always_eq_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.always_eq_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.overleft_spanset_spanset(ss1, ss2); + public static int always_eq_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.always_eq_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.overleft_text_set(txt, s); + public static int always_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_eq_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_bigint_set(long i, Pointer s) { - var _result = _meos_b.overright_bigint_set(i, s); + public static int always_ne_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.always_ne_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_bigint_span(long i, Pointer s) { - var _result = _meos_b.overright_bigint_span(i, s); + public static int always_ne_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.always_ne_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_bigint_spanset(long i, Pointer ss) { - var _result = _meos_b.overright_bigint_spanset(i, ss); + public static int always_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_ne_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_float_set(double d, Pointer s) { - var _result = _meos_b.overright_float_set(d, s); + public static int ever_eq_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.ever_eq_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_float_span(double d, Pointer s) { - var _result = _meos_b.overright_float_span(d, s); + public static int ever_eq_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ever_eq_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_float_spanset(double d, Pointer ss) { - var _result = _meos_b.overright_float_spanset(d, ss); + public static int ever_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_eq_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_int_set(int i, Pointer s) { - var _result = _meos_b.overright_int_set(i, s); + public static int ever_ne_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.ever_ne_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_int_span(int i, Pointer s) { - var _result = _meos_b.overright_int_span(i, s); + public static int ever_ne_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ever_ne_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_int_spanset(int i, Pointer ss) { - var _result = _meos_b.overright_int_spanset(i, ss); + public static int ever_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_ne_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_set_bigint(Pointer s, long i) { - var _result = _meos_b.overright_set_bigint(s, i); + public static Pointer teq_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.teq_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_set_float(Pointer s, double d) { - var _result = _meos_b.overright_set_float(s, d); + public static Pointer teq_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.teq_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_set_int(Pointer s, int i) { - var _result = _meos_b.overright_set_int(s, i); + public static Pointer tne_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.tne_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.overright_set_set(s1, s2); + public static Pointer tne_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tne_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.overright_set_text(s, txt); + public static Pointer tgeo_stboxes(Pointer temp, Pointer count) { + var _result = _meos_c.tgeo_stboxes(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_span_bigint(Pointer s, long i) { - var _result = _meos_b.overright_span_bigint(s, i); + public static Pointer tgeo_space_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer count) { + var _result = _meos_c.tgeo_space_boxes(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_span_float(Pointer s, double d) { - var _result = _meos_b.overright_span_float(s, d); + public static Pointer tgeo_space_time_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.tgeo_space_time_boxes(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_span_int(Pointer s, int i) { - var _result = _meos_b.overright_span_int(s, i); + public static Pointer tgeo_split_each_n_stboxes(Pointer temp, int elem_count, Pointer count) { + var _result = _meos_c.tgeo_split_each_n_stboxes(temp, elem_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.overright_span_span(s1, s2); + public static Pointer tgeo_split_n_stboxes(Pointer temp, int box_count, Pointer count) { + var _result = _meos_c.tgeo_split_n_stboxes(temp, box_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.overright_span_spanset(s, ss); + public static boolean adjacent_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.adjacent_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.overright_spanset_bigint(ss, i); + public static boolean adjacent_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.adjacent_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_spanset_float(Pointer ss, double d) { - var _result = _meos_b.overright_spanset_float(ss, d); + public static boolean adjacent_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.adjacent_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_spanset_int(Pointer ss, int i) { - var _result = _meos_b.overright_spanset_int(ss, i); + public static boolean contained_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.contained_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.overright_spanset_span(ss, s); + public static boolean contained_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.contained_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.overright_spanset_spanset(ss1, ss2); + public static boolean contained_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.contained_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.overright_text_set(txt, s); + public static boolean contains_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.contains_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_bigint_set(long i, Pointer s) { - var _result = _meos_b.right_bigint_set(i, s); + public static boolean contains_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.contains_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_bigint_span(long i, Pointer s) { - var _result = _meos_b.right_bigint_span(i, s); + public static boolean contains_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.contains_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_bigint_spanset(long i, Pointer ss) { - var _result = _meos_b.right_bigint_spanset(i, ss); + public static boolean overlaps_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overlaps_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_float_set(double d, Pointer s) { - var _result = _meos_b.right_float_set(d, s); + public static boolean overlaps_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overlaps_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_float_span(double d, Pointer s) { - var _result = _meos_b.right_float_span(d, s); + public static boolean overlaps_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overlaps_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_float_spanset(double d, Pointer ss) { - var _result = _meos_b.right_float_spanset(d, ss); + public static boolean same_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.same_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_int_set(int i, Pointer s) { - var _result = _meos_b.right_int_set(i, s); + public static boolean same_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.same_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_int_span(int i, Pointer s) { - var _result = _meos_b.right_int_span(i, s); + public static boolean same_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.same_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_int_spanset(int i, Pointer ss) { - var _result = _meos_b.right_int_spanset(i, ss); + public static boolean above_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.above_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_set_bigint(Pointer s, long i) { - var _result = _meos_b.right_set_bigint(s, i); + public static boolean above_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.above_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_set_float(Pointer s, double d) { - var _result = _meos_b.right_set_float(s, d); + public static boolean above_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.above_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_set_int(Pointer s, int i) { - var _result = _meos_b.right_set_int(s, i); + public static boolean after_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.after_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.right_set_set(s1, s2); + public static boolean after_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.after_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.right_set_text(s, txt); + public static boolean after_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.after_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_span_bigint(Pointer s, long i) { - var _result = _meos_b.right_span_bigint(s, i); + public static boolean back_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.back_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_span_float(Pointer s, double d) { - var _result = _meos_b.right_span_float(s, d); + public static boolean back_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.back_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_span_int(Pointer s, int i) { - var _result = _meos_b.right_span_int(s, i); + public static boolean back_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.back_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.right_span_span(s1, s2); + public static boolean before_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.before_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.right_span_spanset(s, ss); + public static boolean before_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.before_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.right_spanset_bigint(ss, i); + public static boolean before_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.before_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_spanset_float(Pointer ss, double d) { - var _result = _meos_b.right_spanset_float(ss, d); + public static boolean below_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.below_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_spanset_int(Pointer ss, int i) { - var _result = _meos_b.right_spanset_int(ss, i); + public static boolean below_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.below_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.right_spanset_span(ss, s); + public static boolean below_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.below_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.right_spanset_spanset(ss1, ss2); + public static boolean front_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.front_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.right_text_set(txt, s); + public static boolean front_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.front_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_bigint_set(long i, Pointer s) { - var _result = _meos_b.intersection_bigint_set(i, s); + public static boolean front_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.front_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_date_set(int d, Pointer s) { - var _result = _meos_b.intersection_date_set(d, s); + public static boolean left_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.left_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_float_set(double d, Pointer s) { - var _result = _meos_b.intersection_float_set(d, s); + public static boolean left_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.left_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_int_set(int i, Pointer s) { - var _result = _meos_b.intersection_int_set(i, s); + public static boolean left_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.left_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_bigint(Pointer s, long i) { - var _result = _meos_b.intersection_set_bigint(s, i); + public static boolean overabove_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overabove_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_date(Pointer s, int d) { - var _result = _meos_b.intersection_set_date(s, d); + public static boolean overabove_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overabove_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_float(Pointer s, double d) { - var _result = _meos_b.intersection_set_float(s, d); + public static boolean overabove_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overabove_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_int(Pointer s, int i) { - var _result = _meos_b.intersection_set_int(s, i); + public static boolean overafter_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overafter_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.intersection_set_set(s1, s2); + public static boolean overafter_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overafter_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.intersection_set_text(s, txt); + public static boolean overafter_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overafter_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.intersection_set_timestamptz(s, t_new); + public static boolean overback_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overback_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_bigint(Pointer s, long i) { - var _result = _meos_b.intersection_span_bigint(s, i); + public static boolean overback_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overback_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_date(Pointer s, int d) { - var _result = _meos_b.intersection_span_date(s, d); + public static boolean overback_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overback_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_float(Pointer s, double d) { - var _result = _meos_b.intersection_span_float(s, d); + public static boolean overbefore_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overbefore_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_int(Pointer s, int i) { - var _result = _meos_b.intersection_span_int(s, i); + public static boolean overbefore_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overbefore_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.intersection_span_span(s1, s2); + public static boolean overbefore_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overbefore_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.intersection_span_spanset(s, ss); + public static boolean overbelow_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overbelow_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.intersection_span_timestamptz(s, t_new); + public static boolean overbelow_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overbelow_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.intersection_spanset_bigint(ss, i); + public static boolean overbelow_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overbelow_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_date(Pointer ss, int d) { - var _result = _meos_b.intersection_spanset_date(ss, d); + public static boolean overfront_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overfront_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_float(Pointer ss, double d) { - var _result = _meos_b.intersection_spanset_float(ss, d); + public static boolean overfront_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overfront_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_int(Pointer ss, int i) { - var _result = _meos_b.intersection_spanset_int(ss, i); + public static boolean overfront_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overfront_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.intersection_spanset_span(ss, s); + public static boolean overleft_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overleft_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.intersection_spanset_spanset(ss1, ss2); + public static boolean overleft_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overleft_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.intersection_spanset_timestamptz(ss, t_new); + public static boolean overleft_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overleft_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.intersection_text_set(txt, s); + public static boolean overright_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.overright_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.intersection_timestamptz_set(t_new, s); + public static boolean overright_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.overright_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_bigint_set(long i, Pointer s) { - var _result = _meos_b.minus_bigint_set(i, s); + public static boolean overright_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.overright_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_bigint_span(long i, Pointer s) { - var _result = _meos_b.minus_bigint_span(i, s); + public static boolean right_stbox_tspatial(Pointer box, Pointer temp) { + var _result = _meos_c.right_stbox_tspatial(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_bigint_spanset(long i, Pointer ss) { - var _result = _meos_b.minus_bigint_spanset(i, ss); + public static boolean right_tspatial_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.right_tspatial_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_date_set(int d, Pointer s) { - var _result = _meos_b.minus_date_set(d, s); + public static boolean right_tspatial_tspatial(Pointer temp1, Pointer temp2) { + var _result = _meos_c.right_tspatial_tspatial(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_date_span(int d, Pointer s) { - var _result = _meos_b.minus_date_span(d, s); + public static int acontains_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.acontains_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_date_spanset(int d, Pointer ss) { - var _result = _meos_b.minus_date_spanset(d, ss); + public static int acontains_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.acontains_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_float_set(double d, Pointer s) { - var _result = _meos_b.minus_float_set(d, s); + public static int acontains_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.acontains_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_float_span(double d, Pointer s) { - var _result = _meos_b.minus_float_span(d, s); + public static int adisjoint_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.adisjoint_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_float_spanset(double d, Pointer ss) { - var _result = _meos_b.minus_float_spanset(d, ss); + public static int adisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.adisjoint_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_int_set(int i, Pointer s) { - var _result = _meos_b.minus_int_set(i, s); + public static int adwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.adwithin_tgeo_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_int_span(int i, Pointer s) { - var _result = _meos_b.minus_int_span(i, s); + public static int adwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.adwithin_tgeo_tgeo(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_int_spanset(int i, Pointer ss) { - var _result = _meos_b.minus_int_spanset(i, ss); + public static int aintersects_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.aintersects_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_bigint(Pointer s, long i) { - var _result = _meos_b.minus_set_bigint(s, i); + public static int aintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.aintersects_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_date(Pointer s, int d) { - var _result = _meos_b.minus_set_date(s, d); + public static int atouches_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.atouches_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_float(Pointer s, double d) { - var _result = _meos_b.minus_set_float(s, d); + public static int atouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.atouches_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_int(Pointer s, int i) { - var _result = _meos_b.minus_set_int(s, i); + public static int atouches_tpoint_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.atouches_tpoint_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.minus_set_set(s1, s2); + public static int econtains_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.econtains_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.minus_set_text(s, txt); + public static int econtains_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.econtains_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_set_timestamptz(s, t_new); + public static int econtains_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.econtains_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_bigint(Pointer s, long i) { - var _result = _meos_b.minus_span_bigint(s, i); + public static int ecovers_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.ecovers_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_date(Pointer s, int d) { - var _result = _meos_b.minus_span_date(s, d); + public static int ecovers_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ecovers_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_float(Pointer s, double d) { - var _result = _meos_b.minus_span_float(s, d); + public static int ecovers_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ecovers_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_int(Pointer s, int i) { - var _result = _meos_b.minus_span_int(s, i); + public static int edisjoint_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.edisjoint_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.minus_span_span(s1, s2); + public static int edisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.edisjoint_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.minus_span_spanset(s, ss); + public static int edwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.edwithin_tgeo_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_span_timestamptz(s, t_new); + public static int edwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.edwithin_tgeo_tgeo(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.minus_spanset_bigint(ss, i); + public static int eintersects_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.eintersects_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_date(Pointer ss, int d) { - var _result = _meos_b.minus_spanset_date(ss, d); + public static int eintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.eintersects_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_float(Pointer ss, double d) { - var _result = _meos_b.minus_spanset_float(ss, d); + public static int etouches_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.etouches_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_int(Pointer ss, int i) { - var _result = _meos_b.minus_spanset_int(ss, i); + public static int etouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.etouches_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.minus_spanset_span(ss, s); + public static int etouches_tpoint_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.etouches_tpoint_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.minus_spanset_spanset(ss1, ss2); + public static Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.tcontains_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_spanset_timestamptz(ss, t_new); + public static Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tcontains_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.minus_text_set(txt, s); + public static Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tcontains_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_timestamptz_set(t_new, s); + public static Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.tcovers_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_timestamptz_span(t_new, s); + public static Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tcovers_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.minus_timestamptz_spanset(t_new, ss); + public static Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tcovers_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_bigint_set(long i, Pointer s) { - var _result = _meos_b.union_bigint_set(i, s); + public static Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.tdisjoint_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_bigint_span(Pointer s, long i) { - var _result = _meos_b.union_bigint_span(s, i); + public static Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tdisjoint_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_bigint_spanset(long i, Pointer ss) { - var _result = _meos_b.union_bigint_spanset(i, ss); + public static Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tdisjoint_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_date_set(int d, Pointer s) { - var _result = _meos_b.union_date_set(d, s); + public static Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist) { + var _result = _meos_c.tdwithin_geo_tgeo(gs, temp, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_date_span(Pointer s, int d) { - var _result = _meos_b.union_date_span(s, d); + public static Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.tdwithin_tgeo_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_date_spanset(int d, Pointer ss) { - var _result = _meos_b.union_date_spanset(d, ss); + public static Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.tdwithin_tgeo_tgeo(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_float_set(double d, Pointer s) { - var _result = _meos_b.union_float_set(d, s); + public static Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.tintersects_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_float_span(Pointer s, double d) { - var _result = _meos_b.union_float_span(s, d); + public static Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tintersects_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_float_spanset(double d, Pointer ss) { - var _result = _meos_b.union_float_spanset(d, ss); + public static Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tintersects_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_int_set(int i, Pointer s) { - var _result = _meos_b.union_int_set(i, s); + public static Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.ttouches_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_int_span(int i, Pointer s) { - var _result = _meos_b.union_int_span(i, s); + public static Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ttouches_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_int_spanset(int i, Pointer ss) { - var _result = _meos_b.union_int_spanset(i, ss); + public static Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ttouches_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_bigint(Pointer s, long i) { - var _result = _meos_b.union_set_bigint(s, i); + public static Pointer tdistance_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tdistance_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_date(Pointer s, int d) { - var _result = _meos_b.union_set_date(s, d); + public static Pointer tdistance_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tdistance_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_float(Pointer s, double d) { - var _result = _meos_b.union_set_float(s, d); + public static double nad_stbox_geo(Pointer box, Pointer gs) { + var _result = _meos_c.nad_stbox_geo(box, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_int(Pointer s, int i) { - var _result = _meos_b.union_set_int(s, i); + public static double nad_stbox_stbox(Pointer box1, Pointer box2) { + var _result = _meos_c.nad_stbox_stbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_set(Pointer s1, Pointer s2) { - var _result = _meos_b.union_set_set(s1, s2); + public static double nad_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.nad_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_text(Pointer s, Pointer txt) { - var _result = _meos_b.union_set_text(s, txt); + public static double nad_tgeo_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.nad_tgeo_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_set_timestamptz(s, t_new); + public static double nad_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.nad_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_bigint(Pointer s, long i) { - var _result = _meos_b.union_span_bigint(s, i); + public static Pointer nai_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.nai_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_date(Pointer s, int d) { - var _result = _meos_b.union_span_date(s, d); + public static Pointer nai_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.nai_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_float(Pointer s, double d) { - var _result = _meos_b.union_span_float(s, d); + public static Pointer shortestline_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.shortestline_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_int(Pointer s, int i) { - var _result = _meos_b.union_span_int(s, i); + public static Pointer shortestline_tgeo_tgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_c.shortestline_tgeo_tgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_span(Pointer s1, Pointer s2) { - var _result = _meos_b.union_span_span(s1, s2); + public static double tgeoarr_tgeoarr_mindist(Pointer arr1, int count1, Pointer arr2, int count2) { + var _result = _meos_c.tgeoarr_tgeoarr_mindist(arr1, count1, arr2, count2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_b.union_span_spanset(s, ss); + public static double mindistance_tgeo_tgeo(Pointer temp1, Pointer temp2, double threshold) { + var _result = _meos_c.mindistance_tgeo_tgeo(temp1, temp2, threshold); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_span_timestamptz(s, t_new); + public static Pointer tpoint_tcentroid_finalfn(Pointer state) { + var _result = _meos_c.tpoint_tcentroid_finalfn(state); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.union_spanset_bigint(ss, i); + public static Pointer tpoint_tcentroid_transfn(Pointer state, Pointer temp) { + var _result = _meos_c.tpoint_tcentroid_transfn(state, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_date(Pointer ss, int d) { - var _result = _meos_b.union_spanset_date(ss, d); + public static Pointer tspatial_extent_transfn(Pointer box, Pointer temp) { + var _result = _meos_c.tspatial_extent_transfn(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_float(Pointer ss, double d) { - var _result = _meos_b.union_spanset_float(ss, d); + public static Pointer stbox_get_space_tile(Pointer point, double xsize, double ysize, double zsize, Pointer sorigin) { + var _result = _meos_c.stbox_get_space_tile(point, xsize, ysize, zsize, sorigin); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_int(Pointer ss, int i) { - var _result = _meos_b.union_spanset_int(ss, i); + public static Pointer stbox_get_space_time_tile(Pointer point, OffsetDateTime t, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin) { + var t_new = t.toEpochSecond(); + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.stbox_get_space_time_tile(point, t_new, xsize, ysize, zsize, duration, sorigin, torigin_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_b.union_spanset_span(ss, s); + public static Pointer stbox_get_time_tile(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { + var t_new = t.toEpochSecond(); + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.stbox_get_time_tile(t_new, duration, torigin_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.union_spanset_spanset(ss1, ss2); + public static Pointer stbox_space_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer sorigin, boolean border_inc, Pointer count) { + var _result = _meos_c.stbox_space_tiles(bounds, xsize, ysize, zsize, sorigin, border_inc, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_spanset_timestamptz(ss, t_new); + public static Pointer stbox_space_time_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean border_inc, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.stbox_space_time_tiles(bounds, xsize, ysize, zsize, duration, sorigin, torigin_new, border_inc, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_text_set(Pointer txt, Pointer s) { - var _result = _meos_b.union_text_set(txt, s); + public static Pointer stbox_time_tiles(Pointer bounds, Pointer duration, OffsetDateTime torigin, boolean border_inc, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.stbox_time_tiles(bounds, duration, torigin_new, border_inc, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_timestamptz_set(t_new, s); + public static Pointer tgeo_space_split(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer count) { + var _result = _meos_c.tgeo_space_split(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, space_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_timestamptz_span(t_new, s); + public static Pointer tgeo_space_time_split(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer time_bins, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_c.tgeo_space_time_split(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, space_bins, time_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.union_timestamptz_spanset(t_new, ss); + public static Pointer geo_cluster_kmeans(Pointer geoms, int ngeoms, int k) { + var _result = _meos_c.geo_cluster_kmeans(geoms, ngeoms, k); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_bigintset_bigintset(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_bigintset_bigintset(s1, s2); + public static Pointer geo_cluster_dbscan(Pointer geoms, int ngeoms, double tolerance, int minpoints, Pointer count) { + var _result = _meos_c.geo_cluster_dbscan(geoms, ngeoms, tolerance, minpoints, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_bigintspan_bigintspan(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_bigintspan_bigintspan(s1, s2); + public static Pointer geo_cluster_intersecting(Pointer geoms, int ngeoms, Pointer count) { + var _result = _meos_c.geo_cluster_intersecting(geoms, ngeoms, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_bigintspanset_bigintspan(Pointer ss, Pointer s) { - var _result = _meos_b.distance_bigintspanset_bigintspan(ss, s); + public static Pointer geo_cluster_within(Pointer geoms, int ngeoms, double tolerance, Pointer count) { + var _result = _meos_c.geo_cluster_within(geoms, ngeoms, tolerance, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_bigintspanset_bigintspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.distance_bigintspanset_bigintspanset(ss1, ss2); + public static int acovers_geo_tgeo(Pointer gs, Pointer temp) { + var _result = _meos_c.acovers_geo_tgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_dateset_dateset(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_dateset_dateset(s1, s2); + public static int acovers_tgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.acovers_tgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_datespan_datespan(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_datespan_datespan(s1, s2); + public static String cbuffer_as_ewkt(Pointer cb, int maxdd) { + var _result = _meos_c.cbuffer_as_ewkt(cb, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_datespanset_datespan(Pointer ss, Pointer s) { - var _result = _meos_b.distance_datespanset_datespan(ss, s); + public static String cbuffer_as_hexwkb(Pointer cb, byte variant, Pointer size) { + var _result = _meos_c.cbuffer_as_hexwkb(cb, variant, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_datespanset_datespanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.distance_datespanset_datespanset(ss1, ss2); + public static String cbuffer_as_text(Pointer cb, int maxdd) { + var _result = _meos_c.cbuffer_as_text(cb, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_floatset_floatset(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_floatset_floatset(s1, s2); + public static Pointer cbuffer_as_wkb(Pointer cb, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_c.cbuffer_as_wkb(cb, variant, size_out); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_floatspan_floatspan(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_floatspan_floatspan(s1, s2); + public static Pointer cbuffer_from_hexwkb(String hexwkb) { + var _result = _meos_c.cbuffer_from_hexwkb(hexwkb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_floatspanset_floatspan(Pointer ss, Pointer s) { - var _result = _meos_b.distance_floatspanset_floatspan(ss, s); + public static Pointer cbuffer_from_wkb(Pointer wkb, long size) { + var _result = _meos_c.cbuffer_from_wkb(wkb, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_floatspanset_floatspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.distance_floatspanset_floatspanset(ss1, ss2); + public static Pointer cbuffer_in(String str) { + var _result = _meos_c.cbuffer_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_intset_intset(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_intset_intset(s1, s2); + public static String cbuffer_out(Pointer cb, int maxdd) { + var _result = _meos_c.cbuffer_out(cb, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_intspan_intspan(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_intspan_intspan(s1, s2); + public static Pointer cbuffer_copy(Pointer cb) { + var _result = _meos_c.cbuffer_copy(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_intspanset_intspan(Pointer ss, Pointer s) { - var _result = _meos_b.distance_intspanset_intspan(ss, s); + public static Pointer cbuffer_make(Pointer point, double radius) { + var _result = _meos_c.cbuffer_make(point, radius); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_intspanset_intspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.distance_intspanset_intspanset(ss1, ss2); + public static Pointer cbuffer_to_geom(Pointer cb) { + var _result = _meos_c.cbuffer_to_geom(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_set_bigint(Pointer s, long i) { - var _result = _meos_b.distance_set_bigint(s, i); + public static Pointer cbuffer_to_stbox(Pointer cb) { + var _result = _meos_c.cbuffer_to_stbox(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_set_date(Pointer s, int d) { - var _result = _meos_b.distance_set_date(s, d); + public static Pointer cbufferarr_to_geom(Pointer cbarr, int count) { + var _result = _meos_c.cbufferarr_to_geom(cbarr, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_set_float(Pointer s, double d) { - var _result = _meos_b.distance_set_float(s, d); + public static Pointer geom_to_cbuffer(Pointer gs) { + var _result = _meos_c.geom_to_cbuffer(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_set_int(Pointer s, int i) { - var _result = _meos_b.distance_set_int(s, i); + public static int cbuffer_hash(Pointer cb) { + var _result = _meos_c.cbuffer_hash(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.distance_set_timestamptz(s, t_new); + public static long cbuffer_hash_extended(Pointer cb, long seed) { + var _result = _meos_c.cbuffer_hash_extended(cb, seed); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long distance_span_bigint(Pointer s, long i) { - var _result = _meos_b.distance_span_bigint(s, i); + public static Pointer cbuffer_point(Pointer cb) { + var _result = _meos_c.cbuffer_point(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_span_date(Pointer s, int d) { - var _result = _meos_b.distance_span_date(s, d); + public static double cbuffer_radius(Pointer cb) { + var _result = _meos_c.cbuffer_radius(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_span_float(Pointer s, double d) { - var _result = _meos_b.distance_span_float(s, d); + public static Pointer cbuffer_round(Pointer cb, int maxdd) { + var _result = _meos_c.cbuffer_round(cb, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_span_int(Pointer s, int i) { - var _result = _meos_b.distance_span_int(s, i); + public static Pointer cbufferarr_round(Pointer cbarr, int count, int maxdd) { + var _result = _meos_c.cbufferarr_round(cbarr, count, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.distance_span_timestamptz(s, t_new); + public static void cbuffer_set_srid(Pointer cb, int srid) { + _meos_c.cbuffer_set_srid(cb, srid); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static long distance_spanset_bigint(Pointer ss, long i) { - var _result = _meos_b.distance_spanset_bigint(ss, i); + public static int cbuffer_srid(Pointer cb) { + var _result = _meos_c.cbuffer_srid(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_spanset_date(Pointer ss, int d) { - var _result = _meos_b.distance_spanset_date(ss, d); + public static Pointer cbuffer_transform(Pointer cb, int srid) { + var _result = _meos_c.cbuffer_transform(cb, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_spanset_float(Pointer ss, double d) { - var _result = _meos_b.distance_spanset_float(ss, d); + public static Pointer cbuffer_transform_pipeline(Pointer cb, String pipelinestr, int srid, boolean is_forward) { + var _result = _meos_c.cbuffer_transform_pipeline(cb, pipelinestr, srid, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int distance_spanset_int(Pointer ss, int i) { - var _result = _meos_b.distance_spanset_int(ss, i); + public static int contains_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.contains_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.distance_spanset_timestamptz(ss, t_new); + public static int covers_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.covers_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_tstzset_tstzset(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_tstzset_tstzset(s1, s2); + public static int disjoint_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.disjoint_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_tstzspan_tstzspan(Pointer s1, Pointer s2) { - var _result = _meos_b.distance_tstzspan_tstzspan(s1, s2); + public static int dwithin_cbuffer_cbuffer(Pointer cb1, Pointer cb2, double dist) { + var _result = _meos_c.dwithin_cbuffer_cbuffer(cb1, cb2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_tstzspanset_tstzspan(Pointer ss, Pointer s) { - var _result = _meos_b.distance_tstzspanset_tstzspan(ss, s); + public static int intersects_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.intersects_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double distance_tstzspanset_tstzspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_b.distance_tstzspanset_tstzspanset(ss1, ss2); + public static int touches_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.touches_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigint_extent_transfn(Pointer state, long i) { - var _result = _meos_b.bigint_extent_transfn(state, i); + public static Pointer cbuffer_tstzspan_to_stbox(Pointer cb, Pointer s) { + var _result = _meos_c.cbuffer_tstzspan_to_stbox(cb, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigint_union_transfn(Pointer state, long i) { - var _result = _meos_b.bigint_union_transfn(state, i); + public static Pointer cbuffer_timestamptz_to_stbox(Pointer cb, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.cbuffer_timestamptz_to_stbox(cb, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer date_extent_transfn(Pointer state, int d) { - var _result = _meos_b.date_extent_transfn(state, d); + public static double distance_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { + var _result = _meos_c.distance_cbuffer_cbuffer(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer date_union_transfn(Pointer state, int d) { - var _result = _meos_b.date_union_transfn(state, d); + public static double distance_cbuffer_geo(Pointer cb, Pointer gs) { + var _result = _meos_c.distance_cbuffer_geo(cb, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_extent_transfn(Pointer state, double d) { - var _result = _meos_b.float_extent_transfn(state, d); + public static double distance_cbuffer_stbox(Pointer cb, Pointer box) { + var _result = _meos_c.distance_cbuffer_stbox(cb, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_union_transfn(Pointer state, double d) { - var _result = _meos_b.float_union_transfn(state, d); + public static double nad_cbuffer_stbox(Pointer cb, Pointer box) { + var _result = _meos_c.nad_cbuffer_stbox(cb, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_extent_transfn(Pointer state, int i) { - var _result = _meos_b.int_extent_transfn(state, i); + public static int cbuffer_cmp(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_cmp(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_union_transfn(Pointer state, int i) { - var _result = _meos_b.int_union_transfn(state, i); + public static boolean cbuffer_eq(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_eq(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_extent_transfn(Pointer state, Pointer s) { - var _result = _meos_b.set_extent_transfn(state, s); + public static boolean cbuffer_ge(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_ge(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_union_finalfn(Pointer state) { - var _result = _meos_b.set_union_finalfn(state); + public static boolean cbuffer_gt(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_gt(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_union_transfn(Pointer state, Pointer s) { - var _result = _meos_b.set_union_transfn(state, s); + public static boolean cbuffer_le(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_le(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_extent_transfn(Pointer state, Pointer s) { - var _result = _meos_b.span_extent_transfn(state, s); + public static boolean cbuffer_lt(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_lt(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_union_transfn(Pointer state, Pointer s) { - var _result = _meos_b.span_union_transfn(state, s); + public static boolean cbuffer_ne(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_ne(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_extent_transfn(Pointer state, Pointer ss) { - var _result = _meos_b.spanset_extent_transfn(state, ss); + public static boolean cbuffer_nsame(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_nsame(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_union_finalfn(Pointer state) { - var _result = _meos_b.spanset_union_finalfn(state); + public static boolean cbuffer_same(Pointer cb1, Pointer cb2) { + var _result = _meos_c.cbuffer_same(cb1, cb2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_union_transfn(Pointer state, Pointer ss) { - var _result = _meos_b.spanset_union_transfn(state, ss); + public static Pointer cbufferset_in(String str) { + var _result = _meos_c.cbufferset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer text_union_transfn(Pointer state, Pointer txt) { - var _result = _meos_b.text_union_transfn(state, txt); + public static String cbufferset_out(Pointer s, int maxdd) { + var _result = _meos_c.cbufferset_out(s, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_extent_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.timestamptz_extent_transfn(state, t_new); + public static Pointer cbufferset_make(Pointer values, int count) { + var _result = _meos_c.cbufferset_make(values, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_union_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.timestamptz_union_transfn(state, t_new); + public static Pointer cbuffer_to_set(Pointer cb) { + var _result = _meos_c.cbuffer_to_set(cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long bigint_get_bin(long value, long vsize, long vorigin) { - var _result = _meos_b.bigint_get_bin(value, vsize, vorigin); + public static Pointer cbufferset_end_value(Pointer s) { + var _result = _meos_c.cbufferset_end_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspan_bins(Pointer s, long vsize, long vorigin, Pointer count) { - var _result = _meos_b.bigintspan_bins(s, vsize, vorigin, count); + public static Pointer cbufferset_start_value(Pointer s) { + var _result = _meos_c.cbufferset_start_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bigintspanset_bins(Pointer ss, long vsize, long vorigin, Pointer count) { - var _result = _meos_b.bigintspanset_bins(ss, vsize, vorigin, count); + public static Pointer cbufferset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.cbufferset_value_n(s, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static int date_get_bin(int d, Pointer duration, int torigin) { - var _result = _meos_b.date_get_bin(d, duration, torigin); + public static Pointer cbufferset_values(Pointer s) { + var _result = _meos_c.cbufferset_values(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespan_bins(Pointer s, Pointer duration, int torigin, Pointer count) { - var _result = _meos_b.datespan_bins(s, duration, torigin, count); + public static Pointer cbuffer_union_transfn(Pointer state, Pointer cb) { + var _result = _meos_c.cbuffer_union_transfn(state, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer datespanset_bins(Pointer ss, Pointer duration, int torigin, Pointer count) { - var _result = _meos_b.datespanset_bins(ss, duration, torigin, count); + public static boolean contained_cbuffer_set(Pointer cb, Pointer s) { + var _result = _meos_c.contained_cbuffer_set(cb, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double float_get_bin(double value, double vsize, double vorigin) { - var _result = _meos_b.float_get_bin(value, vsize, vorigin); + public static boolean contains_set_cbuffer(Pointer s, Pointer cb) { + var _result = _meos_c.contains_set_cbuffer(s, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspan_bins(Pointer s, double vsize, double vorigin, Pointer count) { - var _result = _meos_b.floatspan_bins(s, vsize, vorigin, count); + public static Pointer intersection_cbuffer_set(Pointer cb, Pointer s) { + var _result = _meos_c.intersection_cbuffer_set(cb, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer floatspanset_bins(Pointer ss, double vsize, double vorigin, Pointer count) { - var _result = _meos_b.floatspanset_bins(ss, vsize, vorigin, count); + public static Pointer intersection_set_cbuffer(Pointer s, Pointer cb) { + var _result = _meos_c.intersection_set_cbuffer(s, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int int_get_bin(int value, int vsize, int vorigin) { - var _result = _meos_b.int_get_bin(value, vsize, vorigin); + public static Pointer minus_cbuffer_set(Pointer cb, Pointer s) { + var _result = _meos_c.minus_cbuffer_set(cb, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspan_bins(Pointer s, int vsize, int vorigin, Pointer count) { - var _result = _meos_b.intspan_bins(s, vsize, vorigin, count); + public static Pointer minus_set_cbuffer(Pointer s, Pointer cb) { + var _result = _meos_c.minus_set_cbuffer(s, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intspanset_bins(Pointer ss, int vsize, int vorigin, Pointer count) { - var _result = _meos_b.intspanset_bins(ss, vsize, vorigin, count); + public static Pointer union_cbuffer_set(Pointer cb, Pointer s) { + var _result = _meos_c.union_cbuffer_set(cb, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_get_bin(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.timestamptz_get_bin(t_new, duration, torigin_new); + public static Pointer union_set_cbuffer(Pointer s, Pointer cb) { + var _result = _meos_c.union_set_cbuffer(s, cb); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_bins(Pointer s, Pointer duration, OffsetDateTime origin, Pointer count) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_b.tstzspan_bins(s, duration, origin_new, count); + public static Pointer tcbuffer_in(String str) { + var _result = _meos_c.tcbuffer_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_bins(Pointer ss, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tstzspanset_bins(ss, duration, torigin_new, count); + public static Pointer tcbuffer_from_mfjson(String mfjson) { + var _result = _meos_c.tcbuffer_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tbox_as_hexwkb(Pointer box, byte variant, Pointer size) { - var _result = _meos_b.tbox_as_hexwkb(box, variant, size); + public static Pointer tcbuffer_make(Pointer tpoint, Pointer tfloat) { + var _result = _meos_c.tcbuffer_make(tpoint, tfloat); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_as_wkb(Pointer box, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_b.tbox_as_wkb(box, variant, size_out); + public static Pointer tcbuffer_points(Pointer temp) { + var _result = _meos_c.tcbuffer_points(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_from_hexwkb(String hexwkb) { - var _result = _meos_b.tbox_from_hexwkb(hexwkb); + public static Pointer tcbuffer_radius(Pointer temp) { + var _result = _meos_c.tcbuffer_radius(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_from_wkb(Pointer wkb, long size) { - var _result = _meos_b.tbox_from_wkb(wkb, size); + public static Pointer tcbuffer_trav_area(Pointer temp, boolean merge_union) { + var _result = _meos_c.tcbuffer_trav_area(temp, merge_union); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_in(String str) { - var _result = _meos_b.tbox_in(str); + public static Pointer tcbuffer_to_tfloat(Pointer temp) { + var _result = _meos_c.tcbuffer_to_tfloat(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tbox_out(Pointer box, int maxdd) { - var _result = _meos_b.tbox_out(box, maxdd); + public static Pointer tcbuffer_to_tgeompoint(Pointer temp) { + var _result = _meos_c.tcbuffer_to_tgeompoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_timestamptz_to_tbox(double d, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.float_timestamptz_to_tbox(d, t_new); + public static Pointer tgeometry_to_tcbuffer(Pointer temp) { + var _result = _meos_c.tgeometry_to_tcbuffer(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_tstzspan_to_tbox(double d, Pointer s) { - var _result = _meos_b.float_tstzspan_to_tbox(d, s); + public static Pointer tcbuffer_expand(Pointer temp, double dist) { + var _result = _meos_c.tcbuffer_expand(temp, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_timestamptz_to_tbox(int i, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.int_timestamptz_to_tbox(i, t_new); + public static Pointer tcbuffer_at_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tcbuffer_at_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_tstzspan_to_tbox(int i, Pointer s) { - var _result = _meos_b.int_tstzspan_to_tbox(i, s); + public static Pointer tcbuffer_at_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tcbuffer_at_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer numspan_tstzspan_to_tbox(Pointer span, Pointer s) { - var _result = _meos_b.numspan_tstzspan_to_tbox(span, s); + public static Pointer tcbuffer_at_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_c.tcbuffer_at_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer numspan_timestamptz_to_tbox(Pointer span, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.numspan_timestamptz_to_tbox(span, t_new); + public static Pointer tcbuffer_minus_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tcbuffer_minus_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_copy(Pointer box) { - var _result = _meos_b.tbox_copy(box); + public static Pointer tcbuffer_minus_geom(Pointer temp, Pointer gs) { + var _result = _meos_c.tcbuffer_minus_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_make(Pointer s, Pointer p) { - var _result = _meos_b.tbox_make(s, p); + public static Pointer tcbuffer_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_c.tcbuffer_minus_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer float_to_tbox(double d) { - var _result = _meos_b.float_to_tbox(d); + public static Pointer tdistance_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tdistance_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer int_to_tbox(int i) { - var _result = _meos_b.int_to_tbox(i); + public static Pointer tdistance_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tdistance_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer set_to_tbox(Pointer s) { - var _result = _meos_b.set_to_tbox(s); + public static Pointer tdistance_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tdistance_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer span_to_tbox(Pointer s) { - var _result = _meos_b.span_to_tbox(s); + public static double nad_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.nad_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spanset_to_tbox(Pointer ss) { - var _result = _meos_b.spanset_to_tbox(ss); + public static double nad_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.nad_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_to_intspan(Pointer box) { - var _result = _meos_b.tbox_to_intspan(box); + public static double nad_tcbuffer_stbox(Pointer temp, Pointer box) { + var _result = _meos_c.nad_tcbuffer_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_to_floatspan(Pointer box) { - var _result = _meos_b.tbox_to_floatspan(box); + public static double nad_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.nad_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_to_tstzspan(Pointer box) { - var _result = _meos_b.tbox_to_tstzspan(box); + public static Pointer nai_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.nai_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_to_tbox(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.timestamptz_to_tbox(t_new); + public static Pointer nai_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.nai_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tbox_hash(Pointer box) { - var _result = _meos_b.tbox_hash(box); + public static Pointer nai_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.nai_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long tbox_hash_extended(Pointer box, long seed) { - var _result = _meos_b.tbox_hash_extended(box, seed); + public static Pointer shortestline_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.shortestline_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_hast(Pointer box) { - var _result = _meos_b.tbox_hast(box); + public static Pointer shortestline_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.shortestline_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_hasx(Pointer box) { - var _result = _meos_b.tbox_hasx(box); + public static Pointer shortestline_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.shortestline_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_tmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.tbox_tmax(box, result); + public static int always_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.always_eq_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_tmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_tmax_inc(box, result); + public static int always_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.always_eq_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_tmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.tbox_tmin(box, result); + public static int always_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_eq_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_tmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_tmin_inc(box, result); + public static int always_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.always_ne_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tbox_xmax(box, result); + public static int always_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.always_ne_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_xmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_xmax_inc(box, result); + public static int always_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_ne_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tbox_xmin(box, result); + public static int ever_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.ever_eq_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_xmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_xmin_inc(box, result); + public static int ever_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.ever_eq_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tboxfloat_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tboxfloat_xmax(box, result); + public static int ever_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_eq_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tboxfloat_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tboxfloat_xmin(box, result); + public static int ever_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.ever_ne_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tboxint_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_b.tboxint_xmax(box, result); + public static int ever_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.ever_ne_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tboxint_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_b.tboxint_xmin(box, result); + public static int ever_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_ne_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbox_expand_time(Pointer box, Pointer interv) { - var _result = _meos_b.tbox_expand_time(box, interv); + public static Pointer teq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.teq_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_round(Pointer box, int maxdd) { - var _result = _meos_b.tbox_round(box, maxdd); + public static Pointer teq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.teq_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { - var _result = _meos_b.tbox_shift_scale_time(box, shift, duration); + public static Pointer tne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.tne_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatbox_expand(Pointer box, double d) { - var _result = _meos_b.tfloatbox_expand(box, d); + public static Pointer tne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tne_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatbox_shift_scale(Pointer box, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_b.tfloatbox_shift_scale(box, shift, width, hasshift, haswidth); + public static int acontains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.acontains_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintbox_expand(Pointer box, int i) { - var _result = _meos_b.tintbox_expand(box, i); + public static int acontains_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.acontains_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintbox_shift_scale(Pointer box, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_b.tintbox_shift_scale(box, shift, width, hasshift, haswidth); + public static int acontains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.acontains_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_tbox_tbox(Pointer box1, Pointer box2, boolean strict) { - var _result = _meos_b.union_tbox_tbox(box1, box2, strict); + public static int acontains_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.acontains_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.intersection_tbox_tbox(box1, box2); + public static int acovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.acovers_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.adjacent_tbox_tbox(box1, box2); + public static int acovers_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.acovers_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.contained_tbox_tbox(box1, box2); + public static int acovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.acovers_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.contains_tbox_tbox(box1, box2); + public static int acovers_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.acovers_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overlaps_tbox_tbox(box1, box2); + public static int adisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.adisjoint_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.same_tbox_tbox(box1, box2); + public static int adisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.adisjoint_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.after_tbox_tbox(box1, box2); + public static int adisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.adisjoint_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.before_tbox_tbox(box1, box2); + public static int adwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.adwithin_tcbuffer_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.left_tbox_tbox(box1, box2); + public static int adwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { + var _result = _meos_c.adwithin_tcbuffer_cbuffer(temp, cb, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overafter_tbox_tbox(box1, box2); + public static int adwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.adwithin_tcbuffer_tcbuffer(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overbefore_tbox_tbox(box1, box2); + public static int aintersects_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.aintersects_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overleft_tbox_tbox(box1, box2); + public static int aintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.aintersects_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overright_tbox_tbox(box1, box2); + public static int aintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.aintersects_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.right_tbox_tbox(box1, box2); + public static int atouches_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.atouches_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tbox_cmp(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_cmp(box1, box2); + public static int atouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.atouches_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_eq(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_eq(box1, box2); + public static int atouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.atouches_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_ge(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_ge(box1, box2); + public static int econtains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.econtains_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_gt(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_gt(box1, box2); + public static int econtains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.econtains_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_le(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_le(box1, box2); + public static int econtains_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.econtains_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_lt(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_lt(box1, box2); + public static int ecovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.ecovers_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbox_ne(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_ne(box1, box2); + public static int ecovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.ecovers_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_from_mfjson(String str) { - var _result = _meos_b.tbool_from_mfjson(str); + public static int ecovers_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ecovers_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_in(String str) { - var _result = _meos_b.tbool_in(str); + public static int ecovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ecovers_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tbool_out(Pointer temp) { - var _result = _meos_b.tbool_out(temp); + public static int edisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.edisjoint_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String temporal_as_hexwkb(Pointer temp, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_b.temporal_as_hexwkb(temp, variant, size_out); + public static int edisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.edisjoint_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String temporal_as_mfjson(Pointer temp, boolean with_bbox, int flags, int precision, String srs) { - var _result = _meos_b.temporal_as_mfjson(temp, with_bbox, flags, precision, srs); + public static int edwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.edwithin_tcbuffer_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_as_wkb(Pointer temp, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_b.temporal_as_wkb(temp, variant, size_out); + public static int edwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { + var _result = _meos_c.edwithin_tcbuffer_cbuffer(temp, cb, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_from_hexwkb(String hexwkb) { - var _result = _meos_b.temporal_from_hexwkb(hexwkb); + public static int edwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.edwithin_tcbuffer_tcbuffer(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_from_wkb(Pointer wkb, long size) { - var _result = _meos_b.temporal_from_wkb(wkb, size); + public static int eintersects_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.eintersects_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_from_mfjson(String str) { - var _result = _meos_b.tfloat_from_mfjson(str); + public static int eintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.eintersects_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_in(String str) { - var _result = _meos_b.tfloat_in(str); + public static int eintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.eintersects_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tfloat_out(Pointer temp, int maxdd) { - var _result = _meos_b.tfloat_out(temp, maxdd); + public static int etouches_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.etouches_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_from_mfjson(String str) { - var _result = _meos_b.tint_from_mfjson(str); + public static int etouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.etouches_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_in(String str) { - var _result = _meos_b.tint_in(str); + public static int etouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.etouches_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tint_out(Pointer temp) { - var _result = _meos_b.tint_out(temp); + public static Pointer tcontains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.tcontains_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_from_mfjson(String str) { - var _result = _meos_b.ttext_from_mfjson(str); + public static Pointer tcontains_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.tcontains_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_in(String str) { - var _result = _meos_b.ttext_in(str); + public static Pointer tcontains_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tcontains_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String ttext_out(Pointer temp) { - var _result = _meos_b.ttext_out(temp); + public static Pointer tcontains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tcontains_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_from_base_temp(boolean b, Pointer temp) { - var _result = _meos_b.tbool_from_base_temp(b, temp); + public static Pointer tcontains_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tcontains_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tboolinst_make(boolean b, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tboolinst_make(b, t_new); + public static Pointer tcovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.tcovers_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tboolseq_from_base_tstzset(boolean b, Pointer s) { - var _result = _meos_b.tboolseq_from_base_tstzset(b, s); + public static Pointer tcovers_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.tcovers_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tboolseq_from_base_tstzspan(boolean b, Pointer s) { - var _result = _meos_b.tboolseq_from_base_tstzspan(b, s); + public static Pointer tcovers_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tcovers_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tboolseqset_from_base_tstzspanset(boolean b, Pointer ss) { - var _result = _meos_b.tboolseqset_from_base_tstzspanset(b, ss); + public static Pointer tcovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tcovers_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_copy(Pointer temp) { - var _result = _meos_b.temporal_copy(temp); + public static Pointer tcovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tcovers_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_from_base_temp(double d, Pointer temp) { - var _result = _meos_b.tfloat_from_base_temp(d, temp); + public static Pointer tdwithin_geo_tcbuffer(Pointer gs, Pointer temp, double dist) { + var _result = _meos_c.tdwithin_geo_tcbuffer(gs, temp, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatinst_make(double d, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tfloatinst_make(d, t_new); + public static Pointer tdwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { + var _result = _meos_c.tdwithin_tcbuffer_geo(temp, gs, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatseq_from_base_tstzset(double d, Pointer s) { - var _result = _meos_b.tfloatseq_from_base_tstzset(d, s); + public static Pointer tdwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { + var _result = _meos_c.tdwithin_tcbuffer_cbuffer(temp, cb, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatseq_from_base_tstzspan(double d, Pointer s, int interp) { - var _result = _meos_b.tfloatseq_from_base_tstzspan(d, s, interp); + public static Pointer tdwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { + var _result = _meos_c.tdwithin_tcbuffer_tcbuffer(temp1, temp2, dist); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatseqset_from_base_tstzspanset(double d, Pointer ss, int interp) { - var _result = _meos_b.tfloatseqset_from_base_tstzspanset(d, ss, interp); + public static Pointer tdisjoint_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.tdisjoint_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_from_base_temp(int i, Pointer temp) { - var _result = _meos_b.tint_from_base_temp(i, temp); + public static Pointer tdisjoint_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.tdisjoint_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintinst_make(int i, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tintinst_make(i, t_new); + public static Pointer tdisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tdisjoint_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintseq_from_base_tstzset(int i, Pointer s) { - var _result = _meos_b.tintseq_from_base_tstzset(i, s); + public static Pointer tdisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tdisjoint_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintseq_from_base_tstzspan(int i, Pointer s) { - var _result = _meos_b.tintseq_from_base_tstzspan(i, s); + public static Pointer tdisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tdisjoint_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintseqset_from_base_tstzspanset(int i, Pointer ss) { - var _result = _meos_b.tintseqset_from_base_tstzspanset(i, ss); + public static Pointer tintersects_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.tintersects_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tsequence_make(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_b.tsequence_make(instants, count, lower_inc, upper_inc, interp, normalize); + public static Pointer tintersects_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.tintersects_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tsequenceset_make(Pointer sequences, int count, boolean normalize) { - var _result = _meos_b.tsequenceset_make(sequences, count, normalize); + public static Pointer tintersects_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.tintersects_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tsequenceset_make_gaps(Pointer instants, int count, int interp, Pointer maxt, double maxdist) { - var _result = _meos_b.tsequenceset_make_gaps(instants, count, interp, maxt, maxdist); + public static Pointer tintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.tintersects_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_from_base_temp(Pointer txt, Pointer temp) { - var _result = _meos_b.ttext_from_base_temp(txt, temp); + public static Pointer tintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tintersects_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttextinst_make(Pointer txt, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.ttextinst_make(txt, t_new); + public static Pointer ttouches_geo_tcbuffer(Pointer gs, Pointer temp) { + var _result = _meos_c.ttouches_geo_tcbuffer(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttextseq_from_base_tstzset(Pointer txt, Pointer s) { - var _result = _meos_b.ttextseq_from_base_tstzset(txt, s); + public static Pointer ttouches_tcbuffer_geo(Pointer temp, Pointer gs) { + var _result = _meos_c.ttouches_tcbuffer_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttextseq_from_base_tstzspan(Pointer txt, Pointer s) { - var _result = _meos_b.ttextseq_from_base_tstzspan(txt, s); + public static Pointer ttouches_cbuffer_tcbuffer(Pointer cb, Pointer temp) { + var _result = _meos_c.ttouches_cbuffer_tcbuffer(cb, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttextseqset_from_base_tstzspanset(Pointer txt, Pointer ss) { - var _result = _meos_b.ttextseqset_from_base_tstzspanset(txt, ss); + public static Pointer ttouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { + var _result = _meos_c.ttouches_tcbuffer_cbuffer(temp, cb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_to_tint(Pointer temp) { - var _result = _meos_b.tbool_to_tint(temp); + public static Pointer ttouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ttouches_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_to_tstzspan(Pointer temp) { - var _result = _meos_b.temporal_to_tstzspan(temp); + public static int acovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { + var _result = _meos_c.acovers_tcbuffer_tcbuffer(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_to_tint(Pointer temp) { - var _result = _meos_b.tfloat_to_tint(temp); + public static long h3index_in(String str) { + var _result = _meos_c.h3index_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_to_tfloat(Pointer temp) { - var _result = _meos_b.tint_to_tfloat(temp); + public static String h3index_out(long cell) { + var _result = _meos_c.h3index_out(cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_to_span(Pointer temp) { - var _result = _meos_b.tnumber_to_span(temp); + public static Pointer th3index_in(String str) { + var _result = _meos_c.th3index_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_to_tbox(Pointer temp) { - var _result = _meos_b.tnumber_to_tbox(temp); + public static Pointer th3indexinst_in(String str) { + var _result = _meos_c.th3indexinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbool_end_value(Pointer temp) { - var _result = _meos_b.tbool_end_value(temp); + public static Pointer th3indexseq_in(String str, int interp) { + var _result = _meos_c.th3indexseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbool_start_value(Pointer temp) { - var _result = _meos_b.tbool_start_value(temp); + public static Pointer th3indexseqset_in(String str) { + var _result = _meos_c.th3indexseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tbool_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + public static Pointer th3index_make(long value, OffsetDateTime t) { var t_new = t.toEpochSecond(); - var _result = _meos_b.tbool_value_at_timestamptz(temp, t_new, strict, value); + var _result = _meos_c.th3index_make(value, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbool_value_n(temp, n, result); + public static Pointer th3indexinst_make(long value, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_c.th3indexinst_make(value, t_new); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tbool_values(Pointer temp, Pointer count) { - var _result = _meos_b.tbool_values(temp, count); + public static Pointer th3indexseq_make(Pointer values, Pointer times, int count, boolean lower_inc, boolean upper_inc) { + var _result = _meos_c.th3indexseq_make(values, times, count, lower_inc, upper_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_duration(Pointer temp, boolean boundspan) { - var _result = _meos_b.temporal_duration(temp, boundspan); + public static Pointer th3indexseqset_make(Pointer sequences, int count) { + var _result = _meos_c.th3indexseqset_make(sequences, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_end_instant(Pointer temp) { - var _result = _meos_b.temporal_end_instant(temp); + public static long th3index_start_value(Pointer temp) { + var _result = _meos_c.th3index_start_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_end_sequence(Pointer temp) { - var _result = _meos_b.temporal_end_sequence(temp); + public static long th3index_end_value(Pointer temp) { + var _result = _meos_c.th3index_end_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime temporal_end_timestamptz(Pointer temp) { - var _result = _meos_b.temporal_end_timestamptz(temp); + public static Pointer th3index_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.th3index_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return out ? new_result : null; } @SuppressWarnings("unused") - public static int temporal_hash(Pointer temp) { - var _result = _meos_b.temporal_hash(temp); + public static Pointer th3index_values(Pointer temp, Pointer count) { + var _result = _meos_c.th3index_values(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_instant_n(Pointer temp, int n) { - var _result = _meos_b.temporal_instant_n(temp, n); + public static Pointer th3index_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + var t_new = t.toEpochSecond(); + out = _meos_c.th3index_value_at_timestamptz(temp, t_new, strict, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static Pointer temporal_instants(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_instants(temp, count); + public static Pointer tbigint_to_th3index(Pointer temp) { + var _result = _meos_c.tbigint_to_th3index(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String temporal_interp(Pointer temp) { - var _result = _meos_b.temporal_interp(temp); + public static Pointer th3index_to_tbigint(Pointer temp) { + var _result = _meos_c.th3index_to_tbigint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_lower_inc(Pointer temp) { - var _result = _meos_b.temporal_lower_inc(temp); + public static int ever_eq_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.ever_eq_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_max_instant(Pointer temp) { - var _result = _meos_b.temporal_max_instant(temp); + public static int ever_eq_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.ever_eq_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_min_instant(Pointer temp) { - var _result = _meos_b.temporal_min_instant(temp); + public static int ever_ne_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.ever_ne_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int temporal_num_instants(Pointer temp) { - var _result = _meos_b.temporal_num_instants(temp); + public static int ever_ne_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.ever_ne_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int temporal_num_sequences(Pointer temp) { - var _result = _meos_b.temporal_num_sequences(temp); + public static int always_eq_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.always_eq_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int temporal_num_timestamps(Pointer temp) { - var _result = _meos_b.temporal_num_timestamps(temp); + public static int always_eq_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.always_eq_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_segm_duration(Pointer temp, Pointer duration, boolean atleast, boolean strict) { - var _result = _meos_b.temporal_segm_duration(temp, duration, atleast, strict); + public static int always_ne_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.always_ne_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_segments(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_segments(temp, count); + public static int always_ne_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.always_ne_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_sequence_n(Pointer temp, int i) { - var _result = _meos_b.temporal_sequence_n(temp, i); + public static int ever_eq_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_eq_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_sequences(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_sequences(temp, count); + public static int ever_ne_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.ever_ne_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_start_instant(Pointer temp) { - var _result = _meos_b.temporal_start_instant(temp); + public static int always_eq_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_eq_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_start_sequence(Pointer temp) { - var _result = _meos_b.temporal_start_sequence(temp); + public static int always_ne_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.always_ne_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static OffsetDateTime temporal_start_timestamptz(Pointer temp) { - var _result = _meos_b.temporal_start_timestamptz(temp); + public static Pointer teq_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.teq_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); + return _result; } @SuppressWarnings("unused") - public static Pointer temporal_stops(Pointer temp, double maxdist, Pointer minduration) { - var _result = _meos_b.temporal_stops(temp, maxdist, minduration); + public static Pointer teq_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.teq_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String temporal_subtype(Pointer temp) { - var _result = _meos_b.temporal_subtype(temp); + public static Pointer teq_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.teq_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_time(Pointer temp) { - var _result = _meos_b.temporal_time(temp); + public static Pointer tne_h3index_th3index(long cell, Pointer temp) { + var _result = _meos_c.tne_h3index_th3index(cell, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_timestamps(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_timestamps(temp, count); + public static Pointer tne_th3index_h3index(Pointer temp, long cell) { + var _result = _meos_c.tne_th3index_h3index(temp, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_timestamptz_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.temporal_timestamptz_n(temp, n, result); + public static Pointer tne_th3index_th3index(Pointer temp1, Pointer temp2) { + var _result = _meos_c.tne_th3index_th3index(temp1, temp2); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static boolean temporal_upper_inc(Pointer temp) { - var _result = _meos_b.temporal_upper_inc(temp); + public static Pointer th3index_get_resolution(Pointer temp) { + var _result = _meos_c.th3index_get_resolution(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tfloat_avg_value(Pointer temp) { - var _result = _meos_b.tfloat_avg_value(temp); + public static Pointer th3index_get_base_cell_number(Pointer temp) { + var _result = _meos_c.th3index_get_base_cell_number(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tfloat_end_value(Pointer temp) { - var _result = _meos_b.tfloat_end_value(temp); + public static Pointer th3index_is_valid_cell(Pointer temp) { + var _result = _meos_c.th3index_is_valid_cell(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tfloat_min_value(Pointer temp) { - var _result = _meos_b.tfloat_min_value(temp); + public static Pointer th3index_is_res_class_iii(Pointer temp) { + var _result = _meos_c.th3index_is_res_class_iii(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tfloat_max_value(Pointer temp) { - var _result = _meos_b.tfloat_max_value(temp); + public static Pointer th3index_is_pentagon(Pointer temp) { + var _result = _meos_c.th3index_is_pentagon(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tfloat_start_value(Pointer temp) { - var _result = _meos_b.tfloat_start_value(temp); + public static Pointer th3index_cell_to_parent(Pointer temp, int resolution) { + var _result = _meos_c.th3index_cell_to_parent(temp, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tfloat_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tfloat_value_at_timestamptz(temp, t_new, strict, value); + public static Pointer th3index_cell_to_parent_next(Pointer temp) { + var _result = _meos_c.th3index_cell_to_parent_next(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tfloat_value_n(temp, n, result); + public static Pointer th3index_cell_to_center_child(Pointer temp, int resolution) { + var _result = _meos_c.th3index_cell_to_center_child(temp, resolution); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_values(Pointer temp, Pointer count) { - var _result = _meos_b.tfloat_values(temp, count); + public static Pointer th3index_cell_to_center_child_next(Pointer temp) { + var _result = _meos_c.th3index_cell_to_center_child_next(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tint_end_value(Pointer temp) { - var _result = _meos_c.tint_end_value(temp); + public static Pointer th3index_cell_to_child_pos(Pointer temp, int parent_res) { + var _result = _meos_c.th3index_cell_to_child_pos(temp, parent_res); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tint_max_value(Pointer temp) { - var _result = _meos_c.tint_max_value(temp); + public static Pointer th3index_child_pos_to_cell(Pointer child_pos, Pointer parent, int child_res) { + var _result = _meos_c.th3index_child_pos_to_cell(child_pos, parent, child_res); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tint_min_value(Pointer temp) { - var _result = _meos_c.tint_min_value(temp); + public static Pointer tgeogpoint_to_th3index(Pointer temp, int resolution) { + var _result = _meos_c.tgeogpoint_to_th3index(temp, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tint_start_value(Pointer temp) { - var _result = _meos_c.tint_start_value(temp); + public static Pointer tgeompoint_to_th3index(Pointer temp, int resolution) { + var _result = _meos_c.tgeompoint_to_th3index(temp, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tint_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.tint_value_at_timestamptz(temp, t_new, strict, value); + public static Pointer th3index_to_tgeogpoint(Pointer temp) { + var _result = _meos_c.th3index_to_tgeogpoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_c.tint_value_n(temp, n, result); + public static Pointer th3index_to_tgeompoint(Pointer temp) { + var _result = _meos_c.th3index_to_tgeompoint(temp); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tint_values(Pointer temp, Pointer count) { - var _result = _meos_c.tint_values(temp, count); + public static Pointer th3index_cell_to_boundary(Pointer temp) { + var _result = _meos_c.th3index_cell_to_boundary(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tnumber_avg_value(Pointer temp) { - var _result = _meos_c.tnumber_avg_value(temp); + public static Pointer geo_to_h3index_set(Pointer gs, int resolution) { + var _result = _meos_c.geo_to_h3index_set(gs, resolution); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tnumber_integral(Pointer temp) { - var _result = _meos_c.tnumber_integral(temp); + public static int ever_eq_h3indexset_th3index(Pointer cells, Pointer th3idx) { + var _result = _meos_c.ever_eq_h3indexset_th3index(cells, th3idx); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tnumber_twavg(Pointer temp) { - var _result = _meos_c.tnumber_twavg(temp); + public static Pointer th3index_are_neighbor_cells(Pointer origin, Pointer dest) { + var _result = _meos_c.th3index_are_neighbor_cells(origin, dest); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_valuespans(Pointer temp) { - var _result = _meos_c.tnumber_valuespans(temp); + public static Pointer th3index_cells_to_directed_edge(Pointer origin, Pointer dest) { + var _result = _meos_c.th3index_cells_to_directed_edge(origin, dest); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_end_value(Pointer temp) { - var _result = _meos_c.ttext_end_value(temp); + public static Pointer th3index_is_valid_directed_edge(Pointer edge) { + var _result = _meos_c.th3index_is_valid_directed_edge(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_max_value(Pointer temp) { - var _result = _meos_c.ttext_max_value(temp); + public static Pointer th3index_get_directed_edge_origin(Pointer edge) { + var _result = _meos_c.th3index_get_directed_edge_origin(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_min_value(Pointer temp) { - var _result = _meos_c.ttext_min_value(temp); + public static Pointer th3index_get_directed_edge_destination(Pointer edge) { + var _result = _meos_c.th3index_get_directed_edge_destination(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_start_value(Pointer temp) { - var _result = _meos_c.ttext_start_value(temp); + public static Pointer th3index_directed_edge_to_boundary(Pointer edge) { + var _result = _meos_c.th3index_directed_edge_to_boundary(edge); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean ttext_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.ttext_value_at_timestamptz(temp, t_new, strict, value); + public static Pointer th3index_cell_to_vertex(Pointer temp, int vertex_num) { + var _result = _meos_c.th3index_cell_to_vertex(temp, vertex_num); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.ttext_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); + public static Pointer th3index_vertex_to_latlng(Pointer temp) { + var _result = _meos_c.th3index_vertex_to_latlng(temp); MeosErrorHandler.checkError(); - return out ? new_result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer ttext_values(Pointer temp, Pointer count) { - var _result = _meos_c.ttext_values(temp, count); + public static Pointer th3index_is_valid_vertex(Pointer temp) { + var _result = _meos_c.th3index_is_valid_vertex(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double float_degrees(double value, boolean normalize) { - var _result = _meos_c.float_degrees(value, normalize); + public static Pointer th3index_grid_distance(Pointer origin, Pointer dest) { + var _result = _meos_c.th3index_grid_distance(origin, dest); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temparr_round(Pointer temp, int count, int maxdd) { - var _result = _meos_c.temparr_round(temp, count, maxdd); + public static Pointer th3index_cell_to_local_ij(Pointer origin, Pointer cell) { + var _result = _meos_c.th3index_cell_to_local_ij(origin, cell); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_round(Pointer temp, int maxdd) { - var _result = _meos_c.temporal_round(temp, maxdd); + public static Pointer th3index_local_ij_to_cell(Pointer origin, Pointer coord) { + var _result = _meos_c.th3index_local_ij_to_cell(origin, coord); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_scale_time(Pointer temp, Pointer duration) { - var _result = _meos_c.temporal_scale_time(temp, duration); + public static Pointer th3index_cell_area(Pointer temp, String unit) { + var _result = _meos_c.th3index_cell_area(temp, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_set_interp(Pointer temp, int interp) { - var _result = _meos_c.temporal_set_interp(temp, interp); + public static Pointer th3index_edge_length(Pointer temp, String unit) { + var _result = _meos_c.th3index_edge_length(temp, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_shift_scale_time(Pointer temp, Pointer shift, Pointer duration) { - var _result = _meos_c.temporal_shift_scale_time(temp, shift, duration); + public static Pointer tgeogpoint_great_circle_distance(Pointer a, Pointer b, String unit) { + var _result = _meos_c.tgeogpoint_great_circle_distance(a, b, unit); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_shift_time(Pointer temp, Pointer shift) { - var _result = _meos_c.temporal_shift_time(temp, shift); + public static Pointer gsl_get_generation_rng() { + var _result = _meos_c.gsl_get_generation_rng(); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_to_tinstant(Pointer temp) { - var _result = _meos_c.temporal_to_tinstant(temp); + public static Pointer gsl_get_aggregation_rng() { + var _result = _meos_c.gsl_get_aggregation_rng(); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_to_tsequence(Pointer temp, int interp) { - var _result = _meos_c.temporal_to_tsequence(temp, interp); + public static int datum_ceil(Pointer d) { + var _result = _meos_c.datum_ceil(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_to_tsequenceset(Pointer temp, int interp) { - var _result = _meos_c.temporal_to_tsequenceset(temp, interp); + public static int datum_degrees(Pointer d, Pointer normalize) { + var _result = _meos_c.datum_degrees(d, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_ceil(Pointer temp) { - var _result = _meos_c.tfloat_ceil(temp); + public static int datum_float_round(Pointer value, Pointer size) { + var _result = _meos_c.datum_float_round(value, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_degrees(Pointer temp, boolean normalize) { - var _result = _meos_c.tfloat_degrees(temp, normalize); + public static int datum_floor(Pointer d) { + var _result = _meos_c.datum_floor(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_floor(Pointer temp) { - var _result = _meos_c.tfloat_floor(temp); + public static int datum_hash(Pointer d, int basetype) { + var _result = _meos_c.datum_hash(d, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_radians(Pointer temp) { - var _result = _meos_c.tfloat_radians(temp); + public static long datum_hash_extended(Pointer d, int basetype, long seed) { + var _result = _meos_c.datum_hash_extended(d, basetype, seed); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_scale_value(Pointer temp, double width) { - var _result = _meos_c.tfloat_scale_value(temp, width); + public static int datum_radians(Pointer d) { + var _result = _meos_c.datum_radians(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_shift_scale_value(Pointer temp, double shift, double width) { - var _result = _meos_c.tfloat_shift_scale_value(temp, shift, width); + public static void floatspan_round_set(Pointer s, int maxdd, Pointer result) { + _meos_c.floatspan_round_set(s, maxdd, result); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_shift_value(Pointer temp, double shift) { - var _result = _meos_c.tfloat_shift_value(temp, shift); + public static Pointer set_in(String str, int basetype) { + var _result = _meos_c.set_in(str, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_scale_value(Pointer temp, int width) { - var _result = _meos_c.tint_scale_value(temp, width); + public static String set_out(Pointer s, int maxdd) { + var _result = _meos_c.set_out(s, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_shift_scale_value(Pointer temp, int shift, int width) { - var _result = _meos_c.tint_shift_scale_value(temp, shift, width); + public static Pointer span_in(String str, int spantype) { + var _result = _meos_c.span_in(str, spantype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_shift_value(Pointer temp, int shift) { - var _result = _meos_c.tint_shift_value(temp, shift); + public static String span_out(Pointer s, int maxdd) { + var _result = _meos_c.span_out(s, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand) { - var _result = _meos_c.temporal_append_tinstant(temp, inst, interp, maxdist, maxt, expand); + public static Pointer spanset_in(String str, int spantype) { + var _result = _meos_c.spanset_in(str, spantype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_append_tsequence(Pointer temp, Pointer seq, boolean expand) { - var _result = _meos_c.temporal_append_tsequence(temp, seq, expand); + public static String spanset_out(Pointer ss, int maxdd) { + var _result = _meos_c.spanset_out(ss, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_delete_timestamptz(Pointer temp, OffsetDateTime t, boolean connect) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.temporal_delete_timestamptz(temp, t_new, connect); + public static Pointer set_make(Pointer values, int count, int basetype, boolean order) { + var _result = _meos_c.set_make(values, count, basetype, order); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzset(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_c.temporal_delete_tstzset(temp, s, connect); + public static Pointer set_make_exp(Pointer values, int count, int maxcount, int basetype, boolean order) { + var _result = _meos_c.set_make_exp(values, count, maxcount, basetype, order); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzspan(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_c.temporal_delete_tstzspan(temp, s, connect); + public static Pointer set_make_free(Pointer values, int count, int basetype, boolean order) { + var _result = _meos_c.set_make_free(values, count, basetype, order); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect) { - var _result = _meos_c.temporal_delete_tstzspanset(temp, ss, connect); + public static Pointer span_make(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype) { + var _result = _meos_c.span_make(lower, upper, lower_inc, upper_inc, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_insert(Pointer temp1, Pointer temp2, boolean connect) { - var _result = _meos_c.temporal_insert(temp1, temp2, connect); + public static void span_set(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype, int spantype, Pointer s) { + _meos_c.span_set(lower, upper, lower_inc, upper_inc, basetype, spantype, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_merge(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_merge(temp1, temp2); + public static Pointer spanset_make_exp(Pointer spans, int count, int maxcount, boolean normalize, boolean order) { + var _result = _meos_c.spanset_make_exp(spans, count, maxcount, normalize, order); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_merge_array(Pointer temparr, int count) { - var _result = _meos_c.temporal_merge_array(temparr, count); + public static Pointer spanset_make_free(Pointer spans, int count, boolean normalize, boolean order) { + var _result = _meos_c.spanset_make_free(spans, count, normalize, order); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_update(Pointer temp1, Pointer temp2, boolean connect) { - var _result = _meos_c.temporal_update(temp1, temp2, connect); + public static Pointer set_span(Pointer s) { + var _result = _meos_c.set_span(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_at_value(Pointer temp, boolean b) { - var _result = _meos_c.tbool_at_value(temp, b); + public static Pointer set_spanset(Pointer s) { + var _result = _meos_c.set_spanset(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_minus_value(Pointer temp, boolean b) { - var _result = _meos_c.tbool_minus_value(temp, b); + public static void value_set_span(Pointer value, int basetype, Pointer s) { + _meos_c.value_set_span(value, basetype, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_after_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.temporal_after_timestamptz(temp, t_new, strict); + public static Pointer value_set(Pointer d, int basetype) { + var _result = _meos_c.value_set(d, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_max(Pointer temp) { - var _result = _meos_c.temporal_at_max(temp); + public static Pointer value_span(Pointer d, int basetype) { + var _result = _meos_c.value_span(d, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_min(Pointer temp) { - var _result = _meos_c.temporal_at_min(temp); + public static Pointer value_spanset(Pointer d, int basetype) { + var _result = _meos_c.value_spanset(d, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_timestamptz(Pointer temp, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.temporal_at_timestamptz(temp, t_new); + public static int numspan_width(Pointer s) { + var _result = _meos_c.numspan_width(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_tstzset(Pointer temp, Pointer s) { - var _result = _meos_c.temporal_at_tstzset(temp, s); + public static int numspanset_width(Pointer ss, boolean boundspan) { + var _result = _meos_c.numspanset_width(ss, boundspan); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.temporal_at_tstzspan(temp, s); + public static int set_end_value(Pointer s) { + var _result = _meos_c.set_end_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_tstzspanset(Pointer temp, Pointer ss) { - var _result = _meos_c.temporal_at_tstzspanset(temp, ss); + public static int set_mem_size(Pointer s) { + var _result = _meos_c.set_mem_size(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_at_values(Pointer temp, Pointer set) { - var _result = _meos_c.temporal_at_values(temp, set); + public static void set_set_subspan(Pointer s, int minidx, int maxidx, Pointer result) { + _meos_c.set_set_subspan(s, minidx, maxidx, result); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_before_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.temporal_before_timestamptz(temp, t_new, strict); + public static void set_set_span(Pointer s, Pointer result) { + _meos_c.set_set_span(s, result); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_max(Pointer temp) { - var _result = _meos_c.temporal_minus_max(temp); + public static int set_start_value(Pointer s) { + var _result = _meos_c.set_start_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_min(Pointer temp) { - var _result = _meos_c.temporal_minus_min(temp); + public static Pointer set_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_c.set_value_n(s, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static Pointer temporal_minus_timestamptz(Pointer temp, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.temporal_minus_timestamptz(temp, t_new); + public static Pointer set_vals(Pointer s) { + var _result = _meos_c.set_vals(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzset(Pointer temp, Pointer s) { - var _result = _meos_c.temporal_minus_tstzset(temp, s); + public static Pointer set_values(Pointer s) { + var _result = _meos_c.set_values(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.temporal_minus_tstzspan(temp, s); + public static int spanset_lower(Pointer ss) { + var _result = _meos_c.spanset_lower(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzspanset(Pointer temp, Pointer ss) { - var _result = _meos_c.temporal_minus_tstzspanset(temp, ss); + public static int spanset_mem_size(Pointer ss) { + var _result = _meos_c.spanset_mem_size(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_minus_values(Pointer temp, Pointer set) { - var _result = _meos_c.temporal_minus_values(temp, set); + public static Pointer spanset_sps(Pointer ss) { + var _result = _meos_c.spanset_sps(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_at_value(Pointer temp, double d) { - var _result = _meos_c.tfloat_at_value(temp, d); + public static int spanset_upper(Pointer ss) { + var _result = _meos_c.spanset_upper(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_minus_value(Pointer temp, double d) { - var _result = _meos_c.tfloat_minus_value(temp, d); + public static void bigintspan_set_floatspan(Pointer s1, Pointer s2) { + _meos_c.bigintspan_set_floatspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tint_at_value(Pointer temp, int i) { - var _result = _meos_c.tint_at_value(temp, i); + public static void bigintspan_set_intspan(Pointer s1, Pointer s2) { + _meos_c.bigintspan_set_intspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tint_minus_value(Pointer temp, int i) { - var _result = _meos_c.tint_minus_value(temp, i); + public static void datespan_set_tstzspan(Pointer s1, Pointer s2) { + _meos_c.datespan_set_tstzspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_at_span(Pointer temp, Pointer span) { - var _result = _meos_c.tnumber_at_span(temp, span); + public static void floatspan_set_bigintspan(Pointer s1, Pointer s2) { + _meos_c.floatspan_set_bigintspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_at_spanset(Pointer temp, Pointer ss) { - var _result = _meos_c.tnumber_at_spanset(temp, ss); + public static void floatspan_set_intspan(Pointer s1, Pointer s2) { + _meos_c.floatspan_set_intspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_at_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.tnumber_at_tbox(temp, box); + public static void intspan_set_bigintspan(Pointer s1, Pointer s2) { + _meos_c.intspan_set_bigintspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_minus_span(Pointer temp, Pointer span) { - var _result = _meos_c.tnumber_minus_span(temp, span); + public static void intspan_set_floatspan(Pointer s1, Pointer s2) { + _meos_c.intspan_set_floatspan(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_minus_spanset(Pointer temp, Pointer ss) { - var _result = _meos_c.tnumber_minus_spanset(temp, ss); + public static Pointer numset_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_c.numset_shift_scale(s, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_minus_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.tnumber_minus_tbox(temp, box); + public static Pointer numspan_expand(Pointer s, Pointer value) { + var _result = _meos_c.numspan_expand(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_at_value(Pointer temp, Pointer txt) { - var _result = _meos_c.ttext_at_value(temp, txt); + public static Pointer numspan_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_c.numspan_shift_scale(s, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_minus_value(Pointer temp, Pointer txt) { - var _result = _meos_c.ttext_minus_value(temp, txt); + public static Pointer numspanset_shift_scale(Pointer ss, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_c.numspanset_shift_scale(ss, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int temporal_cmp(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_cmp(temp1, temp2); + public static Pointer set_compact(Pointer s) { + var _result = _meos_c.set_compact(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_eq(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_eq(temp1, temp2); + public static void span_expand(Pointer s1, Pointer s2) { + _meos_c.span_expand(s1, s2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean temporal_ge(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_ge(temp1, temp2); + public static Pointer spanset_compact(Pointer ss) { + var _result = _meos_c.spanset_compact(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_gt(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_gt(temp1, temp2); + public static Pointer tbox_expand_value(Pointer box, Pointer value, int basetyp) { + var _result = _meos_c.tbox_expand_value(box, value, basetyp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_le(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_le(temp1, temp2); + public static Pointer textcat_textset_text_common(Pointer s, Pointer txt, boolean invert) { + var _result = _meos_c.textcat_textset_text_common(s, txt, invert); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_lt(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_lt(temp1, temp2); + public static void tstzspan_set_datespan(Pointer s1, Pointer s2) { + _meos_c.tstzspan_set_datespan(s1, s2); + MeosErrorHandler.checkError(); + } + + @SuppressWarnings("unused") + public static boolean adjacent_span_value(Pointer s, Pointer value) { + var _result = _meos_c.adjacent_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean temporal_ne(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_ne(temp1, temp2); + public static boolean adjacent_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_c.adjacent_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.always_eq_bool_tbool(b, temp); + public static boolean adjacent_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_c.adjacent_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_eq_float_tfloat(d, temp); + public static boolean contained_value_set(Pointer value, Pointer s) { + var _result = _meos_c.contained_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_eq_int_tint(i, temp); + public static boolean contained_value_span(Pointer value, Pointer s) { + var _result = _meos_c.contained_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.always_eq_tbool_bool(temp, b); + public static boolean contained_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_c.contained_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_eq_temporal_temporal(temp1, temp2); + public static boolean contains_set_value(Pointer s, Pointer value) { + var _result = _meos_c.contains_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_eq_text_ttext(txt, temp); + public static boolean contains_span_value(Pointer s, Pointer value) { + var _result = _meos_c.contains_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_eq_tfloat_float(temp, d); + public static boolean contains_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_c.contains_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_eq_tint_int(temp, i); + public static boolean ovadj_span_span(Pointer s1, Pointer s2) { + var _result = _meos_c.ovadj_span_span(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_eq_ttext_text(temp, txt); + public static boolean left_set_value(Pointer s, Pointer value) { + var _result = _meos_c.left_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_ge_float_tfloat(d, temp); + public static boolean left_span_value(Pointer s, Pointer value) { + var _result = _meos_c.left_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_ge_int_tint(i, temp); + public static boolean left_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_c.left_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_ge_temporal_temporal(temp1, temp2); + public static boolean left_value_set(Pointer value, Pointer s) { + var _result = _meos_c.left_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_ge_text_ttext(txt, temp); + public static boolean left_value_span(Pointer value, Pointer s) { + var _result = _meos_c.left_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_ge_tfloat_float(temp, d); + public static boolean left_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_c.left_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_ge_tint_int(temp, i); + public static boolean lfnadj_span_span(Pointer s1, Pointer s2) { + var _result = _meos_c.lfnadj_span_span(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_ge_ttext_text(temp, txt); + public static boolean overleft_set_value(Pointer s, Pointer value) { + var _result = _meos_c.overleft_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_gt_float_tfloat(d, temp); + public static boolean overleft_span_value(Pointer s, Pointer value) { + var _result = _meos_c.overleft_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_gt_int_tint(i, temp); + public static boolean overleft_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_c.overleft_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_gt_temporal_temporal(temp1, temp2); + public static boolean overleft_value_set(Pointer value, Pointer s) { + var _result = _meos_c.overleft_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_gt_text_ttext(txt, temp); + public static boolean overleft_value_span(Pointer value, Pointer s) { + var _result = _meos_c.overleft_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_gt_tfloat_float(temp, d); + public static boolean overleft_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_c.overleft_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_gt_tint_int(temp, i); + public static boolean overright_set_value(Pointer s, Pointer value) { + var _result = _meos_c.overright_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_gt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_gt_ttext_text(temp, txt); + public static boolean overright_span_value(Pointer s, Pointer value) { + var _result = _meos_c.overright_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_le_float_tfloat(d, temp); + public static boolean overright_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_c.overright_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_le_int_tint(i, temp); + public static boolean overright_value_set(Pointer value, Pointer s) { + var _result = _meos_c.overright_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_le_temporal_temporal(temp1, temp2); + public static boolean overright_value_span(Pointer value, Pointer s) { + var _result = _meos_c.overright_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_le_text_ttext(txt, temp); + public static boolean overright_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_c.overright_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_le_tfloat_float(temp, d); + public static boolean right_value_set(Pointer value, Pointer s) { + var _result = _meos_d.right_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_le_tint_int(temp, i); + public static boolean right_set_value(Pointer s, Pointer value) { + var _result = _meos_d.right_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_le_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_le_ttext_text(temp, txt); + public static boolean right_value_span(Pointer value, Pointer s) { + var _result = _meos_d.right_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_lt_float_tfloat(d, temp); + public static boolean right_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_d.right_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_lt_int_tint(i, temp); + public static boolean right_span_value(Pointer s, Pointer value) { + var _result = _meos_d.right_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_lt_temporal_temporal(temp1, temp2); + public static boolean right_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_d.right_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_lt_text_ttext(txt, temp); + public static boolean bbox_type(int bboxtype) { + var _result = _meos_d.bbox_type(bboxtype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_lt_tfloat_float(temp, d); + public static long bbox_get_size(int bboxtype) { + var _result = _meos_d.bbox_get_size(bboxtype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_lt_tint_int(temp, i); + public static int bbox_max_dims(int bboxtype) { + var _result = _meos_d.bbox_max_dims(bboxtype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_lt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_lt_ttext_text(temp, txt); + public static boolean temporal_bbox_eq(Pointer box1, Pointer box2, int temptype) { + var _result = _meos_d.temporal_bbox_eq(box1, box2, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.always_ne_bool_tbool(b, temp); + public static int temporal_bbox_cmp(Pointer box1, Pointer box2, int temptype) { + var _result = _meos_d.temporal_bbox_cmp(box1, box2, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.always_ne_float_tfloat(d, temp); + public static void bbox_union_span_span(Pointer s1, Pointer s2, Pointer result) { + _meos_d.bbox_union_span_span(s1, s2, result); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int always_ne_int_tint(int i, Pointer temp) { - var _result = _meos_c.always_ne_int_tint(i, temp); + public static Pointer inter_span_span(Pointer s1, Pointer s2) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.inter_span_span(s1, s2, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static int always_ne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.always_ne_tbool_bool(temp, b); + public static Pointer intersection_set_value(Pointer s, Pointer value) { + var _result = _meos_d.intersection_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_ne_temporal_temporal(temp1, temp2); + public static Pointer intersection_span_value(Pointer s, Pointer value) { + var _result = _meos_d.intersection_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.always_ne_text_ttext(txt, temp); + public static Pointer intersection_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_d.intersection_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.always_ne_tfloat_float(temp, d); + public static Pointer intersection_value_set(Pointer value, Pointer s) { + var _result = _meos_d.intersection_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_tint_int(Pointer temp, int i) { - var _result = _meos_c.always_ne_tint_int(temp, i); + public static Pointer intersection_value_span(Pointer value, Pointer s) { + var _result = _meos_d.intersection_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.always_ne_ttext_text(temp, txt); + public static Pointer intersection_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_d.intersection_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.ever_eq_bool_tbool(b, temp); + public static int mi_span_span(Pointer s1, Pointer s2, Pointer result) { + var _result = _meos_d.mi_span_span(s1, s2, result); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_eq_float_tfloat(d, temp); + public static Pointer minus_set_value(Pointer s, Pointer value) { + var _result = _meos_d.minus_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_eq_int_tint(i, temp); + public static Pointer minus_span_value(Pointer s, Pointer value) { + var _result = _meos_d.minus_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.ever_eq_tbool_bool(temp, b); + public static Pointer minus_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_d.minus_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_eq_temporal_temporal(temp1, temp2); + public static Pointer minus_value_set(Pointer value, Pointer s) { + var _result = _meos_d.minus_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_eq_text_ttext(txt, temp); + public static Pointer minus_value_span(Pointer value, Pointer s) { + var _result = _meos_d.minus_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_eq_tfloat_float(temp, d); + public static Pointer minus_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_d.minus_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_eq_tint_int(temp, i); + public static Pointer super_union_span_span(Pointer s1, Pointer s2) { + var _result = _meos_d.super_union_span_span(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_eq_ttext_text(temp, txt); + public static Pointer union_set_value(Pointer s, Pointer value) { + var _result = _meos_d.union_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_ge_float_tfloat(d, temp); + public static Pointer union_span_value(Pointer s, Pointer value) { + var _result = _meos_d.union_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_ge_int_tint(i, temp); + public static Pointer union_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_d.union_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_ge_temporal_temporal(temp1, temp2); + public static Pointer union_value_set(Pointer value, Pointer s) { + var _result = _meos_d.union_value_set(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_ge_text_ttext(txt, temp); + public static Pointer union_value_span(Pointer value, Pointer s) { + var _result = _meos_d.union_value_span(value, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_ge_tfloat_float(temp, d); + public static Pointer union_value_spanset(Pointer value, Pointer ss) { + var _result = _meos_d.union_value_spanset(value, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_ge_tint_int(temp, i); + public static int distance_set_set(Pointer s1, Pointer s2) { + var _result = _meos_d.distance_set_set(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_ge_ttext_text(temp, txt); + public static int distance_set_value(Pointer s, Pointer value) { + var _result = _meos_d.distance_set_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_gt_float_tfloat(d, temp); + public static int distance_span_span(Pointer s1, Pointer s2) { + var _result = _meos_d.distance_span_span(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_gt_int_tint(i, temp); + public static int distance_span_value(Pointer s, Pointer value) { + var _result = _meos_d.distance_span_value(s, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_gt_temporal_temporal(temp1, temp2); + public static int distance_spanset_span(Pointer ss, Pointer s) { + var _result = _meos_d.distance_spanset_span(ss, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_gt_text_ttext(txt, temp); + public static int distance_spanset_spanset(Pointer ss1, Pointer ss2) { + var _result = _meos_d.distance_spanset_spanset(ss1, ss2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_gt_tfloat_float(temp, d); + public static int distance_spanset_value(Pointer ss, Pointer value) { + var _result = _meos_d.distance_spanset_value(ss, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_gt_tint_int(temp, i); + public static int distance_value_value(Pointer l, Pointer r, int basetype) { + var _result = _meos_d.distance_value_value(l, r, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_gt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_gt_ttext_text(temp, txt); + public static Pointer spanbase_extent_transfn(Pointer state, Pointer value, int basetype) { + var _result = _meos_d.spanbase_extent_transfn(state, value, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_le_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_le_float_tfloat(d, temp); + public static Pointer value_union_transfn(Pointer state, Pointer value, int basetype) { + var _result = _meos_d.value_union_transfn(state, value, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_le_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_le_int_tint(i, temp); + public static Pointer number_tstzspan_to_tbox(Pointer d, int basetype, Pointer s) { + var _result = _meos_d.number_tstzspan_to_tbox(d, basetype, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_le_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_le_temporal_temporal(temp1, temp2); + public static Pointer number_timestamptz_to_tbox(Pointer d, int basetype, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.number_timestamptz_to_tbox(d, basetype, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_le_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_le_text_ttext(txt, temp); + public static void tbox_set(Pointer s, Pointer p, Pointer box) { + _meos_d.tbox_set(s, p, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_le_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_le_tfloat_float(temp, d); + public static void float_set_tbox(double d, Pointer box) { + _meos_d.float_set_tbox(d, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_le_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_le_tint_int(temp, i); + public static void int_set_tbox(int i, Pointer box) { + _meos_d.int_set_tbox(i, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_le_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_le_ttext_text(temp, txt); + public static void number_set_tbox(Pointer d, int basetype, Pointer box) { + _meos_d.number_set_tbox(d, basetype, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_lt_float_tfloat(d, temp); + public static Pointer number_tbox(Pointer value, int basetype) { + var _result = _meos_d.number_tbox(value, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_lt_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_lt_int_tint(i, temp); + public static void numset_set_tbox(Pointer s, Pointer box) { + _meos_d.numset_set_tbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_lt_temporal_temporal(temp1, temp2); + public static void numspan_set_tbox(Pointer span, Pointer box) { + _meos_d.numspan_set_tbox(span, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_lt_text_ttext(txt, temp); + public static void timestamptz_set_tbox(OffsetDateTime t, Pointer box) { + var t_new = t.toEpochSecond(); + _meos_d.timestamptz_set_tbox(t_new, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_lt_tfloat_float(temp, d); + public static void tstzset_set_tbox(Pointer s, Pointer box) { + _meos_d.tstzset_set_tbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_lt_tint_int(temp, i); + public static void tstzspan_set_tbox(Pointer s, Pointer box) { + _meos_d.tstzspan_set_tbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_lt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_lt_ttext_text(temp, txt); + public static Pointer tbox_shift_scale_value(Pointer box, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_d.tbox_shift_scale_value(box, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.ever_ne_bool_tbool(b, temp); + public static void tbox_expand(Pointer box1, Pointer box2) { + _meos_d.tbox_expand(box1, box2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int ever_ne_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.ever_ne_float_tfloat(d, temp); + public static Pointer inter_tbox_tbox(Pointer box1, Pointer box2) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.inter_tbox_tbox(box1, box2, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static int ever_ne_int_tint(int i, Pointer temp) { - var _result = _meos_c.ever_ne_int_tint(i, temp); + public static Pointer tboolinst_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tboolinst_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.ever_ne_tbool_bool(temp, b); + public static Pointer tboolinst_in(String str) { + var _result = _meos_d.tboolinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_ne_temporal_temporal(temp1, temp2); + public static Pointer tboolseq_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tboolseq_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.ever_ne_text_ttext(txt, temp); + public static Pointer tboolseq_in(String str, int interp) { + var _result = _meos_d.tboolseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.ever_ne_tfloat_float(temp, d); + public static Pointer tboolseqset_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tboolseqset_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_tint_int(Pointer temp, int i) { - var _result = _meos_c.ever_ne_tint_int(temp, i); + public static Pointer tboolseqset_in(String str) { + var _result = _meos_d.tboolseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.ever_ne_ttext_text(temp, txt); + public static Pointer temporal_in(String str, int temptype) { + var _result = _meos_d.temporal_in(str, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.teq_bool_tbool(b, temp); + public static String temporal_out(Pointer temp, int maxdd) { + var _result = _meos_d.temporal_out(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.teq_float_tfloat(d, temp); + public static Pointer temparr_out(Pointer temparr, int count, int maxdd) { + var _result = _meos_d.temparr_out(temparr, count, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_int_tint(int i, Pointer temp) { - var _result = _meos_c.teq_int_tint(i, temp); + public static Pointer tfloatinst_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tfloatinst_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.teq_tbool_bool(temp, b); + public static Pointer tfloatinst_in(String str) { + var _result = _meos_d.tfloatinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.teq_temporal_temporal(temp1, temp2); + public static Pointer tfloatseq_from_mfjson(Pointer mfjson, int interp) { + var _result = _meos_d.tfloatseq_from_mfjson(mfjson, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.teq_text_ttext(txt, temp); + public static Pointer tfloatseq_in(String str, int interp) { + var _result = _meos_d.tfloatseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.teq_tfloat_float(temp, d); + public static Pointer tfloatseqset_from_mfjson(Pointer mfjson, int interp) { + var _result = _meos_d.tfloatseqset_from_mfjson(mfjson, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_tint_int(Pointer temp, int i) { - var _result = _meos_c.teq_tint_int(temp, i); + public static Pointer tfloatseqset_in(String str) { + var _result = _meos_d.tfloatseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.teq_ttext_text(temp, txt); + public static Pointer tinstant_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype) { + var _result = _meos_d.tinstant_from_mfjson(mfjson, spatial, srid, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.tge_float_tfloat(d, temp); + public static Pointer tinstant_in(String str, int temptype) { + var _result = _meos_d.tinstant_in(str, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_int_tint(int i, Pointer temp) { - var _result = _meos_c.tge_int_tint(i, temp); + public static String tinstant_out(Pointer inst, int maxdd) { + var _result = _meos_d.tinstant_out(inst, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tge_temporal_temporal(temp1, temp2); + public static Pointer tintinst_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tintinst_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.tge_text_ttext(txt, temp); + public static Pointer tintinst_in(String str) { + var _result = _meos_d.tintinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tge_tfloat_float(temp, d); + public static Pointer tintseq_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tintseq_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_tint_int(Pointer temp, int i) { - var _result = _meos_c.tge_tint_int(temp, i); + public static Pointer tintseq_in(String str, int interp) { + var _result = _meos_d.tintseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.tge_ttext_text(temp, txt); + public static Pointer tintseqset_from_mfjson(Pointer mfjson) { + var _result = _meos_d.tintseqset_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.tgt_float_tfloat(d, temp); + public static Pointer tintseqset_in(String str) { + var _result = _meos_d.tintseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_int_tint(int i, Pointer temp) { - var _result = _meos_c.tgt_int_tint(i, temp); + public static Pointer tsequence_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp) { + var _result = _meos_d.tsequence_from_mfjson(mfjson, spatial, srid, temptype, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tgt_temporal_temporal(temp1, temp2); + public static Pointer tsequence_in(String str, int temptype, int interp) { + var _result = _meos_d.tsequence_in(str, temptype, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.tgt_text_ttext(txt, temp); + public static String tsequence_out(Pointer seq, int maxdd) { + var _result = _meos_d.tsequence_out(seq, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tgt_tfloat_float(temp, d); + public static Pointer tsequenceset_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp) { + var _result = _meos_d.tsequenceset_from_mfjson(mfjson, spatial, srid, temptype, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_tint_int(Pointer temp, int i) { - var _result = _meos_c.tgt_tint_int(temp, i); + public static Pointer tsequenceset_in(String str, int temptype, int interp) { + var _result = _meos_d.tsequenceset_in(str, temptype, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.tgt_ttext_text(temp, txt); + public static String tsequenceset_out(Pointer ss, int maxdd) { + var _result = _meos_d.tsequenceset_out(ss, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.tle_float_tfloat(d, temp); + public static Pointer ttextinst_from_mfjson(Pointer mfjson) { + var _result = _meos_d.ttextinst_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_int_tint(int i, Pointer temp) { - var _result = _meos_c.tle_int_tint(i, temp); + public static Pointer ttextinst_in(String str) { + var _result = _meos_d.ttextinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tle_temporal_temporal(temp1, temp2); + public static Pointer ttextseq_from_mfjson(Pointer mfjson) { + var _result = _meos_d.ttextseq_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.tle_text_ttext(txt, temp); + public static Pointer ttextseq_in(String str, int interp) { + var _result = _meos_d.ttextseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tle_tfloat_float(temp, d); + public static Pointer ttextseqset_from_mfjson(Pointer mfjson) { + var _result = _meos_d.ttextseqset_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_tint_int(Pointer temp, int i) { - var _result = _meos_c.tle_tint_int(temp, i); + public static Pointer ttextseqset_in(String str) { + var _result = _meos_d.ttextseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tle_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.tle_ttext_text(temp, txt); + public static Pointer temporal_from_mfjson(String mfjson, int temptype) { + var _result = _meos_d.temporal_from_mfjson(mfjson, temptype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.tlt_float_tfloat(d, temp); + public static Pointer temporal_from_base_temp(Pointer value, int temptype, Pointer temp) { + var _result = _meos_d.temporal_from_base_temp(value, temptype, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_int_tint(int i, Pointer temp) { - var _result = _meos_c.tlt_int_tint(i, temp); + public static Pointer tinstant_copy(Pointer inst) { + var _result = _meos_d.tinstant_copy(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tlt_temporal_temporal(temp1, temp2); + public static Pointer tinstant_make(Pointer value, int temptype, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tinstant_make(value, temptype, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.tlt_text_ttext(txt, temp); + public static Pointer tinstant_make_free(Pointer value, int temptype, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tinstant_make_free(value, temptype, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tlt_tfloat_float(temp, d); + public static Pointer tsequence_copy(Pointer seq) { + var _result = _meos_d.tsequence_copy(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_tint_int(Pointer temp, int i) { - var _result = _meos_c.tlt_tint_int(temp, i); + public static Pointer tsequence_from_base_temp(Pointer value, int temptype, Pointer seq) { + var _result = _meos_d.tsequence_from_base_temp(value, temptype, seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tlt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.tlt_ttext_text(temp, txt); + public static Pointer tsequence_from_base_tstzset(Pointer value, int temptype, Pointer s) { + var _result = _meos_d.tsequence_from_base_tstzset(value, temptype, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.tne_bool_tbool(b, temp); + public static Pointer tsequence_from_base_tstzspan(Pointer value, int temptype, Pointer s, int interp) { + var _result = _meos_d.tsequence_from_base_tstzspan(value, temptype, s, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_float_tfloat(double d, Pointer temp) { - var _result = _meos_c.tne_float_tfloat(d, temp); + public static Pointer tsequence_make_exp(Pointer instants, int count, int maxcount, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { + var _result = _meos_d.tsequence_make_exp(instants, count, maxcount, lower_inc, upper_inc, interp, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_int_tint(int i, Pointer temp) { - var _result = _meos_c.tne_int_tint(i, temp); + public static Pointer tsequence_make_free(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { + var _result = _meos_d.tsequence_make_free(instants, count, lower_inc, upper_inc, interp, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.tne_tbool_bool(temp, b); + public static Pointer tsequenceset_copy(Pointer ss) { + var _result = _meos_d.tsequenceset_copy(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tne_temporal_temporal(temp1, temp2); + public static Pointer tseqsetarr_to_tseqset(Pointer seqsets, int count, int totalseqs) { + var _result = _meos_d.tseqsetarr_to_tseqset(seqsets, count, totalseqs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.tne_text_ttext(txt, temp); + public static Pointer tsequenceset_from_base_temp(Pointer value, int temptype, Pointer ss) { + var _result = _meos_d.tsequenceset_from_base_temp(value, temptype, ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tne_tfloat_float(temp, d); + public static Pointer tsequenceset_from_base_tstzspanset(Pointer value, int temptype, Pointer ss, int interp) { + var _result = _meos_d.tsequenceset_from_base_tstzspanset(value, temptype, ss, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_tint_int(Pointer temp, int i) { - var _result = _meos_c.tne_tint_int(temp, i); + public static Pointer tsequenceset_make_exp(Pointer sequences, int count, int maxcount, boolean normalize) { + var _result = _meos_d.tsequenceset_make_exp(sequences, count, maxcount, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.tne_ttext_text(temp, txt); + public static Pointer tsequenceset_make_free(Pointer sequences, int count, boolean normalize) { + var _result = _meos_d.tsequenceset_make_free(sequences, count, normalize); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_spans(Pointer temp, Pointer count) { - var _result = _meos_c.temporal_spans(temp, count); + public static void temporal_set_tstzspan(Pointer temp, Pointer s) { + _meos_d.temporal_set_tstzspan(temp, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_split_each_n_spans(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_c.temporal_split_each_n_spans(temp, elem_count, count); + public static void tinstant_set_tstzspan(Pointer inst, Pointer s) { + _meos_d.tinstant_set_tstzspan(inst, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer temporal_split_n_spans(Pointer temp, int span_count, Pointer count) { - var _result = _meos_c.temporal_split_n_spans(temp, span_count, count); + public static void tnumber_set_tbox(Pointer temp, Pointer box) { + _meos_d.tnumber_set_tbox(temp, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_split_each_n_tboxes(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_c.tnumber_split_each_n_tboxes(temp, elem_count, count); + public static void tnumberinst_set_tbox(Pointer inst, Pointer box) { + _meos_d.tnumberinst_set_tbox(inst, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_split_n_tboxes(Pointer temp, int box_count, Pointer count) { - var _result = _meos_c.tnumber_split_n_tboxes(temp, box_count, count); + public static void tnumberseq_set_tbox(Pointer seq, Pointer box) { + _meos_d.tnumberseq_set_tbox(seq, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_tboxes(Pointer temp, Pointer count) { - var _result = _meos_c.tnumber_tboxes(temp, count); + public static void tnumberseqset_set_tbox(Pointer ss, Pointer box) { + _meos_d.tnumberseqset_set_tbox(ss, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean adjacent_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.adjacent_numspan_tnumber(s, temp); + public static void tsequence_set_tstzspan(Pointer seq, Pointer s) { + _meos_d.tsequence_set_tstzspan(seq, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.adjacent_tbox_tnumber(box, temp); + public static void tsequenceset_set_tstzspan(Pointer ss, Pointer s) { + _meos_d.tsequenceset_set_tstzspan(ss, s); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean adjacent_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.adjacent_temporal_temporal(temp1, temp2); + public static Pointer temporal_end_inst(Pointer temp) { + var _result = _meos_d.temporal_end_inst(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.adjacent_temporal_tstzspan(temp, s); + public static int temporal_end_value(Pointer temp) { + var _result = _meos_d.temporal_end_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.adjacent_tnumber_numspan(temp, s); + public static Pointer temporal_inst_n(Pointer temp, int n) { + var _result = _meos_d.temporal_inst_n(temp, n); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.adjacent_tnumber_tbox(temp, box); + public static Pointer temporal_insts_p(Pointer temp, Pointer count) { + var _result = _meos_d.temporal_insts_p(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.adjacent_tnumber_tnumber(temp1, temp2); + public static Pointer temporal_max_inst_p(Pointer temp) { + var _result = _meos_d.temporal_max_inst_p(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.adjacent_tstzspan_temporal(s, temp); + public static int temporal_max_value(Pointer temp) { + var _result = _meos_d.temporal_max_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.contained_numspan_tnumber(s, temp); + public static long temporal_mem_size(Pointer temp) { + var _result = _meos_d.temporal_mem_size(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.contained_tbox_tnumber(box, temp); + public static Pointer temporal_min_inst_p(Pointer temp) { + var _result = _meos_d.temporal_min_inst_p(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contained_temporal_temporal(temp1, temp2); + public static int temporal_min_value(Pointer temp) { + var _result = _meos_d.temporal_min_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.contained_temporal_tstzspan(temp, s); + public static Pointer temporal_sequences_p(Pointer temp, Pointer count) { + var _result = _meos_d.temporal_sequences_p(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.contained_tnumber_numspan(temp, s); + public static void temporal_set_bbox(Pointer temp, Pointer box) { + _meos_d.temporal_set_bbox(temp, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean contained_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.contained_tnumber_tbox(temp, box); + public static Pointer temporal_start_inst(Pointer temp) { + var _result = _meos_d.temporal_start_inst(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contained_tnumber_tnumber(temp1, temp2); + public static int temporal_start_value(Pointer temp) { + var _result = _meos_d.temporal_start_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.contained_tstzspan_temporal(s, temp); + public static Pointer temporal_values_p(Pointer temp, Pointer count) { + var _result = _meos_d.temporal_values_p(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.contains_numspan_tnumber(s, temp); + public static Pointer temporal_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.temporal_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean contains_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.contains_tbox_tnumber(box, temp); + public static Pointer temporal_values(Pointer temp, Pointer count) { + var _result = _meos_d.temporal_values(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.contains_temporal_tstzspan(temp, s); + public static int tinstant_hash(Pointer inst) { + var _result = _meos_d.tinstant_hash(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contains_temporal_temporal(temp1, temp2); + public static Pointer tinstant_insts(Pointer inst, Pointer count) { + var _result = _meos_d.tinstant_insts(inst, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.contains_tnumber_numspan(temp, s); + public static void tinstant_set_bbox(Pointer inst, Pointer box) { + _meos_d.tinstant_set_bbox(inst, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean contains_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.contains_tnumber_tbox(temp, box); + public static Pointer tinstant_time(Pointer inst) { + var _result = _meos_d.tinstant_time(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contains_tnumber_tnumber(temp1, temp2); + public static Pointer tinstant_timestamps(Pointer inst, Pointer count) { + var _result = _meos_d.tinstant_timestamps(inst, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.contains_tstzspan_temporal(s, temp); + public static int tinstant_value_p(Pointer inst) { + var _result = _meos_d.tinstant_value_p(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.overlaps_numspan_tnumber(s, temp); + public static int tinstant_value(Pointer inst) { + var _result = _meos_d.tinstant_value(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.overlaps_tbox_tnumber(box, temp); + public static Pointer tinstant_value_at_timestamptz(Pointer inst, OffsetDateTime t) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + var t_new = t.toEpochSecond(); + out = _meos_d.tinstant_value_at_timestamptz(inst, t_new, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overlaps_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overlaps_temporal_temporal(temp1, temp2); + public static Pointer tinstant_values_p(Pointer inst, Pointer count) { + var _result = _meos_d.tinstant_values_p(inst, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.overlaps_temporal_tstzspan(temp, s); + public static void tnumber_set_span(Pointer temp, Pointer span) { + _meos_d.tnumber_set_span(temp, span); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.overlaps_tnumber_numspan(temp, s); + public static Pointer tnumberinst_valuespans(Pointer inst) { + var _result = _meos_d.tnumberinst_valuespans(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.overlaps_tnumber_tbox(temp, box); + public static double tnumberseq_avg_val(Pointer seq) { + var _result = _meos_d.tnumberseq_avg_val(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overlaps_tnumber_tnumber(temp1, temp2); + public static Pointer tnumberseq_valuespans(Pointer seq) { + var _result = _meos_d.tnumberseq_valuespans(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.overlaps_tstzspan_temporal(s, temp); + public static double tnumberseqset_avg_val(Pointer ss) { + var _result = _meos_d.tnumberseqset_avg_val(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.same_numspan_tnumber(s, temp); + public static Pointer tnumberseqset_valuespans(Pointer ss) { + var _result = _meos_d.tnumberseqset_valuespans(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.same_tbox_tnumber(box, temp); + public static Pointer tsequence_duration(Pointer seq) { + var _result = _meos_d.tsequence_duration(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.same_temporal_temporal(temp1, temp2); + public static OffsetDateTime tsequence_end_timestamptz(Pointer seq) { + var _result = _meos_d.tsequence_end_timestamptz(seq); MeosErrorHandler.checkError(); - return _result; + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static boolean same_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.same_temporal_tstzspan(temp, s); + public static int tsequence_hash(Pointer seq) { + var _result = _meos_d.tsequence_hash(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.same_tnumber_numspan(temp, s); + public static Pointer tsequence_insts_p(Pointer seq) { + var _result = _meos_d.tsequence_insts_p(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.same_tnumber_tbox(temp, box); + public static Pointer tsequence_max_inst_p(Pointer seq) { + var _result = _meos_d.tsequence_max_inst_p(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.same_tnumber_tnumber(temp1, temp2); + public static int tsequence_max_val(Pointer seq) { + var _result = _meos_d.tsequence_max_val(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.same_tstzspan_temporal(s, temp); + public static Pointer tsequence_min_inst_p(Pointer seq) { + var _result = _meos_d.tsequence_min_inst_p(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.after_tbox_tnumber(box, temp); + public static int tsequence_min_val(Pointer seq) { + var _result = _meos_d.tsequence_min_val(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.after_temporal_tstzspan(temp, s); + public static Pointer tsequence_segments(Pointer seq, Pointer count) { + var _result = _meos_d.tsequence_segments(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.after_temporal_temporal(temp1, temp2); + public static Pointer tsequence_seqs(Pointer seq, Pointer count) { + var _result = _meos_d.tsequence_seqs(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.after_tnumber_tbox(temp, box); + public static OffsetDateTime tsequence_start_timestamptz(Pointer seq) { + var _result = _meos_d.tsequence_start_timestamptz(seq); MeosErrorHandler.checkError(); - return _result; + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static boolean after_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.after_tnumber_tnumber(temp1, temp2); + public static Pointer tsequence_time(Pointer seq) { + var _result = _meos_d.tsequence_time(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.after_tstzspan_temporal(s, temp); + public static Pointer tsequence_timestamps(Pointer seq, Pointer count) { + var _result = _meos_d.tsequence_timestamps(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.before_tbox_tnumber(box, temp); + public static Pointer tsequence_value_at_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + var t_new = t.toEpochSecond(); + out = _meos_d.tsequence_value_at_timestamptz(seq, t_new, strict, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean before_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.before_temporal_tstzspan(temp, s); + public static Pointer tsequence_values_p(Pointer seq, Pointer count) { + var _result = _meos_d.tsequence_values_p(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.before_temporal_temporal(temp1, temp2); + public static Pointer tsequenceset_duration(Pointer ss, boolean boundspan) { + var _result = _meos_d.tsequenceset_duration(ss, boundspan); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.before_tnumber_tbox(temp, box); + public static OffsetDateTime tsequenceset_end_timestamptz(Pointer ss) { + var _result = _meos_d.tsequenceset_end_timestamptz(ss); MeosErrorHandler.checkError(); - return _result; + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static boolean before_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.before_tnumber_tnumber(temp1, temp2); + public static int tsequenceset_hash(Pointer ss) { + var _result = _meos_d.tsequenceset_hash(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.before_tstzspan_temporal(s, temp); + public static Pointer tsequenceset_inst_n(Pointer ss, int n) { + var _result = _meos_d.tsequenceset_inst_n(ss, n); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.left_tbox_tnumber(box, temp); + public static Pointer tsequenceset_insts_p(Pointer ss) { + var _result = _meos_d.tsequenceset_insts_p(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.left_numspan_tnumber(s, temp); + public static Pointer tsequenceset_max_inst_p(Pointer ss) { + var _result = _meos_d.tsequenceset_max_inst_p(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.left_tnumber_numspan(temp, s); + public static int tsequenceset_max_val(Pointer ss) { + var _result = _meos_d.tsequenceset_max_val(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.left_tnumber_tbox(temp, box); + public static Pointer tsequenceset_min_inst_p(Pointer ss) { + var _result = _meos_d.tsequenceset_min_inst_p(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.left_tnumber_tnumber(temp1, temp2); + public static int tsequenceset_min_val(Pointer ss) { + var _result = _meos_d.tsequenceset_min_val(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.overafter_tbox_tnumber(box, temp); + public static int tsequenceset_num_instants(Pointer ss) { + var _result = _meos_d.tsequenceset_num_instants(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.overafter_temporal_tstzspan(temp, s); + public static int tsequenceset_num_timestamps(Pointer ss) { + var _result = _meos_d.tsequenceset_num_timestamps(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overafter_temporal_temporal(temp1, temp2); + public static Pointer tsequenceset_segments(Pointer ss, Pointer count) { + var _result = _meos_d.tsequenceset_segments(ss, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.overafter_tnumber_tbox(temp, box); + public static Pointer tsequenceset_sequences_p(Pointer ss) { + var _result = _meos_d.tsequenceset_sequences_p(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overafter_tnumber_tnumber(temp1, temp2); + public static OffsetDateTime tsequenceset_start_timestamptz(Pointer ss) { + var _result = _meos_d.tsequenceset_start_timestamptz(ss); MeosErrorHandler.checkError(); - return _result; + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static boolean overafter_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.overafter_tstzspan_temporal(s, temp); + public static Pointer tsequenceset_time(Pointer ss) { + var _result = _meos_d.tsequenceset_time(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.overbefore_tbox_tnumber(box, temp); + public static Pointer tsequenceset_timestamptz_n(Pointer ss, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.tsequenceset_timestamptz_n(ss, n, result); MeosErrorHandler.checkError(); - return _result; + return out ? result : null; } @SuppressWarnings("unused") - public static boolean overbefore_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_c.overbefore_temporal_tstzspan(temp, s); + public static Pointer tsequenceset_timestamps(Pointer ss, Pointer count) { + var _result = _meos_d.tsequenceset_timestamps(ss, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overbefore_temporal_temporal(temp1, temp2); + public static Pointer tsequenceset_value_at_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + var t_new = t.toEpochSecond(); + out = _meos_d.tsequenceset_value_at_timestamptz(ss, t_new, strict, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overbefore_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.overbefore_tnumber_tbox(temp, box); + public static Pointer tsequenceset_value_n(Pointer ss, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.tsequenceset_value_n(ss, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overbefore_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overbefore_tnumber_tnumber(temp1, temp2); + public static Pointer tsequenceset_values_p(Pointer ss, Pointer count) { + var _result = _meos_d.tsequenceset_values_p(ss, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_c.overbefore_tstzspan_temporal(s, temp); + public static void temporal_restart(Pointer temp, int count) { + _meos_d.temporal_restart(temp, count); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean overleft_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.overleft_numspan_tnumber(s, temp); + public static Pointer temporal_tsequence(Pointer temp, int interp) { + var _result = _meos_d.temporal_tsequence(temp, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.overleft_tbox_tnumber(box, temp); + public static Pointer temporal_tsequenceset(Pointer temp, int interp) { + var _result = _meos_d.temporal_tsequenceset(temp, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.overleft_tnumber_numspan(temp, s); + public static Pointer tinstant_shift_time(Pointer inst, Pointer interv) { + var _result = _meos_d.tinstant_shift_time(inst, interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.overleft_tnumber_tbox(temp, box); + public static Pointer tinstant_to_tsequence(Pointer inst, int interp) { + var _result = _meos_d.tinstant_to_tsequence(inst, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overleft_tnumber_tnumber(temp1, temp2); + public static Pointer tinstant_to_tsequence_free(Pointer inst, int interp) { + var _result = _meos_d.tinstant_to_tsequence_free(inst, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.overright_numspan_tnumber(s, temp); + public static Pointer tinstant_to_tsequenceset(Pointer inst, int interp) { + var _result = _meos_d.tinstant_to_tsequenceset(inst, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.overright_tbox_tnumber(box, temp); + public static Pointer tnumber_shift_scale_value(Pointer temp, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_d.tnumber_shift_scale_value(temp, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.overright_tnumber_numspan(temp, s); + public static Pointer tnumberinst_shift_value(Pointer inst, Pointer shift) { + var _result = _meos_d.tnumberinst_shift_value(inst, shift); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.overright_tnumber_tbox(temp, box); + public static Pointer tnumberseq_shift_scale_value(Pointer seq, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_d.tnumberseq_shift_scale_value(seq, shift, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overright_tnumber_tnumber(temp1, temp2); + public static Pointer tnumberseqset_shift_scale_value(Pointer ss, Pointer start, Pointer width, boolean hasshift, boolean haswidth) { + var _result = _meos_d.tnumberseqset_shift_scale_value(ss, start, width, hasshift, haswidth); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_c.right_numspan_tnumber(s, temp); + public static void tsequence_restart(Pointer seq, int count) { + _meos_d.tsequence_restart(seq, count); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean right_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_c.right_tbox_tnumber(box, temp); + public static Pointer tsequence_set_interp(Pointer seq, int interp) { + var _result = _meos_d.tsequence_set_interp(seq, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_c.right_tnumber_numspan(temp, s); + public static Pointer tsequence_shift_scale_time(Pointer seq, Pointer shift, Pointer duration) { + var _result = _meos_d.tsequence_shift_scale_time(seq, shift, duration); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.right_tnumber_tbox(temp, box); + public static Pointer tsequence_subseq(Pointer seq, int from, int to, boolean lower_inc, boolean upper_inc) { + var _result = _meos_d.tsequence_subseq(seq, from, to, lower_inc, upper_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.right_tnumber_tnumber(temp1, temp2); + public static Pointer tsequence_to_tinstant(Pointer seq) { + var _result = _meos_d.tsequence_to_tinstant(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tand_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.tand_bool_tbool(b, temp); + public static Pointer tsequence_to_tsequenceset(Pointer seq) { + var _result = _meos_d.tsequence_to_tsequenceset(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tand_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.tand_tbool_bool(temp, b); + public static Pointer tsequence_to_tsequenceset_free(Pointer seq) { + var _result = _meos_d.tsequence_to_tsequenceset_free(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tand_tbool_tbool(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tand_tbool_tbool(temp1, temp2); + public static Pointer tsequence_to_tsequenceset_interp(Pointer seq, int interp) { + var _result = _meos_d.tsequence_to_tsequenceset_interp(seq, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_when_true(Pointer temp) { - var _result = _meos_c.tbool_when_true(temp); + public static void tsequenceset_restart(Pointer ss, int count) { + _meos_d.tsequenceset_restart(ss, count); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnot_tbool(Pointer temp) { - var _result = _meos_c.tnot_tbool(temp); + public static Pointer tsequenceset_set_interp(Pointer ss, int interp) { + var _result = _meos_d.tsequenceset_set_interp(ss, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tor_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_c.tor_bool_tbool(b, temp); + public static Pointer tsequenceset_shift_scale_time(Pointer ss, Pointer start, Pointer duration) { + var _result = _meos_d.tsequenceset_shift_scale_time(ss, start, duration); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tor_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_c.tor_tbool_bool(temp, b); + public static Pointer tsequenceset_to_discrete(Pointer ss) { + var _result = _meos_d.tsequenceset_to_discrete(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tor_tbool_tbool(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tor_tbool_tbool(temp1, temp2); + public static Pointer tsequenceset_to_linear(Pointer ss) { + var _result = _meos_d.tsequenceset_to_linear(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_c.add_float_tfloat(d, tnumber); + public static Pointer tsequenceset_to_step(Pointer ss) { + var _result = _meos_d.tsequenceset_to_step(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_int_tint(int i, Pointer tnumber) { - var _result = _meos_c.add_int_tint(i, tnumber); + public static Pointer tsequenceset_to_tinstant(Pointer ss) { + var _result = _meos_d.tsequenceset_to_tinstant(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_c.add_tfloat_float(tnumber, d); + public static Pointer tsequenceset_to_tsequence(Pointer ss) { + var _result = _meos_d.tsequenceset_to_tsequence(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_tint_int(Pointer tnumber, int i) { - var _result = _meos_c.add_tint_int(tnumber, i); + public static Pointer tinstant_merge(Pointer inst1, Pointer inst2) { + var _result = _meos_d.tinstant_merge(inst1, inst2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer add_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_c.add_tnumber_tnumber(tnumber1, tnumber2); + public static Pointer tinstant_merge_array(Pointer instants, int count) { + var _result = _meos_d.tinstant_merge_array(instants, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer div_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_c.div_float_tfloat(d, tnumber); + public static Pointer tsequence_append_tinstant(Pointer seq, Pointer inst, double maxdist, Pointer maxt, boolean expand) { + var _result = _meos_d.tsequence_append_tinstant(seq, inst, maxdist, maxt, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer div_int_tint(int i, Pointer tnumber) { - var _result = _meos_c.div_int_tint(i, tnumber); + public static Pointer tsequence_append_tsequence(Pointer seq1, Pointer seq2, boolean expand) { + var _result = _meos_d.tsequence_append_tsequence(seq1, seq2, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer div_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_c.div_tfloat_float(tnumber, d); + public static Pointer tsequence_delete_timestamptz(Pointer seq, OffsetDateTime t, boolean connect) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequence_delete_timestamptz(seq, t_new, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer div_tint_int(Pointer tnumber, int i) { - var _result = _meos_c.div_tint_int(tnumber, i); + public static Pointer tsequence_delete_tstzset(Pointer seq, Pointer s, boolean connect) { + var _result = _meos_d.tsequence_delete_tstzset(seq, s, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer div_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_c.div_tnumber_tnumber(tnumber1, tnumber2); + public static Pointer tsequence_delete_tstzspan(Pointer seq, Pointer s, boolean connect) { + var _result = _meos_d.tsequence_delete_tstzspan(seq, s, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mult_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_c.mult_float_tfloat(d, tnumber); + public static Pointer tsequence_delete_tstzspanset(Pointer seq, Pointer ss, boolean connect) { + var _result = _meos_d.tsequence_delete_tstzspanset(seq, ss, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mult_int_tint(int i, Pointer tnumber) { - var _result = _meos_c.mult_int_tint(i, tnumber); + public static Pointer tsequence_insert(Pointer seq1, Pointer seq2, boolean connect) { + var _result = _meos_d.tsequence_insert(seq1, seq2, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mult_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_c.mult_tfloat_float(tnumber, d); + public static Pointer tsequence_merge(Pointer seq1, Pointer seq2) { + var _result = _meos_d.tsequence_merge(seq1, seq2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mult_tint_int(Pointer tnumber, int i) { - var _result = _meos_c.mult_tint_int(tnumber, i); + public static Pointer tsequence_merge_array(Pointer sequences, int count) { + var _result = _meos_d.tsequence_merge_array(sequences, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer mult_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_c.mult_tnumber_tnumber(tnumber1, tnumber2); + public static Pointer tsequenceset_append_tinstant(Pointer ss, Pointer inst, double maxdist, Pointer maxt, boolean expand) { + var _result = _meos_d.tsequenceset_append_tinstant(ss, inst, maxdist, maxt, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer sub_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_c.sub_float_tfloat(d, tnumber); + public static Pointer tsequenceset_append_tsequence(Pointer ss, Pointer seq, boolean expand) { + var _result = _meos_d.tsequenceset_append_tsequence(ss, seq, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer sub_int_tint(int i, Pointer tnumber) { - var _result = _meos_c.sub_int_tint(i, tnumber); + public static Pointer tsequenceset_delete_timestamptz(Pointer ss, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequenceset_delete_timestamptz(ss, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer sub_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_c.sub_tfloat_float(tnumber, d); + public static Pointer tsequenceset_delete_tstzset(Pointer ss, Pointer s) { + var _result = _meos_d.tsequenceset_delete_tstzset(ss, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer sub_tint_int(Pointer tnumber, int i) { - var _result = _meos_c.sub_tint_int(tnumber, i); + public static Pointer tsequenceset_delete_tstzspan(Pointer ss, Pointer s) { + var _result = _meos_d.tsequenceset_delete_tstzspan(ss, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer sub_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_c.sub_tnumber_tnumber(tnumber1, tnumber2); + public static Pointer tsequenceset_delete_tstzspanset(Pointer ss, Pointer ps) { + var _result = _meos_d.tsequenceset_delete_tstzspanset(ss, ps); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_derivative(Pointer temp) { - var _result = _meos_c.temporal_derivative(temp); + public static Pointer tsequenceset_insert(Pointer ss1, Pointer ss2) { + var _result = _meos_d.tsequenceset_insert(ss1, ss2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_exp(Pointer temp) { - var _result = _meos_c.tfloat_exp(temp); + public static Pointer tsequenceset_merge(Pointer ss1, Pointer ss2) { + var _result = _meos_d.tsequenceset_merge(ss1, ss2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_ln(Pointer temp) { - var _result = _meos_c.tfloat_ln(temp); + public static Pointer tsequenceset_merge_array(Pointer seqsets, int count) { + var _result = _meos_d.tsequenceset_merge_array(seqsets, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_log10(Pointer temp) { - var _result = _meos_c.tfloat_log10(temp); + public static void tsequence_expand_bbox(Pointer seq, Pointer inst) { + _meos_d.tsequence_expand_bbox(seq, inst); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_abs(Pointer temp) { - var _result = _meos_c.tnumber_abs(temp); + public static void tsequence_set_bbox(Pointer seq, Pointer box) { + _meos_d.tsequence_set_bbox(seq, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_trend(Pointer temp) { - var _result = _meos_c.tnumber_trend(temp); + public static void tsequenceset_expand_bbox(Pointer ss, Pointer seq) { + _meos_d.tsequenceset_expand_bbox(ss, seq); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static double float_angular_difference(double degrees1, double degrees2) { - var _result = _meos_c.float_angular_difference(degrees1, degrees2); + public static void tsequenceset_set_bbox(Pointer ss, Pointer box) { + _meos_d.tsequenceset_set_bbox(ss, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_angular_difference(Pointer temp) { - var _result = _meos_c.tnumber_angular_difference(temp); + public static Pointer tcontseq_after_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tcontseq_after_timestamptz(seq, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_delta_value(Pointer temp) { - var _result = _meos_c.tnumber_delta_value(temp); + public static Pointer tcontseq_before_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tcontseq_before_timestamptz(seq, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_c.textcat_text_ttext(txt, temp); + public static Pointer tcontseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc) { + var _result = _meos_d.tcontseq_restrict_minmax(seq, min, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_c.textcat_ttext_text(temp, txt); + public static Pointer tdiscseq_after_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tdiscseq_after_timestamptz(seq, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer textcat_ttext_ttext(Pointer temp1, Pointer temp2) { - var _result = _meos_c.textcat_ttext_ttext(temp1, temp2); + public static Pointer tdiscseq_before_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tdiscseq_before_timestamptz(seq, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_initcap(Pointer temp) { - var _result = _meos_c.ttext_initcap(temp); + public static Pointer tdiscseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc) { + var _result = _meos_d.tdiscseq_restrict_minmax(seq, min, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_upper(Pointer temp) { - var _result = _meos_c.ttext_upper(temp); + public static boolean temporal_bbox_restrict_set(Pointer temp, Pointer set) { + var _result = _meos_d.temporal_bbox_restrict_set(temp, set); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_lower(Pointer temp) { - var _result = _meos_c.ttext_lower(temp); + public static Pointer temporal_restrict_minmax(Pointer temp, boolean min, boolean atfunc) { + var _result = _meos_d.temporal_restrict_minmax(temp, min, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdistance_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.tdistance_tfloat_float(temp, d); + public static Pointer temporal_restrict_timestamptz(Pointer temp, OffsetDateTime t, boolean atfunc) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.temporal_restrict_timestamptz(temp, t_new, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdistance_tint_int(Pointer temp, int i) { - var _result = _meos_c.tdistance_tint_int(temp, i); + public static Pointer temporal_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.temporal_restrict_tstzset(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdistance_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tdistance_tnumber_tnumber(temp1, temp2); + public static Pointer temporal_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.temporal_restrict_tstzspan(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tboxfloat_tboxfloat(Pointer box1, Pointer box2) { - var _result = _meos_c.nad_tboxfloat_tboxfloat(box1, box2); + public static Pointer temporal_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc) { + var _result = _meos_d.temporal_restrict_tstzspanset(temp, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int nad_tboxint_tboxint(Pointer box1, Pointer box2) { - var _result = _meos_c.nad_tboxint_tboxint(box1, box2); + public static Pointer temporal_restrict_value(Pointer temp, Pointer value, boolean atfunc) { + var _result = _meos_d.temporal_restrict_value(temp, value, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tfloat_float(Pointer temp, double d) { - var _result = _meos_c.nad_tfloat_float(temp, d); + public static Pointer temporal_restrict_values(Pointer temp, Pointer set, boolean atfunc) { + var _result = _meos_d.temporal_restrict_values(temp, set, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tfloat_tfloat(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nad_tfloat_tfloat(temp1, temp2); + public static Pointer temporal_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + var t_new = t.toEpochSecond(); + out = _meos_d.temporal_value_at_timestamptz(temp, t_new, strict, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static double nad_tfloat_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.nad_tfloat_tbox(temp, box); + public static Pointer tinstant_after_timestamptz(Pointer inst, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tinstant_after_timestamptz(inst, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int nad_tint_int(Pointer temp, int i) { - var _result = _meos_c.nad_tint_int(temp, i); + public static Pointer tinstant_before_timestamptz(Pointer inst, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tinstant_before_timestamptz(inst, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int nad_tint_tbox(Pointer temp, Pointer box) { - var _result = _meos_c.nad_tint_tbox(temp, box); + public static Pointer tinstant_restrict_tstzspan(Pointer inst, Pointer period, boolean atfunc) { + var _result = _meos_d.tinstant_restrict_tstzspan(inst, period, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int nad_tint_tint(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nad_tint_tint(temp1, temp2); + public static Pointer tinstant_restrict_tstzspanset(Pointer inst, Pointer ss, boolean atfunc) { + var _result = _meos_d.tinstant_restrict_tstzspanset(inst, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_tand_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tbool_tand_transfn(state, temp); + public static Pointer tinstant_restrict_timestamptz(Pointer inst, OffsetDateTime t, boolean atfunc) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tinstant_restrict_timestamptz(inst, t_new, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tbool_tor_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tbool_tor_transfn(state, temp); + public static Pointer tinstant_restrict_tstzset(Pointer inst, Pointer s, boolean atfunc) { + var _result = _meos_d.tinstant_restrict_tstzset(inst, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_extent_transfn(Pointer s, Pointer temp) { - var _result = _meos_c.temporal_extent_transfn(s, temp); + public static Pointer tinstant_restrict_value(Pointer inst, Pointer value, boolean atfunc) { + var _result = _meos_d.tinstant_restrict_value(inst, value, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_tagg_finalfn(Pointer state) { - var _result = _meos_c.temporal_tagg_finalfn(state); + public static Pointer tinstant_restrict_values(Pointer inst, Pointer set, boolean atfunc) { + var _result = _meos_d.tinstant_restrict_values(inst, set, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_tcount_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.temporal_tcount_transfn(state, temp); + public static Pointer tnumber_restrict_span(Pointer temp, Pointer span, boolean atfunc) { + var _result = _meos_d.tnumber_restrict_span(temp, span, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tfloat_tmax_transfn(state, temp); + public static Pointer tnumber_restrict_spanset(Pointer temp, Pointer ss, boolean atfunc) { + var _result = _meos_d.tnumber_restrict_spanset(temp, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tfloat_tmin_transfn(state, temp); + public static Pointer tnumberinst_restrict_span(Pointer inst, Pointer span, boolean atfunc) { + var _result = _meos_d.tnumberinst_restrict_span(inst, span, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_tsum_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tfloat_tsum_transfn(state, temp); + public static Pointer tnumberinst_restrict_spanset(Pointer inst, Pointer ss, boolean atfunc) { + var _result = _meos_d.tnumberinst_restrict_spanset(inst, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tfloat_wmax_transfn(state, temp, interv); + public static Pointer tnumberseqset_restrict_span(Pointer ss, Pointer span, boolean atfunc) { + var _result = _meos_d.tnumberseqset_restrict_span(ss, span, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tfloat_wmin_transfn(state, temp, interv); + public static Pointer tnumberseqset_restrict_spanset(Pointer ss, Pointer spanset, boolean atfunc) { + var _result = _meos_d.tnumberseqset_restrict_spanset(ss, spanset, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tfloat_wsum_transfn(state, temp, interv); + public static Pointer tsequence_at_timestamptz(Pointer seq, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequence_at_timestamptz(seq, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_tcount_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.timestamptz_tcount_transfn(state, t_new); + public static Pointer tsequence_restrict_tstzspan(Pointer seq, Pointer s, boolean atfunc) { + var _result = _meos_d.tsequence_restrict_tstzspan(seq, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tint_tmax_transfn(state, temp); + public static Pointer tsequence_restrict_tstzspanset(Pointer seq, Pointer ss, boolean atfunc) { + var _result = _meos_d.tsequence_restrict_tstzspanset(seq, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tint_tmin_transfn(state, temp); + public static Pointer tsequenceset_after_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequenceset_after_timestamptz(ss, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_tsum_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tint_tsum_transfn(state, temp); + public static Pointer tsequenceset_before_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequenceset_before_timestamptz(ss, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tint_wmax_transfn(state, temp, interv); + public static Pointer tsequenceset_restrict_minmax(Pointer ss, boolean min, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_minmax(ss, min, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tint_wmin_transfn(state, temp, interv); + public static Pointer tsequenceset_restrict_tstzspan(Pointer ss, Pointer s, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_tstzspan(ss, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tint_wsum_transfn(state, temp, interv); + public static Pointer tsequenceset_restrict_tstzspanset(Pointer ss, Pointer ps, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_tstzspanset(ss, ps, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_extent_transfn(Pointer box, Pointer temp) { - var _result = _meos_c.tnumber_extent_transfn(box, temp); + public static Pointer tsequenceset_restrict_timestamptz(Pointer ss, OffsetDateTime t, boolean atfunc) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tsequenceset_restrict_timestamptz(ss, t_new, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_tavg_finalfn(Pointer state) { - var _result = _meos_c.tnumber_tavg_finalfn(state); + public static Pointer tsequenceset_restrict_tstzset(Pointer ss, Pointer s, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_tstzset(ss, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_tavg_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tnumber_tavg_transfn(state, temp); + public static Pointer tsequenceset_restrict_value(Pointer ss, Pointer value, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_value(ss, value, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tnumber_wavg_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_c.tnumber_wavg_transfn(state, temp, interv); + public static Pointer tsequenceset_restrict_values(Pointer ss, Pointer s, boolean atfunc) { + var _result = _meos_d.tsequenceset_restrict_values(ss, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_tcount_transfn(Pointer state, Pointer s) { - var _result = _meos_c.tstzset_tcount_transfn(state, s); + public static int tinstant_cmp(Pointer inst1, Pointer inst2) { + var _result = _meos_d.tinstant_cmp(inst1, inst2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_tcount_transfn(Pointer state, Pointer s) { - var _result = _meos_c.tstzspan_tcount_transfn(state, s); + public static boolean tinstant_eq(Pointer inst1, Pointer inst2) { + var _result = _meos_d.tinstant_eq(inst1, inst2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_tcount_transfn(Pointer state, Pointer ss) { - var _result = _meos_c.tstzspanset_tcount_transfn(state, ss); + public static int tsequence_cmp(Pointer seq1, Pointer seq2) { + var _result = _meos_d.tsequence_cmp(seq1, seq2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.ttext_tmax_transfn(state, temp); + public static boolean tsequence_eq(Pointer seq1, Pointer seq2) { + var _result = _meos_d.tsequence_eq(seq1, seq2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttext_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.ttext_tmin_transfn(state, temp); + public static int tsequenceset_cmp(Pointer ss1, Pointer ss2) { + var _result = _meos_d.tsequenceset_cmp(ss1, ss2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_simplify_dp(Pointer temp, double eps_dist, boolean synchronize) { - var _result = _meos_c.temporal_simplify_dp(temp, eps_dist, synchronize); + public static boolean tsequenceset_eq(Pointer ss1, Pointer ss2) { + var _result = _meos_d.tsequenceset_eq(ss1, ss2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_simplify_max_dist(Pointer temp, double eps_dist, boolean synchronize) { - var _result = _meos_c.temporal_simplify_max_dist(temp, eps_dist, synchronize); + public static int always_eq_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_eq_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_simplify_min_dist(Pointer temp, double dist) { - var _result = _meos_c.temporal_simplify_min_dist(temp, dist); + public static int always_eq_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_eq_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_simplify_min_tdelta(Pointer temp, Pointer mint) { - var _result = _meos_c.temporal_simplify_min_tdelta(temp, mint); + public static int always_ne_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_ne_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_tprecision(Pointer temp, Pointer duration, OffsetDateTime origin) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_c.temporal_tprecision(temp, duration, origin_new); + public static int always_ne_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_ne_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_tsample(Pointer temp, Pointer duration, OffsetDateTime origin, int interp) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_c.temporal_tsample(temp, duration, origin_new, interp); + public static int always_ge_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_ge_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double temporal_dyntimewarp_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_dyntimewarp_distance(temp1, temp2); + public static int always_ge_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_ge_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_dyntimewarp_path(Pointer temp1, Pointer temp2, Pointer count) { - var _result = _meos_c.temporal_dyntimewarp_path(temp1, temp2, count); + public static int always_gt_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_gt_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double temporal_frechet_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_frechet_distance(temp1, temp2); + public static int always_gt_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_gt_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_frechet_path(Pointer temp1, Pointer temp2, Pointer count) { - var _result = _meos_c.temporal_frechet_path(temp1, temp2, count); + public static int always_le_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_le_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double temporal_hausdorff_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_c.temporal_hausdorff_distance(temp1, temp2); + public static int always_le_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_le_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_time_bins(Pointer temp, Pointer duration, OffsetDateTime origin, Pointer count) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_c.temporal_time_bins(temp, duration, origin_new, count); + public static int always_lt_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.always_lt_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer temporal_time_split(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.temporal_time_split(temp, duration, torigin_new, time_bins, count); + public static int always_lt_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.always_lt_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tfloat_time_boxes(temp, duration, torigin_new, count); + public static int ever_eq_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_eq_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_bins(Pointer temp, double vsize, double vorigin, Pointer count) { - var _result = _meos_c.tfloat_value_bins(temp, vsize, vorigin, count); + public static int ever_eq_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_eq_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_boxes(Pointer temp, double vsize, double vorigin, Pointer count) { - var _result = _meos_c.tfloat_value_boxes(temp, vsize, vorigin, count); + public static int ever_ne_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_ne_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_split(Pointer temp, double size, double origin, Pointer bins, Pointer count) { - var _result = _meos_c.tfloat_value_split(temp, size, origin, bins, count); + public static int ever_ne_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_ne_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_time_boxes(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tfloat_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); + public static int ever_ge_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_ge_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloat_value_time_split(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tfloat_value_time_split(temp, vsize, duration, vorigin, torigin_new, value_bins, time_bins, count); + public static int ever_ge_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_ge_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tfloatbox_time_tiles(box, duration, torigin_new, count); + public static int ever_gt_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_gt_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatbox_value_tiles(Pointer box, double vsize, double vorigin, Pointer count) { - var _result = _meos_c.tfloatbox_value_tiles(box, vsize, vorigin, count); + public static int ever_gt_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_gt_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tfloatbox_value_time_tiles(Pointer box, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tfloatbox_value_time_tiles(box, vsize, duration, vorigin, torigin_new, count); + public static int ever_le_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_le_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tint_time_boxes(temp, duration, torigin_new, count); + public static int ever_le_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_le_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_bins(Pointer temp, int vsize, int vorigin, Pointer count) { - var _result = _meos_c.tint_value_bins(temp, vsize, vorigin, count); + public static int ever_lt_base_temporal(Pointer value, Pointer temp) { + var _result = _meos_d.ever_lt_base_temporal(value, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_boxes(Pointer temp, int vsize, int vorigin, Pointer count) { - var _result = _meos_c.tint_value_boxes(temp, vsize, vorigin, count); + public static int ever_lt_temporal_base(Pointer temp, Pointer value) { + var _result = _meos_d.ever_lt_temporal_base(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_split(Pointer temp, int vsize, int vorigin, Pointer bins, Pointer count) { - var _result = _meos_c.tint_value_split(temp, vsize, vorigin, bins, count); + public static Pointer tnumberinst_abs(Pointer inst) { + var _result = _meos_d.tnumberinst_abs(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_time_boxes(Pointer temp, int vsize, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tint_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); + public static Pointer tnumberseq_abs(Pointer seq) { + var _result = _meos_d.tnumberseq_abs(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tint_value_time_split(Pointer temp, long size, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tint_value_time_split(temp, size, duration, vorigin, torigin_new, value_bins, time_bins, count); + public static Pointer tnumberseq_angular_difference(Pointer seq) { + var _result = _meos_d.tnumberseq_angular_difference(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tintbox_time_tiles(box, duration, torigin_new, count); + public static Pointer tnumberseq_delta_value(Pointer seq) { + var _result = _meos_d.tnumberseq_delta_value(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintbox_value_tiles(Pointer box, int xsize, int xorigin, Pointer count) { - var _result = _meos_d.tintbox_value_tiles(box, xsize, xorigin, count); + public static Pointer tnumberseqset_abs(Pointer ss) { + var _result = _meos_d.tnumberseqset_abs(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintbox_value_time_tiles(Pointer box, int xsize, Pointer duration, int xorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tintbox_value_time_tiles(box, xsize, duration, xorigin, torigin_new, count); + public static Pointer tnumberseqset_angular_difference(Pointer ss) { + var _result = _meos_d.tnumberseqset_angular_difference(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_as_ewkb(Pointer gs, String endian, Pointer size) { - var _result = _meos_d.geo_as_ewkb(gs, endian, size); + public static Pointer tnumberseqset_delta_value(Pointer ss) { + var _result = _meos_d.tnumberseqset_delta_value(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_as_ewkt(Pointer gs, int precision) { - var _result = _meos_d.geo_as_ewkt(gs, precision); + public static double distance_span_span_double(Pointer s1, Pointer s2) { + var _result = _meos_d.distance_span_span_double(s1, s2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_as_geojson(Pointer gs, int option, int precision, String srs) { - var _result = _meos_d.geo_as_geojson(gs, option, precision, srs); + public static double nad_tbox_tbox(Pointer box1, Pointer box2) { + var _result = _meos_d.nad_tbox_tbox(box1, box2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_as_hexewkb(Pointer gs, String endian) { - var _result = _meos_d.geo_as_hexewkb(gs, endian); + public static double nad_tnumber_number(Pointer temp, Pointer value) { + var _result = _meos_d.nad_tnumber_number(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_as_text(Pointer gs, int precision) { - var _result = _meos_d.geo_as_text(gs, precision); + public static double nad_tnumber_tbox(Pointer temp, Pointer box) { + var _result = _meos_d.nad_tnumber_tbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_from_ewkb(Pointer wkb, long wkb_size, int srid) { - var _result = _meos_d.geo_from_ewkb(wkb, wkb_size, srid); + public static double nad_tnumber_tnumber(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nad_tnumber_tnumber(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_from_geojson(String geojson) { - var _result = _meos_d.geo_from_geojson(geojson); + public static Pointer tdistance_tnumber_number(Pointer temp, Pointer value) { + var _result = _meos_d.tdistance_tnumber_number(temp, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_from_text(String wkt, int srid) { - var _result = _meos_d.geo_from_text(wkt, srid); + public static double tnumberinst_distance(Pointer inst1, Pointer inst2) { + var _result = _meos_d.tnumberinst_distance(inst1, inst2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_out(Pointer gs) { - var _result = _meos_d.geo_out(gs); + public static double tnumberseq_integral(Pointer seq) { + var _result = _meos_d.tnumberseq_integral(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geog_from_binary(String wkb_bytea) { - var _result = _meos_d.geog_from_binary(wkb_bytea); + public static double tnumberseq_twavg(Pointer seq) { + var _result = _meos_d.tnumberseq_twavg(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geog_from_hexewkb(String wkt) { - var _result = _meos_d.geog_from_hexewkb(wkt); + public static double tnumberseqset_integral(Pointer ss) { + var _result = _meos_d.tnumberseqset_integral(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geog_in(String str, int typmod) { - var _result = _meos_d.geog_in(str, typmod); + public static double tnumberseqset_twavg(Pointer ss) { + var _result = _meos_d.tnumberseqset_twavg(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_from_hexewkb(String wkt) { - var _result = _meos_d.geom_from_hexewkb(wkt); + public static Pointer temporal_compact(Pointer temp) { + var _result = _meos_d.temporal_compact(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_in(String str, int typmod) { - var _result = _meos_d.geom_in(str, typmod); + public static Pointer tsequence_compact(Pointer seq) { + var _result = _meos_d.tsequence_compact(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer box3d_make(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int srid) { - var _result = _meos_d.box3d_make(xmin, xmax, ymin, ymax, zmin, zmax, srid); + public static Pointer tsequenceset_compact(Pointer ss) { + var _result = _meos_d.tsequenceset_compact(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String box3d_out(Pointer box, int maxdd) { - var _result = _meos_d.box3d_out(box, maxdd); + public static Pointer temporal_skiplist_make() { + var _result = _meos_d.temporal_skiplist_make(); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer gbox_make(boolean hasz, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) { - var _result = _meos_d.gbox_make(hasz, xmin, xmax, ymin, ymax, zmin, zmax); + public static Pointer skiplist_make(long key_size, long value_size, Pointer comp_fn, Pointer merge_fn) { + var _result = _meos_d.skiplist_make(key_size, value_size, comp_fn, merge_fn); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String gbox_out(Pointer box, int maxdd) { - var _result = _meos_d.gbox_out(box, maxdd); + public static int skiplist_search(Pointer list, Pointer key, Pointer value) { + var _result = _meos_d.skiplist_search(list, key, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_copy(Pointer g) { - var _result = _meos_d.geo_copy(g); + public static void skiplist_free(Pointer list) { + _meos_d.skiplist_free(list); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geogpoint_make2d(int srid, double x, double y) { - var _result = _meos_d.geogpoint_make2d(srid, x, y); + public static void skiplist_splice(Pointer list, Pointer keys, Pointer values, int count, Pointer func, boolean crossings, int sktype) { + _meos_d.skiplist_splice(list, keys, values, count, func, crossings, sktype); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geogpoint_make3dz(int srid, double x, double y, double z) { - var _result = _meos_d.geogpoint_make3dz(srid, x, y, z); + public static void temporal_skiplist_splice(Pointer list, Pointer values, int count, Pointer func, boolean crossings) { + _meos_d.temporal_skiplist_splice(list, values, count, func, crossings); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geompoint_make2d(int srid, double x, double y) { - var _result = _meos_d.geompoint_make2d(srid, x, y); + public static Pointer skiplist_values(Pointer list) { + var _result = _meos_d.skiplist_values(list); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geompoint_make3dz(int srid, double x, double y, double z) { - var _result = _meos_d.geompoint_make3dz(srid, x, y, z); + public static Pointer skiplist_keys_values(Pointer list, Pointer values) { + var _result = _meos_d.skiplist_keys_values(list, values); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_to_geog(Pointer geom) { - var _result = _meos_d.geom_to_geog(geom); + public static Pointer temporal_app_tinst_transfn(Pointer state, Pointer inst, int interp, double maxdist, Pointer maxt) { + var _result = _meos_d.temporal_app_tinst_transfn(state, inst, interp, maxdist, maxt); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geog_to_geom(Pointer geog) { - var _result = _meos_d.geog_to_geom(geog); + public static Pointer temporal_app_tseq_transfn(Pointer state, Pointer seq) { + var _result = _meos_d.temporal_app_tseq_transfn(state, seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geo_is_empty(Pointer g) { - var _result = _meos_d.geo_is_empty(g); + public static Pointer span_bins(Pointer s, Pointer size, Pointer origin, Pointer count) { + var _result = _meos_d.span_bins(s, size, origin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geo_is_unitary(Pointer gs) { - var _result = _meos_d.geo_is_unitary(gs); + public static Pointer spanset_bins(Pointer ss, Pointer size, Pointer origin, Pointer count) { + var _result = _meos_d.spanset_bins(ss, size, origin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String geo_typename(int type) { - var _result = _meos_d.geo_typename(type); + public static Pointer tnumber_value_bins(Pointer temp, Pointer size, Pointer origin, Pointer count) { + var _result = _meos_d.tnumber_value_bins(temp, size, origin, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geog_area(Pointer g, boolean use_spheroid) { - var _result = _meos_d.geog_area(g, use_spheroid); + public static Pointer tnumber_value_time_boxes(Pointer temp, Pointer vsize, Pointer duration, Pointer vorigin, OffsetDateTime torigin, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_d.tnumber_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geog_centroid(Pointer g, boolean use_spheroid) { - var _result = _meos_d.geog_centroid(g, use_spheroid); + public static Pointer tnumber_value_split(Pointer temp, Pointer vsize, Pointer vorigin, Pointer bins, Pointer count) { + var _result = _meos_d.tnumber_value_split(temp, vsize, vorigin, bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geog_length(Pointer g, boolean use_spheroid) { - var _result = _meos_d.geog_length(g, use_spheroid); + public static Pointer tbox_get_value_time_tile(Pointer value, OffsetDateTime t, Pointer vsize, Pointer duration, Pointer vorigin, OffsetDateTime torigin, int basetype, int spantype) { + var t_new = t.toEpochSecond(); + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_d.tbox_get_value_time_tile(value, t_new, vsize, duration, vorigin, torigin_new, basetype, spantype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geog_perimeter(Pointer g, boolean use_spheroid) { - var _result = _meos_d.geog_perimeter(g, use_spheroid); + public static Pointer tnumber_value_time_split(Pointer temp, Pointer size, Pointer duration, Pointer vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { + var torigin_new = torigin.toEpochSecond(); + var _result = _meos_d.tnumber_value_time_split(temp, size, duration, vorigin, torigin_new, value_bins, time_bins, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_azimuth(Pointer gs1, Pointer gs2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.geom_azimuth(gs1, gs2, result); + public static Pointer proj_get_context() { + var _result = _meos_d.proj_get_context(); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static double geom_length(Pointer gs) { - var _result = _meos_d.geom_length(gs); + public static int datum_geo_round(Pointer value, Pointer size) { + var _result = _meos_d.datum_geo_round(value, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geom_perimeter(Pointer gs) { - var _result = _meos_d.geom_perimeter(gs); + public static Pointer point_round(Pointer gs, int maxdd) { + var _result = _meos_d.point_round(gs, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int line_numpoints(Pointer gs) { - var _result = _meos_d.line_numpoints(gs); + public static void stbox_set(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s, Pointer box) { + _meos_d.stbox_set(hasx, hasz, geodetic, srid, xmin, xmax, ymin, ymax, zmin, zmax, s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer line_point_n(Pointer geom, int n) { - var _result = _meos_d.line_point_n(geom, n); + public static void gbox_set_stbox(Pointer box, int srid, Pointer result) { + _meos_d.gbox_set_stbox(box, srid, result); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_reverse(Pointer gs) { - var _result = _meos_d.geo_reverse(gs); + public static boolean geo_set_stbox(Pointer gs, Pointer box) { + var _result = _meos_d.geo_set_stbox(gs, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_round(Pointer gs, int maxdd) { - var _result = _meos_d.geo_round(gs, maxdd); + public static void geoarr_set_stbox(Pointer values, int count, Pointer box) { + _meos_d.geoarr_set_stbox(values, count, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_set_srid(Pointer gs, int srid) { - var _result = _meos_d.geo_set_srid(gs, srid); + public static boolean spatial_set_stbox(Pointer d, int basetype, Pointer box) { + var _result = _meos_d.spatial_set_stbox(d, basetype, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int geo_srid(Pointer gs) { - var _result = _meos_d.geo_srid(gs); + public static void spatialset_set_stbox(Pointer set, Pointer box) { + _meos_d.spatialset_set_stbox(set, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_transform(Pointer geom, int srid_to) { - var _result = _meos_d.geo_transform(geom, srid_to); + public static void stbox_set_box3d(Pointer box, Pointer box3d) { + _meos_d.stbox_set_box3d(box, box3d); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_transform_pipeline(Pointer gs, String pipeline, int srid_to, boolean is_forward) { - var _result = _meos_d.geo_transform_pipeline(gs, pipeline, srid_to, is_forward); + public static void stbox_set_gbox(Pointer box, Pointer gbox) { + _meos_d.stbox_set_gbox(box, gbox); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_collect_garray(Pointer gsarr, int count) { - var _result = _meos_d.geo_collect_garray(gsarr, count); + public static void tstzset_set_stbox(Pointer s, Pointer box) { + _meos_d.tstzset_set_stbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_makeline_garray(Pointer gsarr, int count) { - var _result = _meos_d.geo_makeline_garray(gsarr, count); + public static void tstzspan_set_stbox(Pointer s, Pointer box) { + _meos_d.tstzspan_set_stbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int geo_num_points(Pointer gs) { - var _result = _meos_d.geo_num_points(gs); + public static void tstzspanset_set_stbox(Pointer s, Pointer box) { + _meos_d.tstzspanset_set_stbox(s, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static int geo_num_geos(Pointer gs) { - var _result = _meos_d.geo_num_geos(gs); + public static void stbox_expand(Pointer box1, Pointer box2) { + _meos_d.stbox_expand(box1, box2); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_geo_n(Pointer geom, int n) { - var _result = _meos_d.geo_geo_n(geom, n); + public static Pointer inter_stbox_stbox(Pointer box1, Pointer box2) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.inter_stbox_stbox(box1, box2, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static Pointer geo_pointarr(Pointer gs, Pointer count) { - var _result = _meos_d.geo_pointarr(gs, count); + public static Pointer stbox_geo(Pointer box) { + var _result = _meos_d.stbox_geo(box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_points(Pointer gs) { - var _result = _meos_d.geo_points(gs); + public static Pointer tgeogpointinst_from_mfjson(Pointer mfjson, int srid) { + var _result = _meos_d.tgeogpointinst_from_mfjson(mfjson, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_array_union(Pointer gsarr, int count) { - var _result = _meos_d.geom_array_union(gsarr, count); + public static Pointer tgeogpointinst_in(String str) { + var _result = _meos_d.tgeogpointinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_boundary(Pointer gs) { - var _result = _meos_d.geom_boundary(gs); + public static Pointer tgeogpointseq_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeogpointseq_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_buffer(Pointer gs, double size, String params) { - var _result = _meos_d.geom_buffer(gs, size, params); + public static Pointer tgeogpointseq_in(String str, int interp) { + var _result = _meos_d.tgeogpointseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_centroid(Pointer gs) { - var _result = _meos_d.geom_centroid(gs); + public static Pointer tgeogpointseqset_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeogpointseqset_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_convex_hull(Pointer gs) { - var _result = _meos_d.geom_convex_hull(gs); + public static Pointer tgeogpointseqset_in(String str) { + var _result = _meos_d.tgeogpointseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_difference2d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_difference2d(gs1, gs2); + public static Pointer tgeompointinst_from_mfjson(Pointer mfjson, int srid) { + var _result = _meos_d.tgeompointinst_from_mfjson(mfjson, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_intersection2d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_intersection2d(gs1, gs2); + public static Pointer tgeompointinst_in(String str) { + var _result = _meos_d.tgeompointinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_intersection2d_coll(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_intersection2d_coll(gs1, gs2); + public static Pointer tgeompointseq_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeompointseq_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_min_bounding_radius(Pointer geom, Pointer radius) { - var _result = _meos_d.geom_min_bounding_radius(geom, radius); + public static Pointer tgeompointseq_in(String str, int interp) { + var _result = _meos_d.tgeompointseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_shortestline2d(Pointer gs1, Pointer s2) { - var _result = _meos_d.geom_shortestline2d(gs1, s2); + public static Pointer tgeompointseqset_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeompointseqset_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_shortestline3d(Pointer gs1, Pointer s2) { - var _result = _meos_d.geom_shortestline3d(gs1, s2); + public static Pointer tgeompointseqset_in(String str) { + var _result = _meos_d.tgeompointseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geom_unary_union(Pointer gs, double prec) { - var _result = _meos_d.geom_unary_union(gs, prec); + public static Pointer tgeographyinst_from_mfjson(Pointer mfjson, int srid) { + var _result = _meos_d.tgeographyinst_from_mfjson(mfjson, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer line_interpolate_point(Pointer gs, double distance_fraction, boolean repeat) { - var _result = _meos_d.line_interpolate_point(gs, distance_fraction, repeat); + public static Pointer tgeographyinst_in(String str) { + var _result = _meos_d.tgeographyinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double line_locate_point(Pointer gs1, Pointer gs2) { - var _result = _meos_d.line_locate_point(gs1, gs2); + public static Pointer tgeographyseq_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeographyseq_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer line_substring(Pointer gs, double from, double to) { - var _result = _meos_d.line_substring(gs, from, to); + public static Pointer tgeographyseq_in(String str, int interp) { + var _result = _meos_d.tgeographyseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geog_dwithin(Pointer g1, Pointer g2, double tolerance, boolean use_spheroid) { - var _result = _meos_d.geog_dwithin(g1, g2, tolerance, use_spheroid); + public static Pointer tgeographyseqset_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeographyseqset_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geog_intersects(Pointer gs1, Pointer gs2, boolean use_spheroid) { - var _result = _meos_d.geog_intersects(gs1, gs2, use_spheroid); + public static Pointer tgeographyseqset_in(String str) { + var _result = _meos_d.tgeographyseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_contains(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_contains(gs1, gs2); + public static Pointer tgeometryinst_from_mfjson(Pointer mfjson, int srid) { + var _result = _meos_d.tgeometryinst_from_mfjson(mfjson, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_covers(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_covers(gs1, gs2); + public static Pointer tgeometryinst_in(String str) { + var _result = _meos_d.tgeometryinst_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_disjoint2d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_disjoint2d(gs1, gs2); + public static Pointer tgeometryseq_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeometryseq_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_dwithin2d(Pointer gs1, Pointer gs2, double tolerance) { - var _result = _meos_d.geom_dwithin2d(gs1, gs2, tolerance); + public static Pointer tgeometryseq_in(String str, int interp) { + var _result = _meos_d.tgeometryseq_in(str, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_dwithin3d(Pointer gs1, Pointer gs2, double tolerance) { - var _result = _meos_d.geom_dwithin3d(gs1, gs2, tolerance); + public static Pointer tgeometryseqset_from_mfjson(Pointer mfjson, int srid, int interp) { + var _result = _meos_d.tgeometryseqset_from_mfjson(mfjson, srid, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_intersects2d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_intersects2d(gs1, gs2); + public static Pointer tgeometryseqset_in(String str) { + var _result = _meos_d.tgeometryseqset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geom_intersects3d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_intersects3d(gs1, gs2); + public static void tspatial_set_stbox(Pointer temp, Pointer box) { + _meos_d.tspatial_set_stbox(temp, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean geom_relate_pattern(Pointer gs1, Pointer gs2, String patt) { - var _result = _meos_d.geom_relate_pattern(gs1, gs2, patt); + public static void tgeoinst_set_stbox(Pointer inst, Pointer box) { + _meos_d.tgeoinst_set_stbox(inst, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static boolean geom_touches(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_touches(gs1, gs2); + public static void tspatialseq_set_stbox(Pointer seq, Pointer box) { + _meos_d.tspatialseq_set_stbox(seq, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_stboxes(Pointer gs, Pointer count) { - var _result = _meos_d.geo_stboxes(gs, count); + public static void tspatialseqset_set_stbox(Pointer ss, Pointer box) { + _meos_d.tspatialseqset_set_stbox(ss, box); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_split_each_n_stboxes(Pointer gs, int elem_count, Pointer count) { - var _result = _meos_d.geo_split_each_n_stboxes(gs, elem_count, count); + public static Pointer tgeo_restrict_elevation(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.tgeo_restrict_elevation(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_split_n_stboxes(Pointer gs, int box_count, Pointer count) { - var _result = _meos_d.geo_split_n_stboxes(gs, box_count, count); + public static Pointer tgeo_restrict_geom(Pointer temp, Pointer gs, boolean atfunc) { + var _result = _meos_d.tgeo_restrict_geom(temp, gs, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geog_distance(Pointer g1, Pointer g2) { - var _result = _meos_d.geog_distance(g1, g2); + public static Pointer tgeo_restrict_stbox(Pointer temp, Pointer box, boolean border_inc, boolean atfunc) { + var _result = _meos_d.tgeo_restrict_stbox(temp, box, border_inc, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geom_distance2d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_distance2d(gs1, gs2); + public static Pointer tgeoinst_restrict_geom(Pointer inst, Pointer gs, boolean atfunc) { + var _result = _meos_d.tgeoinst_restrict_geom(inst, gs, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double geom_distance3d(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geom_distance3d(gs1, gs2); + public static Pointer tgeoinst_restrict_stbox(Pointer inst, Pointer box, boolean border_inc, boolean atfunc) { + var _result = _meos_d.tgeoinst_restrict_stbox(inst, box, border_inc, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int geo_equals(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geo_equals(gs1, gs2); + public static Pointer tgeoseq_restrict_geom(Pointer seq, Pointer gs, boolean atfunc) { + var _result = _meos_d.tgeoseq_restrict_geom(seq, gs, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean geo_same(Pointer gs1, Pointer gs2) { - var _result = _meos_d.geo_same(gs1, gs2); + public static Pointer tgeoseq_restrict_stbox(Pointer seq, Pointer box, boolean border_inc, boolean atfunc) { + var _result = _meos_d.tgeoseq_restrict_stbox(seq, box, border_inc, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geogset_in(String str) { - var _result = _meos_d.geogset_in(str); + public static Pointer tgeoseqset_restrict_geom(Pointer ss, Pointer gs, boolean atfunc) { + var _result = _meos_d.tgeoseqset_restrict_geom(ss, gs, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geomset_in(String str) { - var _result = _meos_d.geomset_in(str); + public static Pointer tgeoseqset_restrict_stbox(Pointer ss, Pointer box, boolean border_inc, boolean atfunc) { + var _result = _meos_d.tgeoseqset_restrict_stbox(ss, box, border_inc, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String spatialset_as_text(Pointer set, int maxdd) { - var _result = _meos_d.spatialset_as_text(set, maxdd); + public static int spatial_srid(Pointer d, int basetype) { + var _result = _meos_d.spatial_srid(d, basetype); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String spatialset_as_ewkt(Pointer set, int maxdd) { - var _result = _meos_d.spatialset_as_ewkt(set, maxdd); + public static boolean spatial_set_srid(Pointer d, int basetype, int srid) { + var _result = _meos_d.spatial_set_srid(d, basetype, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geoset_make(Pointer values, int count) { - var _result = _meos_d.geoset_make(values, count); + public static int tspatialinst_srid(Pointer inst) { + var _result = _meos_d.tspatialinst_srid(inst); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_to_set(Pointer gs) { - var _result = _meos_d.geo_to_set(gs); + public static Pointer tpointseq_azimuth(Pointer seq) { + var _result = _meos_d.tpointseq_azimuth(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geoset_end_value(Pointer s) { - var _result = _meos_d.geoset_end_value(s); + public static Pointer tpointseq_cumulative_length(Pointer seq, double prevlength) { + var _result = _meos_d.tpointseq_cumulative_length(seq, prevlength); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geoset_start_value(Pointer s) { - var _result = _meos_d.geoset_start_value(s); + public static boolean tpointseq_is_simple(Pointer seq) { + var _result = _meos_d.tpointseq_is_simple(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geoset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.geoset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); + public static double tpointseq_length(Pointer seq) { + var _result = _meos_d.tpointseq_length(seq); MeosErrorHandler.checkError(); - return out ? new_result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer geoset_values(Pointer s) { - var _result = _meos_d.geoset_values(s); + public static Pointer tpointseq_linear_trajectory(Pointer seq, boolean unary_union) { + var _result = _meos_d.tpointseq_linear_trajectory(seq, unary_union); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_geo_set(Pointer gs, Pointer s) { - var _result = _meos_d.contained_geo_set(gs, s); + public static Pointer tgeoseq_stboxes(Pointer seq, Pointer count) { + var _result = _meos_d.tgeoseq_stboxes(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_set_geo(Pointer s, Pointer gs) { - var _result = _meos_d.contains_set_geo(s, gs); + public static Pointer tgeoseq_split_n_stboxes(Pointer seq, int max_count, Pointer count) { + var _result = _meos_d.tgeoseq_split_n_stboxes(seq, max_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_union_transfn(Pointer state, Pointer gs) { - var _result = _meos_d.geo_union_transfn(state, gs); + public static Pointer tpointseqset_azimuth(Pointer ss) { + var _result = _meos_d.tpointseqset_azimuth(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_geo_set(Pointer gs, Pointer s) { - var _result = _meos_d.intersection_geo_set(gs, s); + public static Pointer tpointseqset_cumulative_length(Pointer ss) { + var _result = _meos_d.tpointseqset_cumulative_length(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_set_geo(Pointer s, Pointer gs) { - var _result = _meos_d.intersection_set_geo(s, gs); + public static boolean tpointseqset_is_simple(Pointer ss) { + var _result = _meos_d.tpointseqset_is_simple(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_geo_set(Pointer gs, Pointer s) { - var _result = _meos_d.minus_geo_set(gs, s); + public static double tpointseqset_length(Pointer ss) { + var _result = _meos_d.tpointseqset_length(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer minus_set_geo(Pointer s, Pointer gs) { - var _result = _meos_d.minus_set_geo(s, gs); + public static Pointer tgeoseqset_stboxes(Pointer ss, Pointer count) { + var _result = _meos_d.tgeoseqset_stboxes(ss, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_geo_set(Pointer gs, Pointer s) { - var _result = _meos_d.union_geo_set(gs, s); + public static Pointer tgeoseqset_split_n_stboxes(Pointer ss, int max_count, Pointer count) { + var _result = _meos_d.tgeoseqset_split_n_stboxes(ss, max_count, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_set_geo(Pointer s, Pointer gs) { - var _result = _meos_d.union_set_geo(s, gs); + public static Pointer tpoint_get_coord(Pointer temp, int coord) { + var _result = _meos_d.tpoint_get_coord(temp, coord); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spatialset_set_srid(Pointer s, int srid) { - var _result = _meos_d.spatialset_set_srid(s, srid); + public static Pointer tgeominst_tgeoginst(Pointer inst, boolean oper) { + var _result = _meos_d.tgeominst_tgeoginst(inst, oper); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int spatialset_srid(Pointer s) { - var _result = _meos_d.spatialset_srid(s); + public static Pointer tgeomseq_tgeogseq(Pointer seq, boolean oper) { + var _result = _meos_d.tgeomseq_tgeogseq(seq, oper); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spatialset_transform(Pointer s, int srid) { - var _result = _meos_d.spatialset_transform(s, srid); + public static Pointer tgeomseqset_tgeogseqset(Pointer ss, boolean oper) { + var _result = _meos_d.tgeomseqset_tgeogseqset(ss, oper); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spatialset_transform_pipeline(Pointer s, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_d.spatialset_transform_pipeline(s, pipelinestr, srid, is_forward); + public static Pointer tgeom_tgeog(Pointer temp, boolean oper) { + var _result = _meos_d.tgeom_tgeog(temp, oper); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String stbox_as_hexwkb(Pointer box, byte variant, Pointer size) { - var _result = _meos_d.stbox_as_hexwkb(box, variant, size); + public static Pointer tgeo_tpoint(Pointer temp, boolean oper) { + var _result = _meos_d.tgeo_tpoint(temp, oper); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_as_wkb(Pointer box, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_d.stbox_as_wkb(box, variant, size_out); + public static void tspatialinst_set_srid(Pointer inst, int srid) { + _meos_d.tspatialinst_set_srid(inst, srid); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer stbox_from_hexwkb(String hexwkb) { - var _result = _meos_d.stbox_from_hexwkb(hexwkb); + public static Pointer tpointseq_make_simple(Pointer seq, Pointer count) { + var _result = _meos_d.tpointseq_make_simple(seq, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_from_wkb(Pointer wkb, long size) { - var _result = _meos_d.stbox_from_wkb(wkb, size); + public static void tspatialseq_set_srid(Pointer seq, int srid) { + _meos_d.tspatialseq_set_srid(seq, srid); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer stbox_in(String str) { - var _result = _meos_d.stbox_in(str); + public static Pointer tpointseqset_make_simple(Pointer ss, Pointer count) { + var _result = _meos_d.tpointseqset_make_simple(ss, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String stbox_out(Pointer box, int maxdd) { - var _result = _meos_d.stbox_out(box, maxdd); + public static void tspatialseqset_set_srid(Pointer ss, int srid) { + _meos_d.tspatialseqset_set_srid(ss, srid); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer geo_timestamptz_to_stbox(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.geo_timestamptz_to_stbox(gs, t_new); + public static Pointer tpointseq_twcentroid(Pointer seq) { + var _result = _meos_d.tpointseq_twcentroid(seq); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_tstzspan_to_stbox(Pointer gs, Pointer s) { - var _result = _meos_d.geo_tstzspan_to_stbox(gs, s); + public static Pointer tpointseqset_twcentroid(Pointer ss) { + var _result = _meos_d.tpointseqset_twcentroid(ss); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_copy(Pointer box) { - var _result = _meos_d.stbox_copy(box); + public static String npoint_as_ewkt(Pointer np, int maxdd) { + var _result = _meos_d.npoint_as_ewkt(np, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_make(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s) { - var _result = _meos_d.stbox_make(hasx, hasz, geodetic, srid, xmin, xmax, ymin, ymax, zmin, zmax, s); + public static String npoint_as_hexwkb(Pointer np, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_d.npoint_as_hexwkb(np, variant, size_out); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_to_stbox(Pointer gs) { - var _result = _meos_d.geo_to_stbox(gs); + public static String npoint_as_text(Pointer np, int maxdd) { + var _result = _meos_d.npoint_as_text(np, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer spatialset_to_stbox(Pointer s) { - var _result = _meos_d.spatialset_to_stbox(s); + public static Pointer npoint_as_wkb(Pointer np, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_d.npoint_as_wkb(np, variant, size_out); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_to_box3d(Pointer box) { - var _result = _meos_d.stbox_to_box3d(box); + public static Pointer npoint_from_hexwkb(String hexwkb) { + var _result = _meos_d.npoint_from_hexwkb(hexwkb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_to_gbox(Pointer box) { - var _result = _meos_d.stbox_to_gbox(box); + public static Pointer npoint_from_wkb(Pointer wkb, long size) { + var _result = _meos_d.npoint_from_wkb(wkb, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_to_geo(Pointer box) { - var _result = _meos_d.stbox_to_geo(box); + public static Pointer npoint_in(String str) { + var _result = _meos_d.npoint_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_to_tstzspan(Pointer box) { - var _result = _meos_d.stbox_to_tstzspan(box); + public static String npoint_out(Pointer np, int maxdd) { + var _result = _meos_d.npoint_out(np, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer timestamptz_to_stbox(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.timestamptz_to_stbox(t_new); + public static Pointer nsegment_in(String str) { + var _result = _meos_d.nsegment_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzset_to_stbox(Pointer s) { - var _result = _meos_d.tstzset_to_stbox(s); + public static String nsegment_out(Pointer ns, int maxdd) { + var _result = _meos_d.nsegment_out(ns, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspan_to_stbox(Pointer s) { - var _result = _meos_d.tstzspan_to_stbox(s); + public static Pointer npoint_make(long rid, double pos) { + var _result = _meos_d.npoint_make(rid, pos); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tstzspanset_to_stbox(Pointer ss) { - var _result = _meos_d.tstzspanset_to_stbox(ss); + public static Pointer nsegment_make(long rid, double pos1, double pos2) { + var _result = _meos_d.nsegment_make(rid, pos1, pos2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double stbox_area(Pointer box, boolean spheroid) { - var _result = _meos_d.stbox_area(box, spheroid); + public static Pointer geompoint_to_npoint(Pointer gs) { + var _result = _meos_d.geompoint_to_npoint(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int stbox_hash(Pointer box) { - var _result = _meos_d.stbox_hash(box); + public static Pointer geom_to_nsegment(Pointer gs) { + var _result = _meos_d.geom_to_nsegment(gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static long stbox_hash_extended(Pointer box, long seed) { - var _result = _meos_d.stbox_hash_extended(box, seed); + public static Pointer npoint_to_geompoint(Pointer np) { + var _result = _meos_d.npoint_to_geompoint(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_hast(Pointer box) { - var _result = _meos_d.stbox_hast(box); + public static Pointer npoint_to_nsegment(Pointer np) { + var _result = _meos_d.npoint_to_nsegment(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_hasx(Pointer box) { - var _result = _meos_d.stbox_hasx(box); + public static Pointer npoint_to_stbox(Pointer np) { + var _result = _meos_d.npoint_to_stbox(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_hasz(Pointer box) { - var _result = _meos_d.stbox_hasz(box); + public static Pointer nsegment_to_geom(Pointer ns) { + var _result = _meos_d.nsegment_to_geom(ns); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_isgeodetic(Pointer box) { - var _result = _meos_d.stbox_isgeodetic(box); + public static Pointer nsegment_to_stbox(Pointer np) { + var _result = _meos_d.nsegment_to_stbox(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double stbox_perimeter(Pointer box, boolean spheroid) { - var _result = _meos_d.stbox_perimeter(box, spheroid); + public static int npoint_hash(Pointer np) { + var _result = _meos_d.npoint_hash(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_tmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.stbox_tmax(box, result); + public static long npoint_hash_extended(Pointer np, long seed) { + var _result = _meos_d.npoint_hash_extended(np, seed); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_tmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_d.stbox_tmax_inc(box, result); + public static double npoint_position(Pointer np) { + var _result = _meos_d.npoint_position(np); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_tmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.stbox_tmin(box, result); + public static long npoint_route(Pointer np) { + var _result = _meos_d.npoint_route(np); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_tmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_d.stbox_tmin_inc(box, result); + public static double nsegment_end_position(Pointer ns) { + var _result = _meos_d.nsegment_end_position(ns); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static double stbox_volume(Pointer box) { - var _result = _meos_d.stbox_volume(box); + public static long nsegment_route(Pointer ns) { + var _result = _meos_d.nsegment_route(ns); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_xmax(box, result); + public static double nsegment_start_position(Pointer ns) { + var _result = _meos_d.nsegment_start_position(ns); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_xmin(box, result); + public static boolean route_exists(long rid) { + var _result = _meos_d.route_exists(rid); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_ymax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_ymax(box, result); + public static Pointer route_geom(long rid) { + var _result = _meos_d.route_geom(rid); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_ymin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_ymin(box, result); + public static double route_length(long rid) { + var _result = _meos_d.route_length(rid); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_zmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_zmax(box, result); + public static Pointer npoint_round(Pointer np, int maxdd) { + var _result = _meos_d.npoint_round(np, maxdd); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_zmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.stbox_zmin(box, result); + public static Pointer nsegment_round(Pointer ns, int maxdd) { + var _result = _meos_d.nsegment_round(ns, maxdd); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer stbox_expand_space(Pointer box, double d) { - var _result = _meos_d.stbox_expand_space(box, d); + public static int get_srid_ways() { + var _result = _meos_d.get_srid_ways(); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_expand_time(Pointer box, Pointer interv) { - var _result = _meos_d.stbox_expand_time(box, interv); + public static int npoint_srid(Pointer np) { + var _result = _meos_d.npoint_srid(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_get_space(Pointer box) { - var _result = _meos_d.stbox_get_space(box); + public static int nsegment_srid(Pointer ns) { + var _result = _meos_d.nsegment_srid(ns); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_quad_split(Pointer box, Pointer count) { - var _result = _meos_d.stbox_quad_split(box, count); + public static Pointer npoint_timestamptz_to_stbox(Pointer np, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.npoint_timestamptz_to_stbox(np, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_round(Pointer box, int maxdd) { - var _result = _meos_d.stbox_round(box, maxdd); + public static Pointer npoint_tstzspan_to_stbox(Pointer np, Pointer s) { + var _result = _meos_d.npoint_tstzspan_to_stbox(np, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { - var _result = _meos_d.stbox_shift_scale_time(box, shift, duration); + public static int npoint_cmp(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_cmp(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stboxarr_round(Pointer boxarr, int count, int maxdd) { - var _result = _meos_d.stboxarr_round(boxarr, count, maxdd); + public static boolean npoint_eq(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_eq(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_set_srid(Pointer box, int srid) { - var _result = _meos_d.stbox_set_srid(box, srid); + public static boolean npoint_ge(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_ge(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int stbox_srid(Pointer box) { - var _result = _meos_d.stbox_srid(box); + public static boolean npoint_gt(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_gt(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_transform(Pointer box, int srid) { - var _result = _meos_d.stbox_transform(box, srid); + public static boolean npoint_le(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_le(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_transform_pipeline(Pointer box, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_d.stbox_transform_pipeline(box, pipelinestr, srid, is_forward); + public static boolean npoint_lt(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_lt(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.adjacent_stbox_stbox(box1, box2); + public static boolean npoint_ne(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_ne(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.contained_stbox_stbox(box1, box2); + public static boolean npoint_same(Pointer np1, Pointer np2) { + var _result = _meos_d.npoint_same(np1, np2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.contains_stbox_stbox(box1, box2); + public static int nsegment_cmp(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_cmp(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overlaps_stbox_stbox(box1, box2); + public static boolean nsegment_eq(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_eq(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.same_stbox_stbox(box1, box2); + public static boolean nsegment_ge(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_ge(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean above_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.above_stbox_stbox(box1, box2); + public static boolean nsegment_gt(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_gt(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.after_stbox_stbox(box1, box2); + public static boolean nsegment_le(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_le(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean back_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.back_stbox_stbox(box1, box2); + public static boolean nsegment_lt(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_lt(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.before_stbox_stbox(box1, box2); + public static boolean nsegment_ne(Pointer ns1, Pointer ns2) { + var _result = _meos_d.nsegment_ne(ns1, ns2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean below_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.below_stbox_stbox(box1, box2); + public static Pointer npointset_in(String str) { + var _result = _meos_d.npointset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean front_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.front_stbox_stbox(box1, box2); + public static String npointset_out(Pointer s, int maxdd) { + var _result = _meos_d.npointset_out(s, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.left_stbox_stbox(box1, box2); + public static Pointer npointset_make(Pointer values, int count) { + var _result = _meos_d.npointset_make(values, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overabove_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overabove_stbox_stbox(box1, box2); + public static Pointer npoint_to_set(Pointer np) { + var _result = _meos_d.npoint_to_set(np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overafter_stbox_stbox(box1, box2); + public static Pointer npointset_end_value(Pointer s) { + var _result = _meos_d.npointset_end_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overback_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overback_stbox_stbox(box1, box2); + public static Pointer npointset_routes(Pointer s) { + var _result = _meos_d.npointset_routes(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overbefore_stbox_stbox(box1, box2); + public static Pointer npointset_start_value(Pointer s) { + var _result = _meos_d.npointset_start_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbelow_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overbelow_stbox_stbox(box1, box2); + public static Pointer npointset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.npointset_value_n(s, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean overfront_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overfront_stbox_stbox(box1, box2); + public static Pointer npointset_values(Pointer s) { + var _result = _meos_d.npointset_values(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overleft_stbox_stbox(box1, box2); + public static boolean contained_npoint_set(Pointer np, Pointer s) { + var _result = _meos_d.contained_npoint_set(np, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.overright_stbox_stbox(box1, box2); + public static boolean contains_set_npoint(Pointer s, Pointer np) { + var _result = _meos_d.contains_set_npoint(s, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.right_stbox_stbox(box1, box2); + public static Pointer intersection_npoint_set(Pointer np, Pointer s) { + var _result = _meos_d.intersection_npoint_set(np, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer union_stbox_stbox(Pointer box1, Pointer box2, boolean strict) { - var _result = _meos_d.union_stbox_stbox(box1, box2, strict); + public static Pointer intersection_set_npoint(Pointer s, Pointer np) { + var _result = _meos_d.intersection_set_npoint(s, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer intersection_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.intersection_stbox_stbox(box1, box2); + public static Pointer minus_npoint_set(Pointer np, Pointer s) { + var _result = _meos_d.minus_npoint_set(np, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int stbox_cmp(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_cmp(box1, box2); + public static Pointer minus_set_npoint(Pointer s, Pointer np) { + var _result = _meos_d.minus_set_npoint(s, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_eq(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_eq(box1, box2); + public static Pointer npoint_union_transfn(Pointer state, Pointer np) { + var _result = _meos_d.npoint_union_transfn(state, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_ge(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_ge(box1, box2); + public static Pointer union_npoint_set(Pointer np, Pointer s) { + var _result = _meos_d.union_npoint_set(np, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_gt(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_gt(box1, box2); + public static Pointer union_set_npoint(Pointer s, Pointer np) { + var _result = _meos_d.union_set_npoint(s, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_le(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_le(box1, box2); + public static Pointer tnpoint_in(String str) { + var _result = _meos_d.tnpoint_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_lt(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_lt(box1, box2); + public static Pointer tnpoint_from_mfjson(String mfjson) { + var _result = _meos_d.tnpoint_from_mfjson(mfjson); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean stbox_ne(Pointer box1, Pointer box2) { - var _result = _meos_d.stbox_ne(box1, box2); + public static String tnpoint_out(Pointer temp, int maxdd) { + var _result = _meos_d.tnpoint_out(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeogpoint_from_mfjson(String str) { - var _result = _meos_d.tgeogpoint_from_mfjson(str); + public static Pointer tnpointinst_make(Pointer np, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tnpointinst_make(np, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeogpoint_in(String str) { - var _result = _meos_d.tgeogpoint_in(str); + public static Pointer tgeompoint_to_tnpoint(Pointer temp) { + var _result = _meos_d.tgeompoint_to_tnpoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeography_from_mfjson(String mfjson) { - var _result = _meos_d.tgeography_from_mfjson(mfjson); + public static Pointer tnpoint_to_tgeompoint(Pointer temp) { + var _result = _meos_d.tnpoint_to_tgeompoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeography_in(String str) { - var _result = _meos_d.tgeography_in(str); + public static Pointer tnpoint_cumulative_length(Pointer temp) { + var _result = _meos_d.tnpoint_cumulative_length(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeometry_from_mfjson(String str) { - var _result = _meos_d.tgeometry_from_mfjson(str); + public static double tnpoint_length(Pointer temp) { + var _result = _meos_d.tnpoint_length(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeometry_in(String str) { - var _result = _meos_d.tgeometry_in(str); + public static Pointer tnpoint_positions(Pointer temp, Pointer count) { + var _result = _meos_d.tnpoint_positions(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeompoint_from_mfjson(String str) { - var _result = _meos_d.tgeompoint_from_mfjson(str); + public static long tnpoint_route(Pointer temp) { + var _result = _meos_d.tnpoint_route(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeompoint_in(String str) { - var _result = _meos_d.tgeompoint_in(str); + public static Pointer tnpoint_routes(Pointer temp) { + var _result = _meos_d.tnpoint_routes(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tspatial_as_ewkt(Pointer temp, int maxdd) { - var _result = _meos_d.tspatial_as_ewkt(temp, maxdd); + public static Pointer tnpoint_speed(Pointer temp) { + var _result = _meos_d.tnpoint_speed(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tspatial_as_text(Pointer temp, int maxdd) { - var _result = _meos_d.tspatial_as_text(temp, maxdd); + public static Pointer tnpoint_trajectory(Pointer temp) { + var _result = _meos_d.tnpoint_trajectory(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static String tspatial_out(Pointer temp, int maxdd) { - var _result = _meos_d.tspatial_out(temp, maxdd); + public static Pointer tnpoint_twcentroid(Pointer temp) { + var _result = _meos_d.tnpoint_twcentroid(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_from_base_temp(Pointer gs, Pointer temp) { - var _result = _meos_d.tgeo_from_base_temp(gs, temp); + public static Pointer tnpoint_at_geom(Pointer temp, Pointer gs) { + var _result = _meos_d.tnpoint_at_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeoinst_make(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tgeoinst_make(gs, t_new); + public static Pointer tnpoint_at_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.tnpoint_at_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeoseq_from_base_tstzset(Pointer gs, Pointer s) { - var _result = _meos_d.tgeoseq_from_base_tstzset(gs, s); + public static Pointer tnpoint_at_npointset(Pointer temp, Pointer s) { + var _result = _meos_d.tnpoint_at_npointset(temp, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeoseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { - var _result = _meos_d.tgeoseq_from_base_tstzspan(gs, s, interp); + public static Pointer tnpoint_at_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_d.tnpoint_at_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeoseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { - var _result = _meos_d.tgeoseqset_from_base_tstzspanset(gs, ss, interp); + public static Pointer tnpoint_minus_geom(Pointer temp, Pointer gs) { + var _result = _meos_d.tnpoint_minus_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_from_base_temp(Pointer gs, Pointer temp) { - var _result = _meos_d.tpoint_from_base_temp(gs, temp); + public static Pointer tnpoint_minus_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.tnpoint_minus_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpointinst_make(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tpointinst_make(gs, t_new); + public static Pointer tnpoint_minus_npointset(Pointer temp, Pointer s) { + var _result = _meos_d.tnpoint_minus_npointset(temp, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpointseq_from_base_tstzset(Pointer gs, Pointer s) { - var _result = _meos_d.tpointseq_from_base_tstzset(gs, s); + public static Pointer tnpoint_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_d.tnpoint_minus_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpointseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { - var _result = _meos_d.tpointseq_from_base_tstzspan(gs, s, interp); + public static Pointer tdistance_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.tdistance_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpointseq_make_coords(Pointer xcoords, Pointer ycoords, Pointer zcoords, Pointer times, int count, int srid, boolean geodetic, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_d.tpointseq_make_coords(xcoords, ycoords, zcoords, times, count, srid, geodetic, lower_inc, upper_inc, interp, normalize); + public static Pointer tdistance_tnpoint_point(Pointer temp, Pointer gs) { + var _result = _meos_d.tdistance_tnpoint_point(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpointseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { - var _result = _meos_d.tpointseqset_from_base_tstzspanset(gs, ss, interp); + public static Pointer tdistance_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.tdistance_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer box3d_to_stbox(Pointer box) { - var _result = _meos_d.box3d_to_stbox(box); + public static double nad_tnpoint_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nad_tnpoint_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer gbox_to_stbox(Pointer box) { - var _result = _meos_d.gbox_to_stbox(box); + public static double nad_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.nad_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geomeas_to_tpoint(Pointer gs) { - var _result = _meos_d.geomeas_to_tpoint(gs); + public static double nad_tnpoint_stbox(Pointer temp, Pointer box) { + var _result = _meos_d.nad_tnpoint_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeogpoint_to_tgeography(Pointer temp) { - var _result = _meos_d.tgeogpoint_to_tgeography(temp); + public static double nad_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nad_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeography_to_tgeogpoint(Pointer temp) { - var _result = _meos_d.tgeography_to_tgeogpoint(temp); + public static Pointer nai_tnpoint_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nai_tnpoint_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeography_to_tgeometry(Pointer temp) { - var _result = _meos_d.tgeography_to_tgeometry(temp); + public static Pointer nai_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.nai_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeometry_to_tgeography(Pointer temp) { - var _result = _meos_d.tgeometry_to_tgeography(temp); + public static Pointer nai_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nai_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeometry_to_tgeompoint(Pointer temp) { - var _result = _meos_d.tgeometry_to_tgeompoint(temp); + public static Pointer shortestline_tnpoint_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.shortestline_tnpoint_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeompoint_to_tgeometry(Pointer temp) { - var _result = _meos_d.tgeompoint_to_tgeometry(temp); + public static Pointer shortestline_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.shortestline_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tpoint_as_mvtgeom(Pointer temp, Pointer bounds, int extent, int buffer, boolean clip_geom, Pointer gsarr, Pointer timesarr, Pointer count) { - var _result = _meos_d.tpoint_as_mvtgeom(temp, bounds, extent, buffer, clip_geom, gsarr, timesarr, count); + public static Pointer shortestline_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.shortestline_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_tfloat_to_geomeas(Pointer tpoint, Pointer measure, boolean segmentize) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.tpoint_tfloat_to_geomeas(tpoint, measure, segmentize, result); - Pointer new_result = result.getPointer(0); + public static Pointer tnpoint_tcentroid_transfn(Pointer state, Pointer temp) { + var _result = _meos_d.tnpoint_tcentroid_transfn(state, temp); MeosErrorHandler.checkError(); - return out ? new_result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tspatial_to_stbox(Pointer temp) { - var _result = _meos_d.tspatial_to_stbox(temp); + public static int always_eq_npoint_tnpoint(Pointer np, Pointer temp) { + var _result = _meos_d.always_eq_npoint_tnpoint(np, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bearing_point_point(Pointer gs1, Pointer gs2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.bearing_point_point(gs1, gs2, result); + public static int always_eq_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.always_eq_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer bearing_tpoint_point(Pointer temp, Pointer gs, boolean invert) { - var _result = _meos_d.bearing_tpoint_point(temp, gs, invert); + public static int always_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_eq_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer bearing_tpoint_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.bearing_tpoint_tpoint(temp1, temp2); + public static int always_ne_npoint_tnpoint(Pointer np, Pointer temp) { + var _result = _meos_d.always_ne_npoint_tnpoint(np, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_centroid(Pointer temp) { - var _result = _meos_d.tgeo_centroid(temp); + public static int always_ne_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.always_ne_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_convex_hull(Pointer temp) { - var _result = _meos_d.tgeo_convex_hull(temp); + public static int always_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_ne_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_end_value(Pointer temp) { - var _result = _meos_d.tgeo_end_value(temp); + public static int ever_eq_npoint_tnpoint(Pointer np, Pointer temp) { + var _result = _meos_d.ever_eq_npoint_tnpoint(np, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_start_value(Pointer temp) { - var _result = _meos_d.tgeo_start_value(temp); + public static int ever_eq_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.ever_eq_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_traversed_area(Pointer temp, boolean unary_union) { - var _result = _meos_d.tgeo_traversed_area(temp, unary_union); + public static int ever_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_eq_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tgeo_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tgeo_value_at_timestamptz(temp, t_new, strict, value); + public static int ever_ne_npoint_tnpoint(Pointer np, Pointer temp) { + var _result = _meos_d.ever_ne_npoint_tnpoint(np, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.tgeo_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); + public static int ever_ne_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.ever_ne_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); - return out ? new_result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_values(Pointer temp, Pointer count) { - var _result = _meos_d.tgeo_values(temp, count); + public static int ever_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_ne_tnpoint_tnpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_angular_difference(Pointer temp) { - var _result = _meos_d.tpoint_angular_difference(temp); + public static Pointer teq_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.teq_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_azimuth(Pointer temp) { - var _result = _meos_d.tpoint_azimuth(temp); + public static Pointer tne_tnpoint_npoint(Pointer temp, Pointer np) { + var _result = _meos_d.tne_tnpoint_npoint(temp, np); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_cumulative_length(Pointer temp) { - var _result = _meos_d.tpoint_cumulative_length(temp); + public static String pose_as_ewkt(Pointer pose, int maxdd) { + var _result = _meos_d.pose_as_ewkt(pose, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_direction(Pointer temp) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_d.tpoint_direction(temp, result); + public static String pose_as_hexwkb(Pointer pose, byte variant, Pointer size) { + var _result = _meos_d.pose_as_hexwkb(pose, variant, size); MeosErrorHandler.checkError(); - return out ? result : null; + return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_get_x(Pointer temp) { - var _result = _meos_d.tpoint_get_x(temp); + public static String pose_as_text(Pointer pose, int maxdd) { + var _result = _meos_d.pose_as_text(pose, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_get_y(Pointer temp) { - var _result = _meos_d.tpoint_get_y(temp); + public static Pointer pose_as_wkb(Pointer pose, byte variant) { + Runtime runtime = Runtime.getSystemRuntime(); + Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); + var _result = _meos_d.pose_as_wkb(pose, variant, size_out); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_get_z(Pointer temp) { - var _result = _meos_d.tpoint_get_z(temp); + public static Pointer pose_from_wkb(Pointer wkb, long size) { + var _result = _meos_d.pose_from_wkb(wkb, size); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean tpoint_is_simple(Pointer temp) { - var _result = _meos_d.tpoint_is_simple(temp); + public static Pointer pose_from_hexwkb(String hexwkb) { + var _result = _meos_d.pose_from_hexwkb(hexwkb); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double tpoint_length(Pointer temp) { - var _result = _meos_d.tpoint_length(temp); + public static Pointer pose_in(String str) { + var _result = _meos_d.pose_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_speed(Pointer temp) { - var _result = _meos_d.tpoint_speed(temp); + public static String pose_out(Pointer pose, int maxdd) { + var _result = _meos_d.pose_out(pose, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_trajectory(Pointer temp, boolean unary_union) { - var _result = _meos_d.tpoint_trajectory(temp, unary_union); + public static Pointer pose_copy(Pointer pose) { + var _result = _meos_d.pose_copy(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_twcentroid(Pointer temp) { - var _result = _meos_d.tpoint_twcentroid(temp); + public static Pointer pose_make_2d(double x, double y, double theta, int srid) { + var _result = _meos_d.pose_make_2d(x, y, theta, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_affine(Pointer temp, Pointer a) { - var _result = _meos_d.tgeo_affine(temp, a); + public static Pointer pose_make_3d(double x, double y, double z, double W, double X, double Y, double Z, int srid) { + var _result = _meos_d.pose_make_3d(x, y, z, W, X, Y, Z, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_scale(Pointer temp, Pointer scale, Pointer sorigin) { - var _result = _meos_d.tgeo_scale(temp, scale, sorigin); + public static Pointer pose_make_point2d(Pointer gs, double theta) { + var _result = _meos_d.pose_make_point2d(gs, theta); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_make_simple(Pointer temp, Pointer count) { - var _result = _meos_d.tpoint_make_simple(temp, count); + public static Pointer pose_make_point3d(Pointer gs, double W, double X, double Y, double Z) { + var _result = _meos_d.pose_make_point3d(gs, W, X, Y, Z); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int tspatial_srid(Pointer temp) { - var _result = _meos_d.tspatial_srid(temp); + public static Pointer pose_to_point(Pointer pose) { + var _result = _meos_d.pose_to_point(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tspatial_set_srid(Pointer temp, int srid) { - var _result = _meos_d.tspatial_set_srid(temp, srid); + public static Pointer pose_to_stbox(Pointer pose) { + var _result = _meos_d.pose_to_stbox(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tspatial_transform(Pointer temp, int srid) { - var _result = _meos_d.tspatial_transform(temp, srid); + public static int pose_hash(Pointer pose) { + var _result = _meos_d.pose_hash(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tspatial_transform_pipeline(Pointer temp, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_d.tspatial_transform_pipeline(temp, pipelinestr, srid, is_forward); + public static long pose_hash_extended(Pointer pose, long seed) { + var _result = _meos_d.pose_hash_extended(pose, seed); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tgeo_at_geom(temp, gs); + public static Pointer pose_orientation(Pointer pose) { + var _result = _meos_d.pose_orientation(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_at_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tgeo_at_stbox(temp, box, border_inc); + public static double pose_rotation(Pointer pose) { + var _result = _meos_d.pose_rotation(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_at_value(Pointer temp, Pointer gs) { - var _result = _meos_d.tgeo_at_value(temp, gs); + public static Pointer pose_round(Pointer pose, int maxdd) { + var _result = _meos_d.pose_round(pose, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tgeo_minus_geom(temp, gs); + public static Pointer posearr_round(Pointer posearr, int count, int maxdd) { + var _result = _meos_d.posearr_round(posearr, count, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tgeo_minus_stbox(temp, box, border_inc); + public static void pose_set_srid(Pointer pose, int srid) { + _meos_d.pose_set_srid(pose, srid); MeosErrorHandler.checkError(); - return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_minus_value(Pointer temp, Pointer gs) { - var _result = _meos_d.tgeo_minus_value(temp, gs); + public static int pose_srid(Pointer pose) { + var _result = _meos_d.pose_srid(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_at_geom(Pointer temp, Pointer gs, Pointer zspan) { - var _result = _meos_d.tpoint_at_geom(temp, gs, zspan); + public static Pointer pose_transform(Pointer pose, int srid) { + var _result = _meos_d.pose_transform(pose, srid); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_at_value(Pointer temp, Pointer gs) { - var _result = _meos_d.tpoint_at_value(temp, gs); + public static Pointer pose_transform_pipeline(Pointer pose, String pipelinestr, int srid, boolean is_forward) { + var _result = _meos_d.pose_transform_pipeline(pose, pipelinestr, srid, is_forward); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_minus_geom(Pointer temp, Pointer gs, Pointer zspan) { - var _result = _meos_d.tpoint_minus_geom(temp, gs, zspan); + public static Pointer pose_tstzspan_to_stbox(Pointer pose, Pointer s) { + var _result = _meos_d.pose_tstzspan_to_stbox(pose, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_minus_value(Pointer temp, Pointer gs) { - var _result = _meos_d.tpoint_minus_value(temp, gs); + public static Pointer pose_timestamptz_to_stbox(Pointer pose, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.pose_timestamptz_to_stbox(pose, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.always_eq_geo_tgeo(gs, temp); + public static double distance_pose_geo(Pointer pose, Pointer gs) { + var _result = _meos_d.distance_pose_geo(pose, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.always_eq_tgeo_geo(temp, gs); + public static double distance_pose_pose(Pointer pose1, Pointer pose2) { + var _result = _meos_d.distance_pose_pose(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_eq_tgeo_tgeo(temp1, temp2); + public static double distance_pose_stbox(Pointer pose, Pointer box) { + var _result = _meos_d.distance_pose_stbox(pose, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.always_ne_geo_tgeo(gs, temp); + public static int pose_cmp(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_cmp(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.always_ne_tgeo_geo(temp, gs); + public static boolean pose_eq(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_eq(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int always_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_ne_tgeo_tgeo(temp1, temp2); + public static boolean pose_ge(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_ge(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.ever_eq_geo_tgeo(gs, temp); + public static boolean pose_gt(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_gt(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.ever_eq_tgeo_geo(temp, gs); + public static boolean pose_le(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_le(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_eq_tgeo_tgeo(temp1, temp2); + public static boolean pose_lt(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_lt(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.ever_ne_geo_tgeo(gs, temp); + public static boolean pose_ne(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_ne(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.ever_ne_tgeo_geo(temp, gs); + public static boolean pose_nsame(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_nsame(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ever_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_ne_tgeo_tgeo(temp1, temp2); + public static boolean pose_same(Pointer pose1, Pointer pose2) { + var _result = _meos_d.pose_same(pose1, pose2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.teq_geo_tgeo(gs, temp); + public static Pointer poseset_in(String str) { + var _result = _meos_d.poseset_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer teq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.teq_tgeo_geo(temp, gs); + public static String poseset_out(Pointer s, int maxdd) { + var _result = _meos_d.poseset_out(s, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.tne_geo_tgeo(gs, temp); + public static Pointer poseset_make(Pointer values, int count) { + var _result = _meos_d.poseset_make(values, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.tne_tgeo_geo(temp, gs); + public static Pointer pose_to_set(Pointer pose) { + var _result = _meos_d.pose_to_set(pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_stboxes(Pointer temp, Pointer count) { - var _result = _meos_d.tgeo_stboxes(temp, count); + public static Pointer poseset_end_value(Pointer s) { + var _result = _meos_d.poseset_end_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_space_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer count) { - var _result = _meos_d.tgeo_space_boxes(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, count); + public static Pointer poseset_start_value(Pointer s) { + var _result = _meos_d.poseset_start_value(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_space_time_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tgeo_space_time_boxes(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, count); + public static Pointer poseset_value_n(Pointer s, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.poseset_value_n(s, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static Pointer tgeo_split_each_n_stboxes(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_d.tgeo_split_each_n_stboxes(temp, elem_count, count); + public static Pointer poseset_values(Pointer s) { + var _result = _meos_d.poseset_values(s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_split_n_stboxes(Pointer temp, int box_count, Pointer count) { - var _result = _meos_d.tgeo_split_n_stboxes(temp, box_count, count); + public static boolean contained_pose_set(Pointer pose, Pointer s) { + var _result = _meos_d.contained_pose_set(pose, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.adjacent_stbox_tspatial(box, temp); + public static boolean contains_set_pose(Pointer s, Pointer pose) { + var _result = _meos_d.contains_set_pose(s, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.adjacent_tspatial_stbox(temp, box); + public static Pointer intersection_pose_set(Pointer pose, Pointer s) { + var _result = _meos_d.intersection_pose_set(pose, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean adjacent_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.adjacent_tspatial_tspatial(temp1, temp2); + public static Pointer intersection_set_pose(Pointer s, Pointer pose) { + var _result = _meos_d.intersection_set_pose(s, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.contained_stbox_tspatial(box, temp); + public static Pointer minus_pose_set(Pointer pose, Pointer s) { + var _result = _meos_d.minus_pose_set(pose, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.contained_tspatial_stbox(temp, box); + public static Pointer minus_set_pose(Pointer s, Pointer pose) { + var _result = _meos_d.minus_set_pose(s, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contained_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.contained_tspatial_tspatial(temp1, temp2); + public static Pointer pose_union_transfn(Pointer state, Pointer pose) { + var _result = _meos_d.pose_union_transfn(state, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.contains_stbox_tspatial(box, temp); + public static Pointer union_pose_set(Pointer pose, Pointer s) { + var _result = _meos_d.union_pose_set(pose, s); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.contains_tspatial_stbox(temp, box); + public static Pointer union_set_pose(Pointer s, Pointer pose) { + var _result = _meos_d.union_set_pose(s, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean contains_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.contains_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_in(String str) { + var _result = _meos_d.tpose_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overlaps_stbox_tspatial(box, temp); + public static Pointer tpose_make(Pointer tpoint, Pointer tradius) { + var _result = _meos_d.tpose_make(tpoint, tradius); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overlaps_tspatial_stbox(temp, box); + public static Pointer tpose_to_tpoint(Pointer temp) { + var _result = _meos_d.tpose_to_tpoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overlaps_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overlaps_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_end_value(Pointer temp) { + var _result = _meos_d.tpose_end_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.same_stbox_tspatial(box, temp); + public static Pointer tpose_points(Pointer temp) { + var _result = _meos_d.tpose_points(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.same_tspatial_stbox(temp, box); + public static Pointer tpose_rotation(Pointer temp) { + var _result = _meos_d.tpose_rotation(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean same_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.same_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_start_value(Pointer temp) { + var _result = _meos_d.tpose_start_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean above_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.above_stbox_tspatial(box, temp); + public static Pointer tpose_trajectory(Pointer temp) { + var _result = _meos_d.tpose_trajectory(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean above_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.above_tspatial_stbox(temp, box); + public static boolean tpose_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.tpose_value_at_timestamptz(temp, t_new, strict, value); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean above_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.above_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.tpose_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static boolean after_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.after_stbox_tspatial(box, temp); + public static Pointer tpose_values(Pointer temp, Pointer count) { + var _result = _meos_d.tpose_values(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.after_tspatial_stbox(temp, box); + public static Pointer tpose_at_geom(Pointer temp, Pointer gs) { + var _result = _meos_d.tpose_at_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean after_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.after_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_at_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_d.tpose_at_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean back_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.back_stbox_tspatial(box, temp); + public static Pointer tpose_at_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.tpose_at_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean back_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.back_tspatial_stbox(temp, box); + public static Pointer tpose_minus_geom(Pointer temp, Pointer gs) { + var _result = _meos_d.tpose_minus_geom(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean back_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.back_tspatial_tspatial(temp1, temp2); + public static Pointer tpose_minus_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.tpose_minus_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.before_stbox_tspatial(box, temp); + public static Pointer tpose_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { + var _result = _meos_d.tpose_minus_stbox(temp, box, border_inc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.before_tspatial_stbox(temp, box); + public static Pointer tdistance_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.tdistance_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean before_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.before_tspatial_tspatial(temp1, temp2); + public static Pointer tdistance_tpose_point(Pointer temp, Pointer gs) { + var _result = _meos_d.tdistance_tpose_point(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean below_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.below_stbox_tspatial(box, temp); + public static Pointer tdistance_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.tdistance_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean below_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.below_tspatial_stbox(temp, box); + public static double nad_tpose_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nad_tpose_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean below_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.below_tspatial_tspatial(temp1, temp2); + public static double nad_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.nad_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean front_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.front_stbox_tspatial(box, temp); + public static double nad_tpose_stbox(Pointer temp, Pointer box) { + var _result = _meos_d.nad_tpose_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean front_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.front_tspatial_stbox(temp, box); + public static double nad_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nad_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean front_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.front_tspatial_tspatial(temp1, temp2); + public static Pointer nai_tpose_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nai_tpose_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.left_stbox_tspatial(box, temp); + public static Pointer nai_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.nai_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.left_tspatial_stbox(temp, box); + public static Pointer nai_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nai_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean left_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.left_tspatial_tspatial(temp1, temp2); + public static Pointer shortestline_tpose_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.shortestline_tpose_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overabove_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overabove_stbox_tspatial(box, temp); + public static Pointer shortestline_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.shortestline_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overabove_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overabove_tspatial_stbox(temp, box); + public static Pointer shortestline_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.shortestline_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overabove_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overabove_tspatial_tspatial(temp1, temp2); + public static int always_eq_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.always_eq_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overafter_stbox_tspatial(box, temp); + public static int always_eq_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.always_eq_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overafter_tspatial_stbox(temp, box); + public static int always_eq_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_eq_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overafter_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overafter_tspatial_tspatial(temp1, temp2); + public static int always_ne_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.always_ne_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overback_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overback_stbox_tspatial(box, temp); + public static int always_ne_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.always_ne_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overback_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overback_tspatial_stbox(temp, box); + public static int always_ne_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_ne_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overback_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overback_tspatial_tspatial(temp1, temp2); + public static int ever_eq_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.ever_eq_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overbefore_stbox_tspatial(box, temp); + public static int ever_eq_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.ever_eq_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overbefore_tspatial_stbox(temp, box); + public static int ever_eq_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_eq_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbefore_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overbefore_tspatial_tspatial(temp1, temp2); + public static int ever_ne_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.ever_ne_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbelow_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overbelow_stbox_tspatial(box, temp); + public static int ever_ne_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.ever_ne_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbelow_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overbelow_tspatial_stbox(temp, box); + public static int ever_ne_tpose_tpose(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_ne_tpose_tpose(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overbelow_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overbelow_tspatial_tspatial(temp1, temp2); + public static Pointer teq_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.teq_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overfront_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overfront_stbox_tspatial(box, temp); + public static Pointer teq_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.teq_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overfront_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overfront_tspatial_stbox(temp, box); + public static Pointer tne_pose_tpose(Pointer pose, Pointer temp) { + var _result = _meos_d.tne_pose_tpose(pose, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overfront_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overfront_tspatial_tspatial(temp1, temp2); + public static Pointer tne_tpose_pose(Pointer temp, Pointer pose) { + var _result = _meos_d.tne_tpose_pose(temp, pose); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overleft_stbox_tspatial(box, temp); + public static String trgeo_out(Pointer temp) { + var _result = _meos_d.trgeo_out(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overleft_tspatial_stbox(temp, box); + public static Pointer trgeoinst_make(Pointer geom, Pointer pose, OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.trgeoinst_make(geom, pose, t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overleft_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overleft_tspatial_tspatial(temp1, temp2); + public static Pointer geo_tpose_to_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.geo_tpose_to_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.overright_stbox_tspatial(box, temp); + public static Pointer trgeo_to_tpose(Pointer temp) { + var _result = _meos_d.trgeo_to_tpose(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.overright_tspatial_stbox(temp, box); + public static Pointer trgeo_to_tpoint(Pointer temp) { + var _result = _meos_d.trgeo_to_tpoint(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean overright_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.overright_tspatial_tspatial(temp1, temp2); + public static Pointer trgeo_end_instant(Pointer temp) { + var _result = _meos_d.trgeo_end_instant(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_d.right_stbox_tspatial(box, temp); + public static Pointer trgeo_end_sequence(Pointer temp) { + var _result = _meos_d.trgeo_end_sequence(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.right_tspatial_stbox(temp, box); + public static Pointer trgeo_end_value(Pointer temp) { + var _result = _meos_d.trgeo_end_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static boolean right_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_d.right_tspatial_tspatial(temp1, temp2); + public static Pointer trgeo_geom(Pointer temp) { + var _result = _meos_d.trgeo_geom(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int acontains_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.acontains_geo_tgeo(gs, temp); + public static Pointer trgeo_instant_n(Pointer temp, int n) { + var _result = _meos_d.trgeo_instant_n(temp, n); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int acontains_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.acontains_tgeo_geo(temp, gs); + public static Pointer trgeo_instants(Pointer temp, Pointer count) { + var _result = _meos_d.trgeo_instants(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int acontains_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.acontains_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_points(Pointer temp) { + var _result = _meos_d.trgeo_points(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int adisjoint_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.adisjoint_tgeo_geo(temp, gs); + public static Pointer trgeo_rotation(Pointer temp) { + var _result = _meos_d.trgeo_rotation(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int adisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.adisjoint_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_segments(Pointer temp, Pointer count) { + var _result = _meos_d.trgeo_segments(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int adwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_d.adwithin_tgeo_geo(temp, gs, dist); + public static Pointer trgeo_sequence_n(Pointer temp, int i) { + var _result = _meos_d.trgeo_sequence_n(temp, i); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int adwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_d.adwithin_tgeo_tgeo(temp1, temp2, dist); + public static Pointer trgeo_sequences(Pointer temp, Pointer count) { + var _result = _meos_d.trgeo_sequences(temp, count); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int aintersects_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.aintersects_tgeo_geo(temp, gs); + public static Pointer trgeo_start_instant(Pointer temp) { + var _result = _meos_d.trgeo_start_instant(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int aintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.aintersects_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_start_sequence(Pointer temp) { + var _result = _meos_d.trgeo_start_sequence(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int atouches_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.atouches_tgeo_geo(temp, gs); + public static Pointer trgeo_start_value(Pointer temp) { + var _result = _meos_d.trgeo_start_value(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int atouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.atouches_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_value_n(Pointer temp, int n) { + boolean out; + Runtime runtime = Runtime.getSystemRuntime(); + Pointer result = Memory.allocateDirect(runtime, Long.BYTES); + out = _meos_d.trgeo_value_n(temp, n, result); + Pointer new_result = result.getPointer(0); MeosErrorHandler.checkError(); - return _result; + return out ? new_result : null; } @SuppressWarnings("unused") - public static int atouches_tpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.atouches_tpoint_geo(temp, gs); + public static Pointer trgeo_traversed_area(Pointer temp, boolean unary_union) { + var _result = _meos_d.trgeo_traversed_area(temp, unary_union); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int econtains_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.econtains_geo_tgeo(gs, temp); + public static Pointer trgeo_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand) { + var _result = _meos_d.trgeo_append_tinstant(temp, inst, interp, maxdist, maxt, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int econtains_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.econtains_tgeo_geo(temp, gs); + public static Pointer trgeo_append_tsequence(Pointer temp, Pointer seq, boolean expand) { + var _result = _meos_d.trgeo_append_tsequence(temp, seq, expand); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int econtains_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.econtains_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_delete_timestamptz(Pointer temp, OffsetDateTime t, boolean connect) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.trgeo_delete_timestamptz(temp, t_new, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ecovers_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.ecovers_geo_tgeo(gs, temp); + public static Pointer trgeo_delete_tstzset(Pointer temp, Pointer s, boolean connect) { + var _result = _meos_d.trgeo_delete_tstzset(temp, s, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ecovers_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.ecovers_tgeo_geo(temp, gs); + public static Pointer trgeo_delete_tstzspan(Pointer temp, Pointer s, boolean connect) { + var _result = _meos_d.trgeo_delete_tstzspan(temp, s, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int ecovers_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ecovers_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect) { + var _result = _meos_d.trgeo_delete_tstzspanset(temp, ss, connect); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int edisjoint_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.edisjoint_tgeo_geo(temp, gs); + public static Pointer trgeo_round(Pointer temp, int maxdd) { + var _result = _meos_d.trgeo_round(temp, maxdd); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int edisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.edisjoint_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_set_interp(Pointer temp, int interp) { + var _result = _meos_d.trgeo_set_interp(temp, interp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int edwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_d.edwithin_tgeo_geo(temp, gs, dist); + public static Pointer trgeo_to_tinstant(Pointer temp) { + var _result = _meos_d.trgeo_to_tinstant(temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int edwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_d.edwithin_tgeo_tgeo(temp1, temp2, dist); + public static Pointer trgeo_after_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.trgeo_after_timestamptz(temp, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int eintersects_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.eintersects_tgeo_geo(temp, gs); + public static Pointer trgeo_before_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.trgeo_before_timestamptz(temp, t_new, strict); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int eintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.eintersects_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_restrict_value(Pointer temp, Pointer value, boolean atfunc) { + var _result = _meos_d.trgeo_restrict_value(temp, value, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int etouches_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.etouches_tgeo_geo(temp, gs); + public static Pointer trgeo_restrict_values(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.trgeo_restrict_values(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int etouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.etouches_tgeo_tgeo(temp1, temp2); + public static Pointer trgeo_restrict_timestamptz(Pointer temp, OffsetDateTime t, boolean atfunc) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.trgeo_restrict_timestamptz(temp, t_new, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static int etouches_tpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.etouches_tpoint_geo(temp, gs); + public static Pointer trgeo_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.trgeo_restrict_tstzset(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue) { - var _result = _meos_d.tcontains_geo_tgeo(gs, temp, restr, atvalue); + public static Pointer trgeo_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc) { + var _result = _meos_d.trgeo_restrict_tstzspan(temp, s, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue) { - var _result = _meos_d.tcontains_tgeo_geo(temp, gs, restr, atvalue); + public static Pointer trgeo_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc) { + var _result = _meos_d.trgeo_restrict_tstzspanset(temp, ss, atfunc); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue) { - var _result = _meos_d.tcontains_tgeo_tgeo(temp1, temp2, restr, atvalue); + public static Pointer tdistance_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.tdistance_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue) { - var _result = _meos_d.tcovers_geo_tgeo(gs, temp, restr, atvalue); + public static Pointer tdistance_trgeo_tpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.tdistance_trgeo_tpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue) { - var _result = _meos_d.tcovers_tgeo_geo(temp, gs, restr, atvalue); + public static Pointer tdistance_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.tdistance_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue) { - var _result = _meos_d.tcovers_tgeo_tgeo(temp1, temp2, restr, atvalue); + public static double nad_stbox_trgeo(Pointer box, Pointer temp) { + var _result = _meos_d.nad_stbox_trgeo(box, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue) { - var _result = _meos_d.tdisjoint_geo_tgeo(gs, temp, restr, atvalue); + public static double nad_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nad_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue) { - var _result = _meos_d.tdisjoint_tgeo_geo(temp, gs, restr, atvalue); + public static double nad_trgeo_stbox(Pointer temp, Pointer box) { + var _result = _meos_d.nad_trgeo_stbox(temp, box); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue) { - var _result = _meos_d.tdisjoint_tgeo_tgeo(temp1, temp2, restr, atvalue); + public static double nad_trgeo_tpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nad_trgeo_tpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist, boolean restr, boolean atvalue) { - var _result = _meos_d.tdwithin_geo_tgeo(gs, temp, dist, restr, atvalue); + public static double nad_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nad_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist, boolean restr, boolean atvalue) { - var _result = _meos_d.tdwithin_tgeo_geo(temp, gs, dist, restr, atvalue); + public static Pointer nai_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.nai_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist, boolean restr, boolean atvalue) { - var _result = _meos_d.tdwithin_tgeo_tgeo(temp1, temp2, dist, restr, atvalue); + public static Pointer nai_trgeo_tpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nai_trgeo_tpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue) { - var _result = _meos_d.tintersects_geo_tgeo(gs, temp, restr, atvalue); + public static Pointer nai_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.nai_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue) { - var _result = _meos_d.tintersects_tgeo_geo(temp, gs, restr, atvalue); + public static Pointer shortestline_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.shortestline_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue) { - var _result = _meos_d.tintersects_tgeo_tgeo(temp1, temp2, restr, atvalue); + public static Pointer shortestline_trgeo_tpoint(Pointer temp1, Pointer temp2) { + var _result = _meos_d.shortestline_trgeo_tpoint(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp, boolean restr, boolean atvalue) { - var _result = _meos_d.ttouches_geo_tgeo(gs, temp, restr, atvalue); + public static Pointer shortestline_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.shortestline_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs, boolean restr, boolean atvalue) { - var _result = _meos_d.ttouches_tgeo_geo(temp, gs, restr, atvalue); + public static int always_eq_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.always_eq_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2, boolean restr, boolean atvalue) { - var _result = _meos_d.ttouches_tgeo_tgeo(temp1, temp2, restr, atvalue); + public static int always_eq_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.always_eq_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdistance_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.tdistance_tgeo_geo(temp, gs); + public static int always_eq_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_eq_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tdistance_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.tdistance_tgeo_tgeo(temp1, temp2); + public static int always_ne_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.always_ne_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_stbox_geo(Pointer box, Pointer gs) { - var _result = _meos_d.nad_stbox_geo(box, gs); + public static int always_ne_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.always_ne_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_d.nad_stbox_stbox(box1, box2); + public static int always_ne_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.always_ne_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nad_tgeo_geo(temp, gs); + public static int ever_eq_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.ever_eq_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tgeo_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.nad_tgeo_stbox(temp, box); + public static int ever_eq_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.ever_eq_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static double nad_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_tgeo_tgeo(temp1, temp2); + public static int ever_eq_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_eq_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer nai_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nai_tgeo_geo(temp, gs); + public static int ever_ne_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.ever_ne_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer nai_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nai_tgeo_tgeo(temp1, temp2); + public static int ever_ne_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.ever_ne_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer shortestline_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.shortestline_tgeo_geo(temp, gs); + public static int ever_ne_trgeo_trgeo(Pointer temp1, Pointer temp2) { + var _result = _meos_d.ever_ne_trgeo_trgeo(temp1, temp2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer shortestline_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.shortestline_tgeo_tgeo(temp1, temp2); + public static Pointer teq_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.teq_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_tcentroid_finalfn(Pointer state) { - var _result = _meos_d.tpoint_tcentroid_finalfn(state); + public static Pointer teq_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.teq_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tpoint_tcentroid_transfn(Pointer state, Pointer temp) { - var _result = _meos_d.tpoint_tcentroid_transfn(state, temp); + public static Pointer tne_geo_trgeo(Pointer gs, Pointer temp) { + var _result = _meos_d.tne_geo_trgeo(gs, temp); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tspatial_extent_transfn(Pointer box, Pointer temp) { - var _result = _meos_d.tspatial_extent_transfn(box, temp); + public static Pointer tne_trgeo_geo(Pointer temp, Pointer gs) { + var _result = _meos_d.tne_trgeo_geo(temp, gs); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_get_space_tile(Pointer point, double xsize, double ysize, double zsize, Pointer sorigin) { - var _result = _meos_d.stbox_get_space_tile(point, xsize, ysize, zsize, sorigin); + public static int geo_get_srid(Pointer g) { + var _result = _meos_d.geo_get_srid(g); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_get_space_time_tile(Pointer point, OffsetDateTime t, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.stbox_get_space_time_tile(point, t_new, xsize, ysize, zsize, duration, sorigin, torigin_new); + public static int date_in(String str) { + var _result = _meos_d.date_in(str); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_get_time_tile(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.stbox_get_time_tile(t_new, duration, torigin_new); + public static String date_out(int d) { + var _result = _meos_d.date_out(d); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_space_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer sorigin, boolean border_inc, Pointer count) { - var _result = _meos_d.stbox_space_tiles(bounds, xsize, ysize, zsize, sorigin, border_inc, count); + public static int interval_cmp(Pointer interv1, Pointer interv2) { + var _result = _meos_d.interval_cmp(interv1, interv2); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_space_time_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.stbox_space_time_tiles(bounds, xsize, ysize, zsize, duration, sorigin, torigin_new, border_inc, count); + public static Pointer interval_in(String str, int typmod) { + var _result = _meos_d.interval_in(str, typmod); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer stbox_time_tiles(Pointer bounds, Pointer duration, OffsetDateTime torigin, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.stbox_time_tiles(bounds, duration, torigin_new, border_inc, count); + public static String interval_out(Pointer interv) { + var _result = _meos_d.interval_out(interv); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_space_split(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer count) { - var _result = _meos_d.tgeo_space_split(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, space_bins, count); + public static Pointer time_in(String str, int typmod) { + var _result = _meos_d.time_in(str, typmod); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer tgeo_space_time_split(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tgeo_space_time_split(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, space_bins, time_bins, count); + public static String time_out(Pointer t) { + var _result = _meos_d.time_out(t); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_cluster_kmeans(Pointer geoms, int ngeoms, int k) { - var _result = _meos_d.geo_cluster_kmeans(geoms, ngeoms, k); + public static LocalDateTime timestamp_in(String str, int typmod) { + var _result = _meos_d.timestamp_in(str, typmod); MeosErrorHandler.checkError(); - return _result; + return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static Pointer geo_cluster_dbscan(Pointer geoms, int ngeoms, double tolerance, int minpoints, Pointer count) { - var _result = _meos_d.geo_cluster_dbscan(geoms, ngeoms, tolerance, minpoints, count); + public static String timestamp_out(LocalDateTime t) { + var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); + var _result = _meos_d.timestamp_out(t_new); MeosErrorHandler.checkError(); return _result; } @SuppressWarnings("unused") - public static Pointer geo_cluster_intersecting(Pointer geoms, int ngeoms, Pointer count) { - var _result = _meos_d.geo_cluster_intersecting(geoms, ngeoms, count); + public static OffsetDateTime timestamptz_in(String str, int typmod) { + var _result = _meos_d.timestamptz_in(str, typmod); MeosErrorHandler.checkError(); - return _result; + return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); } @SuppressWarnings("unused") - public static Pointer geo_cluster_within(Pointer geoms, int ngeoms, double tolerance, Pointer count) { - var _result = _meos_d.geo_cluster_within(geoms, ngeoms, tolerance, count); + public static String timestamptz_out(OffsetDateTime t) { + var t_new = t.toEpochSecond(); + var _result = _meos_d.timestamptz_out(t_new); MeosErrorHandler.checkError(); return _result; } From c27a06641269a8ac178a088f388c6a1913d20ad3 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sun, 31 May 2026 09:09:25 +0200 Subject: [PATCH 02/14] feat(build): select MEOS type families with MobilityDB/MEOS-style build flags The functions.GeneratedFunctions facade is generated at build time from the MEOS IDL with the optional type families selected by the same flag names and ON|OFF (also 1|0) values as the MobilityDB/MEOS build: -DCBUFFER, -DNPOINT, -DPOSE, -DRGEO, -DH3. Every family is included by default; passing -DCBUFFER=OFF (or =0) drops that family's functions from the generated binding so a subset jar ships without it (RGEO needs POSE). FunctionsGenerator maps each function's source header to its family and omits excluded families; jmeos-core runs the generator at generate-sources (so the flag flows through mvn) and compiles the generated functions.GeneratedFunctions. --- codegen/src/main/java/FunctionsGenerator.java | 53 + jmeos-core/pom.xml | 51 + .../java/functions/GeneratedFunctions.java | 26610 ---------------- 3 files changed, 104 insertions(+), 26610 deletions(-) delete mode 100644 jmeos-core/src/main/java/functions/GeneratedFunctions.java diff --git a/codegen/src/main/java/FunctionsGenerator.java b/codegen/src/main/java/FunctionsGenerator.java index 2064f840..ed053084 100644 --- a/codegen/src/main/java/FunctionsGenerator.java +++ b/codegen/src/main/java/FunctionsGenerator.java @@ -35,6 +35,51 @@ public class FunctionsGenerator { // so we force long when the interface type resolved to int for these names. private static final Set SIZE_PARAM_NAMES = Set.of("size", "wkb_size"); + // ------------------------------------------------------------------------- + // Optional MEOS type families, gated by build flags mirroring the + // MobilityDB/MEOS flag names and ON|OFF (also 1|0) values: -DCBUFFER=OFF, + // -DNPOINT=OFF, -DPOSE=OFF, -DRGEO=OFF, -DH3=OFF. Each family maps to the + // public headers that declare its functions; a function whose header belongs + // to an excluded family is omitted from the generated binding, so a subset + // jar ships without it. The shared binding jar includes every family by + // default; pass -D=OFF|0 to drop one (RGEO needs POSE). + // ------------------------------------------------------------------------- + private static final Map HEADER_FAMILY = Map.ofEntries( + Map.entry("meos_cbuffer.h", "CBUFFER"), + Map.entry("meos_npoint.h", "NPOINT"), + Map.entry("meos_pose.h", "POSE"), + Map.entry("meos_rgeo.h", "RGEO"), + Map.entry("meos_h3.h", "H3"), + Map.entry("th3index.h", "H3"), + Map.entry("th3index_internal.h", "H3"), + Map.entry("th3index_boxops.h", "H3"), + Map.entry("h3index.h", "H3"), + Map.entry("h3index_sets.h", "H3"), + Map.entry("h3_generated.h", "H3")); + private static final Set OPTIONAL_FAMILIES = + Set.of("CBUFFER", "NPOINT", "POSE", "RGEO", "H3"); + + // Families enabled for this generation run; core headers are always emitted. + private Set enabledFamilies; + + private static Set resolveEnabledFamilies() { + Set enabled = new LinkedHashSet<>(); + for (String family : OPTIONAL_FAMILIES) { + String v = System.getProperty(family); + boolean off = v != null + && (v.equalsIgnoreCase("OFF") || v.equals("0") || v.equalsIgnoreCase("false")); + if (!off) { + enabled.add(family); // included by default, dropped only by -D=OFF|0 + } + } + return enabled; + } + + private boolean familyEnabled(String file) { + String family = HEADER_FAMILY.get(file); + return family == null || enabledFamilies.contains(family); // core (unmapped) always on + } + // Output-only size parameters that must not appear in the public // static wrapper signature. // @@ -121,7 +166,15 @@ private void run(String inputPath, String outputPath) throws IOException { List functions = new ArrayList<>(); Set seen = new LinkedHashSet<>(); // deduplicate by name#arity + enabledFamilies = resolveEnabledFamilies(); + System.out.println("Enabled optional families: " + enabledFamilies + + " (core always included)"); + for (JsonNode fn : functionsNode) { + JsonNode fileNode = fn.get("file"); + if (fileNode != null && !familyEnabled(fileNode.asText())) { + continue; // function belongs to a disabled type family + } FunctionDef def = parseFunctionDef(fn); String key = def.name + "#" + def.params.size(); if (seen.add(key)) { diff --git a/jmeos-core/pom.xml b/jmeos-core/pom.xml index dd37ac3a..50255343 100644 --- a/jmeos-core/pom.xml +++ b/jmeos-core/pom.xml @@ -240,6 +240,57 @@ + + + org.codehaus.mojo + exec-maven-plugin + 3.1.0 + + + generate-meos-facade + generate-sources + + java + + + FunctionsGenerator + + ${project.basedir}/../codegen/target/classes + + + ${project.basedir}/../codegen/input/meos-idl.json + ${project.build.directory}/generated-sources/jmeos/functions/GeneratedFunctions.java + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.5.0 + + + add-generated-facade + generate-sources + + add-source + + + + ${project.build.directory}/generated-sources/jmeos + + + + + + org.apache.maven.plugins maven-compiler-plugin diff --git a/jmeos-core/src/main/java/functions/GeneratedFunctions.java b/jmeos-core/src/main/java/functions/GeneratedFunctions.java deleted file mode 100644 index 3dc0aae9..00000000 --- a/jmeos-core/src/main/java/functions/GeneratedFunctions.java +++ /dev/null @@ -1,26610 +0,0 @@ -package functions; - -import jnr.ffi.Pointer; -import jnr.ffi.Memory; -import jnr.ffi.Runtime; -import jnr.ffi.byref.PointerByReference; -import jnr.ffi.Struct; -import utils.JarLibraryLoader; -import utils.meosCatalog.MeosEnums.meosType; -import utils.meosCatalog.MeosEnums.meosOper; -import functions.MeosErrorHandler; - -import java.time.*; - -public class GeneratedFunctions { - public interface MeosLibraryPartA { - - Pointer meos_array_create(int elem_size); - - void meos_array_add(Pointer array, Pointer value); - - Pointer meos_array_get(Pointer array, int n); - - int meos_array_count(Pointer array); - - void meos_array_reset(Pointer array); - - void meos_array_reset_free(Pointer array); - - void meos_array_destroy(Pointer array); - - void meos_array_destroy_free(Pointer array); - - Pointer rtree_create_intspan(); - - Pointer rtree_create_bigintspan(); - - Pointer rtree_create_floatspan(); - - Pointer rtree_create_datespan(); - - Pointer rtree_create_tstzspan(); - - Pointer rtree_create_tbox(); - - Pointer rtree_create_stbox(); - - void rtree_free(Pointer rtree); - - void rtree_insert(Pointer rtree, Pointer box, int id); - - void rtree_insert_temporal(Pointer rtree, Pointer temp, int id); - - int rtree_search(Pointer rtree, int op, Pointer query, Pointer result); - - int rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer result); - - void meos_error(int errlevel, int errcode, String format); - - int meos_errno(); - - int meos_errno_set(int err); - - int meos_errno_restore(int err); - - int meos_errno_reset(); - - void meos_initialize_timezone(String name); - - void meos_initialize_error_handler(error_handler_fn err_handler); - - void meos_finalize_timezone(); - - void meos_finalize_projsrs(); - - void meos_finalize_ways(); - - boolean meos_set_datestyle(String newval, Pointer extra); - - boolean meos_set_intervalstyle(String newval, int extra); - - String meos_get_datestyle(); - - String meos_get_intervalstyle(); - - void meos_set_spatial_ref_sys_csv(String path); - - void meos_initialize(); - - void meos_finalize(); - - int add_date_int(int d, int days); - - Pointer add_interval_interval(Pointer interv1, Pointer interv2); - - long add_timestamptz_interval(long t, Pointer interv); - - boolean bool_in(String str); - - String bool_out(boolean b); - - Pointer cstring2text(String str); - - long date_to_timestamp(int dateVal); - - long date_to_timestamptz(int d); - - double float_exp(double d); - - double float_ln(double d); - - double float_log10(double d); - - String float8_out(double d, int maxdd); - - double float_round(double d, int maxdd); - - int int32_cmp(int l, int r); - - int int64_cmp(long l, long r); - - Pointer interval_make(int years, int months, int weeks, int days, int hours, int mins, double secs); - - int minus_date_date(int d1, int d2); - - int minus_date_int(int d, int days); - - long minus_timestamptz_interval(long t, Pointer interv); - - Pointer minus_timestamptz_timestamptz(long t1, long t2); - - Pointer mul_interval_double(Pointer interv, double factor); - - int pg_date_in(String str); - - String pg_date_out(int d); - - int pg_interval_cmp(Pointer interv1, Pointer interv2); - - Pointer pg_interval_in(String str, int typmod); - - String pg_interval_out(Pointer interv); - - long pg_timestamp_in(String str, int typmod); - - String pg_timestamp_out(long t); - - long pg_timestamptz_in(String str, int typmod); - - String pg_timestamptz_out(long t); - - String text2cstring(Pointer txt); - - int text_cmp(Pointer txt1, Pointer txt2); - - Pointer text_copy(Pointer txt); - - Pointer text_in(String str); - - Pointer text_initcap(Pointer txt); - - Pointer text_lower(Pointer txt); - - String text_out(Pointer txt); - - Pointer text_upper(Pointer txt); - - Pointer textcat_text_text(Pointer txt1, Pointer txt2); - - long timestamptz_shift(long t, Pointer interv); - - int timestamp_to_date(long t); - - int timestamptz_to_date(long t); - - Pointer bigintset_in(String str); - - String bigintset_out(Pointer set); - - Pointer bigintspan_expand(Pointer s, long value); - - Pointer bigintspan_in(String str); - - String bigintspan_out(Pointer s); - - Pointer bigintspanset_in(String str); - - String bigintspanset_out(Pointer ss); - - Pointer dateset_in(String str); - - String dateset_out(Pointer s); - - Pointer datespan_in(String str); - - String datespan_out(Pointer s); - - Pointer datespanset_in(String str); - - String datespanset_out(Pointer ss); - - Pointer floatset_in(String str); - - String floatset_out(Pointer set, int maxdd); - - Pointer floatspan_expand(Pointer s, double value); - - Pointer floatspan_in(String str); - - String floatspan_out(Pointer s, int maxdd); - - Pointer floatspanset_in(String str); - - String floatspanset_out(Pointer ss, int maxdd); - - Pointer intset_in(String str); - - String intset_out(Pointer set); - - Pointer intspan_expand(Pointer s, int value); - - Pointer intspan_in(String str); - - String intspan_out(Pointer s); - - Pointer intspanset_in(String str); - - String intspanset_out(Pointer ss); - - String set_as_hexwkb(Pointer s, byte variant, Pointer size_out); - - Pointer set_as_wkb(Pointer s, byte variant, Pointer size_out); - - Pointer set_from_hexwkb(String hexwkb); - - Pointer set_from_wkb(Pointer wkb, long size); - - String span_as_hexwkb(Pointer s, byte variant, Pointer size_out); - - Pointer span_as_wkb(Pointer s, byte variant, Pointer size_out); - - Pointer span_from_hexwkb(String hexwkb); - - Pointer span_from_wkb(Pointer wkb, long size); - - String spanset_as_hexwkb(Pointer ss, byte variant, Pointer size_out); - - Pointer spanset_as_wkb(Pointer ss, byte variant, Pointer size_out); - - Pointer spanset_from_hexwkb(String hexwkb); - - Pointer spanset_from_wkb(Pointer wkb, long size); - - Pointer textset_in(String str); - - String textset_out(Pointer set); - - Pointer tstzset_in(String str); - - String tstzset_out(Pointer set); - - Pointer tstzspan_in(String str); - - String tstzspan_out(Pointer s); - - Pointer tstzspanset_in(String str); - - String tstzspanset_out(Pointer ss); - - Pointer bigintset_make(Pointer values, int count); - - Pointer bigintspan_make(long lower, long upper, boolean lower_inc, boolean upper_inc); - - Pointer dateset_make(Pointer values, int count); - - Pointer datespan_make(int lower, int upper, boolean lower_inc, boolean upper_inc); - - Pointer floatset_make(Pointer values, int count); - - Pointer floatspan_make(double lower, double upper, boolean lower_inc, boolean upper_inc); - - Pointer intset_make(Pointer values, int count); - - Pointer intspan_make(int lower, int upper, boolean lower_inc, boolean upper_inc); - - Pointer set_copy(Pointer s); - - Pointer span_copy(Pointer s); - - Pointer spanset_copy(Pointer ss); - - Pointer spanset_make(Pointer spans, int count); - - Pointer textset_make(Pointer values, int count); - - Pointer tstzset_make(Pointer values, int count); - - Pointer tstzspan_make(long lower, long upper, boolean lower_inc, boolean upper_inc); - - Pointer bigint_to_set(long i); - - Pointer bigint_to_span(long i); - - Pointer bigint_to_spanset(long i); - - Pointer bigintspan_to_intspan(Pointer s); - - Pointer bigintspan_to_floatspan(Pointer s); - - Pointer date_to_set(int d); - - Pointer date_to_span(int d); - - Pointer date_to_spanset(int d); - - Pointer dateset_to_tstzset(Pointer s); - - Pointer datespan_to_tstzspan(Pointer s); - - Pointer datespanset_to_tstzspanset(Pointer ss); - - Pointer float_to_set(double d); - - Pointer float_to_span(double d); - - Pointer float_to_spanset(double d); - - Pointer floatset_to_intset(Pointer s); - - Pointer floatspan_to_bigintspan(Pointer s); - - Pointer floatspan_to_intspan(Pointer s); - - Pointer floatspanset_to_intspanset(Pointer ss); - - Pointer int_to_set(int i); - - Pointer int_to_span(int i); - - Pointer int_to_spanset(int i); - - Pointer intset_to_floatset(Pointer s); - - Pointer intspan_to_bigintspan(Pointer s); - - Pointer intspan_to_floatspan(Pointer s); - - Pointer intspanset_to_floatspanset(Pointer ss); - - Pointer set_to_span(Pointer s); - - Pointer set_to_spanset(Pointer s); - - Pointer span_to_spanset(Pointer s); - - Pointer text_to_set(Pointer txt); - - Pointer timestamptz_to_set(long t); - - Pointer timestamptz_to_span(long t); - - Pointer timestamptz_to_spanset(long t); - - Pointer tstzset_to_dateset(Pointer s); - - Pointer tstzspan_to_datespan(Pointer s); - - Pointer tstzspanset_to_datespanset(Pointer ss); - - long bigintset_end_value(Pointer s); - - long bigintset_start_value(Pointer s); - - boolean bigintset_value_n(Pointer s, int n, Pointer result); - - Pointer bigintset_values(Pointer s); - - long bigintspan_lower(Pointer s); - - long bigintspan_upper(Pointer s); - - long bigintspan_width(Pointer s); - - long bigintspanset_lower(Pointer ss); - - long bigintspanset_upper(Pointer ss); - - long bigintspanset_width(Pointer ss, boolean boundspan); - - int dateset_end_value(Pointer s); - - int dateset_start_value(Pointer s); - - boolean dateset_value_n(Pointer s, int n, Pointer result); - - Pointer dateset_values(Pointer s); - - Pointer datespan_duration(Pointer s); - - int datespan_lower(Pointer s); - - int datespan_upper(Pointer s); - - boolean datespanset_date_n(Pointer ss, int n, Pointer result); - - Pointer datespanset_dates(Pointer ss); - - Pointer datespanset_duration(Pointer ss, boolean boundspan); - - int datespanset_end_date(Pointer ss); - - int datespanset_num_dates(Pointer ss); - - int datespanset_start_date(Pointer ss); - - double floatset_end_value(Pointer s); - - double floatset_start_value(Pointer s); - - boolean floatset_value_n(Pointer s, int n, Pointer result); - - Pointer floatset_values(Pointer s); - - double floatspan_lower(Pointer s); - - double floatspan_upper(Pointer s); - - double floatspan_width(Pointer s); - - double floatspanset_lower(Pointer ss); - - double floatspanset_upper(Pointer ss); - - double floatspanset_width(Pointer ss, boolean boundspan); - - int intset_end_value(Pointer s); - - int intset_start_value(Pointer s); - - boolean intset_value_n(Pointer s, int n, Pointer result); - - Pointer intset_values(Pointer s); - - int intspan_lower(Pointer s); - - int intspan_upper(Pointer s); - - int intspan_width(Pointer s); - - int intspanset_lower(Pointer ss); - - int intspanset_upper(Pointer ss); - - int intspanset_width(Pointer ss, boolean boundspan); - - int set_hash(Pointer s); - - long set_hash_extended(Pointer s, long seed); - - int set_num_values(Pointer s); - - int span_hash(Pointer s); - - long span_hash_extended(Pointer s, long seed); - - boolean span_lower_inc(Pointer s); - - boolean span_upper_inc(Pointer s); - - Pointer spanset_end_span(Pointer ss); - - int spanset_hash(Pointer ss); - - long spanset_hash_extended(Pointer ss, long seed); - - boolean spanset_lower_inc(Pointer ss); - - int spanset_num_spans(Pointer ss); - - Pointer spanset_span(Pointer ss); - - Pointer spanset_span_n(Pointer ss, int i); - - Pointer spanset_spanarr(Pointer ss); - - Pointer spanset_start_span(Pointer ss); - - boolean spanset_upper_inc(Pointer ss); - - Pointer textset_end_value(Pointer s); - - Pointer textset_start_value(Pointer s); - - boolean textset_value_n(Pointer s, int n, Pointer result); - - Pointer textset_values(Pointer s); - - long tstzset_end_value(Pointer s); - - long tstzset_start_value(Pointer s); - - boolean tstzset_value_n(Pointer s, int n, Pointer result); - - Pointer tstzset_values(Pointer s); - - Pointer tstzspan_duration(Pointer s); - - long tstzspan_lower(Pointer s); - - long tstzspan_upper(Pointer s); - - Pointer tstzspanset_duration(Pointer ss, boolean boundspan); - - long tstzspanset_end_timestamptz(Pointer ss); - - long tstzspanset_lower(Pointer ss); - - int tstzspanset_num_timestamps(Pointer ss); - - long tstzspanset_start_timestamptz(Pointer ss); - - Pointer tstzspanset_timestamps(Pointer ss); - - boolean tstzspanset_timestamptz_n(Pointer ss, int n, Pointer result); - - long tstzspanset_upper(Pointer ss); - - Pointer bigintset_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth); - - Pointer bigintspan_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth); - - Pointer bigintspanset_shift_scale(Pointer ss, long shift, long width, boolean hasshift, boolean haswidth); - - Pointer dateset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer datespan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer datespanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer floatset_ceil(Pointer s); - - Pointer floatset_degrees(Pointer s, boolean normalize); - - Pointer floatset_floor(Pointer s); - - Pointer floatset_radians(Pointer s); - - Pointer floatset_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth); - - Pointer floatspan_ceil(Pointer s); - - Pointer floatspan_degrees(Pointer s, boolean normalize); - - Pointer floatspan_floor(Pointer s); - - Pointer floatspan_radians(Pointer s); - - Pointer floatspan_round(Pointer s, int maxdd); - - Pointer floatspan_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth); - - Pointer floatspanset_ceil(Pointer ss); - - Pointer floatspanset_floor(Pointer ss); - - Pointer floatspanset_degrees(Pointer ss, boolean normalize); - - Pointer floatspanset_radians(Pointer ss); - - Pointer floatspanset_round(Pointer ss, int maxdd); - - Pointer floatspanset_shift_scale(Pointer ss, double shift, double width, boolean hasshift, boolean haswidth); - - Pointer intset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer intspan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer intspanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer tstzspan_expand(Pointer s, Pointer interv); - - Pointer set_round(Pointer s, int maxdd); - - Pointer textcat_text_textset(Pointer txt, Pointer s); - - Pointer textcat_textset_text(Pointer s, Pointer txt); - - Pointer textset_initcap(Pointer s); - - Pointer textset_lower(Pointer s); - - Pointer textset_upper(Pointer s); - - long timestamptz_tprecision(long t, Pointer duration, long torigin); - - Pointer tstzset_shift_scale(Pointer s, Pointer shift, Pointer duration); - - Pointer tstzset_tprecision(Pointer s, Pointer duration, long torigin); - - Pointer tstzspan_shift_scale(Pointer s, Pointer shift, Pointer duration); - - Pointer tstzspan_tprecision(Pointer s, Pointer duration, long torigin); - - Pointer tstzspanset_shift_scale(Pointer ss, Pointer shift, Pointer duration); - - Pointer tstzspanset_tprecision(Pointer ss, Pointer duration, long torigin); - - int set_cmp(Pointer s1, Pointer s2); - - boolean set_eq(Pointer s1, Pointer s2); - - boolean set_ge(Pointer s1, Pointer s2); - - boolean set_gt(Pointer s1, Pointer s2); - - boolean set_le(Pointer s1, Pointer s2); - - boolean set_lt(Pointer s1, Pointer s2); - - boolean set_ne(Pointer s1, Pointer s2); - - int span_cmp(Pointer s1, Pointer s2); - - boolean span_eq(Pointer s1, Pointer s2); - - boolean span_ge(Pointer s1, Pointer s2); - - boolean span_gt(Pointer s1, Pointer s2); - - boolean span_le(Pointer s1, Pointer s2); - - boolean span_lt(Pointer s1, Pointer s2); - - boolean span_ne(Pointer s1, Pointer s2); - - int spanset_cmp(Pointer ss1, Pointer ss2); - - boolean spanset_eq(Pointer ss1, Pointer ss2); - - boolean spanset_ge(Pointer ss1, Pointer ss2); - - boolean spanset_gt(Pointer ss1, Pointer ss2); - - boolean spanset_le(Pointer ss1, Pointer ss2); - - boolean spanset_lt(Pointer ss1, Pointer ss2); - - boolean spanset_ne(Pointer ss1, Pointer ss2); - - Pointer set_spans(Pointer s); - - Pointer set_split_each_n_spans(Pointer s, int elems_per_span, Pointer count); - - Pointer set_split_n_spans(Pointer s, int span_count, Pointer count); - - Pointer spanset_spans(Pointer ss); - - Pointer spanset_split_each_n_spans(Pointer ss, int elems_per_span, Pointer count); - - Pointer spanset_split_n_spans(Pointer ss, int span_count, Pointer count); - - boolean adjacent_span_bigint(Pointer s, long i); - - boolean adjacent_span_date(Pointer s, int d); - - boolean adjacent_span_float(Pointer s, double d); - - boolean adjacent_span_int(Pointer s, int i); - - boolean adjacent_span_span(Pointer s1, Pointer s2); - - boolean adjacent_span_spanset(Pointer s, Pointer ss); - - boolean adjacent_span_timestamptz(Pointer s, long t); - - boolean adjacent_spanset_bigint(Pointer ss, long i); - - boolean adjacent_spanset_date(Pointer ss, int d); - - boolean adjacent_spanset_float(Pointer ss, double d); - - boolean adjacent_spanset_int(Pointer ss, int i); - - boolean adjacent_spanset_timestamptz(Pointer ss, long t); - - boolean adjacent_spanset_span(Pointer ss, Pointer s); - - boolean adjacent_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean contained_bigint_set(long i, Pointer s); - - boolean contained_bigint_span(long i, Pointer s); - - boolean contained_bigint_spanset(long i, Pointer ss); - - boolean contained_date_set(int d, Pointer s); - - boolean contained_date_span(int d, Pointer s); - - boolean contained_date_spanset(int d, Pointer ss); - - boolean contained_float_set(double d, Pointer s); - - boolean contained_float_span(double d, Pointer s); - - boolean contained_float_spanset(double d, Pointer ss); - - boolean contained_int_set(int i, Pointer s); - - boolean contained_int_span(int i, Pointer s); - - boolean contained_int_spanset(int i, Pointer ss); - - boolean contained_set_set(Pointer s1, Pointer s2); - - boolean contained_span_span(Pointer s1, Pointer s2); - - boolean contained_span_spanset(Pointer s, Pointer ss); - - boolean contained_spanset_span(Pointer ss, Pointer s); - - boolean contained_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean contained_text_set(Pointer txt, Pointer s); - - boolean contained_timestamptz_set(long t, Pointer s); - - boolean contained_timestamptz_span(long t, Pointer s); - - boolean contained_timestamptz_spanset(long t, Pointer ss); - - boolean contains_set_bigint(Pointer s, long i); - - boolean contains_set_date(Pointer s, int d); - - boolean contains_set_float(Pointer s, double d); - - boolean contains_set_int(Pointer s, int i); - - boolean contains_set_set(Pointer s1, Pointer s2); - - boolean contains_set_text(Pointer s, Pointer t); - - boolean contains_set_timestamptz(Pointer s, long t); - - boolean contains_span_bigint(Pointer s, long i); - - boolean contains_span_date(Pointer s, int d); - - boolean contains_span_float(Pointer s, double d); - - boolean contains_span_int(Pointer s, int i); - - boolean contains_span_span(Pointer s1, Pointer s2); - - boolean contains_span_spanset(Pointer s, Pointer ss); - - boolean contains_span_timestamptz(Pointer s, long t); - - boolean contains_spanset_bigint(Pointer ss, long i); - - boolean contains_spanset_date(Pointer ss, int d); - - boolean contains_spanset_float(Pointer ss, double d); - - boolean contains_spanset_int(Pointer ss, int i); - - boolean contains_spanset_span(Pointer ss, Pointer s); - - boolean contains_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean contains_spanset_timestamptz(Pointer ss, long t); - - boolean overlaps_set_set(Pointer s1, Pointer s2); - - boolean overlaps_span_span(Pointer s1, Pointer s2); - - boolean overlaps_span_spanset(Pointer s, Pointer ss); - - boolean overlaps_spanset_span(Pointer ss, Pointer s); - - boolean overlaps_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean after_date_set(int d, Pointer s); - - boolean after_date_span(int d, Pointer s); - - boolean after_date_spanset(int d, Pointer ss); - - boolean after_set_date(Pointer s, int d); - - boolean after_set_timestamptz(Pointer s, long t); - - boolean after_span_date(Pointer s, int d); - - boolean after_span_timestamptz(Pointer s, long t); - - boolean after_spanset_date(Pointer ss, int d); - - boolean after_spanset_timestamptz(Pointer ss, long t); - - boolean after_timestamptz_set(long t, Pointer s); - - boolean after_timestamptz_span(long t, Pointer s); - - boolean after_timestamptz_spanset(long t, Pointer ss); - - boolean before_date_set(int d, Pointer s); - - boolean before_date_span(int d, Pointer s); - - boolean before_date_spanset(int d, Pointer ss); - - boolean before_set_date(Pointer s, int d); - - boolean before_set_timestamptz(Pointer s, long t); - - boolean before_span_date(Pointer s, int d); - - boolean before_span_timestamptz(Pointer s, long t); - - boolean before_spanset_date(Pointer ss, int d); - - boolean before_spanset_timestamptz(Pointer ss, long t); - - boolean before_timestamptz_set(long t, Pointer s); - - boolean before_timestamptz_span(long t, Pointer s); - - boolean before_timestamptz_spanset(long t, Pointer ss); - - boolean left_bigint_set(long i, Pointer s); - - boolean left_bigint_span(long i, Pointer s); - - boolean left_bigint_spanset(long i, Pointer ss); - - boolean left_float_set(double d, Pointer s); - - boolean left_float_span(double d, Pointer s); - - boolean left_float_spanset(double d, Pointer ss); - - boolean left_int_set(int i, Pointer s); - - boolean left_int_span(int i, Pointer s); - - boolean left_int_spanset(int i, Pointer ss); - - boolean left_set_bigint(Pointer s, long i); - - boolean left_set_float(Pointer s, double d); - - boolean left_set_int(Pointer s, int i); - - boolean left_set_set(Pointer s1, Pointer s2); - - boolean left_set_text(Pointer s, Pointer txt); - - boolean left_span_bigint(Pointer s, long i); - - boolean left_span_float(Pointer s, double d); - - boolean left_span_int(Pointer s, int i); - - boolean left_span_span(Pointer s1, Pointer s2); - - boolean left_span_spanset(Pointer s, Pointer ss); - - boolean left_spanset_bigint(Pointer ss, long i); - - boolean left_spanset_float(Pointer ss, double d); - - boolean left_spanset_int(Pointer ss, int i); - - boolean left_spanset_span(Pointer ss, Pointer s); - - boolean left_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean left_text_set(Pointer txt, Pointer s); - - boolean overafter_date_set(int d, Pointer s); - - boolean overafter_date_span(int d, Pointer s); - - boolean overafter_date_spanset(int d, Pointer ss); - - boolean overafter_set_date(Pointer s, int d); - - boolean overafter_set_timestamptz(Pointer s, long t); - - boolean overafter_span_date(Pointer s, int d); - - boolean overafter_span_timestamptz(Pointer s, long t); - - boolean overafter_spanset_date(Pointer ss, int d); - - boolean overafter_spanset_timestamptz(Pointer ss, long t); - - boolean overafter_timestamptz_set(long t, Pointer s); - - boolean overafter_timestamptz_span(long t, Pointer s); - - boolean overafter_timestamptz_spanset(long t, Pointer ss); - - boolean overbefore_date_set(int d, Pointer s); - - boolean overbefore_date_span(int d, Pointer s); - - boolean overbefore_date_spanset(int d, Pointer ss); - - boolean overbefore_set_date(Pointer s, int d); - - boolean overbefore_set_timestamptz(Pointer s, long t); - - boolean overbefore_span_date(Pointer s, int d); - - boolean overbefore_span_timestamptz(Pointer s, long t); - - boolean overbefore_spanset_date(Pointer ss, int d); - - boolean overbefore_spanset_timestamptz(Pointer ss, long t); - - boolean overbefore_timestamptz_set(long t, Pointer s); - - boolean overbefore_timestamptz_span(long t, Pointer s); - - boolean overbefore_timestamptz_spanset(long t, Pointer ss); - - boolean overleft_bigint_set(long i, Pointer s); - - boolean overleft_bigint_span(long i, Pointer s); - - boolean overleft_bigint_spanset(long i, Pointer ss); - - boolean overleft_float_set(double d, Pointer s); - - boolean overleft_float_span(double d, Pointer s); - - boolean overleft_float_spanset(double d, Pointer ss); - - boolean overleft_int_set(int i, Pointer s); - - boolean overleft_int_span(int i, Pointer s); - - boolean overleft_int_spanset(int i, Pointer ss); - - boolean overleft_set_bigint(Pointer s, long i); - - boolean overleft_set_float(Pointer s, double d); - - boolean overleft_set_int(Pointer s, int i); - - boolean overleft_set_set(Pointer s1, Pointer s2); - - boolean overleft_set_text(Pointer s, Pointer txt); - - boolean overleft_span_bigint(Pointer s, long i); - - boolean overleft_span_float(Pointer s, double d); - - boolean overleft_span_int(Pointer s, int i); - - boolean overleft_span_span(Pointer s1, Pointer s2); - - boolean overleft_span_spanset(Pointer s, Pointer ss); - - boolean overleft_spanset_bigint(Pointer ss, long i); - - boolean overleft_spanset_float(Pointer ss, double d); - - boolean overleft_spanset_int(Pointer ss, int i); - - boolean overleft_spanset_span(Pointer ss, Pointer s); - - boolean overleft_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean overleft_text_set(Pointer txt, Pointer s); - - boolean overright_bigint_set(long i, Pointer s); - - boolean overright_bigint_span(long i, Pointer s); - - boolean overright_bigint_spanset(long i, Pointer ss); - - boolean overright_float_set(double d, Pointer s); - - boolean overright_float_span(double d, Pointer s); - - boolean overright_float_spanset(double d, Pointer ss); - - boolean overright_int_set(int i, Pointer s); - - boolean overright_int_span(int i, Pointer s); - - boolean overright_int_spanset(int i, Pointer ss); - - boolean overright_set_bigint(Pointer s, long i); - - boolean overright_set_float(Pointer s, double d); - - boolean overright_set_int(Pointer s, int i); - - boolean overright_set_set(Pointer s1, Pointer s2); - - boolean overright_set_text(Pointer s, Pointer txt); - - boolean overright_span_bigint(Pointer s, long i); - - boolean overright_span_float(Pointer s, double d); - - boolean overright_span_int(Pointer s, int i); - - boolean overright_span_span(Pointer s1, Pointer s2); - - boolean overright_span_spanset(Pointer s, Pointer ss); - - boolean overright_spanset_bigint(Pointer ss, long i); - - boolean overright_spanset_float(Pointer ss, double d); - - boolean overright_spanset_int(Pointer ss, int i); - - boolean overright_spanset_span(Pointer ss, Pointer s); - - boolean overright_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean overright_text_set(Pointer txt, Pointer s); - - boolean right_bigint_set(long i, Pointer s); - - boolean right_bigint_span(long i, Pointer s); - - boolean right_bigint_spanset(long i, Pointer ss); - - boolean right_float_set(double d, Pointer s); - - boolean right_float_span(double d, Pointer s); - - boolean right_float_spanset(double d, Pointer ss); - - boolean right_int_set(int i, Pointer s); - - boolean right_int_span(int i, Pointer s); - - boolean right_int_spanset(int i, Pointer ss); - - boolean right_set_bigint(Pointer s, long i); - - boolean right_set_float(Pointer s, double d); - - boolean right_set_int(Pointer s, int i); - - boolean right_set_set(Pointer s1, Pointer s2); - - boolean right_set_text(Pointer s, Pointer txt); - - boolean right_span_bigint(Pointer s, long i); - - boolean right_span_float(Pointer s, double d); - - boolean right_span_int(Pointer s, int i); - - boolean right_span_span(Pointer s1, Pointer s2); - - boolean right_span_spanset(Pointer s, Pointer ss); - - boolean right_spanset_bigint(Pointer ss, long i); - - boolean right_spanset_float(Pointer ss, double d); - - boolean right_spanset_int(Pointer ss, int i); - - boolean right_spanset_span(Pointer ss, Pointer s); - - boolean right_spanset_spanset(Pointer ss1, Pointer ss2); - - boolean right_text_set(Pointer txt, Pointer s); - - Pointer intersection_bigint_set(long i, Pointer s); - - Pointer intersection_date_set(int d, Pointer s); - - Pointer intersection_float_set(double d, Pointer s); - - Pointer intersection_int_set(int i, Pointer s); - - Pointer intersection_set_bigint(Pointer s, long i); - - Pointer intersection_set_date(Pointer s, int d); - - Pointer intersection_set_float(Pointer s, double d); - - Pointer intersection_set_int(Pointer s, int i); - - Pointer intersection_set_set(Pointer s1, Pointer s2); - - Pointer intersection_set_text(Pointer s, Pointer txt); - - Pointer intersection_set_timestamptz(Pointer s, long t); - - Pointer intersection_span_bigint(Pointer s, long i); - - Pointer intersection_span_date(Pointer s, int d); - - Pointer intersection_span_float(Pointer s, double d); - - Pointer intersection_span_int(Pointer s, int i); - - Pointer intersection_span_span(Pointer s1, Pointer s2); - - Pointer intersection_span_spanset(Pointer s, Pointer ss); - - Pointer intersection_span_timestamptz(Pointer s, long t); - - Pointer intersection_spanset_bigint(Pointer ss, long i); - - Pointer intersection_spanset_date(Pointer ss, int d); - - Pointer intersection_spanset_float(Pointer ss, double d); - - Pointer intersection_spanset_int(Pointer ss, int i); - - Pointer intersection_spanset_span(Pointer ss, Pointer s); - - Pointer intersection_spanset_spanset(Pointer ss1, Pointer ss2); - - Pointer intersection_spanset_timestamptz(Pointer ss, long t); - - Pointer intersection_text_set(Pointer txt, Pointer s); - - Pointer intersection_timestamptz_set(long t, Pointer s); - - Pointer minus_bigint_set(long i, Pointer s); - - Pointer minus_bigint_span(long i, Pointer s); - - Pointer minus_bigint_spanset(long i, Pointer ss); - - Pointer minus_date_set(int d, Pointer s); - - Pointer minus_date_span(int d, Pointer s); - - Pointer minus_date_spanset(int d, Pointer ss); - - Pointer minus_float_set(double d, Pointer s); - - Pointer minus_float_span(double d, Pointer s); - - Pointer minus_float_spanset(double d, Pointer ss); - - Pointer minus_int_set(int i, Pointer s); - - Pointer minus_int_span(int i, Pointer s); - - Pointer minus_int_spanset(int i, Pointer ss); - - Pointer minus_set_bigint(Pointer s, long i); - - Pointer minus_set_date(Pointer s, int d); - - Pointer minus_set_float(Pointer s, double d); - - Pointer minus_set_int(Pointer s, int i); - - Pointer minus_set_set(Pointer s1, Pointer s2); - - Pointer minus_set_text(Pointer s, Pointer txt); - - Pointer minus_set_timestamptz(Pointer s, long t); - - Pointer minus_span_bigint(Pointer s, long i); - - Pointer minus_span_date(Pointer s, int d); - - Pointer minus_span_float(Pointer s, double d); - - Pointer minus_span_int(Pointer s, int i); - - Pointer minus_span_span(Pointer s1, Pointer s2); - - Pointer minus_span_spanset(Pointer s, Pointer ss); - - Pointer minus_span_timestamptz(Pointer s, long t); - - Pointer minus_spanset_bigint(Pointer ss, long i); - - Pointer minus_spanset_date(Pointer ss, int d); - - Pointer minus_spanset_float(Pointer ss, double d); - - Pointer minus_spanset_int(Pointer ss, int i); - - Pointer minus_spanset_span(Pointer ss, Pointer s); - - Pointer minus_spanset_spanset(Pointer ss1, Pointer ss2); - - Pointer minus_spanset_timestamptz(Pointer ss, long t); - - Pointer minus_text_set(Pointer txt, Pointer s); - - Pointer minus_timestamptz_set(long t, Pointer s); - - Pointer minus_timestamptz_span(long t, Pointer s); - - Pointer minus_timestamptz_spanset(long t, Pointer ss); - - Pointer union_bigint_set(long i, Pointer s); - - Pointer union_bigint_span(Pointer s, long i); - - Pointer union_bigint_spanset(long i, Pointer ss); - - Pointer union_date_set(int d, Pointer s); - - Pointer union_date_span(Pointer s, int d); - - Pointer union_date_spanset(int d, Pointer ss); - - Pointer union_float_set(double d, Pointer s); - - Pointer union_float_span(Pointer s, double d); - - Pointer union_float_spanset(double d, Pointer ss); - - Pointer union_int_set(int i, Pointer s); - - Pointer union_int_span(int i, Pointer s); - - Pointer union_int_spanset(int i, Pointer ss); - - Pointer union_set_bigint(Pointer s, long i); - - Pointer union_set_date(Pointer s, int d); - - Pointer union_set_float(Pointer s, double d); - - Pointer union_set_int(Pointer s, int i); - - Pointer union_set_set(Pointer s1, Pointer s2); - - Pointer union_set_text(Pointer s, Pointer txt); - - Pointer union_set_timestamptz(Pointer s, long t); - - Pointer union_span_bigint(Pointer s, long i); - - Pointer union_span_date(Pointer s, int d); - - Pointer union_span_float(Pointer s, double d); - - Pointer union_span_int(Pointer s, int i); - - Pointer union_span_span(Pointer s1, Pointer s2); - - Pointer union_span_spanset(Pointer s, Pointer ss); - - Pointer union_span_timestamptz(Pointer s, long t); - - Pointer union_spanset_bigint(Pointer ss, long i); - - Pointer union_spanset_date(Pointer ss, int d); - - Pointer union_spanset_float(Pointer ss, double d); - - Pointer union_spanset_int(Pointer ss, int i); - - Pointer union_spanset_span(Pointer ss, Pointer s); - - Pointer union_spanset_spanset(Pointer ss1, Pointer ss2); - - Pointer union_spanset_timestamptz(Pointer ss, long t); - - Pointer union_text_set(Pointer txt, Pointer s); - - Pointer union_timestamptz_set(long t, Pointer s); - - Pointer union_timestamptz_span(long t, Pointer s); - - Pointer union_timestamptz_spanset(long t, Pointer ss); - - long distance_bigintset_bigintset(Pointer s1, Pointer s2); - - long distance_bigintspan_bigintspan(Pointer s1, Pointer s2); - - long distance_bigintspanset_bigintspan(Pointer ss, Pointer s); - - long distance_bigintspanset_bigintspanset(Pointer ss1, Pointer ss2); - - int distance_dateset_dateset(Pointer s1, Pointer s2); - - int distance_datespan_datespan(Pointer s1, Pointer s2); - - int distance_datespanset_datespan(Pointer ss, Pointer s); - - int distance_datespanset_datespanset(Pointer ss1, Pointer ss2); - - double distance_floatset_floatset(Pointer s1, Pointer s2); - - double distance_floatspan_floatspan(Pointer s1, Pointer s2); - - double distance_floatspanset_floatspan(Pointer ss, Pointer s); - - double distance_floatspanset_floatspanset(Pointer ss1, Pointer ss2); - - int distance_intset_intset(Pointer s1, Pointer s2); - - int distance_intspan_intspan(Pointer s1, Pointer s2); - - int distance_intspanset_intspan(Pointer ss, Pointer s); - - int distance_intspanset_intspanset(Pointer ss1, Pointer ss2); - - long distance_set_bigint(Pointer s, long i); - - int distance_set_date(Pointer s, int d); - - double distance_set_float(Pointer s, double d); - - int distance_set_int(Pointer s, int i); - - double distance_set_timestamptz(Pointer s, long t); - - long distance_span_bigint(Pointer s, long i); - - int distance_span_date(Pointer s, int d); - - double distance_span_float(Pointer s, double d); - - int distance_span_int(Pointer s, int i); - - double distance_span_timestamptz(Pointer s, long t); - - long distance_spanset_bigint(Pointer ss, long i); - - int distance_spanset_date(Pointer ss, int d); - - double distance_spanset_float(Pointer ss, double d); - - int distance_spanset_int(Pointer ss, int i); - - double distance_spanset_timestamptz(Pointer ss, long t); - - double distance_tstzset_tstzset(Pointer s1, Pointer s2); - - double distance_tstzspan_tstzspan(Pointer s1, Pointer s2); - - double distance_tstzspanset_tstzspan(Pointer ss, Pointer s); - - double distance_tstzspanset_tstzspanset(Pointer ss1, Pointer ss2); - - Pointer bigint_extent_transfn(Pointer state, long i); - - Pointer bigint_union_transfn(Pointer state, long i); - - Pointer date_extent_transfn(Pointer state, int d); - - Pointer date_union_transfn(Pointer state, int d); - - Pointer float_extent_transfn(Pointer state, double d); - - Pointer float_union_transfn(Pointer state, double d); - - Pointer int_extent_transfn(Pointer state, int i); - - Pointer int_union_transfn(Pointer state, int i); - - Pointer set_extent_transfn(Pointer state, Pointer s); - - Pointer set_union_finalfn(Pointer state); - - Pointer set_union_transfn(Pointer state, Pointer s); - - Pointer span_extent_transfn(Pointer state, Pointer s); - - Pointer span_union_transfn(Pointer state, Pointer s); - - Pointer spanset_extent_transfn(Pointer state, Pointer ss); - - Pointer spanset_union_finalfn(Pointer state); - - Pointer spanset_union_transfn(Pointer state, Pointer ss); - - Pointer text_union_transfn(Pointer state, Pointer txt); - - Pointer timestamptz_extent_transfn(Pointer state, long t); - - Pointer timestamptz_union_transfn(Pointer state, long t); - - long bigint_get_bin(long value, long vsize, long vorigin); - - Pointer bigintspan_bins(Pointer s, long vsize, long vorigin, Pointer count); - - Pointer bigintspanset_bins(Pointer ss, long vsize, long vorigin, Pointer count); - - int date_get_bin(int d, Pointer duration, int torigin); - - Pointer datespan_bins(Pointer s, Pointer duration, int torigin, Pointer count); - - Pointer datespanset_bins(Pointer ss, Pointer duration, int torigin, Pointer count); - - double float_get_bin(double value, double vsize, double vorigin); - - Pointer floatspan_bins(Pointer s, double vsize, double vorigin, Pointer count); - - Pointer floatspanset_bins(Pointer ss, double vsize, double vorigin, Pointer count); - - int int_get_bin(int value, int vsize, int vorigin); - - Pointer intspan_bins(Pointer s, int vsize, int vorigin, Pointer count); - - Pointer intspanset_bins(Pointer ss, int vsize, int vorigin, Pointer count); - - long timestamptz_get_bin(long t, Pointer duration, long torigin); - - Pointer tstzspan_bins(Pointer s, Pointer duration, long origin, Pointer count); - - Pointer tstzspanset_bins(Pointer ss, Pointer duration, long torigin, Pointer count); - - String tbox_as_hexwkb(Pointer box, byte variant, Pointer size); - - Pointer tbox_as_wkb(Pointer box, byte variant, Pointer size_out); - - Pointer tbox_from_hexwkb(String hexwkb); - - Pointer tbox_from_wkb(Pointer wkb, long size); - - Pointer tbox_in(String str); - - String tbox_out(Pointer box, int maxdd); - - Pointer float_timestamptz_to_tbox(double d, long t); - - Pointer float_tstzspan_to_tbox(double d, Pointer s); - - Pointer int_timestamptz_to_tbox(int i, long t); - - Pointer int_tstzspan_to_tbox(int i, Pointer s); - - Pointer numspan_tstzspan_to_tbox(Pointer span, Pointer s); - - Pointer numspan_timestamptz_to_tbox(Pointer span, long t); - - Pointer tbox_copy(Pointer box); - - Pointer tbox_make(Pointer s, Pointer p); - - Pointer float_to_tbox(double d); - - Pointer int_to_tbox(int i); - - Pointer set_to_tbox(Pointer s); - - Pointer span_to_tbox(Pointer s); - - Pointer spanset_to_tbox(Pointer ss); - - Pointer tbox_to_bigintspan(Pointer box); - - Pointer tbox_to_intspan(Pointer box); - - Pointer tbox_to_floatspan(Pointer box); - - Pointer tbox_to_tstzspan(Pointer box); - - Pointer timestamptz_to_tbox(long t); - - int tbox_hash(Pointer box); - - long tbox_hash_extended(Pointer box, long seed); - - boolean tbox_hast(Pointer box); - - boolean tbox_hasx(Pointer box); - - } - - public interface MeosLibraryPartB { - - boolean tbox_tmax(Pointer box, Pointer result); - - boolean tbox_tmax_inc(Pointer box, Pointer result); - - boolean tbox_tmin(Pointer box, Pointer result); - - boolean tbox_tmin_inc(Pointer box, Pointer result); - - boolean tbox_xmax(Pointer box, Pointer result); - - boolean tbox_xmax_inc(Pointer box, Pointer result); - - boolean tbox_xmin(Pointer box, Pointer result); - - boolean tbox_xmin_inc(Pointer box, Pointer result); - - boolean tboxfloat_xmax(Pointer box, Pointer result); - - boolean tboxfloat_xmin(Pointer box, Pointer result); - - boolean tboxint_xmax(Pointer box, Pointer result); - - boolean tboxint_xmin(Pointer box, Pointer result); - - Pointer tbigintbox_expand(Pointer box, long i); - - Pointer tbigintbox_shift_scale(Pointer box, long shift, long width, boolean hasshift, boolean haswidth); - - Pointer tbox_expand_time(Pointer box, Pointer interv); - - Pointer tbox_round(Pointer box, int maxdd); - - Pointer tbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration); - - Pointer tfloatbox_expand(Pointer box, double d); - - Pointer tfloatbox_shift_scale(Pointer box, double shift, double width, boolean hasshift, boolean haswidth); - - Pointer tintbox_expand(Pointer box, int i); - - Pointer tintbox_shift_scale(Pointer box, int shift, int width, boolean hasshift, boolean haswidth); - - Pointer union_tbox_tbox(Pointer box1, Pointer box2, boolean strict); - - Pointer intersection_tbox_tbox(Pointer box1, Pointer box2); - - boolean adjacent_tbox_tbox(Pointer box1, Pointer box2); - - boolean contained_tbox_tbox(Pointer box1, Pointer box2); - - boolean contains_tbox_tbox(Pointer box1, Pointer box2); - - boolean overlaps_tbox_tbox(Pointer box1, Pointer box2); - - boolean same_tbox_tbox(Pointer box1, Pointer box2); - - boolean after_tbox_tbox(Pointer box1, Pointer box2); - - boolean before_tbox_tbox(Pointer box1, Pointer box2); - - boolean left_tbox_tbox(Pointer box1, Pointer box2); - - boolean overafter_tbox_tbox(Pointer box1, Pointer box2); - - boolean overbefore_tbox_tbox(Pointer box1, Pointer box2); - - boolean overleft_tbox_tbox(Pointer box1, Pointer box2); - - boolean overright_tbox_tbox(Pointer box1, Pointer box2); - - boolean right_tbox_tbox(Pointer box1, Pointer box2); - - int tbox_cmp(Pointer box1, Pointer box2); - - boolean tbox_eq(Pointer box1, Pointer box2); - - boolean tbox_ge(Pointer box1, Pointer box2); - - boolean tbox_gt(Pointer box1, Pointer box2); - - boolean tbox_le(Pointer box1, Pointer box2); - - boolean tbox_lt(Pointer box1, Pointer box2); - - boolean tbox_ne(Pointer box1, Pointer box2); - - Pointer tbigint_from_mfjson(String str); - - Pointer tbigint_in(String str); - - String tbigint_out(Pointer temp); - - Pointer tbool_from_mfjson(String str); - - Pointer tbool_in(String str); - - String tbool_out(Pointer temp); - - String temporal_as_hexwkb(Pointer temp, byte variant, Pointer size_out); - - String temporal_as_mfjson(Pointer temp, boolean with_bbox, int flags, int precision, String srs); - - Pointer temporal_as_wkb(Pointer temp, byte variant, Pointer size_out); - - Pointer temporal_from_hexwkb(String hexwkb); - - Pointer temporal_from_wkb(Pointer wkb, long size); - - Pointer tfloat_from_mfjson(String str); - - Pointer tfloat_in(String str); - - String tfloat_out(Pointer temp, int maxdd); - - Pointer tint_from_mfjson(String str); - - Pointer tint_in(String str); - - String tint_out(Pointer temp); - - Pointer ttext_from_mfjson(String str); - - Pointer ttext_in(String str); - - String ttext_out(Pointer temp); - - Pointer tbigint_from_base_temp(long i, Pointer temp); - - Pointer tbigintinst_make(long i, long t); - - Pointer tbigintseq_from_base_tstzset(long i, Pointer s); - - Pointer tbigintseq_from_base_tstzspan(long i, Pointer s); - - Pointer tbigintseqset_from_base_tstzspanset(long i, Pointer ss); - - Pointer tbool_from_base_temp(boolean b, Pointer temp); - - Pointer tboolinst_make(boolean b, long t); - - Pointer tboolseq_from_base_tstzset(boolean b, Pointer s); - - Pointer tboolseq_from_base_tstzspan(boolean b, Pointer s); - - Pointer tboolseqset_from_base_tstzspanset(boolean b, Pointer ss); - - Pointer temporal_copy(Pointer temp); - - Pointer tfloat_from_base_temp(double d, Pointer temp); - - Pointer tfloatinst_make(double d, long t); - - Pointer tfloatseq_from_base_tstzset(double d, Pointer s); - - Pointer tfloatseq_from_base_tstzspan(double d, Pointer s, int interp); - - Pointer tfloatseqset_from_base_tstzspanset(double d, Pointer ss, int interp); - - Pointer tint_from_base_temp(int i, Pointer temp); - - Pointer tintinst_make(int i, long t); - - Pointer tintseq_from_base_tstzset(int i, Pointer s); - - Pointer tintseq_from_base_tstzspan(int i, Pointer s); - - Pointer tintseqset_from_base_tstzspanset(int i, Pointer ss); - - Pointer tsequence_make(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); - - Pointer tsequenceset_make(Pointer sequences, int count, boolean normalize); - - Pointer tsequenceset_make_gaps(Pointer instants, int count, int interp, Pointer maxt, double maxdist); - - Pointer ttext_from_base_temp(Pointer txt, Pointer temp); - - Pointer ttextinst_make(Pointer txt, long t); - - Pointer ttextseq_from_base_tstzset(Pointer txt, Pointer s); - - Pointer ttextseq_from_base_tstzspan(Pointer txt, Pointer s); - - Pointer ttextseqset_from_base_tstzspanset(Pointer txt, Pointer ss); - - Pointer tbigint_to_tfloat(Pointer temp); - - Pointer tbigint_to_tint(Pointer temp); - - Pointer tbool_to_tint(Pointer temp); - - Pointer temporal_to_tstzspan(Pointer temp); - - Pointer tfloat_to_tbigint(Pointer temp); - - Pointer tfloat_to_tint(Pointer temp); - - Pointer tint_to_tbigint(Pointer temp); - - Pointer tint_to_tfloat(Pointer temp); - - Pointer tnumber_to_span(Pointer temp); - - Pointer tnumber_to_tbox(Pointer temp); - - long tbigint_end_value(Pointer temp); - - long tbigint_max_value(Pointer temp); - - long tbigint_min_value(Pointer temp); - - long tbigint_start_value(Pointer temp); - - boolean tbigint_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tbigint_value_n(Pointer temp, long n, Pointer result); - - Pointer tbigint_values(Pointer temp, Pointer count); - - boolean tbool_end_value(Pointer temp); - - boolean tbool_start_value(Pointer temp); - - boolean tbool_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tbool_value_n(Pointer temp, int n, Pointer result); - - Pointer tbool_values(Pointer temp, Pointer count); - - Pointer temporal_duration(Pointer temp, boolean boundspan); - - Pointer temporal_end_instant(Pointer temp); - - Pointer temporal_end_sequence(Pointer temp); - - long temporal_end_timestamptz(Pointer temp); - - int temporal_hash(Pointer temp); - - Pointer temporal_instant_n(Pointer temp, int n); - - Pointer temporal_instants(Pointer temp, Pointer count); - - String temporal_interp(Pointer temp); - - boolean temporal_lower_inc(Pointer temp); - - Pointer temporal_max_instant(Pointer temp); - - Pointer temporal_min_instant(Pointer temp); - - int temporal_num_instants(Pointer temp); - - int temporal_num_sequences(Pointer temp); - - int temporal_num_timestamps(Pointer temp); - - Pointer temporal_segm_duration(Pointer temp, Pointer duration, boolean atleast, boolean strict); - - Pointer temporal_segments(Pointer temp, Pointer count); - - Pointer temporal_sequence_n(Pointer temp, int i); - - Pointer temporal_sequences(Pointer temp, Pointer count); - - Pointer temporal_start_instant(Pointer temp); - - Pointer temporal_start_sequence(Pointer temp); - - long temporal_start_timestamptz(Pointer temp); - - Pointer temporal_stops(Pointer temp, double maxdist, Pointer minduration); - - String temporal_subtype(Pointer temp); - - Pointer temporal_time(Pointer temp); - - Pointer temporal_timestamps(Pointer temp, Pointer count); - - boolean temporal_timestamptz_n(Pointer temp, int n, Pointer result); - - boolean temporal_upper_inc(Pointer temp); - - double tfloat_avg_value(Pointer temp); - - double tfloat_end_value(Pointer temp); - - double tfloat_min_value(Pointer temp); - - double tfloat_max_value(Pointer temp); - - double tfloat_start_value(Pointer temp); - - boolean tfloat_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tfloat_value_n(Pointer temp, int n, Pointer result); - - Pointer tfloat_values(Pointer temp, Pointer count); - - int tint_end_value(Pointer temp); - - int tint_max_value(Pointer temp); - - int tint_min_value(Pointer temp); - - int tint_start_value(Pointer temp); - - boolean tint_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tint_value_n(Pointer temp, int n, Pointer result); - - Pointer tint_values(Pointer temp, Pointer count); - - double tnumber_avg_value(Pointer temp); - - double tnumber_integral(Pointer temp); - - double tnumber_twavg(Pointer temp); - - Pointer tnumber_valuespans(Pointer temp); - - Pointer ttext_end_value(Pointer temp); - - Pointer ttext_max_value(Pointer temp); - - Pointer ttext_min_value(Pointer temp); - - Pointer ttext_start_value(Pointer temp); - - boolean ttext_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean ttext_value_n(Pointer temp, int n, Pointer result); - - Pointer ttext_values(Pointer temp, Pointer count); - - double float_degrees(double value, boolean normalize); - - Pointer tbigint_scale_value(Pointer temp, long width); - - Pointer tbigint_shift_scale_value(Pointer temp, long shift, long width); - - Pointer tbigint_shift_value(Pointer temp, long shift); - - Pointer temparr_round(Pointer temp, int count, int maxdd); - - Pointer temporal_round(Pointer temp, int maxdd); - - Pointer temporal_scale_time(Pointer temp, Pointer duration); - - Pointer temporal_set_interp(Pointer temp, int interp); - - Pointer temporal_shift_scale_time(Pointer temp, Pointer shift, Pointer duration); - - Pointer temporal_shift_time(Pointer temp, Pointer shift); - - Pointer temporal_to_tinstant(Pointer temp); - - Pointer temporal_to_tsequence(Pointer temp, int interp); - - Pointer temporal_to_tsequenceset(Pointer temp, int interp); - - Pointer tfloat_ceil(Pointer temp); - - Pointer tfloat_degrees(Pointer temp, boolean normalize); - - Pointer tfloat_floor(Pointer temp); - - Pointer tfloat_radians(Pointer temp); - - Pointer tfloat_scale_value(Pointer temp, double width); - - Pointer tfloat_shift_scale_value(Pointer temp, double shift, double width); - - Pointer tfloat_shift_value(Pointer temp, double shift); - - Pointer tint_scale_value(Pointer temp, int width); - - Pointer tint_shift_scale_value(Pointer temp, int shift, int width); - - Pointer tint_shift_value(Pointer temp, int shift); - - Pointer temporal_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand); - - Pointer temporal_append_tsequence(Pointer temp, Pointer seq, boolean expand); - - Pointer temporal_delete_timestamptz(Pointer temp, long t, boolean connect); - - Pointer temporal_delete_tstzset(Pointer temp, Pointer s, boolean connect); - - Pointer temporal_delete_tstzspan(Pointer temp, Pointer s, boolean connect); - - Pointer temporal_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect); - - Pointer temporal_insert(Pointer temp1, Pointer temp2, boolean connect); - - Pointer temporal_merge(Pointer temp1, Pointer temp2); - - Pointer temporal_merge_array(Pointer temparr, int count); - - Pointer temporal_update(Pointer temp1, Pointer temp2, boolean connect); - - Pointer tbigint_at_value(Pointer temp, long i); - - Pointer tbigint_minus_value(Pointer temp, long i); - - Pointer tbool_at_value(Pointer temp, boolean b); - - Pointer tbool_minus_value(Pointer temp, boolean b); - - Pointer temporal_after_timestamptz(Pointer temp, long t, boolean strict); - - Pointer temporal_at_max(Pointer temp); - - Pointer temporal_at_min(Pointer temp); - - Pointer temporal_at_timestamptz(Pointer temp, long t); - - Pointer temporal_at_tstzset(Pointer temp, Pointer s); - - Pointer temporal_at_tstzspan(Pointer temp, Pointer s); - - Pointer temporal_at_tstzspanset(Pointer temp, Pointer ss); - - Pointer temporal_at_values(Pointer temp, Pointer set); - - Pointer temporal_before_timestamptz(Pointer temp, long t, boolean strict); - - Pointer temporal_minus_max(Pointer temp); - - Pointer temporal_minus_min(Pointer temp); - - Pointer temporal_minus_timestamptz(Pointer temp, long t); - - Pointer temporal_minus_tstzset(Pointer temp, Pointer s); - - Pointer temporal_minus_tstzspan(Pointer temp, Pointer s); - - Pointer temporal_minus_tstzspanset(Pointer temp, Pointer ss); - - Pointer temporal_minus_values(Pointer temp, Pointer set); - - Pointer tfloat_at_value(Pointer temp, double d); - - Pointer tfloat_minus_value(Pointer temp, double d); - - Pointer tint_at_value(Pointer temp, int i); - - Pointer tint_minus_value(Pointer temp, int i); - - Pointer tnumber_at_span(Pointer temp, Pointer span); - - Pointer tnumber_at_spanset(Pointer temp, Pointer ss); - - Pointer tnumber_at_tbox(Pointer temp, Pointer box); - - Pointer tnumber_minus_span(Pointer temp, Pointer span); - - Pointer tnumber_minus_spanset(Pointer temp, Pointer ss); - - Pointer tnumber_minus_tbox(Pointer temp, Pointer box); - - Pointer ttext_at_value(Pointer temp, Pointer txt); - - Pointer ttext_minus_value(Pointer temp, Pointer txt); - - int temporal_cmp(Pointer temp1, Pointer temp2); - - boolean temporal_eq(Pointer temp1, Pointer temp2); - - boolean temporal_ge(Pointer temp1, Pointer temp2); - - boolean temporal_gt(Pointer temp1, Pointer temp2); - - boolean temporal_le(Pointer temp1, Pointer temp2); - - boolean temporal_lt(Pointer temp1, Pointer temp2); - - boolean temporal_ne(Pointer temp1, Pointer temp2); - - int always_eq_bigint_tbigint(long i, Pointer temp); - - int always_eq_bool_tbool(boolean b, Pointer temp); - - int always_eq_float_tfloat(double d, Pointer temp); - - int always_eq_int_tint(int i, Pointer temp); - - int always_eq_tbool_bool(Pointer temp, boolean b); - - int always_eq_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_eq_text_ttext(Pointer txt, Pointer temp); - - int always_eq_tbigint_bigint(Pointer temp, long i); - - int always_eq_tfloat_float(Pointer temp, double d); - - int always_eq_tint_int(Pointer temp, int i); - - int always_eq_ttext_text(Pointer temp, Pointer txt); - - int always_ge_bigint_tbigint(long i, Pointer temp); - - int always_ge_float_tfloat(double d, Pointer temp); - - int always_ge_int_tint(int i, Pointer temp); - - int always_ge_tbigint_bigint(Pointer temp, long i); - - int always_ge_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_ge_text_ttext(Pointer txt, Pointer temp); - - int always_ge_tfloat_float(Pointer temp, double d); - - int always_ge_tint_int(Pointer temp, int i); - - int always_ge_ttext_text(Pointer temp, Pointer txt); - - int always_gt_bigint_tbigint(long i, Pointer temp); - - int always_gt_float_tfloat(double d, Pointer temp); - - int always_gt_int_tint(int i, Pointer temp); - - int always_gt_tbigint_bigint(Pointer temp, long i); - - int always_gt_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_gt_text_ttext(Pointer txt, Pointer temp); - - int always_gt_tfloat_float(Pointer temp, double d); - - int always_gt_tint_int(Pointer temp, int i); - - int always_gt_ttext_text(Pointer temp, Pointer txt); - - int always_le_bigint_tbigint(long i, Pointer temp); - - int always_le_float_tfloat(double d, Pointer temp); - - int always_le_int_tint(int i, Pointer temp); - - int always_le_tbigint_bigint(Pointer temp, long i); - - int always_le_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_le_text_ttext(Pointer txt, Pointer temp); - - int always_le_tfloat_float(Pointer temp, double d); - - int always_le_tint_int(Pointer temp, int i); - - int always_le_ttext_text(Pointer temp, Pointer txt); - - int always_lt_bigint_tbigint(long i, Pointer temp); - - int always_lt_float_tfloat(double d, Pointer temp); - - int always_lt_int_tint(int i, Pointer temp); - - int always_lt_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_lt_text_ttext(Pointer txt, Pointer temp); - - int always_lt_tfloat_float(Pointer temp, double d); - - int always_lt_tint_int(Pointer temp, int i); - - int always_lt_ttext_text(Pointer temp, Pointer txt); - - int always_ne_bool_tbool(boolean b, Pointer temp); - - int always_ne_float_tfloat(double d, Pointer temp); - - int always_ne_int_tint(int i, Pointer temp); - - int always_lt_tbigint_bigint(Pointer temp, long i); - - int always_ne_bigint_tbigint(long i, Pointer temp); - - int always_ne_tbool_bool(Pointer temp, boolean b); - - int always_ne_tbigint_bigint(Pointer temp, long i); - - int always_ne_temporal_temporal(Pointer temp1, Pointer temp2); - - int always_ne_text_ttext(Pointer txt, Pointer temp); - - int always_ne_tfloat_float(Pointer temp, double d); - - int always_ne_tint_int(Pointer temp, int i); - - int always_ne_ttext_text(Pointer temp, Pointer txt); - - int ever_eq_bigint_tbigint(long i, Pointer temp); - - int ever_eq_bool_tbool(boolean b, Pointer temp); - - int ever_eq_float_tfloat(double d, Pointer temp); - - int ever_eq_int_tint(int i, Pointer temp); - - int ever_eq_tbigint_bigint(Pointer temp, long i); - - int ever_eq_tbool_bool(Pointer temp, boolean b); - - int ever_eq_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_eq_text_ttext(Pointer txt, Pointer temp); - - int ever_eq_tfloat_float(Pointer temp, double d); - - int ever_eq_tint_int(Pointer temp, int i); - - int ever_eq_ttext_text(Pointer temp, Pointer txt); - - int ever_ge_bigint_tbigint(long i, Pointer temp); - - int ever_ge_float_tfloat(double d, Pointer temp); - - int ever_ge_int_tint(int i, Pointer temp); - - int ever_ge_tbigint_bigint(Pointer temp, long i); - - int ever_ge_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_ge_text_ttext(Pointer txt, Pointer temp); - - int ever_ge_tfloat_float(Pointer temp, double d); - - int ever_ge_tint_int(Pointer temp, int i); - - int ever_ge_ttext_text(Pointer temp, Pointer txt); - - int ever_gt_bigint_tbigint(long i, Pointer temp); - - int ever_gt_float_tfloat(double d, Pointer temp); - - int ever_gt_int_tint(int i, Pointer temp); - - int ever_gt_tbigint_bigint(Pointer temp, long i); - - int ever_gt_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_gt_text_ttext(Pointer txt, Pointer temp); - - int ever_gt_tfloat_float(Pointer temp, double d); - - int ever_gt_tint_int(Pointer temp, int i); - - int ever_gt_ttext_text(Pointer temp, Pointer txt); - - int ever_le_bigint_tbigint(long i, Pointer temp); - - int ever_le_float_tfloat(double d, Pointer temp); - - int ever_le_int_tint(int i, Pointer temp); - - int ever_le_tbigint_bigint(Pointer temp, long i); - - int ever_le_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_le_text_ttext(Pointer txt, Pointer temp); - - int ever_le_tfloat_float(Pointer temp, double d); - - int ever_le_tint_int(Pointer temp, int i); - - int ever_le_ttext_text(Pointer temp, Pointer txt); - - int ever_lt_bigint_tbigint(long i, Pointer temp); - - int ever_lt_float_tfloat(double d, Pointer temp); - - int ever_lt_int_tint(int i, Pointer temp); - - int ever_lt_tbigint_bigint(Pointer temp, long i); - - int ever_lt_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_lt_text_ttext(Pointer txt, Pointer temp); - - int ever_lt_tfloat_float(Pointer temp, double d); - - int ever_lt_tint_int(Pointer temp, int i); - - int ever_lt_ttext_text(Pointer temp, Pointer txt); - - int ever_ne_bigint_tbigint(long i, Pointer temp); - - int ever_ne_bool_tbool(boolean b, Pointer temp); - - int ever_ne_float_tfloat(double d, Pointer temp); - - int ever_ne_int_tint(int i, Pointer temp); - - int ever_ne_tbigint_bigint(Pointer temp, long i); - - int ever_ne_tbool_bool(Pointer temp, boolean b); - - int ever_ne_temporal_temporal(Pointer temp1, Pointer temp2); - - int ever_ne_text_ttext(Pointer txt, Pointer temp); - - int ever_ne_tfloat_float(Pointer temp, double d); - - int ever_ne_tint_int(Pointer temp, int i); - - int ever_ne_ttext_text(Pointer temp, Pointer txt); - - Pointer teq_bool_tbool(boolean b, Pointer temp); - - Pointer teq_float_tfloat(double d, Pointer temp); - - Pointer teq_int_tint(int i, Pointer temp); - - Pointer teq_tbool_bool(Pointer temp, boolean b); - - Pointer teq_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer teq_text_ttext(Pointer txt, Pointer temp); - - Pointer teq_tfloat_float(Pointer temp, double d); - - Pointer teq_tint_int(Pointer temp, int i); - - Pointer teq_ttext_text(Pointer temp, Pointer txt); - - Pointer tge_float_tfloat(double d, Pointer temp); - - Pointer tge_int_tint(int i, Pointer temp); - - Pointer tge_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer tge_text_ttext(Pointer txt, Pointer temp); - - Pointer tge_tfloat_float(Pointer temp, double d); - - Pointer tge_tint_int(Pointer temp, int i); - - Pointer tge_ttext_text(Pointer temp, Pointer txt); - - Pointer tgt_float_tfloat(double d, Pointer temp); - - Pointer tgt_int_tint(int i, Pointer temp); - - Pointer tgt_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer tgt_text_ttext(Pointer txt, Pointer temp); - - Pointer tgt_tfloat_float(Pointer temp, double d); - - Pointer tgt_tint_int(Pointer temp, int i); - - Pointer tgt_ttext_text(Pointer temp, Pointer txt); - - Pointer tle_float_tfloat(double d, Pointer temp); - - Pointer tle_int_tint(int i, Pointer temp); - - Pointer tle_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer tle_text_ttext(Pointer txt, Pointer temp); - - Pointer tle_tfloat_float(Pointer temp, double d); - - Pointer tle_tint_int(Pointer temp, int i); - - Pointer tle_ttext_text(Pointer temp, Pointer txt); - - Pointer tlt_float_tfloat(double d, Pointer temp); - - Pointer tlt_int_tint(int i, Pointer temp); - - Pointer tlt_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer tlt_text_ttext(Pointer txt, Pointer temp); - - Pointer tlt_tfloat_float(Pointer temp, double d); - - Pointer tlt_tint_int(Pointer temp, int i); - - Pointer tlt_ttext_text(Pointer temp, Pointer txt); - - Pointer tne_bool_tbool(boolean b, Pointer temp); - - Pointer tne_float_tfloat(double d, Pointer temp); - - Pointer tne_int_tint(int i, Pointer temp); - - Pointer tne_tbool_bool(Pointer temp, boolean b); - - Pointer tne_temporal_temporal(Pointer temp1, Pointer temp2); - - Pointer tne_text_ttext(Pointer txt, Pointer temp); - - Pointer tne_tfloat_float(Pointer temp, double d); - - Pointer tne_tint_int(Pointer temp, int i); - - Pointer tne_ttext_text(Pointer temp, Pointer txt); - - Pointer temporal_spans(Pointer temp, Pointer count); - - Pointer temporal_split_each_n_spans(Pointer temp, int elem_count, Pointer count); - - Pointer temporal_split_n_spans(Pointer temp, int span_count, Pointer count); - - Pointer tnumber_split_each_n_tboxes(Pointer temp, int elem_count, Pointer count); - - Pointer tnumber_split_n_tboxes(Pointer temp, int box_count, Pointer count); - - Pointer tnumber_tboxes(Pointer temp, Pointer count); - - boolean adjacent_numspan_tnumber(Pointer s, Pointer temp); - - boolean adjacent_tbox_tnumber(Pointer box, Pointer temp); - - boolean adjacent_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean adjacent_temporal_tstzspan(Pointer temp, Pointer s); - - boolean adjacent_tnumber_numspan(Pointer temp, Pointer s); - - boolean adjacent_tnumber_tbox(Pointer temp, Pointer box); - - boolean adjacent_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean adjacent_tstzspan_temporal(Pointer s, Pointer temp); - - boolean contained_numspan_tnumber(Pointer s, Pointer temp); - - boolean contained_tbox_tnumber(Pointer box, Pointer temp); - - boolean contained_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean contained_temporal_tstzspan(Pointer temp, Pointer s); - - boolean contained_tnumber_numspan(Pointer temp, Pointer s); - - boolean contained_tnumber_tbox(Pointer temp, Pointer box); - - boolean contained_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean contained_tstzspan_temporal(Pointer s, Pointer temp); - - boolean contains_numspan_tnumber(Pointer s, Pointer temp); - - boolean contains_tbox_tnumber(Pointer box, Pointer temp); - - boolean contains_temporal_tstzspan(Pointer temp, Pointer s); - - boolean contains_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean contains_tnumber_numspan(Pointer temp, Pointer s); - - boolean contains_tnumber_tbox(Pointer temp, Pointer box); - - boolean contains_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean contains_tstzspan_temporal(Pointer s, Pointer temp); - - boolean overlaps_numspan_tnumber(Pointer s, Pointer temp); - - boolean overlaps_tbox_tnumber(Pointer box, Pointer temp); - - boolean overlaps_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean overlaps_temporal_tstzspan(Pointer temp, Pointer s); - - boolean overlaps_tnumber_numspan(Pointer temp, Pointer s); - - boolean overlaps_tnumber_tbox(Pointer temp, Pointer box); - - boolean overlaps_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean overlaps_tstzspan_temporal(Pointer s, Pointer temp); - - boolean same_numspan_tnumber(Pointer s, Pointer temp); - - boolean same_tbox_tnumber(Pointer box, Pointer temp); - - boolean same_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean same_temporal_tstzspan(Pointer temp, Pointer s); - - boolean same_tnumber_numspan(Pointer temp, Pointer s); - - boolean same_tnumber_tbox(Pointer temp, Pointer box); - - boolean same_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean same_tstzspan_temporal(Pointer s, Pointer temp); - - boolean after_tbox_tnumber(Pointer box, Pointer temp); - - boolean after_temporal_tstzspan(Pointer temp, Pointer s); - - boolean after_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean after_tnumber_tbox(Pointer temp, Pointer box); - - boolean after_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean after_tstzspan_temporal(Pointer s, Pointer temp); - - boolean before_tbox_tnumber(Pointer box, Pointer temp); - - boolean before_temporal_tstzspan(Pointer temp, Pointer s); - - boolean before_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean before_tnumber_tbox(Pointer temp, Pointer box); - - boolean before_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean before_tstzspan_temporal(Pointer s, Pointer temp); - - boolean left_tbox_tnumber(Pointer box, Pointer temp); - - boolean left_numspan_tnumber(Pointer s, Pointer temp); - - boolean left_tnumber_numspan(Pointer temp, Pointer s); - - boolean left_tnumber_tbox(Pointer temp, Pointer box); - - boolean left_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean overafter_tbox_tnumber(Pointer box, Pointer temp); - - boolean overafter_temporal_tstzspan(Pointer temp, Pointer s); - - boolean overafter_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean overafter_tnumber_tbox(Pointer temp, Pointer box); - - boolean overafter_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean overafter_tstzspan_temporal(Pointer s, Pointer temp); - - boolean overbefore_tbox_tnumber(Pointer box, Pointer temp); - - boolean overbefore_temporal_tstzspan(Pointer temp, Pointer s); - - boolean overbefore_temporal_temporal(Pointer temp1, Pointer temp2); - - boolean overbefore_tnumber_tbox(Pointer temp, Pointer box); - - boolean overbefore_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean overbefore_tstzspan_temporal(Pointer s, Pointer temp); - - boolean overleft_numspan_tnumber(Pointer s, Pointer temp); - - boolean overleft_tbox_tnumber(Pointer box, Pointer temp); - - boolean overleft_tnumber_numspan(Pointer temp, Pointer s); - - boolean overleft_tnumber_tbox(Pointer temp, Pointer box); - - boolean overleft_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean overright_numspan_tnumber(Pointer s, Pointer temp); - - boolean overright_tbox_tnumber(Pointer box, Pointer temp); - - boolean overright_tnumber_numspan(Pointer temp, Pointer s); - - boolean overright_tnumber_tbox(Pointer temp, Pointer box); - - boolean overright_tnumber_tnumber(Pointer temp1, Pointer temp2); - - boolean right_numspan_tnumber(Pointer s, Pointer temp); - - boolean right_tbox_tnumber(Pointer box, Pointer temp); - - boolean right_tnumber_numspan(Pointer temp, Pointer s); - - boolean right_tnumber_tbox(Pointer temp, Pointer box); - - boolean right_tnumber_tnumber(Pointer temp1, Pointer temp2); - - Pointer tand_bool_tbool(boolean b, Pointer temp); - - Pointer tand_tbool_bool(Pointer temp, boolean b); - - Pointer tand_tbool_tbool(Pointer temp1, Pointer temp2); - - Pointer tbool_when_true(Pointer temp); - - Pointer tnot_tbool(Pointer temp); - - Pointer tor_bool_tbool(boolean b, Pointer temp); - - Pointer tor_tbool_bool(Pointer temp, boolean b); - - Pointer tor_tbool_tbool(Pointer temp1, Pointer temp2); - - Pointer add_bigint_tbigint(long i, Pointer tnumber); - - Pointer add_float_tfloat(double d, Pointer tnumber); - - Pointer add_int_tint(int i, Pointer tnumber); - - Pointer add_tbigint_bigint(Pointer tnumber, long i); - - Pointer add_tfloat_float(Pointer tnumber, double d); - - Pointer add_tint_int(Pointer tnumber, int i); - - Pointer add_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); - - Pointer div_bigint_tbigint(long i, Pointer tnumber); - - Pointer div_float_tfloat(double d, Pointer tnumber); - - Pointer div_int_tint(int i, Pointer tnumber); - - Pointer div_tbigint_bigint(Pointer tnumber, long i); - - Pointer div_tfloat_float(Pointer tnumber, double d); - - Pointer div_tint_int(Pointer tnumber, int i); - - Pointer div_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); - - Pointer mul_bigint_tbigint(long i, Pointer tnumber); - - Pointer mul_float_tfloat(double d, Pointer tnumber); - - Pointer mul_int_tint(int i, Pointer tnumber); - - Pointer mul_tbigint_bigint(Pointer tnumber, long i); - - Pointer mul_tfloat_float(Pointer tnumber, double d); - - Pointer mul_tint_int(Pointer tnumber, int i); - - Pointer mul_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); - - Pointer sub_bigint_tbigint(long i, Pointer tnumber); - - Pointer sub_float_tfloat(double d, Pointer tnumber); - - Pointer sub_int_tint(int i, Pointer tnumber); - - Pointer sub_tbigint_bigint(Pointer tnumber, long i); - - Pointer sub_tfloat_float(Pointer tnumber, double d); - - Pointer sub_tint_int(Pointer tnumber, int i); - - Pointer sub_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2); - - Pointer temporal_derivative(Pointer temp); - - Pointer tfloat_exp(Pointer temp); - - Pointer tfloat_ln(Pointer temp); - - Pointer tfloat_log10(Pointer temp); - - Pointer tnumber_abs(Pointer temp); - - Pointer tnumber_trend(Pointer temp); - - double float_angular_difference(double degrees1, double degrees2); - - Pointer tnumber_angular_difference(Pointer temp); - - Pointer tnumber_delta_value(Pointer temp); - - Pointer textcat_text_ttext(Pointer txt, Pointer temp); - - Pointer textcat_ttext_text(Pointer temp, Pointer txt); - - Pointer textcat_ttext_ttext(Pointer temp1, Pointer temp2); - - Pointer ttext_initcap(Pointer temp); - - Pointer ttext_upper(Pointer temp); - - Pointer ttext_lower(Pointer temp); - - Pointer tdistance_tfloat_float(Pointer temp, double d); - - Pointer tdistance_tint_int(Pointer temp, int i); - - Pointer tdistance_tnumber_tnumber(Pointer temp1, Pointer temp2); - - double nad_tboxfloat_tboxfloat(Pointer box1, Pointer box2); - - int nad_tboxint_tboxint(Pointer box1, Pointer box2); - - double nad_tfloat_float(Pointer temp, double d); - - double nad_tfloat_tfloat(Pointer temp1, Pointer temp2); - - double nad_tfloat_tbox(Pointer temp, Pointer box); - - int nad_tint_int(Pointer temp, int i); - - int nad_tint_tbox(Pointer temp, Pointer box); - - int nad_tint_tint(Pointer temp1, Pointer temp2); - - Pointer tbool_tand_transfn(Pointer state, Pointer temp); - - Pointer tbool_tor_transfn(Pointer state, Pointer temp); - - Pointer temporal_extent_transfn(Pointer s, Pointer temp); - - Pointer temporal_merge_transfn(Pointer state, Pointer temp); - - Pointer temporal_merge_combinefn(Pointer state1, Pointer state2); - - Pointer temporal_tagg_finalfn(Pointer state); - - Pointer temporal_tcount_transfn(Pointer state, Pointer temp); - - Pointer tfloat_tmax_transfn(Pointer state, Pointer temp); - - Pointer tfloat_tmin_transfn(Pointer state, Pointer temp); - - Pointer tfloat_tsum_transfn(Pointer state, Pointer temp); - - Pointer tfloat_wmax_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tfloat_wmin_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tfloat_wsum_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer timestamptz_tcount_transfn(Pointer state, long t); - - Pointer tint_tmax_transfn(Pointer state, Pointer temp); - - Pointer tint_tmin_transfn(Pointer state, Pointer temp); - - Pointer tint_tsum_transfn(Pointer state, Pointer temp); - - Pointer tint_wmax_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tint_wmin_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tint_wsum_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tnumber_extent_transfn(Pointer box, Pointer temp); - - Pointer tnumber_tavg_finalfn(Pointer state); - - Pointer tnumber_tavg_transfn(Pointer state, Pointer temp); - - Pointer tnumber_wavg_transfn(Pointer state, Pointer temp, Pointer interv); - - Pointer tstzset_tcount_transfn(Pointer state, Pointer s); - - Pointer tstzspan_tcount_transfn(Pointer state, Pointer s); - - Pointer tstzspanset_tcount_transfn(Pointer state, Pointer ss); - - Pointer ttext_tmax_transfn(Pointer state, Pointer temp); - - Pointer ttext_tmin_transfn(Pointer state, Pointer temp); - - Pointer temporal_simplify_dp(Pointer temp, double eps_dist, boolean synchronize); - - Pointer temporal_simplify_max_dist(Pointer temp, double eps_dist, boolean synchronize); - - Pointer temporal_simplify_min_dist(Pointer temp, double dist); - - Pointer temporal_simplify_min_tdelta(Pointer temp, Pointer mint); - - Pointer temporal_tprecision(Pointer temp, Pointer duration, long origin); - - Pointer temporal_tsample(Pointer temp, Pointer duration, long origin, int interp); - - double temporal_dyntimewarp_distance(Pointer temp1, Pointer temp2); - - Pointer temporal_dyntimewarp_path(Pointer temp1, Pointer temp2, Pointer count); - - double temporal_frechet_distance(Pointer temp1, Pointer temp2); - - Pointer temporal_frechet_path(Pointer temp1, Pointer temp2, Pointer count); - - double temporal_hausdorff_distance(Pointer temp1, Pointer temp2); - - Pointer temporal_time_bins(Pointer temp, Pointer duration, long origin, Pointer count); - - Pointer temporal_time_split(Pointer temp, Pointer duration, long torigin, Pointer time_bins, Pointer count); - - Pointer tfloat_time_boxes(Pointer temp, Pointer duration, long torigin, Pointer count); - - Pointer tfloat_value_bins(Pointer temp, double vsize, double vorigin, Pointer count); - - Pointer tfloat_value_boxes(Pointer temp, double vsize, double vorigin, Pointer count); - - Pointer tfloat_value_split(Pointer temp, double size, double origin, Pointer bins, Pointer count); - - Pointer tfloat_value_time_boxes(Pointer temp, double vsize, Pointer duration, double vorigin, long torigin, Pointer count); - - Pointer tfloat_value_time_split(Pointer temp, double vsize, Pointer duration, double vorigin, long torigin, Pointer value_bins, Pointer time_bins, Pointer count); - - Pointer tfloatbox_time_tiles(Pointer box, Pointer duration, long torigin, Pointer count); - - Pointer tfloatbox_value_tiles(Pointer box, double vsize, double vorigin, Pointer count); - - Pointer tfloatbox_value_time_tiles(Pointer box, double vsize, Pointer duration, double vorigin, long torigin, Pointer count); - - Pointer tint_time_boxes(Pointer temp, Pointer duration, long torigin, Pointer count); - - Pointer tint_value_bins(Pointer temp, int vsize, int vorigin, Pointer count); - - Pointer tint_value_boxes(Pointer temp, int vsize, int vorigin, Pointer count); - - Pointer tint_value_split(Pointer temp, int vsize, int vorigin, Pointer bins, Pointer count); - - Pointer tint_value_time_boxes(Pointer temp, int vsize, Pointer duration, int vorigin, long torigin, Pointer count); - - Pointer tint_value_time_split(Pointer temp, long size, Pointer duration, int vorigin, long torigin, Pointer value_bins, Pointer time_bins, Pointer count); - - Pointer tintbox_time_tiles(Pointer box, Pointer duration, long torigin, Pointer count); - - Pointer tintbox_value_tiles(Pointer box, int xsize, int xorigin, Pointer count); - - Pointer tintbox_value_time_tiles(Pointer box, int xsize, Pointer duration, int xorigin, long torigin, Pointer count); - - void meos_initialize_noexit_error_handler(); - - boolean h3_are_neighbor_cells_meos(long origin, long destination); - - long h3_cells_to_directed_edge_meos(long origin, long destination); - - boolean h3_is_valid_directed_edge_meos(long edge); - - long h3_get_directed_edge_origin_meos(long edge); - - long h3_get_directed_edge_destination_meos(long edge); - - long h3_cell_to_parent_meos(long origin, int resolution); - - long h3_cell_to_center_child_meos(long origin, int resolution); - - long h3_cell_to_child_pos_meos(long child, int parentRes); - - long h3_child_pos_to_cell_meos(long childPos, long parent, int childRes); - - int h3_get_resolution_meos(long hex); - - int h3_get_base_cell_number_meos(long hex); - - boolean h3_is_valid_cell_meos(long hex); - - boolean h3_is_res_class_iii_meos(long hex); - - boolean h3_is_pentagon_meos(long hex); - - long h3_get_num_cells_meos(int resolution); - - long h3_grid_distance_meos(long originIndex, long h3Index); - - long h3_cell_to_vertex_meos(long cell, int vertexNum); - - boolean h3_is_valid_vertex_meos(long vertex); - - long h3index_parse(String str); - - String h3index_to_string(long cell); - - boolean h3index_eq(long a, long b); - - boolean h3index_ne(long a, long b); - - boolean h3index_lt(long a, long b); - - boolean h3index_le(long a, long b); - - boolean h3index_gt(long a, long b); - - boolean h3index_ge(long a, long b); - - int h3index_cmp(long a, long b); - - int h3index_hash(long cell); - - Pointer h3_grid_disk(long origin, int k); - - Pointer h3_grid_ring(long origin, int k); - - Pointer h3_grid_path_cells(long start, long end); - - Pointer h3_cell_to_children(long origin, int childRes); - - Pointer h3_compact_cells(Pointer cells); - - Pointer h3_uncompact_cells(Pointer cells, int res); - - Pointer h3_origin_to_directed_edges(long origin); - - Pointer h3_cell_to_vertexes(long cell); - - Pointer h3_get_icosahedron_faces(long cell); - - boolean ensure_valid_th3index_th3index(Pointer temp1, Pointer temp2); - - boolean ensure_valid_th3index_h3index(Pointer temp, long cell); - - boolean ensure_valid_th3index_tgeogpoint(Pointer temp1, Pointer temp2); - - int datum2_h3index_eq(int d1, int d2, int type); - - int datum2_h3index_ne(int d1, int d2, int type); - - void th3indexinst_set_stbox(Pointer inst, Pointer box); - - void th3indexinstarr_set_stbox(Pointer instants, int count, Pointer box); - - void th3indexseq_expand_stbox(Pointer seq, Pointer inst); - - long h3_gs_point_to_cell(Pointer point, int resolution); - - Pointer h3_cell_to_gs_point(long cell); - - Pointer h3_cell_to_gs_boundary(long cell); - - Pointer cell_boundary_to_gs(Pointer bnd); - - double h3_sample_step_deg(int resolution); - - long h3_latlng_deg_to_cell(double lat_deg, double lng_deg, int resolution); - - long h3_cell_to_parent_next_meos(long cell); - - long h3_cell_to_center_child_next_meos(long cell); - - Pointer h3_directed_edge_to_gs_boundary(long edge); - - Pointer h3_vertex_to_gs_point(long vertex); - - Pointer h3_cell_to_local_ij_meos(long origin, long cell); - - long h3_local_ij_to_cell_meos(long origin, Pointer coord); - - int h3_unit_from_cstring(String unit); - - double h3_cell_area_meos(long cell, int unit); - - double h3_edge_length_meos(long edge, int unit); - - double h3_gs_great_circle_distance_meos(Pointer a, Pointer b, int unit); - - int datum_h3_get_resolution(int d); - - int datum_h3_get_base_cell_number(int d); - - int datum_h3_is_valid_cell(int d); - - int datum_h3_is_res_class_iii(int d); - - int datum_h3_is_pentagon(int d); - - int datum_h3_cell_to_parent(int cell_d, int res_d); - - int datum_h3_cell_to_parent_next(int cell_d); - - int datum_h3_cell_to_center_child(int cell_d, int res_d); - - int datum_h3_cell_to_center_child_next(int cell_d); - - int datum_h3_cell_to_child_pos(int cell_d, int parent_res_d); - - int datum_h3_child_pos_to_cell(int pos_d, int parent_d, int child_res_d); - - int datum_h3_are_neighbor_cells(int origin_d, int dest_d); - - int datum_h3_cells_to_directed_edge(int origin_d, int dest_d); - - int datum_h3_is_valid_directed_edge(int d); - - int datum_h3_get_directed_edge_origin(int d); - - int datum_h3_get_directed_edge_destination(int d); - - int datum_h3_directed_edge_to_boundary(int d); - - int datum_h3_cell_to_vertex(int cell_d, int vnum_d); - - int datum_h3_vertex_to_latlng(int d); - - int datum_h3_is_valid_vertex(int d); - - int datum_h3_grid_distance(int origin_d, int dest_d); - - int datum_h3_cell_to_local_ij(int origin_d, int cell_d); - - int datum_h3_local_ij_to_cell(int origin_d, int coord_d); - - int datum_h3_latlng_to_cell(int point_d, int res_d); - - int datum_h3_cell_to_latlng(int d); - - int datum_h3_cell_to_boundary(int d); - - int datum_h3_cell_area(int cell_d, int unit_d); - - int datum_h3_edge_length(int edge_d, int unit_d); - - int datum_h3_great_circle_distance(int a_d, int b_d, int unit_d); - - Pointer geo_as_ewkb(Pointer gs, String endian, Pointer size); - - String geo_as_ewkt(Pointer gs, int precision); - - String geo_as_geojson(Pointer gs, int option, int precision, String srs); - - String geo_as_hexewkb(Pointer gs, String endian); - - String geo_as_text(Pointer gs, int precision); - - Pointer geo_from_ewkb(Pointer wkb, long wkb_size, int srid); - - Pointer geo_from_geojson(String geojson); - - Pointer geo_from_text(String wkt, int srid); - - String geo_out(Pointer gs); - - Pointer geog_from_binary(String wkb_bytea); - - Pointer geog_from_hexewkb(String wkt); - - Pointer geog_in(String str, int typmod); - - Pointer geom_from_hexewkb(String wkt); - - Pointer geom_in(String str, int typmod); - - Pointer box3d_make(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int srid); - - String box3d_out(Pointer box, int maxdd); - - Pointer gbox_make(boolean hasz, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax); - - String gbox_out(Pointer box, int maxdd); - - Pointer geo_copy(Pointer g); - - Pointer geogpoint_make2d(int srid, double x, double y); - - Pointer geogpoint_make3dz(int srid, double x, double y, double z); - - Pointer geompoint_make2d(int srid, double x, double y); - - Pointer geompoint_make3dz(int srid, double x, double y, double z); - - Pointer geom_to_geog(Pointer geom); - - Pointer geog_to_geom(Pointer geog); - - } - - public interface MeosLibraryPartC { - - boolean geo_is_empty(Pointer g); - - boolean geo_is_unitary(Pointer gs); - - String geo_typename(int type); - - double geog_area(Pointer g, boolean use_spheroid); - - Pointer geog_centroid(Pointer g, boolean use_spheroid); - - double geog_length(Pointer g, boolean use_spheroid); - - double geog_perimeter(Pointer g, boolean use_spheroid); - - boolean geom_azimuth(Pointer gs1, Pointer gs2, Pointer result); - - double geom_length(Pointer gs); - - double geom_perimeter(Pointer gs); - - int line_numpoints(Pointer gs); - - Pointer line_point_n(Pointer geom, int n); - - Pointer geo_reverse(Pointer gs); - - Pointer geo_round(Pointer gs, int maxdd); - - Pointer geo_set_srid(Pointer gs, int srid); - - int geo_srid(Pointer gs); - - Pointer geo_transform(Pointer geom, int srid_to); - - Pointer geo_transform_pipeline(Pointer gs, String pipeline, int srid_to, boolean is_forward); - - Pointer geo_collect_garray(Pointer gsarr, int count); - - Pointer geo_makeline_garray(Pointer gsarr, int count); - - int geo_num_points(Pointer gs); - - int geo_num_geos(Pointer gs); - - Pointer geo_geo_n(Pointer geom, int n); - - Pointer geo_pointarr(Pointer gs, Pointer count); - - Pointer geo_points(Pointer gs); - - Pointer geom_array_union(Pointer gsarr, int count); - - Pointer geom_boundary(Pointer gs); - - Pointer geom_buffer(Pointer gs, double size, String params); - - Pointer geom_centroid(Pointer gs); - - Pointer geom_convex_hull(Pointer gs); - - Pointer geom_difference2d(Pointer gs1, Pointer gs2); - - Pointer geom_intersection2d(Pointer gs1, Pointer gs2); - - Pointer geom_intersection2d_coll(Pointer gs1, Pointer gs2); - - Pointer geom_min_bounding_radius(Pointer geom, Pointer radius); - - Pointer geom_shortestline2d(Pointer gs1, Pointer s2); - - Pointer geom_shortestline3d(Pointer gs1, Pointer s2); - - Pointer geom_unary_union(Pointer gs, double prec); - - Pointer line_interpolate_point(Pointer gs, double distance_fraction, boolean repeat); - - double line_locate_point(Pointer gs1, Pointer gs2); - - Pointer line_substring(Pointer gs, double from, double to); - - boolean geog_dwithin(Pointer g1, Pointer g2, double tolerance, boolean use_spheroid); - - boolean geog_intersects(Pointer gs1, Pointer gs2, boolean use_spheroid); - - boolean geom_contains(Pointer gs1, Pointer gs2); - - boolean geom_covers(Pointer gs1, Pointer gs2); - - boolean geom_disjoint2d(Pointer gs1, Pointer gs2); - - boolean geom_dwithin2d(Pointer gs1, Pointer gs2, double tolerance); - - boolean geom_dwithin3d(Pointer gs1, Pointer gs2, double tolerance); - - boolean geom_intersects2d(Pointer gs1, Pointer gs2); - - boolean geom_intersects3d(Pointer gs1, Pointer gs2); - - boolean geom_relate_pattern(Pointer gs1, Pointer gs2, String patt); - - boolean geom_touches(Pointer gs1, Pointer gs2); - - Pointer geo_stboxes(Pointer gs, Pointer count); - - Pointer geo_split_each_n_stboxes(Pointer gs, int elem_count, Pointer count); - - Pointer geo_split_n_stboxes(Pointer gs, int box_count, Pointer count); - - double geog_distance(Pointer g1, Pointer g2); - - double geom_distance2d(Pointer gs1, Pointer gs2); - - double geom_distance3d(Pointer gs1, Pointer gs2); - - int geo_equals(Pointer gs1, Pointer gs2); - - boolean geo_same(Pointer gs1, Pointer gs2); - - Pointer geogset_in(String str); - - Pointer geomset_in(String str); - - String spatialset_as_text(Pointer set, int maxdd); - - String spatialset_as_ewkt(Pointer set, int maxdd); - - Pointer geoset_make(Pointer values, int count); - - Pointer geo_to_set(Pointer gs); - - Pointer geoset_end_value(Pointer s); - - Pointer geoset_start_value(Pointer s); - - boolean geoset_value_n(Pointer s, int n, Pointer result); - - Pointer geoset_values(Pointer s); - - boolean contained_geo_set(Pointer gs, Pointer s); - - boolean contains_set_geo(Pointer s, Pointer gs); - - Pointer geo_union_transfn(Pointer state, Pointer gs); - - Pointer intersection_geo_set(Pointer gs, Pointer s); - - Pointer intersection_set_geo(Pointer s, Pointer gs); - - Pointer minus_geo_set(Pointer gs, Pointer s); - - Pointer minus_set_geo(Pointer s, Pointer gs); - - Pointer union_geo_set(Pointer gs, Pointer s); - - Pointer union_set_geo(Pointer s, Pointer gs); - - Pointer spatialset_set_srid(Pointer s, int srid); - - int spatialset_srid(Pointer s); - - Pointer spatialset_transform(Pointer s, int srid); - - Pointer spatialset_transform_pipeline(Pointer s, String pipelinestr, int srid, boolean is_forward); - - String stbox_as_hexwkb(Pointer box, byte variant, Pointer size); - - Pointer stbox_as_wkb(Pointer box, byte variant, Pointer size_out); - - Pointer stbox_from_hexwkb(String hexwkb); - - Pointer stbox_from_wkb(Pointer wkb, long size); - - Pointer stbox_in(String str); - - String stbox_out(Pointer box, int maxdd); - - Pointer geo_timestamptz_to_stbox(Pointer gs, long t); - - Pointer geo_tstzspan_to_stbox(Pointer gs, Pointer s); - - Pointer stbox_copy(Pointer box); - - Pointer stbox_make(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s); - - Pointer geo_to_stbox(Pointer gs); - - Pointer spatialset_to_stbox(Pointer s); - - Pointer stbox_to_box3d(Pointer box); - - Pointer stbox_to_gbox(Pointer box); - - Pointer stbox_to_geo(Pointer box); - - Pointer stbox_to_tstzspan(Pointer box); - - Pointer timestamptz_to_stbox(long t); - - Pointer tstzset_to_stbox(Pointer s); - - Pointer tstzspan_to_stbox(Pointer s); - - Pointer tstzspanset_to_stbox(Pointer ss); - - double stbox_area(Pointer box, boolean spheroid); - - int stbox_hash(Pointer box); - - long stbox_hash_extended(Pointer box, long seed); - - boolean stbox_hast(Pointer box); - - boolean stbox_hasx(Pointer box); - - boolean stbox_hasz(Pointer box); - - boolean stbox_isgeodetic(Pointer box); - - double stbox_perimeter(Pointer box, boolean spheroid); - - boolean stbox_tmax(Pointer box, Pointer result); - - boolean stbox_tmax_inc(Pointer box, Pointer result); - - boolean stbox_tmin(Pointer box, Pointer result); - - boolean stbox_tmin_inc(Pointer box, Pointer result); - - double stbox_volume(Pointer box); - - boolean stbox_xmax(Pointer box, Pointer result); - - boolean stbox_xmin(Pointer box, Pointer result); - - boolean stbox_ymax(Pointer box, Pointer result); - - boolean stbox_ymin(Pointer box, Pointer result); - - boolean stbox_zmax(Pointer box, Pointer result); - - boolean stbox_zmin(Pointer box, Pointer result); - - Pointer stbox_expand_space(Pointer box, double d); - - Pointer stbox_expand_time(Pointer box, Pointer interv); - - Pointer stbox_get_space(Pointer box); - - Pointer stbox_quad_split(Pointer box, Pointer count); - - Pointer stbox_round(Pointer box, int maxdd); - - Pointer stbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration); - - Pointer stboxarr_round(Pointer boxarr, int count, int maxdd); - - Pointer stbox_set_srid(Pointer box, int srid); - - int stbox_srid(Pointer box); - - Pointer stbox_transform(Pointer box, int srid); - - Pointer stbox_transform_pipeline(Pointer box, String pipelinestr, int srid, boolean is_forward); - - boolean adjacent_stbox_stbox(Pointer box1, Pointer box2); - - boolean contained_stbox_stbox(Pointer box1, Pointer box2); - - boolean contains_stbox_stbox(Pointer box1, Pointer box2); - - boolean overlaps_stbox_stbox(Pointer box1, Pointer box2); - - boolean same_stbox_stbox(Pointer box1, Pointer box2); - - boolean above_stbox_stbox(Pointer box1, Pointer box2); - - boolean after_stbox_stbox(Pointer box1, Pointer box2); - - boolean back_stbox_stbox(Pointer box1, Pointer box2); - - boolean before_stbox_stbox(Pointer box1, Pointer box2); - - boolean below_stbox_stbox(Pointer box1, Pointer box2); - - boolean front_stbox_stbox(Pointer box1, Pointer box2); - - boolean left_stbox_stbox(Pointer box1, Pointer box2); - - boolean overabove_stbox_stbox(Pointer box1, Pointer box2); - - boolean overafter_stbox_stbox(Pointer box1, Pointer box2); - - boolean overback_stbox_stbox(Pointer box1, Pointer box2); - - boolean overbefore_stbox_stbox(Pointer box1, Pointer box2); - - boolean overbelow_stbox_stbox(Pointer box1, Pointer box2); - - boolean overfront_stbox_stbox(Pointer box1, Pointer box2); - - boolean overleft_stbox_stbox(Pointer box1, Pointer box2); - - boolean overright_stbox_stbox(Pointer box1, Pointer box2); - - boolean right_stbox_stbox(Pointer box1, Pointer box2); - - Pointer union_stbox_stbox(Pointer box1, Pointer box2, boolean strict); - - Pointer intersection_stbox_stbox(Pointer box1, Pointer box2); - - int stbox_cmp(Pointer box1, Pointer box2); - - boolean stbox_eq(Pointer box1, Pointer box2); - - boolean stbox_ge(Pointer box1, Pointer box2); - - boolean stbox_gt(Pointer box1, Pointer box2); - - boolean stbox_le(Pointer box1, Pointer box2); - - boolean stbox_lt(Pointer box1, Pointer box2); - - boolean stbox_ne(Pointer box1, Pointer box2); - - Pointer tgeogpoint_from_mfjson(String str); - - Pointer tgeogpoint_in(String str); - - Pointer tgeography_from_mfjson(String mfjson); - - Pointer tgeography_in(String str); - - Pointer tgeometry_from_mfjson(String str); - - Pointer tgeometry_in(String str); - - Pointer tgeompoint_from_mfjson(String str); - - Pointer tgeompoint_in(String str); - - String tspatial_as_ewkt(Pointer temp, int maxdd); - - String tspatial_as_text(Pointer temp, int maxdd); - - String tspatial_out(Pointer temp, int maxdd); - - Pointer tgeo_from_base_temp(Pointer gs, Pointer temp); - - Pointer tgeoinst_make(Pointer gs, long t); - - Pointer tgeoseq_from_base_tstzset(Pointer gs, Pointer s); - - Pointer tgeoseq_from_base_tstzspan(Pointer gs, Pointer s, int interp); - - Pointer tgeoseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp); - - Pointer tpoint_from_base_temp(Pointer gs, Pointer temp); - - Pointer tpointinst_make(Pointer gs, long t); - - Pointer tpointseq_from_base_tstzset(Pointer gs, Pointer s); - - Pointer tpointseq_from_base_tstzspan(Pointer gs, Pointer s, int interp); - - Pointer tpointseq_make_coords(Pointer xcoords, Pointer ycoords, Pointer zcoords, Pointer times, int count, int srid, boolean geodetic, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); - - Pointer tpointseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp); - - Pointer box3d_to_stbox(Pointer box); - - Pointer gbox_to_stbox(Pointer box); - - Pointer geomeas_to_tpoint(Pointer gs); - - Pointer tgeogpoint_to_tgeography(Pointer temp); - - Pointer tgeography_to_tgeogpoint(Pointer temp); - - Pointer tgeography_to_tgeometry(Pointer temp); - - Pointer tgeometry_to_tgeography(Pointer temp); - - Pointer tgeometry_to_tgeompoint(Pointer temp); - - Pointer tgeompoint_to_tgeometry(Pointer temp); - - boolean tpoint_as_mvtgeom(Pointer temp, Pointer bounds, int extent, int buffer, boolean clip_geom, Pointer gsarr, Pointer timesarr, Pointer count); - - boolean tpoint_tfloat_to_geomeas(Pointer tpoint, Pointer measure, boolean segmentize, Pointer result); - - Pointer tspatial_to_stbox(Pointer temp); - - boolean bearing_point_point(Pointer gs1, Pointer gs2, Pointer result); - - Pointer bearing_tpoint_point(Pointer temp, Pointer gs, boolean invert); - - Pointer bearing_tpoint_tpoint(Pointer temp1, Pointer temp2); - - Pointer tgeo_centroid(Pointer temp); - - Pointer tgeo_convex_hull(Pointer temp); - - Pointer tgeo_end_value(Pointer temp); - - Pointer tgeo_start_value(Pointer temp); - - Pointer tgeo_traversed_area(Pointer temp, boolean unary_union); - - boolean tgeo_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tgeo_value_n(Pointer temp, int n, Pointer result); - - Pointer tgeo_values(Pointer temp, Pointer count); - - Pointer tpoint_angular_difference(Pointer temp); - - Pointer tpoint_azimuth(Pointer temp); - - Pointer tpoint_cumulative_length(Pointer temp); - - boolean tpoint_direction(Pointer temp, Pointer result); - - Pointer tpoint_get_x(Pointer temp); - - Pointer tpoint_get_y(Pointer temp); - - Pointer tpoint_get_z(Pointer temp); - - boolean tpoint_is_simple(Pointer temp); - - double tpoint_length(Pointer temp); - - Pointer tpoint_speed(Pointer temp); - - Pointer tpoint_trajectory(Pointer temp, boolean unary_union); - - Pointer tpoint_twcentroid(Pointer temp); - - Pointer tgeo_affine(Pointer temp, Pointer a); - - Pointer tgeo_scale(Pointer temp, Pointer scale, Pointer sorigin); - - Pointer tpoint_make_simple(Pointer temp, Pointer count); - - int tspatial_srid(Pointer temp); - - Pointer tspatial_set_srid(Pointer temp, int srid); - - Pointer tspatial_transform(Pointer temp, int srid); - - Pointer tspatial_transform_pipeline(Pointer temp, String pipelinestr, int srid, boolean is_forward); - - Pointer tgeo_at_geom(Pointer temp, Pointer gs); - - Pointer tgeo_at_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tgeo_at_value(Pointer temp, Pointer gs); - - Pointer tgeo_minus_geom(Pointer temp, Pointer gs); - - Pointer tgeo_minus_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tgeo_minus_value(Pointer temp, Pointer gs); - - Pointer tpoint_at_elevation(Pointer temp, Pointer s); - - Pointer tpoint_at_geom(Pointer temp, Pointer gs); - - Pointer tpoint_at_value(Pointer temp, Pointer gs); - - Pointer tpoint_minus_elevation(Pointer temp, Pointer s); - - Pointer tpoint_minus_geom(Pointer temp, Pointer gs); - - Pointer tpoint_minus_value(Pointer temp, Pointer gs); - - int always_eq_geo_tgeo(Pointer gs, Pointer temp); - - int always_eq_tgeo_geo(Pointer temp, Pointer gs); - - int always_eq_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int always_ne_geo_tgeo(Pointer gs, Pointer temp); - - int always_ne_tgeo_geo(Pointer temp, Pointer gs); - - int always_ne_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int ever_eq_geo_tgeo(Pointer gs, Pointer temp); - - int ever_eq_tgeo_geo(Pointer temp, Pointer gs); - - int ever_eq_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int ever_ne_geo_tgeo(Pointer gs, Pointer temp); - - int ever_ne_tgeo_geo(Pointer temp, Pointer gs); - - int ever_ne_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer teq_geo_tgeo(Pointer gs, Pointer temp); - - Pointer teq_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tne_geo_tgeo(Pointer gs, Pointer temp); - - Pointer tne_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tgeo_stboxes(Pointer temp, Pointer count); - - Pointer tgeo_space_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer count); - - Pointer tgeo_space_time_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, long torigin, boolean bitmatrix, boolean border_inc, Pointer count); - - Pointer tgeo_split_each_n_stboxes(Pointer temp, int elem_count, Pointer count); - - Pointer tgeo_split_n_stboxes(Pointer temp, int box_count, Pointer count); - - boolean adjacent_stbox_tspatial(Pointer box, Pointer temp); - - boolean adjacent_tspatial_stbox(Pointer temp, Pointer box); - - boolean adjacent_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean contained_stbox_tspatial(Pointer box, Pointer temp); - - boolean contained_tspatial_stbox(Pointer temp, Pointer box); - - boolean contained_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean contains_stbox_tspatial(Pointer box, Pointer temp); - - boolean contains_tspatial_stbox(Pointer temp, Pointer box); - - boolean contains_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overlaps_stbox_tspatial(Pointer box, Pointer temp); - - boolean overlaps_tspatial_stbox(Pointer temp, Pointer box); - - boolean overlaps_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean same_stbox_tspatial(Pointer box, Pointer temp); - - boolean same_tspatial_stbox(Pointer temp, Pointer box); - - boolean same_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean above_stbox_tspatial(Pointer box, Pointer temp); - - boolean above_tspatial_stbox(Pointer temp, Pointer box); - - boolean above_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean after_stbox_tspatial(Pointer box, Pointer temp); - - boolean after_tspatial_stbox(Pointer temp, Pointer box); - - boolean after_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean back_stbox_tspatial(Pointer box, Pointer temp); - - boolean back_tspatial_stbox(Pointer temp, Pointer box); - - boolean back_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean before_stbox_tspatial(Pointer box, Pointer temp); - - boolean before_tspatial_stbox(Pointer temp, Pointer box); - - boolean before_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean below_stbox_tspatial(Pointer box, Pointer temp); - - boolean below_tspatial_stbox(Pointer temp, Pointer box); - - boolean below_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean front_stbox_tspatial(Pointer box, Pointer temp); - - boolean front_tspatial_stbox(Pointer temp, Pointer box); - - boolean front_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean left_stbox_tspatial(Pointer box, Pointer temp); - - boolean left_tspatial_stbox(Pointer temp, Pointer box); - - boolean left_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overabove_stbox_tspatial(Pointer box, Pointer temp); - - boolean overabove_tspatial_stbox(Pointer temp, Pointer box); - - boolean overabove_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overafter_stbox_tspatial(Pointer box, Pointer temp); - - boolean overafter_tspatial_stbox(Pointer temp, Pointer box); - - boolean overafter_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overback_stbox_tspatial(Pointer box, Pointer temp); - - boolean overback_tspatial_stbox(Pointer temp, Pointer box); - - boolean overback_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overbefore_stbox_tspatial(Pointer box, Pointer temp); - - boolean overbefore_tspatial_stbox(Pointer temp, Pointer box); - - boolean overbefore_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overbelow_stbox_tspatial(Pointer box, Pointer temp); - - boolean overbelow_tspatial_stbox(Pointer temp, Pointer box); - - boolean overbelow_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overfront_stbox_tspatial(Pointer box, Pointer temp); - - boolean overfront_tspatial_stbox(Pointer temp, Pointer box); - - boolean overfront_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overleft_stbox_tspatial(Pointer box, Pointer temp); - - boolean overleft_tspatial_stbox(Pointer temp, Pointer box); - - boolean overleft_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean overright_stbox_tspatial(Pointer box, Pointer temp); - - boolean overright_tspatial_stbox(Pointer temp, Pointer box); - - boolean overright_tspatial_tspatial(Pointer temp1, Pointer temp2); - - boolean right_stbox_tspatial(Pointer box, Pointer temp); - - boolean right_tspatial_stbox(Pointer temp, Pointer box); - - boolean right_tspatial_tspatial(Pointer temp1, Pointer temp2); - - int acontains_geo_tgeo(Pointer gs, Pointer temp); - - int acontains_tgeo_geo(Pointer temp, Pointer gs); - - int acontains_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int adisjoint_tgeo_geo(Pointer temp, Pointer gs); - - int adisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int adwithin_tgeo_geo(Pointer temp, Pointer gs, double dist); - - int adwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist); - - int aintersects_tgeo_geo(Pointer temp, Pointer gs); - - int aintersects_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int atouches_tgeo_geo(Pointer temp, Pointer gs); - - int atouches_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int atouches_tpoint_geo(Pointer temp, Pointer gs); - - int econtains_geo_tgeo(Pointer gs, Pointer temp); - - int econtains_tgeo_geo(Pointer temp, Pointer gs); - - int econtains_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int ecovers_geo_tgeo(Pointer gs, Pointer temp); - - int ecovers_tgeo_geo(Pointer temp, Pointer gs); - - int ecovers_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int edisjoint_tgeo_geo(Pointer temp, Pointer gs); - - int edisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int edwithin_tgeo_geo(Pointer temp, Pointer gs, double dist); - - int edwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist); - - int eintersects_tgeo_geo(Pointer temp, Pointer gs); - - int eintersects_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int etouches_tgeo_geo(Pointer temp, Pointer gs); - - int etouches_tgeo_tgeo(Pointer temp1, Pointer temp2); - - int etouches_tpoint_geo(Pointer temp, Pointer gs); - - Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp); - - Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp); - - Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp); - - Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist); - - Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist); - - Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist); - - Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp); - - Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp); - - Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs); - - Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer tdistance_tgeo_geo(Pointer temp, Pointer gs); - - Pointer tdistance_tgeo_tgeo(Pointer temp1, Pointer temp2); - - double nad_stbox_geo(Pointer box, Pointer gs); - - double nad_stbox_stbox(Pointer box1, Pointer box2); - - double nad_tgeo_geo(Pointer temp, Pointer gs); - - double nad_tgeo_stbox(Pointer temp, Pointer box); - - double nad_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer nai_tgeo_geo(Pointer temp, Pointer gs); - - Pointer nai_tgeo_tgeo(Pointer temp1, Pointer temp2); - - Pointer shortestline_tgeo_geo(Pointer temp, Pointer gs); - - Pointer shortestline_tgeo_tgeo(Pointer temp1, Pointer temp2); - - double tgeoarr_tgeoarr_mindist(Pointer arr1, int count1, Pointer arr2, int count2); - - double mindistance_tgeo_tgeo(Pointer temp1, Pointer temp2, double threshold); - - Pointer tpoint_tcentroid_finalfn(Pointer state); - - Pointer tpoint_tcentroid_transfn(Pointer state, Pointer temp); - - Pointer tspatial_extent_transfn(Pointer box, Pointer temp); - - Pointer stbox_get_space_tile(Pointer point, double xsize, double ysize, double zsize, Pointer sorigin); - - Pointer stbox_get_space_time_tile(Pointer point, long t, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, long torigin); - - Pointer stbox_get_time_tile(long t, Pointer duration, long torigin); - - Pointer stbox_space_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer sorigin, boolean border_inc, Pointer count); - - Pointer stbox_space_time_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, long torigin, boolean border_inc, Pointer count); - - Pointer stbox_time_tiles(Pointer bounds, Pointer duration, long torigin, boolean border_inc, Pointer count); - - Pointer tgeo_space_split(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer count); - - Pointer tgeo_space_time_split(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, long torigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer time_bins, Pointer count); - - Pointer geo_cluster_kmeans(Pointer geoms, int ngeoms, int k); - - Pointer geo_cluster_dbscan(Pointer geoms, int ngeoms, double tolerance, int minpoints, Pointer count); - - Pointer geo_cluster_intersecting(Pointer geoms, int ngeoms, Pointer count); - - Pointer geo_cluster_within(Pointer geoms, int ngeoms, double tolerance, Pointer count); - - int acovers_geo_tgeo(Pointer gs, Pointer temp); - - int acovers_tgeo_geo(Pointer temp, Pointer gs); - - String cbuffer_as_ewkt(Pointer cb, int maxdd); - - String cbuffer_as_hexwkb(Pointer cb, byte variant, Pointer size); - - String cbuffer_as_text(Pointer cb, int maxdd); - - Pointer cbuffer_as_wkb(Pointer cb, byte variant, Pointer size_out); - - Pointer cbuffer_from_hexwkb(String hexwkb); - - Pointer cbuffer_from_wkb(Pointer wkb, long size); - - Pointer cbuffer_in(String str); - - String cbuffer_out(Pointer cb, int maxdd); - - Pointer cbuffer_copy(Pointer cb); - - Pointer cbuffer_make(Pointer point, double radius); - - Pointer cbuffer_to_geom(Pointer cb); - - Pointer cbuffer_to_stbox(Pointer cb); - - Pointer cbufferarr_to_geom(Pointer cbarr, int count); - - Pointer geom_to_cbuffer(Pointer gs); - - int cbuffer_hash(Pointer cb); - - long cbuffer_hash_extended(Pointer cb, long seed); - - Pointer cbuffer_point(Pointer cb); - - double cbuffer_radius(Pointer cb); - - Pointer cbuffer_round(Pointer cb, int maxdd); - - Pointer cbufferarr_round(Pointer cbarr, int count, int maxdd); - - void cbuffer_set_srid(Pointer cb, int srid); - - int cbuffer_srid(Pointer cb); - - Pointer cbuffer_transform(Pointer cb, int srid); - - Pointer cbuffer_transform_pipeline(Pointer cb, String pipelinestr, int srid, boolean is_forward); - - int contains_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - int covers_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - int disjoint_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - int dwithin_cbuffer_cbuffer(Pointer cb1, Pointer cb2, double dist); - - int intersects_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - int touches_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - Pointer cbuffer_tstzspan_to_stbox(Pointer cb, Pointer s); - - Pointer cbuffer_timestamptz_to_stbox(Pointer cb, long t); - - double distance_cbuffer_cbuffer(Pointer cb1, Pointer cb2); - - double distance_cbuffer_geo(Pointer cb, Pointer gs); - - double distance_cbuffer_stbox(Pointer cb, Pointer box); - - double nad_cbuffer_stbox(Pointer cb, Pointer box); - - int cbuffer_cmp(Pointer cb1, Pointer cb2); - - boolean cbuffer_eq(Pointer cb1, Pointer cb2); - - boolean cbuffer_ge(Pointer cb1, Pointer cb2); - - boolean cbuffer_gt(Pointer cb1, Pointer cb2); - - boolean cbuffer_le(Pointer cb1, Pointer cb2); - - boolean cbuffer_lt(Pointer cb1, Pointer cb2); - - boolean cbuffer_ne(Pointer cb1, Pointer cb2); - - boolean cbuffer_nsame(Pointer cb1, Pointer cb2); - - boolean cbuffer_same(Pointer cb1, Pointer cb2); - - Pointer cbufferset_in(String str); - - String cbufferset_out(Pointer s, int maxdd); - - Pointer cbufferset_make(Pointer values, int count); - - Pointer cbuffer_to_set(Pointer cb); - - Pointer cbufferset_end_value(Pointer s); - - Pointer cbufferset_start_value(Pointer s); - - boolean cbufferset_value_n(Pointer s, int n, Pointer result); - - Pointer cbufferset_values(Pointer s); - - Pointer cbuffer_union_transfn(Pointer state, Pointer cb); - - boolean contained_cbuffer_set(Pointer cb, Pointer s); - - boolean contains_set_cbuffer(Pointer s, Pointer cb); - - Pointer intersection_cbuffer_set(Pointer cb, Pointer s); - - Pointer intersection_set_cbuffer(Pointer s, Pointer cb); - - Pointer minus_cbuffer_set(Pointer cb, Pointer s); - - Pointer minus_set_cbuffer(Pointer s, Pointer cb); - - Pointer union_cbuffer_set(Pointer cb, Pointer s); - - Pointer union_set_cbuffer(Pointer s, Pointer cb); - - Pointer tcbuffer_in(String str); - - Pointer tcbuffer_from_mfjson(String mfjson); - - Pointer tcbuffer_make(Pointer tpoint, Pointer tfloat); - - Pointer tcbuffer_points(Pointer temp); - - Pointer tcbuffer_radius(Pointer temp); - - Pointer tcbuffer_trav_area(Pointer temp, boolean merge_union); - - Pointer tcbuffer_to_tfloat(Pointer temp); - - Pointer tcbuffer_to_tgeompoint(Pointer temp); - - Pointer tgeometry_to_tcbuffer(Pointer temp); - - Pointer tcbuffer_expand(Pointer temp, double dist); - - Pointer tcbuffer_at_cbuffer(Pointer temp, Pointer cb); - - Pointer tcbuffer_at_geom(Pointer temp, Pointer gs); - - Pointer tcbuffer_at_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tcbuffer_minus_cbuffer(Pointer temp, Pointer cb); - - Pointer tcbuffer_minus_geom(Pointer temp, Pointer gs); - - Pointer tcbuffer_minus_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tdistance_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tdistance_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer tdistance_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - double nad_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - double nad_tcbuffer_geo(Pointer temp, Pointer gs); - - double nad_tcbuffer_stbox(Pointer temp, Pointer box); - - double nad_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer nai_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer nai_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer nai_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer shortestline_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer shortestline_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer shortestline_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int always_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int always_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int always_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int always_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int always_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int always_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int ever_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int ever_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int ever_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int ever_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int ever_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int ever_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer teq_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer teq_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tne_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer tne_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int acontains_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int acontains_geo_tcbuffer(Pointer gs, Pointer temp); - - int acontains_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int acontains_tcbuffer_geo(Pointer temp, Pointer gs); - - int acovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int acovers_geo_tcbuffer(Pointer gs, Pointer temp); - - int acovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int acovers_tcbuffer_geo(Pointer temp, Pointer gs); - - int adisjoint_tcbuffer_geo(Pointer temp, Pointer gs); - - int adisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int adisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int adwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); - - int adwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); - - int adwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); - - int aintersects_tcbuffer_geo(Pointer temp, Pointer gs); - - int aintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int aintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int atouches_tcbuffer_geo(Pointer temp, Pointer gs); - - int atouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int atouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int econtains_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int econtains_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int econtains_tcbuffer_geo(Pointer temp, Pointer gs); - - int ecovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - int ecovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int ecovers_tcbuffer_geo(Pointer temp, Pointer gs); - - int ecovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int edisjoint_tcbuffer_geo(Pointer temp, Pointer gs); - - int edisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int edwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); - - int edwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); - - int edwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); - - int eintersects_tcbuffer_geo(Pointer temp, Pointer gs); - - int eintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int eintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int etouches_tcbuffer_geo(Pointer temp, Pointer gs); - - int etouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - int etouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer tcontains_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer tcontains_geo_tcbuffer(Pointer gs, Pointer temp); - - Pointer tcontains_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer tcontains_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tcontains_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer tcovers_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer tcovers_geo_tcbuffer(Pointer gs, Pointer temp); - - Pointer tcovers_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer tcovers_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tcovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer tdwithin_geo_tcbuffer(Pointer gs, Pointer temp, double dist); - - Pointer tdwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist); - - Pointer tdwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist); - - Pointer tdwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist); - - Pointer tdisjoint_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer tdisjoint_geo_tcbuffer(Pointer gs, Pointer temp); - - Pointer tdisjoint_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer tdisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tdisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer tintersects_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer tintersects_geo_tcbuffer(Pointer gs, Pointer temp); - - Pointer tintersects_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer tintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer tintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - Pointer ttouches_geo_tcbuffer(Pointer gs, Pointer temp); - - Pointer ttouches_tcbuffer_geo(Pointer temp, Pointer gs); - - Pointer ttouches_cbuffer_tcbuffer(Pointer cb, Pointer temp); - - Pointer ttouches_tcbuffer_cbuffer(Pointer temp, Pointer cb); - - Pointer ttouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - int acovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2); - - long h3index_in(String str); - - String h3index_out(long cell); - - Pointer th3index_in(String str); - - Pointer th3indexinst_in(String str); - - Pointer th3indexseq_in(String str, int interp); - - Pointer th3indexseqset_in(String str); - - Pointer th3index_make(long value, long t); - - Pointer th3indexinst_make(long value, long t); - - Pointer th3indexseq_make(Pointer values, Pointer times, int count, boolean lower_inc, boolean upper_inc); - - Pointer th3indexseqset_make(Pointer sequences, int count); - - long th3index_start_value(Pointer temp); - - long th3index_end_value(Pointer temp); - - boolean th3index_value_n(Pointer temp, int n, Pointer result); - - Pointer th3index_values(Pointer temp, Pointer count); - - boolean th3index_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer result); - - Pointer tbigint_to_th3index(Pointer temp); - - Pointer th3index_to_tbigint(Pointer temp); - - int ever_eq_h3index_th3index(long cell, Pointer temp); - - int ever_eq_th3index_h3index(Pointer temp, long cell); - - int ever_ne_h3index_th3index(long cell, Pointer temp); - - int ever_ne_th3index_h3index(Pointer temp, long cell); - - int always_eq_h3index_th3index(long cell, Pointer temp); - - int always_eq_th3index_h3index(Pointer temp, long cell); - - int always_ne_h3index_th3index(long cell, Pointer temp); - - int always_ne_th3index_h3index(Pointer temp, long cell); - - int ever_eq_th3index_th3index(Pointer temp1, Pointer temp2); - - int ever_ne_th3index_th3index(Pointer temp1, Pointer temp2); - - int always_eq_th3index_th3index(Pointer temp1, Pointer temp2); - - int always_ne_th3index_th3index(Pointer temp1, Pointer temp2); - - Pointer teq_h3index_th3index(long cell, Pointer temp); - - Pointer teq_th3index_h3index(Pointer temp, long cell); - - Pointer teq_th3index_th3index(Pointer temp1, Pointer temp2); - - Pointer tne_h3index_th3index(long cell, Pointer temp); - - Pointer tne_th3index_h3index(Pointer temp, long cell); - - Pointer tne_th3index_th3index(Pointer temp1, Pointer temp2); - - Pointer th3index_get_resolution(Pointer temp); - - Pointer th3index_get_base_cell_number(Pointer temp); - - Pointer th3index_is_valid_cell(Pointer temp); - - Pointer th3index_is_res_class_iii(Pointer temp); - - Pointer th3index_is_pentagon(Pointer temp); - - Pointer th3index_cell_to_parent(Pointer temp, int resolution); - - Pointer th3index_cell_to_parent_next(Pointer temp); - - Pointer th3index_cell_to_center_child(Pointer temp, int resolution); - - Pointer th3index_cell_to_center_child_next(Pointer temp); - - Pointer th3index_cell_to_child_pos(Pointer temp, int parent_res); - - Pointer th3index_child_pos_to_cell(Pointer child_pos, Pointer parent, int child_res); - - Pointer tgeogpoint_to_th3index(Pointer temp, int resolution); - - Pointer tgeompoint_to_th3index(Pointer temp, int resolution); - - Pointer th3index_to_tgeogpoint(Pointer temp); - - Pointer th3index_to_tgeompoint(Pointer temp); - - Pointer th3index_cell_to_boundary(Pointer temp); - - Pointer geo_to_h3index_set(Pointer gs, int resolution); - - int ever_eq_h3indexset_th3index(Pointer cells, Pointer th3idx); - - Pointer th3index_are_neighbor_cells(Pointer origin, Pointer dest); - - Pointer th3index_cells_to_directed_edge(Pointer origin, Pointer dest); - - Pointer th3index_is_valid_directed_edge(Pointer edge); - - Pointer th3index_get_directed_edge_origin(Pointer edge); - - Pointer th3index_get_directed_edge_destination(Pointer edge); - - Pointer th3index_directed_edge_to_boundary(Pointer edge); - - Pointer th3index_cell_to_vertex(Pointer temp, int vertex_num); - - Pointer th3index_vertex_to_latlng(Pointer temp); - - Pointer th3index_is_valid_vertex(Pointer temp); - - Pointer th3index_grid_distance(Pointer origin, Pointer dest); - - Pointer th3index_cell_to_local_ij(Pointer origin, Pointer cell); - - Pointer th3index_local_ij_to_cell(Pointer origin, Pointer coord); - - Pointer th3index_cell_area(Pointer temp, String unit); - - Pointer th3index_edge_length(Pointer temp, String unit); - - Pointer tgeogpoint_great_circle_distance(Pointer a, Pointer b, String unit); - - Pointer gsl_get_generation_rng(); - - Pointer gsl_get_aggregation_rng(); - - int datum_ceil(Pointer d); - - int datum_degrees(Pointer d, Pointer normalize); - - int datum_float_round(Pointer value, Pointer size); - - int datum_floor(Pointer d); - - int datum_hash(Pointer d, int basetype); - - long datum_hash_extended(Pointer d, int basetype, long seed); - - int datum_radians(Pointer d); - - void floatspan_round_set(Pointer s, int maxdd, Pointer result); - - Pointer set_in(String str, int basetype); - - String set_out(Pointer s, int maxdd); - - Pointer span_in(String str, int spantype); - - String span_out(Pointer s, int maxdd); - - Pointer spanset_in(String str, int spantype); - - String spanset_out(Pointer ss, int maxdd); - - Pointer set_make(Pointer values, int count, int basetype, boolean order); - - Pointer set_make_exp(Pointer values, int count, int maxcount, int basetype, boolean order); - - Pointer set_make_free(Pointer values, int count, int basetype, boolean order); - - Pointer span_make(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype); - - void span_set(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype, int spantype, Pointer s); - - Pointer spanset_make_exp(Pointer spans, int count, int maxcount, boolean normalize, boolean order); - - Pointer spanset_make_free(Pointer spans, int count, boolean normalize, boolean order); - - Pointer set_span(Pointer s); - - Pointer set_spanset(Pointer s); - - void value_set_span(Pointer value, int basetype, Pointer s); - - Pointer value_set(Pointer d, int basetype); - - Pointer value_span(Pointer d, int basetype); - - Pointer value_spanset(Pointer d, int basetype); - - int numspan_width(Pointer s); - - int numspanset_width(Pointer ss, boolean boundspan); - - int set_end_value(Pointer s); - - int set_mem_size(Pointer s); - - void set_set_subspan(Pointer s, int minidx, int maxidx, Pointer result); - - void set_set_span(Pointer s, Pointer result); - - int set_start_value(Pointer s); - - boolean set_value_n(Pointer s, int n, Pointer result); - - Pointer set_vals(Pointer s); - - Pointer set_values(Pointer s); - - int spanset_lower(Pointer ss); - - int spanset_mem_size(Pointer ss); - - Pointer spanset_sps(Pointer ss); - - int spanset_upper(Pointer ss); - - void bigintspan_set_floatspan(Pointer s1, Pointer s2); - - void bigintspan_set_intspan(Pointer s1, Pointer s2); - - void datespan_set_tstzspan(Pointer s1, Pointer s2); - - void floatspan_set_bigintspan(Pointer s1, Pointer s2); - - void floatspan_set_intspan(Pointer s1, Pointer s2); - - void intspan_set_bigintspan(Pointer s1, Pointer s2); - - void intspan_set_floatspan(Pointer s1, Pointer s2); - - Pointer numset_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - Pointer numspan_expand(Pointer s, Pointer value); - - Pointer numspan_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - Pointer numspanset_shift_scale(Pointer ss, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - Pointer set_compact(Pointer s); - - void span_expand(Pointer s1, Pointer s2); - - Pointer spanset_compact(Pointer ss); - - Pointer tbox_expand_value(Pointer box, Pointer value, int basetyp); - - Pointer textcat_textset_text_common(Pointer s, Pointer txt, boolean invert); - - void tstzspan_set_datespan(Pointer s1, Pointer s2); - - boolean adjacent_span_value(Pointer s, Pointer value); - - boolean adjacent_spanset_value(Pointer ss, Pointer value); - - boolean adjacent_value_spanset(Pointer value, Pointer ss); - - boolean contained_value_set(Pointer value, Pointer s); - - boolean contained_value_span(Pointer value, Pointer s); - - boolean contained_value_spanset(Pointer value, Pointer ss); - - boolean contains_set_value(Pointer s, Pointer value); - - boolean contains_span_value(Pointer s, Pointer value); - - boolean contains_spanset_value(Pointer ss, Pointer value); - - boolean ovadj_span_span(Pointer s1, Pointer s2); - - boolean left_set_value(Pointer s, Pointer value); - - boolean left_span_value(Pointer s, Pointer value); - - boolean left_spanset_value(Pointer ss, Pointer value); - - boolean left_value_set(Pointer value, Pointer s); - - boolean left_value_span(Pointer value, Pointer s); - - boolean left_value_spanset(Pointer value, Pointer ss); - - boolean lfnadj_span_span(Pointer s1, Pointer s2); - - boolean overleft_set_value(Pointer s, Pointer value); - - boolean overleft_span_value(Pointer s, Pointer value); - - boolean overleft_spanset_value(Pointer ss, Pointer value); - - boolean overleft_value_set(Pointer value, Pointer s); - - boolean overleft_value_span(Pointer value, Pointer s); - - boolean overleft_value_spanset(Pointer value, Pointer ss); - - boolean overright_set_value(Pointer s, Pointer value); - - boolean overright_span_value(Pointer s, Pointer value); - - boolean overright_spanset_value(Pointer ss, Pointer value); - - boolean overright_value_set(Pointer value, Pointer s); - - boolean overright_value_span(Pointer value, Pointer s); - - boolean overright_value_spanset(Pointer value, Pointer ss); - - } - - public interface MeosLibraryPartD { - - boolean right_value_set(Pointer value, Pointer s); - - boolean right_set_value(Pointer s, Pointer value); - - boolean right_value_span(Pointer value, Pointer s); - - boolean right_value_spanset(Pointer value, Pointer ss); - - boolean right_span_value(Pointer s, Pointer value); - - boolean right_spanset_value(Pointer ss, Pointer value); - - boolean bbox_type(int bboxtype); - - long bbox_get_size(int bboxtype); - - int bbox_max_dims(int bboxtype); - - boolean temporal_bbox_eq(Pointer box1, Pointer box2, int temptype); - - int temporal_bbox_cmp(Pointer box1, Pointer box2, int temptype); - - void bbox_union_span_span(Pointer s1, Pointer s2, Pointer result); - - boolean inter_span_span(Pointer s1, Pointer s2, Pointer result); - - Pointer intersection_set_value(Pointer s, Pointer value); - - Pointer intersection_span_value(Pointer s, Pointer value); - - Pointer intersection_spanset_value(Pointer ss, Pointer value); - - Pointer intersection_value_set(Pointer value, Pointer s); - - Pointer intersection_value_span(Pointer value, Pointer s); - - Pointer intersection_value_spanset(Pointer value, Pointer ss); - - int mi_span_span(Pointer s1, Pointer s2, Pointer result); - - Pointer minus_set_value(Pointer s, Pointer value); - - Pointer minus_span_value(Pointer s, Pointer value); - - Pointer minus_spanset_value(Pointer ss, Pointer value); - - Pointer minus_value_set(Pointer value, Pointer s); - - Pointer minus_value_span(Pointer value, Pointer s); - - Pointer minus_value_spanset(Pointer value, Pointer ss); - - Pointer super_union_span_span(Pointer s1, Pointer s2); - - Pointer union_set_value(Pointer s, Pointer value); - - Pointer union_span_value(Pointer s, Pointer value); - - Pointer union_spanset_value(Pointer ss, Pointer value); - - Pointer union_value_set(Pointer value, Pointer s); - - Pointer union_value_span(Pointer value, Pointer s); - - Pointer union_value_spanset(Pointer value, Pointer ss); - - int distance_set_set(Pointer s1, Pointer s2); - - int distance_set_value(Pointer s, Pointer value); - - int distance_span_span(Pointer s1, Pointer s2); - - int distance_span_value(Pointer s, Pointer value); - - int distance_spanset_span(Pointer ss, Pointer s); - - int distance_spanset_spanset(Pointer ss1, Pointer ss2); - - int distance_spanset_value(Pointer ss, Pointer value); - - int distance_value_value(Pointer l, Pointer r, int basetype); - - Pointer spanbase_extent_transfn(Pointer state, Pointer value, int basetype); - - Pointer value_union_transfn(Pointer state, Pointer value, int basetype); - - Pointer number_tstzspan_to_tbox(Pointer d, int basetype, Pointer s); - - Pointer number_timestamptz_to_tbox(Pointer d, int basetype, long t); - - void tbox_set(Pointer s, Pointer p, Pointer box); - - void float_set_tbox(double d, Pointer box); - - void int_set_tbox(int i, Pointer box); - - void number_set_tbox(Pointer d, int basetype, Pointer box); - - Pointer number_tbox(Pointer value, int basetype); - - void numset_set_tbox(Pointer s, Pointer box); - - void numspan_set_tbox(Pointer span, Pointer box); - - void timestamptz_set_tbox(long t, Pointer box); - - void tstzset_set_tbox(Pointer s, Pointer box); - - void tstzspan_set_tbox(Pointer s, Pointer box); - - Pointer tbox_shift_scale_value(Pointer box, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - void tbox_expand(Pointer box1, Pointer box2); - - boolean inter_tbox_tbox(Pointer box1, Pointer box2, Pointer result); - - Pointer tboolinst_from_mfjson(Pointer mfjson); - - Pointer tboolinst_in(String str); - - Pointer tboolseq_from_mfjson(Pointer mfjson); - - Pointer tboolseq_in(String str, int interp); - - Pointer tboolseqset_from_mfjson(Pointer mfjson); - - Pointer tboolseqset_in(String str); - - Pointer temporal_in(String str, int temptype); - - String temporal_out(Pointer temp, int maxdd); - - Pointer temparr_out(Pointer temparr, int count, int maxdd); - - Pointer tfloatinst_from_mfjson(Pointer mfjson); - - Pointer tfloatinst_in(String str); - - Pointer tfloatseq_from_mfjson(Pointer mfjson, int interp); - - Pointer tfloatseq_in(String str, int interp); - - Pointer tfloatseqset_from_mfjson(Pointer mfjson, int interp); - - Pointer tfloatseqset_in(String str); - - Pointer tinstant_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype); - - Pointer tinstant_in(String str, int temptype); - - String tinstant_out(Pointer inst, int maxdd); - - Pointer tintinst_from_mfjson(Pointer mfjson); - - Pointer tintinst_in(String str); - - Pointer tintseq_from_mfjson(Pointer mfjson); - - Pointer tintseq_in(String str, int interp); - - Pointer tintseqset_from_mfjson(Pointer mfjson); - - Pointer tintseqset_in(String str); - - Pointer tsequence_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp); - - Pointer tsequence_in(String str, int temptype, int interp); - - String tsequence_out(Pointer seq, int maxdd); - - Pointer tsequenceset_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp); - - Pointer tsequenceset_in(String str, int temptype, int interp); - - String tsequenceset_out(Pointer ss, int maxdd); - - Pointer ttextinst_from_mfjson(Pointer mfjson); - - Pointer ttextinst_in(String str); - - Pointer ttextseq_from_mfjson(Pointer mfjson); - - Pointer ttextseq_in(String str, int interp); - - Pointer ttextseqset_from_mfjson(Pointer mfjson); - - Pointer ttextseqset_in(String str); - - Pointer temporal_from_mfjson(String mfjson, int temptype); - - Pointer temporal_from_base_temp(Pointer value, int temptype, Pointer temp); - - Pointer tinstant_copy(Pointer inst); - - Pointer tinstant_make(Pointer value, int temptype, long t); - - Pointer tinstant_make_free(Pointer value, int temptype, long t); - - Pointer tsequence_copy(Pointer seq); - - Pointer tsequence_from_base_temp(Pointer value, int temptype, Pointer seq); - - Pointer tsequence_from_base_tstzset(Pointer value, int temptype, Pointer s); - - Pointer tsequence_from_base_tstzspan(Pointer value, int temptype, Pointer s, int interp); - - Pointer tsequence_make_exp(Pointer instants, int count, int maxcount, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); - - Pointer tsequence_make_free(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize); - - Pointer tsequenceset_copy(Pointer ss); - - Pointer tseqsetarr_to_tseqset(Pointer seqsets, int count, int totalseqs); - - Pointer tsequenceset_from_base_temp(Pointer value, int temptype, Pointer ss); - - Pointer tsequenceset_from_base_tstzspanset(Pointer value, int temptype, Pointer ss, int interp); - - Pointer tsequenceset_make_exp(Pointer sequences, int count, int maxcount, boolean normalize); - - Pointer tsequenceset_make_free(Pointer sequences, int count, boolean normalize); - - void temporal_set_tstzspan(Pointer temp, Pointer s); - - void tinstant_set_tstzspan(Pointer inst, Pointer s); - - void tnumber_set_tbox(Pointer temp, Pointer box); - - void tnumberinst_set_tbox(Pointer inst, Pointer box); - - void tnumberseq_set_tbox(Pointer seq, Pointer box); - - void tnumberseqset_set_tbox(Pointer ss, Pointer box); - - void tsequence_set_tstzspan(Pointer seq, Pointer s); - - void tsequenceset_set_tstzspan(Pointer ss, Pointer s); - - Pointer temporal_end_inst(Pointer temp); - - int temporal_end_value(Pointer temp); - - Pointer temporal_inst_n(Pointer temp, int n); - - Pointer temporal_insts_p(Pointer temp, Pointer count); - - Pointer temporal_max_inst_p(Pointer temp); - - int temporal_max_value(Pointer temp); - - long temporal_mem_size(Pointer temp); - - Pointer temporal_min_inst_p(Pointer temp); - - int temporal_min_value(Pointer temp); - - Pointer temporal_sequences_p(Pointer temp, Pointer count); - - void temporal_set_bbox(Pointer temp, Pointer box); - - Pointer temporal_start_inst(Pointer temp); - - int temporal_start_value(Pointer temp); - - Pointer temporal_values_p(Pointer temp, Pointer count); - - boolean temporal_value_n(Pointer temp, int n, Pointer result); - - Pointer temporal_values(Pointer temp, Pointer count); - - int tinstant_hash(Pointer inst); - - Pointer tinstant_insts(Pointer inst, Pointer count); - - void tinstant_set_bbox(Pointer inst, Pointer box); - - Pointer tinstant_time(Pointer inst); - - Pointer tinstant_timestamps(Pointer inst, Pointer count); - - int tinstant_value_p(Pointer inst); - - int tinstant_value(Pointer inst); - - boolean tinstant_value_at_timestamptz(Pointer inst, long t, Pointer result); - - Pointer tinstant_values_p(Pointer inst, Pointer count); - - void tnumber_set_span(Pointer temp, Pointer span); - - Pointer tnumberinst_valuespans(Pointer inst); - - double tnumberseq_avg_val(Pointer seq); - - Pointer tnumberseq_valuespans(Pointer seq); - - double tnumberseqset_avg_val(Pointer ss); - - Pointer tnumberseqset_valuespans(Pointer ss); - - Pointer tsequence_duration(Pointer seq); - - long tsequence_end_timestamptz(Pointer seq); - - int tsequence_hash(Pointer seq); - - Pointer tsequence_insts_p(Pointer seq); - - Pointer tsequence_max_inst_p(Pointer seq); - - int tsequence_max_val(Pointer seq); - - Pointer tsequence_min_inst_p(Pointer seq); - - int tsequence_min_val(Pointer seq); - - Pointer tsequence_segments(Pointer seq, Pointer count); - - Pointer tsequence_seqs(Pointer seq, Pointer count); - - long tsequence_start_timestamptz(Pointer seq); - - Pointer tsequence_time(Pointer seq); - - Pointer tsequence_timestamps(Pointer seq, Pointer count); - - boolean tsequence_value_at_timestamptz(Pointer seq, long t, boolean strict, Pointer result); - - Pointer tsequence_values_p(Pointer seq, Pointer count); - - Pointer tsequenceset_duration(Pointer ss, boolean boundspan); - - long tsequenceset_end_timestamptz(Pointer ss); - - int tsequenceset_hash(Pointer ss); - - Pointer tsequenceset_inst_n(Pointer ss, int n); - - Pointer tsequenceset_insts_p(Pointer ss); - - Pointer tsequenceset_max_inst_p(Pointer ss); - - int tsequenceset_max_val(Pointer ss); - - Pointer tsequenceset_min_inst_p(Pointer ss); - - int tsequenceset_min_val(Pointer ss); - - int tsequenceset_num_instants(Pointer ss); - - int tsequenceset_num_timestamps(Pointer ss); - - Pointer tsequenceset_segments(Pointer ss, Pointer count); - - Pointer tsequenceset_sequences_p(Pointer ss); - - long tsequenceset_start_timestamptz(Pointer ss); - - Pointer tsequenceset_time(Pointer ss); - - boolean tsequenceset_timestamptz_n(Pointer ss, int n, Pointer result); - - Pointer tsequenceset_timestamps(Pointer ss, Pointer count); - - boolean tsequenceset_value_at_timestamptz(Pointer ss, long t, boolean strict, Pointer result); - - boolean tsequenceset_value_n(Pointer ss, int n, Pointer result); - - Pointer tsequenceset_values_p(Pointer ss, Pointer count); - - void temporal_restart(Pointer temp, int count); - - Pointer temporal_tsequence(Pointer temp, int interp); - - Pointer temporal_tsequenceset(Pointer temp, int interp); - - Pointer tinstant_shift_time(Pointer inst, Pointer interv); - - Pointer tinstant_to_tsequence(Pointer inst, int interp); - - Pointer tinstant_to_tsequence_free(Pointer inst, int interp); - - Pointer tinstant_to_tsequenceset(Pointer inst, int interp); - - Pointer tnumber_shift_scale_value(Pointer temp, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - Pointer tnumberinst_shift_value(Pointer inst, Pointer shift); - - Pointer tnumberseq_shift_scale_value(Pointer seq, Pointer shift, Pointer width, boolean hasshift, boolean haswidth); - - Pointer tnumberseqset_shift_scale_value(Pointer ss, Pointer start, Pointer width, boolean hasshift, boolean haswidth); - - void tsequence_restart(Pointer seq, int count); - - Pointer tsequence_set_interp(Pointer seq, int interp); - - Pointer tsequence_shift_scale_time(Pointer seq, Pointer shift, Pointer duration); - - Pointer tsequence_subseq(Pointer seq, int from, int to, boolean lower_inc, boolean upper_inc); - - Pointer tsequence_to_tinstant(Pointer seq); - - Pointer tsequence_to_tsequenceset(Pointer seq); - - Pointer tsequence_to_tsequenceset_free(Pointer seq); - - Pointer tsequence_to_tsequenceset_interp(Pointer seq, int interp); - - void tsequenceset_restart(Pointer ss, int count); - - Pointer tsequenceset_set_interp(Pointer ss, int interp); - - Pointer tsequenceset_shift_scale_time(Pointer ss, Pointer start, Pointer duration); - - Pointer tsequenceset_to_discrete(Pointer ss); - - Pointer tsequenceset_to_linear(Pointer ss); - - Pointer tsequenceset_to_step(Pointer ss); - - Pointer tsequenceset_to_tinstant(Pointer ss); - - Pointer tsequenceset_to_tsequence(Pointer ss); - - Pointer tinstant_merge(Pointer inst1, Pointer inst2); - - Pointer tinstant_merge_array(Pointer instants, int count); - - Pointer tsequence_append_tinstant(Pointer seq, Pointer inst, double maxdist, Pointer maxt, boolean expand); - - Pointer tsequence_append_tsequence(Pointer seq1, Pointer seq2, boolean expand); - - Pointer tsequence_delete_timestamptz(Pointer seq, long t, boolean connect); - - Pointer tsequence_delete_tstzset(Pointer seq, Pointer s, boolean connect); - - Pointer tsequence_delete_tstzspan(Pointer seq, Pointer s, boolean connect); - - Pointer tsequence_delete_tstzspanset(Pointer seq, Pointer ss, boolean connect); - - Pointer tsequence_insert(Pointer seq1, Pointer seq2, boolean connect); - - Pointer tsequence_merge(Pointer seq1, Pointer seq2); - - Pointer tsequence_merge_array(Pointer sequences, int count); - - Pointer tsequenceset_append_tinstant(Pointer ss, Pointer inst, double maxdist, Pointer maxt, boolean expand); - - Pointer tsequenceset_append_tsequence(Pointer ss, Pointer seq, boolean expand); - - Pointer tsequenceset_delete_timestamptz(Pointer ss, long t); - - Pointer tsequenceset_delete_tstzset(Pointer ss, Pointer s); - - Pointer tsequenceset_delete_tstzspan(Pointer ss, Pointer s); - - Pointer tsequenceset_delete_tstzspanset(Pointer ss, Pointer ps); - - Pointer tsequenceset_insert(Pointer ss1, Pointer ss2); - - Pointer tsequenceset_merge(Pointer ss1, Pointer ss2); - - Pointer tsequenceset_merge_array(Pointer seqsets, int count); - - void tsequence_expand_bbox(Pointer seq, Pointer inst); - - void tsequence_set_bbox(Pointer seq, Pointer box); - - void tsequenceset_expand_bbox(Pointer ss, Pointer seq); - - void tsequenceset_set_bbox(Pointer ss, Pointer box); - - Pointer tcontseq_after_timestamptz(Pointer seq, long t, boolean strict); - - Pointer tcontseq_before_timestamptz(Pointer seq, long t, boolean strict); - - Pointer tcontseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc); - - Pointer tdiscseq_after_timestamptz(Pointer seq, long t, boolean strict); - - Pointer tdiscseq_before_timestamptz(Pointer seq, long t, boolean strict); - - Pointer tdiscseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc); - - boolean temporal_bbox_restrict_set(Pointer temp, Pointer set); - - Pointer temporal_restrict_minmax(Pointer temp, boolean min, boolean atfunc); - - Pointer temporal_restrict_timestamptz(Pointer temp, long t, boolean atfunc); - - Pointer temporal_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc); - - Pointer temporal_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc); - - Pointer temporal_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc); - - Pointer temporal_restrict_value(Pointer temp, Pointer value, boolean atfunc); - - Pointer temporal_restrict_values(Pointer temp, Pointer set, boolean atfunc); - - boolean temporal_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer result); - - Pointer tinstant_after_timestamptz(Pointer inst, long t, boolean strict); - - Pointer tinstant_before_timestamptz(Pointer inst, long t, boolean strict); - - Pointer tinstant_restrict_tstzspan(Pointer inst, Pointer period, boolean atfunc); - - Pointer tinstant_restrict_tstzspanset(Pointer inst, Pointer ss, boolean atfunc); - - Pointer tinstant_restrict_timestamptz(Pointer inst, long t, boolean atfunc); - - Pointer tinstant_restrict_tstzset(Pointer inst, Pointer s, boolean atfunc); - - Pointer tinstant_restrict_value(Pointer inst, Pointer value, boolean atfunc); - - Pointer tinstant_restrict_values(Pointer inst, Pointer set, boolean atfunc); - - Pointer tnumber_restrict_span(Pointer temp, Pointer span, boolean atfunc); - - Pointer tnumber_restrict_spanset(Pointer temp, Pointer ss, boolean atfunc); - - Pointer tnumberinst_restrict_span(Pointer inst, Pointer span, boolean atfunc); - - Pointer tnumberinst_restrict_spanset(Pointer inst, Pointer ss, boolean atfunc); - - Pointer tnumberseqset_restrict_span(Pointer ss, Pointer span, boolean atfunc); - - Pointer tnumberseqset_restrict_spanset(Pointer ss, Pointer spanset, boolean atfunc); - - Pointer tsequence_at_timestamptz(Pointer seq, long t); - - Pointer tsequence_restrict_tstzspan(Pointer seq, Pointer s, boolean atfunc); - - Pointer tsequence_restrict_tstzspanset(Pointer seq, Pointer ss, boolean atfunc); - - Pointer tsequenceset_after_timestamptz(Pointer ss, long t, boolean strict); - - Pointer tsequenceset_before_timestamptz(Pointer ss, long t, boolean strict); - - Pointer tsequenceset_restrict_minmax(Pointer ss, boolean min, boolean atfunc); - - Pointer tsequenceset_restrict_tstzspan(Pointer ss, Pointer s, boolean atfunc); - - Pointer tsequenceset_restrict_tstzspanset(Pointer ss, Pointer ps, boolean atfunc); - - Pointer tsequenceset_restrict_timestamptz(Pointer ss, long t, boolean atfunc); - - Pointer tsequenceset_restrict_tstzset(Pointer ss, Pointer s, boolean atfunc); - - Pointer tsequenceset_restrict_value(Pointer ss, Pointer value, boolean atfunc); - - Pointer tsequenceset_restrict_values(Pointer ss, Pointer s, boolean atfunc); - - int tinstant_cmp(Pointer inst1, Pointer inst2); - - boolean tinstant_eq(Pointer inst1, Pointer inst2); - - int tsequence_cmp(Pointer seq1, Pointer seq2); - - boolean tsequence_eq(Pointer seq1, Pointer seq2); - - int tsequenceset_cmp(Pointer ss1, Pointer ss2); - - boolean tsequenceset_eq(Pointer ss1, Pointer ss2); - - int always_eq_base_temporal(Pointer value, Pointer temp); - - int always_eq_temporal_base(Pointer temp, Pointer value); - - int always_ne_base_temporal(Pointer value, Pointer temp); - - int always_ne_temporal_base(Pointer temp, Pointer value); - - int always_ge_base_temporal(Pointer value, Pointer temp); - - int always_ge_temporal_base(Pointer temp, Pointer value); - - int always_gt_base_temporal(Pointer value, Pointer temp); - - int always_gt_temporal_base(Pointer temp, Pointer value); - - int always_le_base_temporal(Pointer value, Pointer temp); - - int always_le_temporal_base(Pointer temp, Pointer value); - - int always_lt_base_temporal(Pointer value, Pointer temp); - - int always_lt_temporal_base(Pointer temp, Pointer value); - - int ever_eq_base_temporal(Pointer value, Pointer temp); - - int ever_eq_temporal_base(Pointer temp, Pointer value); - - int ever_ne_base_temporal(Pointer value, Pointer temp); - - int ever_ne_temporal_base(Pointer temp, Pointer value); - - int ever_ge_base_temporal(Pointer value, Pointer temp); - - int ever_ge_temporal_base(Pointer temp, Pointer value); - - int ever_gt_base_temporal(Pointer value, Pointer temp); - - int ever_gt_temporal_base(Pointer temp, Pointer value); - - int ever_le_base_temporal(Pointer value, Pointer temp); - - int ever_le_temporal_base(Pointer temp, Pointer value); - - int ever_lt_base_temporal(Pointer value, Pointer temp); - - int ever_lt_temporal_base(Pointer temp, Pointer value); - - Pointer tnumberinst_abs(Pointer inst); - - Pointer tnumberseq_abs(Pointer seq); - - Pointer tnumberseq_angular_difference(Pointer seq); - - Pointer tnumberseq_delta_value(Pointer seq); - - Pointer tnumberseqset_abs(Pointer ss); - - Pointer tnumberseqset_angular_difference(Pointer ss); - - Pointer tnumberseqset_delta_value(Pointer ss); - - double distance_span_span_double(Pointer s1, Pointer s2); - - double nad_tbox_tbox(Pointer box1, Pointer box2); - - double nad_tnumber_number(Pointer temp, Pointer value); - - double nad_tnumber_tbox(Pointer temp, Pointer box); - - double nad_tnumber_tnumber(Pointer temp1, Pointer temp2); - - Pointer tdistance_tnumber_number(Pointer temp, Pointer value); - - double tnumberinst_distance(Pointer inst1, Pointer inst2); - - double tnumberseq_integral(Pointer seq); - - double tnumberseq_twavg(Pointer seq); - - double tnumberseqset_integral(Pointer ss); - - double tnumberseqset_twavg(Pointer ss); - - Pointer temporal_compact(Pointer temp); - - Pointer tsequence_compact(Pointer seq); - - Pointer tsequenceset_compact(Pointer ss); - - Pointer temporal_skiplist_make(); - - Pointer skiplist_make(long key_size, long value_size, Pointer comp_fn, Pointer merge_fn); - - int skiplist_search(Pointer list, Pointer key, Pointer value); - - void skiplist_free(Pointer list); - - void skiplist_splice(Pointer list, Pointer keys, Pointer values, int count, Pointer func, boolean crossings, int sktype); - - void temporal_skiplist_splice(Pointer list, Pointer values, int count, Pointer func, boolean crossings); - - Pointer skiplist_values(Pointer list); - - Pointer skiplist_keys_values(Pointer list, Pointer values); - - Pointer temporal_app_tinst_transfn(Pointer state, Pointer inst, int interp, double maxdist, Pointer maxt); - - Pointer temporal_app_tseq_transfn(Pointer state, Pointer seq); - - Pointer span_bins(Pointer s, Pointer size, Pointer origin, Pointer count); - - Pointer spanset_bins(Pointer ss, Pointer size, Pointer origin, Pointer count); - - Pointer tnumber_value_bins(Pointer temp, Pointer size, Pointer origin, Pointer count); - - Pointer tnumber_value_time_boxes(Pointer temp, Pointer vsize, Pointer duration, Pointer vorigin, long torigin, Pointer count); - - Pointer tnumber_value_split(Pointer temp, Pointer vsize, Pointer vorigin, Pointer bins, Pointer count); - - Pointer tbox_get_value_time_tile(Pointer value, long t, Pointer vsize, Pointer duration, Pointer vorigin, long torigin, int basetype, int spantype); - - Pointer tnumber_value_time_split(Pointer temp, Pointer size, Pointer duration, Pointer vorigin, long torigin, Pointer value_bins, Pointer time_bins, Pointer count); - - Pointer proj_get_context(); - - int datum_geo_round(Pointer value, Pointer size); - - Pointer point_round(Pointer gs, int maxdd); - - void stbox_set(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s, Pointer box); - - void gbox_set_stbox(Pointer box, int srid, Pointer result); - - boolean geo_set_stbox(Pointer gs, Pointer box); - - void geoarr_set_stbox(Pointer values, int count, Pointer box); - - boolean spatial_set_stbox(Pointer d, int basetype, Pointer box); - - void spatialset_set_stbox(Pointer set, Pointer box); - - void stbox_set_box3d(Pointer box, Pointer box3d); - - void stbox_set_gbox(Pointer box, Pointer gbox); - - void tstzset_set_stbox(Pointer s, Pointer box); - - void tstzspan_set_stbox(Pointer s, Pointer box); - - void tstzspanset_set_stbox(Pointer s, Pointer box); - - void stbox_expand(Pointer box1, Pointer box2); - - boolean inter_stbox_stbox(Pointer box1, Pointer box2, Pointer result); - - Pointer stbox_geo(Pointer box); - - Pointer tgeogpointinst_from_mfjson(Pointer mfjson, int srid); - - Pointer tgeogpointinst_in(String str); - - Pointer tgeogpointseq_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeogpointseq_in(String str, int interp); - - Pointer tgeogpointseqset_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeogpointseqset_in(String str); - - Pointer tgeompointinst_from_mfjson(Pointer mfjson, int srid); - - Pointer tgeompointinst_in(String str); - - Pointer tgeompointseq_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeompointseq_in(String str, int interp); - - Pointer tgeompointseqset_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeompointseqset_in(String str); - - Pointer tgeographyinst_from_mfjson(Pointer mfjson, int srid); - - Pointer tgeographyinst_in(String str); - - Pointer tgeographyseq_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeographyseq_in(String str, int interp); - - Pointer tgeographyseqset_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeographyseqset_in(String str); - - Pointer tgeometryinst_from_mfjson(Pointer mfjson, int srid); - - Pointer tgeometryinst_in(String str); - - Pointer tgeometryseq_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeometryseq_in(String str, int interp); - - Pointer tgeometryseqset_from_mfjson(Pointer mfjson, int srid, int interp); - - Pointer tgeometryseqset_in(String str); - - void tspatial_set_stbox(Pointer temp, Pointer box); - - void tgeoinst_set_stbox(Pointer inst, Pointer box); - - void tspatialseq_set_stbox(Pointer seq, Pointer box); - - void tspatialseqset_set_stbox(Pointer ss, Pointer box); - - Pointer tgeo_restrict_elevation(Pointer temp, Pointer s, boolean atfunc); - - Pointer tgeo_restrict_geom(Pointer temp, Pointer gs, boolean atfunc); - - Pointer tgeo_restrict_stbox(Pointer temp, Pointer box, boolean border_inc, boolean atfunc); - - Pointer tgeoinst_restrict_geom(Pointer inst, Pointer gs, boolean atfunc); - - Pointer tgeoinst_restrict_stbox(Pointer inst, Pointer box, boolean border_inc, boolean atfunc); - - Pointer tgeoseq_restrict_geom(Pointer seq, Pointer gs, boolean atfunc); - - Pointer tgeoseq_restrict_stbox(Pointer seq, Pointer box, boolean border_inc, boolean atfunc); - - Pointer tgeoseqset_restrict_geom(Pointer ss, Pointer gs, boolean atfunc); - - Pointer tgeoseqset_restrict_stbox(Pointer ss, Pointer box, boolean border_inc, boolean atfunc); - - int spatial_srid(Pointer d, int basetype); - - boolean spatial_set_srid(Pointer d, int basetype, int srid); - - int tspatialinst_srid(Pointer inst); - - Pointer tpointseq_azimuth(Pointer seq); - - Pointer tpointseq_cumulative_length(Pointer seq, double prevlength); - - boolean tpointseq_is_simple(Pointer seq); - - double tpointseq_length(Pointer seq); - - Pointer tpointseq_linear_trajectory(Pointer seq, boolean unary_union); - - Pointer tgeoseq_stboxes(Pointer seq, Pointer count); - - Pointer tgeoseq_split_n_stboxes(Pointer seq, int max_count, Pointer count); - - Pointer tpointseqset_azimuth(Pointer ss); - - Pointer tpointseqset_cumulative_length(Pointer ss); - - boolean tpointseqset_is_simple(Pointer ss); - - double tpointseqset_length(Pointer ss); - - Pointer tgeoseqset_stboxes(Pointer ss, Pointer count); - - Pointer tgeoseqset_split_n_stboxes(Pointer ss, int max_count, Pointer count); - - Pointer tpoint_get_coord(Pointer temp, int coord); - - Pointer tgeominst_tgeoginst(Pointer inst, boolean oper); - - Pointer tgeomseq_tgeogseq(Pointer seq, boolean oper); - - Pointer tgeomseqset_tgeogseqset(Pointer ss, boolean oper); - - Pointer tgeom_tgeog(Pointer temp, boolean oper); - - Pointer tgeo_tpoint(Pointer temp, boolean oper); - - void tspatialinst_set_srid(Pointer inst, int srid); - - Pointer tpointseq_make_simple(Pointer seq, Pointer count); - - void tspatialseq_set_srid(Pointer seq, int srid); - - Pointer tpointseqset_make_simple(Pointer ss, Pointer count); - - void tspatialseqset_set_srid(Pointer ss, int srid); - - Pointer tpointseq_twcentroid(Pointer seq); - - Pointer tpointseqset_twcentroid(Pointer ss); - - String npoint_as_ewkt(Pointer np, int maxdd); - - String npoint_as_hexwkb(Pointer np, byte variant, Pointer size_out); - - String npoint_as_text(Pointer np, int maxdd); - - Pointer npoint_as_wkb(Pointer np, byte variant, Pointer size_out); - - Pointer npoint_from_hexwkb(String hexwkb); - - Pointer npoint_from_wkb(Pointer wkb, long size); - - Pointer npoint_in(String str); - - String npoint_out(Pointer np, int maxdd); - - Pointer nsegment_in(String str); - - String nsegment_out(Pointer ns, int maxdd); - - Pointer npoint_make(long rid, double pos); - - Pointer nsegment_make(long rid, double pos1, double pos2); - - Pointer geompoint_to_npoint(Pointer gs); - - Pointer geom_to_nsegment(Pointer gs); - - Pointer npoint_to_geompoint(Pointer np); - - Pointer npoint_to_nsegment(Pointer np); - - Pointer npoint_to_stbox(Pointer np); - - Pointer nsegment_to_geom(Pointer ns); - - Pointer nsegment_to_stbox(Pointer np); - - int npoint_hash(Pointer np); - - long npoint_hash_extended(Pointer np, long seed); - - double npoint_position(Pointer np); - - long npoint_route(Pointer np); - - double nsegment_end_position(Pointer ns); - - long nsegment_route(Pointer ns); - - double nsegment_start_position(Pointer ns); - - boolean route_exists(long rid); - - Pointer route_geom(long rid); - - double route_length(long rid); - - Pointer npoint_round(Pointer np, int maxdd); - - Pointer nsegment_round(Pointer ns, int maxdd); - - int get_srid_ways(); - - int npoint_srid(Pointer np); - - int nsegment_srid(Pointer ns); - - Pointer npoint_timestamptz_to_stbox(Pointer np, long t); - - Pointer npoint_tstzspan_to_stbox(Pointer np, Pointer s); - - int npoint_cmp(Pointer np1, Pointer np2); - - boolean npoint_eq(Pointer np1, Pointer np2); - - boolean npoint_ge(Pointer np1, Pointer np2); - - boolean npoint_gt(Pointer np1, Pointer np2); - - boolean npoint_le(Pointer np1, Pointer np2); - - boolean npoint_lt(Pointer np1, Pointer np2); - - boolean npoint_ne(Pointer np1, Pointer np2); - - boolean npoint_same(Pointer np1, Pointer np2); - - int nsegment_cmp(Pointer ns1, Pointer ns2); - - boolean nsegment_eq(Pointer ns1, Pointer ns2); - - boolean nsegment_ge(Pointer ns1, Pointer ns2); - - boolean nsegment_gt(Pointer ns1, Pointer ns2); - - boolean nsegment_le(Pointer ns1, Pointer ns2); - - boolean nsegment_lt(Pointer ns1, Pointer ns2); - - boolean nsegment_ne(Pointer ns1, Pointer ns2); - - Pointer npointset_in(String str); - - String npointset_out(Pointer s, int maxdd); - - Pointer npointset_make(Pointer values, int count); - - Pointer npoint_to_set(Pointer np); - - Pointer npointset_end_value(Pointer s); - - Pointer npointset_routes(Pointer s); - - Pointer npointset_start_value(Pointer s); - - boolean npointset_value_n(Pointer s, int n, Pointer result); - - Pointer npointset_values(Pointer s); - - boolean contained_npoint_set(Pointer np, Pointer s); - - boolean contains_set_npoint(Pointer s, Pointer np); - - Pointer intersection_npoint_set(Pointer np, Pointer s); - - Pointer intersection_set_npoint(Pointer s, Pointer np); - - Pointer minus_npoint_set(Pointer np, Pointer s); - - Pointer minus_set_npoint(Pointer s, Pointer np); - - Pointer npoint_union_transfn(Pointer state, Pointer np); - - Pointer union_npoint_set(Pointer np, Pointer s); - - Pointer union_set_npoint(Pointer s, Pointer np); - - Pointer tnpoint_in(String str); - - Pointer tnpoint_from_mfjson(String mfjson); - - String tnpoint_out(Pointer temp, int maxdd); - - Pointer tnpointinst_make(Pointer np, long t); - - Pointer tgeompoint_to_tnpoint(Pointer temp); - - Pointer tnpoint_to_tgeompoint(Pointer temp); - - Pointer tnpoint_cumulative_length(Pointer temp); - - double tnpoint_length(Pointer temp); - - Pointer tnpoint_positions(Pointer temp, Pointer count); - - long tnpoint_route(Pointer temp); - - Pointer tnpoint_routes(Pointer temp); - - Pointer tnpoint_speed(Pointer temp); - - Pointer tnpoint_trajectory(Pointer temp); - - Pointer tnpoint_twcentroid(Pointer temp); - - Pointer tnpoint_at_geom(Pointer temp, Pointer gs); - - Pointer tnpoint_at_npoint(Pointer temp, Pointer np); - - Pointer tnpoint_at_npointset(Pointer temp, Pointer s); - - Pointer tnpoint_at_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tnpoint_minus_geom(Pointer temp, Pointer gs); - - Pointer tnpoint_minus_npoint(Pointer temp, Pointer np); - - Pointer tnpoint_minus_npointset(Pointer temp, Pointer s); - - Pointer tnpoint_minus_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tdistance_tnpoint_npoint(Pointer temp, Pointer np); - - Pointer tdistance_tnpoint_point(Pointer temp, Pointer gs); - - Pointer tdistance_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - double nad_tnpoint_geo(Pointer temp, Pointer gs); - - double nad_tnpoint_npoint(Pointer temp, Pointer np); - - double nad_tnpoint_stbox(Pointer temp, Pointer box); - - double nad_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - Pointer nai_tnpoint_geo(Pointer temp, Pointer gs); - - Pointer nai_tnpoint_npoint(Pointer temp, Pointer np); - - Pointer nai_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - Pointer shortestline_tnpoint_geo(Pointer temp, Pointer gs); - - Pointer shortestline_tnpoint_npoint(Pointer temp, Pointer np); - - Pointer shortestline_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - Pointer tnpoint_tcentroid_transfn(Pointer state, Pointer temp); - - int always_eq_npoint_tnpoint(Pointer np, Pointer temp); - - int always_eq_tnpoint_npoint(Pointer temp, Pointer np); - - int always_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - int always_ne_npoint_tnpoint(Pointer np, Pointer temp); - - int always_ne_tnpoint_npoint(Pointer temp, Pointer np); - - int always_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - int ever_eq_npoint_tnpoint(Pointer np, Pointer temp); - - int ever_eq_tnpoint_npoint(Pointer temp, Pointer np); - - int ever_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - int ever_ne_npoint_tnpoint(Pointer np, Pointer temp); - - int ever_ne_tnpoint_npoint(Pointer temp, Pointer np); - - int ever_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2); - - Pointer teq_tnpoint_npoint(Pointer temp, Pointer np); - - Pointer tne_tnpoint_npoint(Pointer temp, Pointer np); - - String pose_as_ewkt(Pointer pose, int maxdd); - - String pose_as_hexwkb(Pointer pose, byte variant, Pointer size); - - String pose_as_text(Pointer pose, int maxdd); - - Pointer pose_as_wkb(Pointer pose, byte variant, Pointer size_out); - - Pointer pose_from_wkb(Pointer wkb, long size); - - Pointer pose_from_hexwkb(String hexwkb); - - Pointer pose_in(String str); - - String pose_out(Pointer pose, int maxdd); - - Pointer pose_copy(Pointer pose); - - Pointer pose_make_2d(double x, double y, double theta, int srid); - - Pointer pose_make_3d(double x, double y, double z, double W, double X, double Y, double Z, int srid); - - Pointer pose_make_point2d(Pointer gs, double theta); - - Pointer pose_make_point3d(Pointer gs, double W, double X, double Y, double Z); - - Pointer pose_to_point(Pointer pose); - - Pointer pose_to_stbox(Pointer pose); - - int pose_hash(Pointer pose); - - long pose_hash_extended(Pointer pose, long seed); - - Pointer pose_orientation(Pointer pose); - - double pose_rotation(Pointer pose); - - Pointer pose_round(Pointer pose, int maxdd); - - Pointer posearr_round(Pointer posearr, int count, int maxdd); - - void pose_set_srid(Pointer pose, int srid); - - int pose_srid(Pointer pose); - - Pointer pose_transform(Pointer pose, int srid); - - Pointer pose_transform_pipeline(Pointer pose, String pipelinestr, int srid, boolean is_forward); - - Pointer pose_tstzspan_to_stbox(Pointer pose, Pointer s); - - Pointer pose_timestamptz_to_stbox(Pointer pose, long t); - - double distance_pose_geo(Pointer pose, Pointer gs); - - double distance_pose_pose(Pointer pose1, Pointer pose2); - - double distance_pose_stbox(Pointer pose, Pointer box); - - int pose_cmp(Pointer pose1, Pointer pose2); - - boolean pose_eq(Pointer pose1, Pointer pose2); - - boolean pose_ge(Pointer pose1, Pointer pose2); - - boolean pose_gt(Pointer pose1, Pointer pose2); - - boolean pose_le(Pointer pose1, Pointer pose2); - - boolean pose_lt(Pointer pose1, Pointer pose2); - - boolean pose_ne(Pointer pose1, Pointer pose2); - - boolean pose_nsame(Pointer pose1, Pointer pose2); - - boolean pose_same(Pointer pose1, Pointer pose2); - - Pointer poseset_in(String str); - - String poseset_out(Pointer s, int maxdd); - - Pointer poseset_make(Pointer values, int count); - - Pointer pose_to_set(Pointer pose); - - Pointer poseset_end_value(Pointer s); - - Pointer poseset_start_value(Pointer s); - - boolean poseset_value_n(Pointer s, int n, Pointer result); - - Pointer poseset_values(Pointer s); - - boolean contained_pose_set(Pointer pose, Pointer s); - - boolean contains_set_pose(Pointer s, Pointer pose); - - Pointer intersection_pose_set(Pointer pose, Pointer s); - - Pointer intersection_set_pose(Pointer s, Pointer pose); - - Pointer minus_pose_set(Pointer pose, Pointer s); - - Pointer minus_set_pose(Pointer s, Pointer pose); - - Pointer pose_union_transfn(Pointer state, Pointer pose); - - Pointer union_pose_set(Pointer pose, Pointer s); - - Pointer union_set_pose(Pointer s, Pointer pose); - - Pointer tpose_in(String str); - - Pointer tpose_make(Pointer tpoint, Pointer tradius); - - Pointer tpose_to_tpoint(Pointer temp); - - Pointer tpose_end_value(Pointer temp); - - Pointer tpose_points(Pointer temp); - - Pointer tpose_rotation(Pointer temp); - - Pointer tpose_start_value(Pointer temp); - - Pointer tpose_trajectory(Pointer temp); - - boolean tpose_value_at_timestamptz(Pointer temp, long t, boolean strict, Pointer value); - - boolean tpose_value_n(Pointer temp, int n, Pointer result); - - Pointer tpose_values(Pointer temp, Pointer count); - - Pointer tpose_at_geom(Pointer temp, Pointer gs); - - Pointer tpose_at_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tpose_at_pose(Pointer temp, Pointer pose); - - Pointer tpose_minus_geom(Pointer temp, Pointer gs); - - Pointer tpose_minus_pose(Pointer temp, Pointer pose); - - Pointer tpose_minus_stbox(Pointer temp, Pointer box, boolean border_inc); - - Pointer tdistance_tpose_pose(Pointer temp, Pointer pose); - - Pointer tdistance_tpose_point(Pointer temp, Pointer gs); - - Pointer tdistance_tpose_tpose(Pointer temp1, Pointer temp2); - - double nad_tpose_geo(Pointer temp, Pointer gs); - - double nad_tpose_pose(Pointer temp, Pointer pose); - - double nad_tpose_stbox(Pointer temp, Pointer box); - - double nad_tpose_tpose(Pointer temp1, Pointer temp2); - - Pointer nai_tpose_geo(Pointer temp, Pointer gs); - - Pointer nai_tpose_pose(Pointer temp, Pointer pose); - - Pointer nai_tpose_tpose(Pointer temp1, Pointer temp2); - - Pointer shortestline_tpose_geo(Pointer temp, Pointer gs); - - Pointer shortestline_tpose_pose(Pointer temp, Pointer pose); - - Pointer shortestline_tpose_tpose(Pointer temp1, Pointer temp2); - - int always_eq_pose_tpose(Pointer pose, Pointer temp); - - int always_eq_tpose_pose(Pointer temp, Pointer pose); - - int always_eq_tpose_tpose(Pointer temp1, Pointer temp2); - - int always_ne_pose_tpose(Pointer pose, Pointer temp); - - int always_ne_tpose_pose(Pointer temp, Pointer pose); - - int always_ne_tpose_tpose(Pointer temp1, Pointer temp2); - - int ever_eq_pose_tpose(Pointer pose, Pointer temp); - - int ever_eq_tpose_pose(Pointer temp, Pointer pose); - - int ever_eq_tpose_tpose(Pointer temp1, Pointer temp2); - - int ever_ne_pose_tpose(Pointer pose, Pointer temp); - - int ever_ne_tpose_pose(Pointer temp, Pointer pose); - - int ever_ne_tpose_tpose(Pointer temp1, Pointer temp2); - - Pointer teq_pose_tpose(Pointer pose, Pointer temp); - - Pointer teq_tpose_pose(Pointer temp, Pointer pose); - - Pointer tne_pose_tpose(Pointer pose, Pointer temp); - - Pointer tne_tpose_pose(Pointer temp, Pointer pose); - - String trgeo_out(Pointer temp); - - Pointer trgeoinst_make(Pointer geom, Pointer pose, long t); - - Pointer geo_tpose_to_trgeo(Pointer gs, Pointer temp); - - Pointer trgeo_to_tpose(Pointer temp); - - Pointer trgeo_to_tpoint(Pointer temp); - - Pointer trgeo_end_instant(Pointer temp); - - Pointer trgeo_end_sequence(Pointer temp); - - Pointer trgeo_end_value(Pointer temp); - - Pointer trgeo_geom(Pointer temp); - - Pointer trgeo_instant_n(Pointer temp, int n); - - Pointer trgeo_instants(Pointer temp, Pointer count); - - Pointer trgeo_points(Pointer temp); - - Pointer trgeo_rotation(Pointer temp); - - Pointer trgeo_segments(Pointer temp, Pointer count); - - Pointer trgeo_sequence_n(Pointer temp, int i); - - Pointer trgeo_sequences(Pointer temp, Pointer count); - - Pointer trgeo_start_instant(Pointer temp); - - Pointer trgeo_start_sequence(Pointer temp); - - Pointer trgeo_start_value(Pointer temp); - - boolean trgeo_value_n(Pointer temp, int n, Pointer result); - - Pointer trgeo_traversed_area(Pointer temp, boolean unary_union); - - Pointer trgeo_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand); - - Pointer trgeo_append_tsequence(Pointer temp, Pointer seq, boolean expand); - - Pointer trgeo_delete_timestamptz(Pointer temp, long t, boolean connect); - - Pointer trgeo_delete_tstzset(Pointer temp, Pointer s, boolean connect); - - Pointer trgeo_delete_tstzspan(Pointer temp, Pointer s, boolean connect); - - Pointer trgeo_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect); - - Pointer trgeo_round(Pointer temp, int maxdd); - - Pointer trgeo_set_interp(Pointer temp, int interp); - - Pointer trgeo_to_tinstant(Pointer temp); - - Pointer trgeo_after_timestamptz(Pointer temp, long t, boolean strict); - - Pointer trgeo_before_timestamptz(Pointer temp, long t, boolean strict); - - Pointer trgeo_restrict_value(Pointer temp, Pointer value, boolean atfunc); - - Pointer trgeo_restrict_values(Pointer temp, Pointer s, boolean atfunc); - - Pointer trgeo_restrict_timestamptz(Pointer temp, long t, boolean atfunc); - - Pointer trgeo_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc); - - Pointer trgeo_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc); - - Pointer trgeo_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc); - - Pointer tdistance_trgeo_geo(Pointer temp, Pointer gs); - - Pointer tdistance_trgeo_tpoint(Pointer temp1, Pointer temp2); - - Pointer tdistance_trgeo_trgeo(Pointer temp1, Pointer temp2); - - double nad_stbox_trgeo(Pointer box, Pointer temp); - - double nad_trgeo_geo(Pointer temp, Pointer gs); - - double nad_trgeo_stbox(Pointer temp, Pointer box); - - double nad_trgeo_tpoint(Pointer temp1, Pointer temp2); - - double nad_trgeo_trgeo(Pointer temp1, Pointer temp2); - - Pointer nai_trgeo_geo(Pointer temp, Pointer gs); - - Pointer nai_trgeo_tpoint(Pointer temp1, Pointer temp2); - - Pointer nai_trgeo_trgeo(Pointer temp1, Pointer temp2); - - Pointer shortestline_trgeo_geo(Pointer temp, Pointer gs); - - Pointer shortestline_trgeo_tpoint(Pointer temp1, Pointer temp2); - - Pointer shortestline_trgeo_trgeo(Pointer temp1, Pointer temp2); - - int always_eq_geo_trgeo(Pointer gs, Pointer temp); - - int always_eq_trgeo_geo(Pointer temp, Pointer gs); - - int always_eq_trgeo_trgeo(Pointer temp1, Pointer temp2); - - int always_ne_geo_trgeo(Pointer gs, Pointer temp); - - int always_ne_trgeo_geo(Pointer temp, Pointer gs); - - int always_ne_trgeo_trgeo(Pointer temp1, Pointer temp2); - - int ever_eq_geo_trgeo(Pointer gs, Pointer temp); - - int ever_eq_trgeo_geo(Pointer temp, Pointer gs); - - int ever_eq_trgeo_trgeo(Pointer temp1, Pointer temp2); - - int ever_ne_geo_trgeo(Pointer gs, Pointer temp); - - int ever_ne_trgeo_geo(Pointer temp, Pointer gs); - - int ever_ne_trgeo_trgeo(Pointer temp1, Pointer temp2); - - Pointer teq_geo_trgeo(Pointer gs, Pointer temp); - - Pointer teq_trgeo_geo(Pointer temp, Pointer gs); - - Pointer tne_geo_trgeo(Pointer gs, Pointer temp); - - Pointer tne_trgeo_geo(Pointer temp, Pointer gs); - - int geo_get_srid(Pointer g); - - int date_in(String str); - - String date_out(int d); - - int interval_cmp(Pointer interv1, Pointer interv2); - - Pointer interval_in(String str, int typmod); - - String interval_out(Pointer interv); - - Pointer time_in(String str, int typmod); - - String time_out(Pointer t); - - long timestamp_in(String str, int typmod); - - String timestamp_out(long t); - - long timestamptz_in(String str, int typmod); - - String timestamptz_out(long t); - - } - - private static final String _LIB = "libmeos.so"; - - static final MeosLibraryPartA _meos_a = - JarLibraryLoader.create(MeosLibraryPartA.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartB _meos_b = - JarLibraryLoader.create(MeosLibraryPartB.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartC _meos_c = - JarLibraryLoader.create(MeosLibraryPartC.class, _LIB).getLibraryInstance(); - static final MeosLibraryPartD _meos_d = - JarLibraryLoader.create(MeosLibraryPartD.class, _LIB).getLibraryInstance(); - - private static final java.util.Map _dispatch; - static { - _dispatch = new java.util.HashMap<>(4096); - for (java.lang.reflect.Method _m : MeosLibraryPartA.class.getMethods()) - _dispatch.put(_m.getName(), _meos_a); - for (java.lang.reflect.Method _m : MeosLibraryPartB.class.getMethods()) - _dispatch.put(_m.getName(), _meos_b); - for (java.lang.reflect.Method _m : MeosLibraryPartC.class.getMethods()) - _dispatch.put(_m.getName(), _meos_c); - for (java.lang.reflect.Method _m : MeosLibraryPartD.class.getMethods()) - _dispatch.put(_m.getName(), _meos_d); - } - - - - @SuppressWarnings("unused") - public static Pointer meos_array_create(int elem_size) { - var _result = _meos_a.meos_array_create(elem_size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_array_add(Pointer array, Pointer value) { - _meos_a.meos_array_add(array, value); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer meos_array_get(Pointer array, int n) { - var _result = _meos_a.meos_array_get(array, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int meos_array_count(Pointer array) { - var _result = _meos_a.meos_array_count(array); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_array_reset(Pointer array) { - _meos_a.meos_array_reset(array); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_array_reset_free(Pointer array) { - _meos_a.meos_array_reset_free(array); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_array_destroy(Pointer array) { - _meos_a.meos_array_destroy(array); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_array_destroy_free(Pointer array) { - _meos_a.meos_array_destroy_free(array); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_intspan() { - var _result = _meos_a.rtree_create_intspan(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_bigintspan() { - var _result = _meos_a.rtree_create_bigintspan(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_floatspan() { - var _result = _meos_a.rtree_create_floatspan(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_datespan() { - var _result = _meos_a.rtree_create_datespan(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_tstzspan() { - var _result = _meos_a.rtree_create_tstzspan(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_tbox() { - var _result = _meos_a.rtree_create_tbox(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer rtree_create_stbox() { - var _result = _meos_a.rtree_create_stbox(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void rtree_free(Pointer rtree) { - _meos_a.rtree_free(rtree); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void rtree_insert(Pointer rtree, Pointer box, int id) { - _meos_a.rtree_insert(rtree, box, id); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void rtree_insert_temporal(Pointer rtree, Pointer temp, int id) { - _meos_a.rtree_insert_temporal(rtree, temp, id); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int rtree_search(Pointer rtree, int op, Pointer query, Pointer result) { - var _result = _meos_a.rtree_search(rtree, op, query, result); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int rtree_search_temporal(Pointer rtree, int op, Pointer temp, Pointer result) { - var _result = _meos_a.rtree_search_temporal(rtree, op, temp, result); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_error(int errlevel, int errcode, String format) { - _meos_a.meos_error(errlevel, errcode, format); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int meos_errno() { - var _result = _meos_a.meos_errno(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int meos_errno_set(int err) { - var _result = _meos_a.meos_errno_set(err); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int meos_errno_restore(int err) { - var _result = _meos_a.meos_errno_restore(err); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int meos_errno_reset() { - var _result = _meos_a.meos_errno_reset(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_initialize_timezone(String name) { - _meos_a.meos_initialize_timezone(name); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_initialize_error_handler(error_handler_fn err_handler) { - _meos_a.meos_initialize_error_handler(err_handler); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_finalize_timezone() { - _meos_a.meos_finalize_timezone(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_finalize_projsrs() { - _meos_a.meos_finalize_projsrs(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_finalize_ways() { - _meos_a.meos_finalize_ways(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static boolean meos_set_datestyle(String newval, Pointer extra) { - var _result = _meos_a.meos_set_datestyle(newval, extra); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean meos_set_intervalstyle(String newval, int extra) { - var _result = _meos_a.meos_set_intervalstyle(newval, extra); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String meos_get_datestyle() { - var _result = _meos_a.meos_get_datestyle(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String meos_get_intervalstyle() { - var _result = _meos_a.meos_get_intervalstyle(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_set_spatial_ref_sys_csv(String path) { - _meos_a.meos_set_spatial_ref_sys_csv(path); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_initialize() { - _meos_a.meos_initialize(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void meos_finalize() { - _meos_a.meos_finalize(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int add_date_int(int d, int days) { - var _result = _meos_a.add_date_int(d, days); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_interval_interval(Pointer interv1, Pointer interv2) { - var _result = _meos_a.add_interval_interval(interv1, interv2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime add_timestamptz_interval(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.add_timestamptz_interval(t_new, interv); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static boolean bool_in(String str) { - var _result = _meos_a.bool_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String bool_out(boolean b) { - var _result = _meos_a.bool_out(b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cstring2text(String str) { - var _result = _meos_a.cstring2text(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static LocalDateTime date_to_timestamp(int dateVal) { - var _result = _meos_a.date_to_timestamp(dateVal); - MeosErrorHandler.checkError(); - return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static OffsetDateTime date_to_timestamptz(int d) { - var _result = _meos_a.date_to_timestamptz(d); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static double float_exp(double d) { - var _result = _meos_a.float_exp(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_ln(double d) { - var _result = _meos_a.float_ln(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_log10(double d) { - var _result = _meos_a.float_log10(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String float8_out(double d, int maxdd) { - var _result = _meos_a.float8_out(d, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_round(double d, int maxdd) { - var _result = _meos_a.float_round(d, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int int32_cmp(int l, int r) { - var _result = _meos_a.int32_cmp(l, r); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int int64_cmp(long l, long r) { - var _result = _meos_a.int64_cmp(l, r); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer interval_make(int years, int months, int weeks, int days, int hours, int mins, double secs) { - var _result = _meos_a.interval_make(years, months, weeks, days, hours, mins, secs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int minus_date_date(int d1, int d2) { - var _result = _meos_a.minus_date_date(d1, d2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int minus_date_int(int d, int days) { - var _result = _meos_a.minus_date_int(d, days); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime minus_timestamptz_interval(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_interval(t_new, interv); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer minus_timestamptz_timestamptz(OffsetDateTime t1, OffsetDateTime t2) { - var t1_new = t1.toEpochSecond(); - var t2_new = t2.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_timestamptz(t1_new, t2_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_interval_double(Pointer interv, double factor) { - var _result = _meos_a.mul_interval_double(interv, factor); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int pg_date_in(String str) { - var _result = _meos_a.pg_date_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pg_date_out(int d) { - var _result = _meos_a.pg_date_out(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int pg_interval_cmp(Pointer interv1, Pointer interv2) { - var _result = _meos_a.pg_interval_cmp(interv1, interv2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pg_interval_in(String str, int typmod) { - var _result = _meos_a.pg_interval_in(str, typmod); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pg_interval_out(Pointer interv) { - var _result = _meos_a.pg_interval_out(interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static LocalDateTime pg_timestamp_in(String str, int typmod) { - var _result = _meos_a.pg_timestamp_in(str, typmod); - MeosErrorHandler.checkError(); - return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static String pg_timestamp_out(LocalDateTime t) { - var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); - var _result = _meos_a.pg_timestamp_out(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime pg_timestamptz_in(String str, int typmod) { - var _result = _meos_a.pg_timestamptz_in(str, typmod); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static String pg_timestamptz_out(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.pg_timestamptz_out(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String text2cstring(Pointer txt) { - var _result = _meos_a.text2cstring(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int text_cmp(Pointer txt1, Pointer txt2) { - var _result = _meos_a.text_cmp(txt1, txt2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_copy(Pointer txt) { - var _result = _meos_a.text_copy(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_in(String str) { - var _result = _meos_a.text_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_initcap(Pointer txt) { - var _result = _meos_a.text_initcap(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_lower(Pointer txt) { - var _result = _meos_a.text_lower(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String text_out(Pointer txt) { - var _result = _meos_a.text_out(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_upper(Pointer txt) { - var _result = _meos_a.text_upper(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_text_text(Pointer txt1, Pointer txt2) { - var _result = _meos_a.textcat_text_text(txt1, txt2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_shift(OffsetDateTime t, Pointer interv) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_shift(t_new, interv); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static int timestamp_to_date(LocalDateTime t) { - var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); - var _result = _meos_a.timestamp_to_date(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int timestamptz_to_date(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_date(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintset_in(String str) { - var _result = _meos_a.bigintset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String bigintset_out(Pointer set) { - var _result = _meos_a.bigintset_out(set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_expand(Pointer s, long value) { - var _result = _meos_a.bigintspan_expand(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_in(String str) { - var _result = _meos_a.bigintspan_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String bigintspan_out(Pointer s) { - var _result = _meos_a.bigintspan_out(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspanset_in(String str) { - var _result = _meos_a.bigintspanset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String bigintspanset_out(Pointer ss) { - var _result = _meos_a.bigintspanset_out(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer dateset_in(String str) { - var _result = _meos_a.dateset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String dateset_out(Pointer s) { - var _result = _meos_a.dateset_out(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_in(String str) { - var _result = _meos_a.datespan_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String datespan_out(Pointer s) { - var _result = _meos_a.datespan_out(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_in(String str) { - var _result = _meos_a.datespanset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String datespanset_out(Pointer ss) { - var _result = _meos_a.datespanset_out(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_in(String str) { - var _result = _meos_a.floatset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String floatset_out(Pointer set, int maxdd) { - var _result = _meos_a.floatset_out(set, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_expand(Pointer s, double value) { - var _result = _meos_a.floatspan_expand(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_in(String str) { - var _result = _meos_a.floatspan_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String floatspan_out(Pointer s, int maxdd) { - var _result = _meos_a.floatspan_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_in(String str) { - var _result = _meos_a.floatspanset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String floatspanset_out(Pointer ss, int maxdd) { - var _result = _meos_a.floatspanset_out(ss, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intset_in(String str) { - var _result = _meos_a.intset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String intset_out(Pointer set) { - var _result = _meos_a.intset_out(set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_expand(Pointer s, int value) { - var _result = _meos_a.intspan_expand(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_in(String str) { - var _result = _meos_a.intspan_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String intspan_out(Pointer s) { - var _result = _meos_a.intspan_out(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspanset_in(String str) { - var _result = _meos_a.intspanset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String intspanset_out(Pointer ss) { - var _result = _meos_a.intspanset_out(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String set_as_hexwkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.set_as_hexwkb(s, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_as_wkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.set_as_wkb(s, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_from_hexwkb(String hexwkb) { - var _result = _meos_a.set_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.set_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String span_as_hexwkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.span_as_hexwkb(s, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_as_wkb(Pointer s, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.span_as_wkb(s, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_from_hexwkb(String hexwkb) { - var _result = _meos_a.span_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.span_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String spanset_as_hexwkb(Pointer ss, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.spanset_as_hexwkb(ss, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_as_wkb(Pointer ss, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.spanset_as_wkb(ss, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_from_hexwkb(String hexwkb) { - var _result = _meos_a.spanset_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.spanset_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_in(String str) { - var _result = _meos_a.textset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String textset_out(Pointer set) { - var _result = _meos_a.textset_out(set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_in(String str) { - var _result = _meos_a.tstzset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tstzset_out(Pointer set) { - var _result = _meos_a.tstzset_out(set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_in(String str) { - var _result = _meos_a.tstzspan_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tstzspan_out(Pointer s) { - var _result = _meos_a.tstzspan_out(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_in(String str) { - var _result = _meos_a.tstzspanset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tstzspanset_out(Pointer ss) { - var _result = _meos_a.tstzspanset_out(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintset_make(Pointer values, int count) { - var _result = _meos_a.bigintset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_make(long lower, long upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.bigintspan_make(lower, upper, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer dateset_make(Pointer values, int count) { - var _result = _meos_a.dateset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.datespan_make(lower, upper, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_make(Pointer values, int count) { - var _result = _meos_a.floatset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_make(double lower, double upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.floatspan_make(lower, upper, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intset_make(Pointer values, int count) { - var _result = _meos_a.intset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_make(int lower, int upper, boolean lower_inc, boolean upper_inc) { - var _result = _meos_a.intspan_make(lower, upper, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_copy(Pointer s) { - var _result = _meos_a.set_copy(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_copy(Pointer s) { - var _result = _meos_a.span_copy(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_copy(Pointer ss) { - var _result = _meos_a.spanset_copy(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_make(Pointer spans, int count) { - var _result = _meos_a.spanset_make(spans, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_make(Pointer values, int count) { - var _result = _meos_a.textset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_make(Pointer values, int count) { - var _result = _meos_a.tstzset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_make(OffsetDateTime lower, OffsetDateTime upper, boolean lower_inc, boolean upper_inc) { - var lower_new = lower.toEpochSecond(); - var upper_new = upper.toEpochSecond(); - var _result = _meos_a.tstzspan_make(lower_new, upper_new, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigint_to_set(long i) { - var _result = _meos_a.bigint_to_set(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigint_to_span(long i) { - var _result = _meos_a.bigint_to_span(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigint_to_spanset(long i) { - var _result = _meos_a.bigint_to_spanset(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_to_intspan(Pointer s) { - var _result = _meos_a.bigintspan_to_intspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_to_floatspan(Pointer s) { - var _result = _meos_a.bigintspan_to_floatspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer date_to_set(int d) { - var _result = _meos_a.date_to_set(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer date_to_span(int d) { - var _result = _meos_a.date_to_span(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer date_to_spanset(int d) { - var _result = _meos_a.date_to_spanset(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer dateset_to_tstzset(Pointer s) { - var _result = _meos_a.dateset_to_tstzset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_to_tstzspan(Pointer s) { - var _result = _meos_a.datespan_to_tstzspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_to_tstzspanset(Pointer ss) { - var _result = _meos_a.datespanset_to_tstzspanset(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_to_set(double d) { - var _result = _meos_a.float_to_set(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_to_span(double d) { - var _result = _meos_a.float_to_span(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_to_spanset(double d) { - var _result = _meos_a.float_to_spanset(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_to_intset(Pointer s) { - var _result = _meos_a.floatset_to_intset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_to_bigintspan(Pointer s) { - var _result = _meos_a.floatspan_to_bigintspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_to_intspan(Pointer s) { - var _result = _meos_a.floatspan_to_intspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_to_intspanset(Pointer ss) { - var _result = _meos_a.floatspanset_to_intspanset(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_to_set(int i) { - var _result = _meos_a.int_to_set(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_to_span(int i) { - var _result = _meos_a.int_to_span(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_to_spanset(int i) { - var _result = _meos_a.int_to_spanset(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intset_to_floatset(Pointer s) { - var _result = _meos_a.intset_to_floatset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_to_bigintspan(Pointer s) { - var _result = _meos_a.intspan_to_bigintspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_to_floatspan(Pointer s) { - var _result = _meos_a.intspan_to_floatspan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspanset_to_floatspanset(Pointer ss) { - var _result = _meos_a.intspanset_to_floatspanset(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_to_span(Pointer s) { - var _result = _meos_a.set_to_span(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_to_spanset(Pointer s) { - var _result = _meos_a.set_to_spanset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_to_spanset(Pointer s) { - var _result = _meos_a.span_to_spanset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_to_set(Pointer txt) { - var _result = _meos_a.text_to_set(txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_to_set(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_set(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_to_span(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_span(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_to_spanset(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_spanset(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_to_dateset(Pointer s) { - var _result = _meos_a.tstzset_to_dateset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_to_datespan(Pointer s) { - var _result = _meos_a.tstzspan_to_datespan(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_to_datespanset(Pointer ss) { - var _result = _meos_a.tstzspanset_to_datespanset(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintset_end_value(Pointer s) { - var _result = _meos_a.bigintset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintset_start_value(Pointer s) { - var _result = _meos_a.bigintset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.bigintset_value_n(s, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer bigintset_values(Pointer s) { - var _result = _meos_a.bigintset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspan_lower(Pointer s) { - var _result = _meos_a.bigintspan_lower(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspan_upper(Pointer s) { - var _result = _meos_a.bigintspan_upper(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspan_width(Pointer s) { - var _result = _meos_a.bigintspan_width(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspanset_lower(Pointer ss) { - var _result = _meos_a.bigintspanset_lower(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspanset_upper(Pointer ss) { - var _result = _meos_a.bigintspanset_upper(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigintspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.bigintspanset_width(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int dateset_end_value(Pointer s) { - var _result = _meos_a.dateset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int dateset_start_value(Pointer s) { - var _result = _meos_a.dateset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer dateset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.dateset_value_n(s, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer dateset_values(Pointer s) { - var _result = _meos_a.dateset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_duration(Pointer s) { - var _result = _meos_a.datespan_duration(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datespan_lower(Pointer s) { - var _result = _meos_a.datespan_lower(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datespan_upper(Pointer s) { - var _result = _meos_a.datespan_upper(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_date_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.datespanset_date_n(ss, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_dates(Pointer ss) { - var _result = _meos_a.datespanset_dates(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_duration(Pointer ss, boolean boundspan) { - var _result = _meos_a.datespanset_duration(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datespanset_end_date(Pointer ss) { - var _result = _meos_a.datespanset_end_date(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datespanset_num_dates(Pointer ss) { - var _result = _meos_a.datespanset_num_dates(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datespanset_start_date(Pointer ss) { - var _result = _meos_a.datespanset_start_date(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatset_end_value(Pointer s) { - var _result = _meos_a.floatset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatset_start_value(Pointer s) { - var _result = _meos_a.floatset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_a.floatset_value_n(s, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer floatset_values(Pointer s) { - var _result = _meos_a.floatset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspan_lower(Pointer s) { - var _result = _meos_a.floatspan_lower(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspan_upper(Pointer s) { - var _result = _meos_a.floatspan_upper(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspan_width(Pointer s) { - var _result = _meos_a.floatspan_width(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspanset_lower(Pointer ss) { - var _result = _meos_a.floatspanset_lower(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspanset_upper(Pointer ss) { - var _result = _meos_a.floatspanset_upper(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double floatspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.floatspanset_width(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intset_end_value(Pointer s) { - var _result = _meos_a.intset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intset_start_value(Pointer s) { - var _result = _meos_a.intset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_a.intset_value_n(s, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer intset_values(Pointer s) { - var _result = _meos_a.intset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspan_lower(Pointer s) { - var _result = _meos_a.intspan_lower(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspan_upper(Pointer s) { - var _result = _meos_a.intspan_upper(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspan_width(Pointer s) { - var _result = _meos_a.intspan_width(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspanset_lower(Pointer ss) { - var _result = _meos_a.intspanset_lower(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspanset_upper(Pointer ss) { - var _result = _meos_a.intspanset_upper(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_a.intspanset_width(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int set_hash(Pointer s) { - var _result = _meos_a.set_hash(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long set_hash_extended(Pointer s, long seed) { - var _result = _meos_a.set_hash_extended(s, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int set_num_values(Pointer s) { - var _result = _meos_a.set_num_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int span_hash(Pointer s) { - var _result = _meos_a.span_hash(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long span_hash_extended(Pointer s, long seed) { - var _result = _meos_a.span_hash_extended(s, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_lower_inc(Pointer s) { - var _result = _meos_a.span_lower_inc(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_upper_inc(Pointer s) { - var _result = _meos_a.span_upper_inc(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_end_span(Pointer ss) { - var _result = _meos_a.spanset_end_span(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_hash(Pointer ss) { - var _result = _meos_a.spanset_hash(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long spanset_hash_extended(Pointer ss, long seed) { - var _result = _meos_a.spanset_hash_extended(ss, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_lower_inc(Pointer ss) { - var _result = _meos_a.spanset_lower_inc(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_num_spans(Pointer ss) { - var _result = _meos_a.spanset_num_spans(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_span(Pointer ss) { - var _result = _meos_a.spanset_span(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_span_n(Pointer ss, int i) { - var _result = _meos_a.spanset_span_n(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_spanarr(Pointer ss) { - var _result = _meos_a.spanset_spanarr(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_start_span(Pointer ss) { - var _result = _meos_a.spanset_start_span(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_upper_inc(Pointer ss) { - var _result = _meos_a.spanset_upper_inc(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_end_value(Pointer s) { - var _result = _meos_a.textset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_start_value(Pointer s) { - var _result = _meos_a.textset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.textset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer textset_values(Pointer s) { - var _result = _meos_a.textset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzset_end_value(Pointer s) { - var _result = _meos_a.tstzset_end_value(s); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzset_start_value(Pointer s) { - var _result = _meos_a.tstzset_start_value(s); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tstzset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.tstzset_value_n(s, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_values(Pointer s) { - var _result = _meos_a.tstzset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_duration(Pointer s) { - var _result = _meos_a.tstzspan_duration(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspan_lower(Pointer s) { - var _result = _meos_a.tstzspan_lower(s); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspan_upper(Pointer s) { - var _result = _meos_a.tstzspan_upper(s); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_duration(Pointer ss, boolean boundspan) { - var _result = _meos_a.tstzspanset_duration(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_end_timestamptz(Pointer ss) { - var _result = _meos_a.tstzspanset_end_timestamptz(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_lower(Pointer ss) { - var _result = _meos_a.tstzspanset_lower(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static int tstzspanset_num_timestamps(Pointer ss) { - var _result = _meos_a.tstzspanset_num_timestamps(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_start_timestamptz(Pointer ss) { - var _result = _meos_a.tstzspanset_start_timestamptz(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_timestamps(Pointer ss) { - var _result = _meos_a.tstzspanset_timestamps(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_timestamptz_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_a.tstzspanset_timestamptz_n(ss, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tstzspanset_upper(Pointer ss) { - var _result = _meos_a.tstzspanset_upper(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer bigintset_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintset_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_shift_scale(Pointer s, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintspan_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspanset_shift_scale(Pointer ss, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.bigintspanset_shift_scale(ss, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer dateset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.dateset_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.datespan_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.datespanset_shift_scale(ss, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_ceil(Pointer s) { - var _result = _meos_a.floatset_ceil(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_degrees(Pointer s, boolean normalize) { - var _result = _meos_a.floatset_degrees(s, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_floor(Pointer s) { - var _result = _meos_a.floatset_floor(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_radians(Pointer s) { - var _result = _meos_a.floatset_radians(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatset_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatset_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_ceil(Pointer s) { - var _result = _meos_a.floatspan_ceil(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_degrees(Pointer s, boolean normalize) { - var _result = _meos_a.floatspan_degrees(s, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_floor(Pointer s) { - var _result = _meos_a.floatspan_floor(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_radians(Pointer s) { - var _result = _meos_a.floatspan_radians(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_round(Pointer s, int maxdd) { - var _result = _meos_a.floatspan_round(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_shift_scale(Pointer s, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatspan_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_ceil(Pointer ss) { - var _result = _meos_a.floatspanset_ceil(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_floor(Pointer ss) { - var _result = _meos_a.floatspanset_floor(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_degrees(Pointer ss, boolean normalize) { - var _result = _meos_a.floatspanset_degrees(ss, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_radians(Pointer ss) { - var _result = _meos_a.floatspanset_radians(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_round(Pointer ss, int maxdd) { - var _result = _meos_a.floatspanset_round(ss, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_shift_scale(Pointer ss, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.floatspanset_shift_scale(ss, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intset_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intset_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_shift_scale(Pointer s, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intspan_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspanset_shift_scale(Pointer ss, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_a.intspanset_shift_scale(ss, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_expand(Pointer s, Pointer interv) { - var _result = _meos_a.tstzspan_expand(s, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_round(Pointer s, int maxdd) { - var _result = _meos_a.set_round(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_text_textset(Pointer txt, Pointer s) { - var _result = _meos_a.textcat_text_textset(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_textset_text(Pointer s, Pointer txt) { - var _result = _meos_a.textcat_textset_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_initcap(Pointer s) { - var _result = _meos_a.textset_initcap(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_lower(Pointer s) { - var _result = _meos_a.textset_lower(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textset_upper(Pointer s) { - var _result = _meos_a.textset_upper(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_tprecision(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.timestamptz_tprecision(t_new, duration, torigin_new); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tstzset_shift_scale(Pointer s, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzset_shift_scale(s, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzset_tprecision(s, duration, torigin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_shift_scale(Pointer s, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzspan_shift_scale(s, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_tprecision(Pointer s, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzspan_tprecision(s, duration, torigin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_shift_scale(Pointer ss, Pointer shift, Pointer duration) { - var _result = _meos_a.tstzspanset_shift_scale(ss, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_tprecision(Pointer ss, Pointer duration, OffsetDateTime torigin) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzspanset_tprecision(ss, duration, torigin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int set_cmp(Pointer s1, Pointer s2) { - var _result = _meos_a.set_cmp(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_eq(Pointer s1, Pointer s2) { - var _result = _meos_a.set_eq(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_ge(Pointer s1, Pointer s2) { - var _result = _meos_a.set_ge(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_gt(Pointer s1, Pointer s2) { - var _result = _meos_a.set_gt(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_le(Pointer s1, Pointer s2) { - var _result = _meos_a.set_le(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_lt(Pointer s1, Pointer s2) { - var _result = _meos_a.set_lt(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean set_ne(Pointer s1, Pointer s2) { - var _result = _meos_a.set_ne(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int span_cmp(Pointer s1, Pointer s2) { - var _result = _meos_a.span_cmp(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_eq(Pointer s1, Pointer s2) { - var _result = _meos_a.span_eq(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_ge(Pointer s1, Pointer s2) { - var _result = _meos_a.span_ge(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_gt(Pointer s1, Pointer s2) { - var _result = _meos_a.span_gt(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_le(Pointer s1, Pointer s2) { - var _result = _meos_a.span_le(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_lt(Pointer s1, Pointer s2) { - var _result = _meos_a.span_lt(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean span_ne(Pointer s1, Pointer s2) { - var _result = _meos_a.span_ne(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_cmp(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_cmp(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_eq(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_eq(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_ge(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_ge(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_gt(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_gt(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_le(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_le(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_lt(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_lt(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spanset_ne(Pointer ss1, Pointer ss2) { - var _result = _meos_a.spanset_ne(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_spans(Pointer s) { - var _result = _meos_a.set_spans(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_split_each_n_spans(Pointer s, int elems_per_span, Pointer count) { - var _result = _meos_a.set_split_each_n_spans(s, elems_per_span, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_split_n_spans(Pointer s, int span_count, Pointer count) { - var _result = _meos_a.set_split_n_spans(s, span_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_spans(Pointer ss) { - var _result = _meos_a.spanset_spans(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_split_each_n_spans(Pointer ss, int elems_per_span, Pointer count) { - var _result = _meos_a.spanset_split_each_n_spans(ss, elems_per_span, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_split_n_spans(Pointer ss, int span_count, Pointer count) { - var _result = _meos_a.spanset_split_n_spans(ss, span_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_bigint(Pointer s, long i) { - var _result = _meos_a.adjacent_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_date(Pointer s, int d) { - var _result = _meos_a.adjacent_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_float(Pointer s, double d) { - var _result = _meos_a.adjacent_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_int(Pointer s, int i) { - var _result = _meos_a.adjacent_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.adjacent_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.adjacent_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.adjacent_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.adjacent_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_date(Pointer ss, int d) { - var _result = _meos_a.adjacent_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_float(Pointer ss, double d) { - var _result = _meos_a.adjacent_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_int(Pointer ss, int i) { - var _result = _meos_a.adjacent_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.adjacent_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.adjacent_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.adjacent_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_bigint_set(long i, Pointer s) { - var _result = _meos_a.contained_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_bigint_span(long i, Pointer s) { - var _result = _meos_a.contained_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.contained_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_date_set(int d, Pointer s) { - var _result = _meos_a.contained_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_date_span(int d, Pointer s) { - var _result = _meos_a.contained_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_date_spanset(int d, Pointer ss) { - var _result = _meos_a.contained_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_float_set(double d, Pointer s) { - var _result = _meos_a.contained_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_float_span(double d, Pointer s) { - var _result = _meos_a.contained_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_float_spanset(double d, Pointer ss) { - var _result = _meos_a.contained_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_int_set(int i, Pointer s) { - var _result = _meos_a.contained_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_int_span(int i, Pointer s) { - var _result = _meos_a.contained_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_int_spanset(int i, Pointer ss) { - var _result = _meos_a.contained_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.contained_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.contained_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.contained_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.contained_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.contained_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.contained_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contained_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_bigint(Pointer s, long i) { - var _result = _meos_a.contains_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_date(Pointer s, int d) { - var _result = _meos_a.contains_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_float(Pointer s, double d) { - var _result = _meos_a.contains_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_int(Pointer s, int i) { - var _result = _meos_a.contains_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.contains_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_text(Pointer s, Pointer t) { - var _result = _meos_a.contains_set_text(s, t); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_bigint(Pointer s, long i) { - var _result = _meos_a.contains_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_date(Pointer s, int d) { - var _result = _meos_a.contains_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_float(Pointer s, double d) { - var _result = _meos_a.contains_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_int(Pointer s, int i) { - var _result = _meos_a.contains_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.contains_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.contains_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.contains_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_date(Pointer ss, int d) { - var _result = _meos_a.contains_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_float(Pointer ss, double d) { - var _result = _meos_a.contains_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_int(Pointer ss, int i) { - var _result = _meos_a.contains_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.contains_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.contains_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.contains_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.overlaps_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.overlaps_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.overlaps_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.overlaps_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.overlaps_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_date_set(int d, Pointer s) { - var _result = _meos_a.after_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_date_span(int d, Pointer s) { - var _result = _meos_a.after_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_date_spanset(int d, Pointer ss) { - var _result = _meos_a.after_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_set_date(Pointer s, int d) { - var _result = _meos_a.after_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_span_date(Pointer s, int d) { - var _result = _meos_a.after_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_spanset_date(Pointer ss, int d) { - var _result = _meos_a.after_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.after_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_date_set(int d, Pointer s) { - var _result = _meos_a.before_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_date_span(int d, Pointer s) { - var _result = _meos_a.before_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_date_spanset(int d, Pointer ss) { - var _result = _meos_a.before_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_set_date(Pointer s, int d) { - var _result = _meos_a.before_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_span_date(Pointer s, int d) { - var _result = _meos_a.before_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_spanset_date(Pointer ss, int d) { - var _result = _meos_a.before_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.before_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_bigint_set(long i, Pointer s) { - var _result = _meos_a.left_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_bigint_span(long i, Pointer s) { - var _result = _meos_a.left_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.left_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_float_set(double d, Pointer s) { - var _result = _meos_a.left_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_float_span(double d, Pointer s) { - var _result = _meos_a.left_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_float_spanset(double d, Pointer ss) { - var _result = _meos_a.left_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_int_set(int i, Pointer s) { - var _result = _meos_a.left_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_int_span(int i, Pointer s) { - var _result = _meos_a.left_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_int_spanset(int i, Pointer ss) { - var _result = _meos_a.left_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_bigint(Pointer s, long i) { - var _result = _meos_a.left_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_float(Pointer s, double d) { - var _result = _meos_a.left_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_int(Pointer s, int i) { - var _result = _meos_a.left_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.left_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.left_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_bigint(Pointer s, long i) { - var _result = _meos_a.left_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_float(Pointer s, double d) { - var _result = _meos_a.left_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_int(Pointer s, int i) { - var _result = _meos_a.left_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.left_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.left_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.left_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_float(Pointer ss, double d) { - var _result = _meos_a.left_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_int(Pointer ss, int i) { - var _result = _meos_a.left_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.left_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.left_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.left_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_date_set(int d, Pointer s) { - var _result = _meos_a.overafter_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_date_span(int d, Pointer s) { - var _result = _meos_a.overafter_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_date_spanset(int d, Pointer ss) { - var _result = _meos_a.overafter_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_set_date(Pointer s, int d) { - var _result = _meos_a.overafter_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_span_date(Pointer s, int d) { - var _result = _meos_a.overafter_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_spanset_date(Pointer ss, int d) { - var _result = _meos_a.overafter_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overafter_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_date_set(int d, Pointer s) { - var _result = _meos_a.overbefore_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_date_span(int d, Pointer s) { - var _result = _meos_a.overbefore_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_date_spanset(int d, Pointer ss) { - var _result = _meos_a.overbefore_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_set_date(Pointer s, int d) { - var _result = _meos_a.overbefore_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_span_date(Pointer s, int d) { - var _result = _meos_a.overbefore_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_spanset_date(Pointer ss, int d) { - var _result = _meos_a.overbefore_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.overbefore_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_bigint_set(long i, Pointer s) { - var _result = _meos_a.overleft_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_bigint_span(long i, Pointer s) { - var _result = _meos_a.overleft_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.overleft_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_float_set(double d, Pointer s) { - var _result = _meos_a.overleft_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_float_span(double d, Pointer s) { - var _result = _meos_a.overleft_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_float_spanset(double d, Pointer ss) { - var _result = _meos_a.overleft_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_int_set(int i, Pointer s) { - var _result = _meos_a.overleft_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_int_span(int i, Pointer s) { - var _result = _meos_a.overleft_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_int_spanset(int i, Pointer ss) { - var _result = _meos_a.overleft_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_bigint(Pointer s, long i) { - var _result = _meos_a.overleft_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_float(Pointer s, double d) { - var _result = _meos_a.overleft_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_int(Pointer s, int i) { - var _result = _meos_a.overleft_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.overleft_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.overleft_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_bigint(Pointer s, long i) { - var _result = _meos_a.overleft_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_float(Pointer s, double d) { - var _result = _meos_a.overleft_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_int(Pointer s, int i) { - var _result = _meos_a.overleft_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.overleft_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.overleft_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.overleft_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_float(Pointer ss, double d) { - var _result = _meos_a.overleft_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_int(Pointer ss, int i) { - var _result = _meos_a.overleft_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.overleft_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.overleft_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.overleft_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_bigint_set(long i, Pointer s) { - var _result = _meos_a.overright_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_bigint_span(long i, Pointer s) { - var _result = _meos_a.overright_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.overright_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_float_set(double d, Pointer s) { - var _result = _meos_a.overright_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_float_span(double d, Pointer s) { - var _result = _meos_a.overright_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_float_spanset(double d, Pointer ss) { - var _result = _meos_a.overright_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_int_set(int i, Pointer s) { - var _result = _meos_a.overright_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_int_span(int i, Pointer s) { - var _result = _meos_a.overright_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_int_spanset(int i, Pointer ss) { - var _result = _meos_a.overright_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_bigint(Pointer s, long i) { - var _result = _meos_a.overright_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_float(Pointer s, double d) { - var _result = _meos_a.overright_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_int(Pointer s, int i) { - var _result = _meos_a.overright_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.overright_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.overright_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_bigint(Pointer s, long i) { - var _result = _meos_a.overright_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_float(Pointer s, double d) { - var _result = _meos_a.overright_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_int(Pointer s, int i) { - var _result = _meos_a.overright_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.overright_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.overright_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.overright_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_float(Pointer ss, double d) { - var _result = _meos_a.overright_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_int(Pointer ss, int i) { - var _result = _meos_a.overright_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.overright_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.overright_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.overright_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_bigint_set(long i, Pointer s) { - var _result = _meos_a.right_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_bigint_span(long i, Pointer s) { - var _result = _meos_a.right_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.right_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_float_set(double d, Pointer s) { - var _result = _meos_a.right_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_float_span(double d, Pointer s) { - var _result = _meos_a.right_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_float_spanset(double d, Pointer ss) { - var _result = _meos_a.right_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_int_set(int i, Pointer s) { - var _result = _meos_a.right_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_int_span(int i, Pointer s) { - var _result = _meos_a.right_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_int_spanset(int i, Pointer ss) { - var _result = _meos_a.right_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_bigint(Pointer s, long i) { - var _result = _meos_a.right_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_float(Pointer s, double d) { - var _result = _meos_a.right_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_int(Pointer s, int i) { - var _result = _meos_a.right_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.right_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.right_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_bigint(Pointer s, long i) { - var _result = _meos_a.right_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_float(Pointer s, double d) { - var _result = _meos_a.right_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_int(Pointer s, int i) { - var _result = _meos_a.right_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.right_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.right_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.right_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_float(Pointer ss, double d) { - var _result = _meos_a.right_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_int(Pointer ss, int i) { - var _result = _meos_a.right_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.right_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.right_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.right_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_bigint_set(long i, Pointer s) { - var _result = _meos_a.intersection_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_date_set(int d, Pointer s) { - var _result = _meos_a.intersection_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_float_set(double d, Pointer s) { - var _result = _meos_a.intersection_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_int_set(int i, Pointer s) { - var _result = _meos_a.intersection_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_bigint(Pointer s, long i) { - var _result = _meos_a.intersection_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_date(Pointer s, int d) { - var _result = _meos_a.intersection_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_float(Pointer s, double d) { - var _result = _meos_a.intersection_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_int(Pointer s, int i) { - var _result = _meos_a.intersection_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.intersection_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.intersection_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.intersection_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_bigint(Pointer s, long i) { - var _result = _meos_a.intersection_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_date(Pointer s, int d) { - var _result = _meos_a.intersection_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_float(Pointer s, double d) { - var _result = _meos_a.intersection_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_int(Pointer s, int i) { - var _result = _meos_a.intersection_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.intersection_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.intersection_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.intersection_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.intersection_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_date(Pointer ss, int d) { - var _result = _meos_a.intersection_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_float(Pointer ss, double d) { - var _result = _meos_a.intersection_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_int(Pointer ss, int i) { - var _result = _meos_a.intersection_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.intersection_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.intersection_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.intersection_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.intersection_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.intersection_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_bigint_set(long i, Pointer s) { - var _result = _meos_a.minus_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_bigint_span(long i, Pointer s) { - var _result = _meos_a.minus_bigint_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.minus_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_date_set(int d, Pointer s) { - var _result = _meos_a.minus_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_date_span(int d, Pointer s) { - var _result = _meos_a.minus_date_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_date_spanset(int d, Pointer ss) { - var _result = _meos_a.minus_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_float_set(double d, Pointer s) { - var _result = _meos_a.minus_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_float_span(double d, Pointer s) { - var _result = _meos_a.minus_float_span(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_float_spanset(double d, Pointer ss) { - var _result = _meos_a.minus_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_int_set(int i, Pointer s) { - var _result = _meos_a.minus_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_int_span(int i, Pointer s) { - var _result = _meos_a.minus_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_int_spanset(int i, Pointer ss) { - var _result = _meos_a.minus_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_bigint(Pointer s, long i) { - var _result = _meos_a.minus_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_date(Pointer s, int d) { - var _result = _meos_a.minus_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_float(Pointer s, double d) { - var _result = _meos_a.minus_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_int(Pointer s, int i) { - var _result = _meos_a.minus_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.minus_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.minus_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_bigint(Pointer s, long i) { - var _result = _meos_a.minus_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_date(Pointer s, int d) { - var _result = _meos_a.minus_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_float(Pointer s, double d) { - var _result = _meos_a.minus_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_int(Pointer s, int i) { - var _result = _meos_a.minus_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.minus_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.minus_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.minus_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_date(Pointer ss, int d) { - var _result = _meos_a.minus_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_float(Pointer ss, double d) { - var _result = _meos_a.minus_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_int(Pointer ss, int i) { - var _result = _meos_a.minus_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.minus_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.minus_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.minus_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.minus_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_bigint_set(long i, Pointer s) { - var _result = _meos_a.union_bigint_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_bigint_span(Pointer s, long i) { - var _result = _meos_a.union_bigint_span(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_bigint_spanset(long i, Pointer ss) { - var _result = _meos_a.union_bigint_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_date_set(int d, Pointer s) { - var _result = _meos_a.union_date_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_date_span(Pointer s, int d) { - var _result = _meos_a.union_date_span(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_date_spanset(int d, Pointer ss) { - var _result = _meos_a.union_date_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_float_set(double d, Pointer s) { - var _result = _meos_a.union_float_set(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_float_span(Pointer s, double d) { - var _result = _meos_a.union_float_span(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_float_spanset(double d, Pointer ss) { - var _result = _meos_a.union_float_spanset(d, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_int_set(int i, Pointer s) { - var _result = _meos_a.union_int_set(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_int_span(int i, Pointer s) { - var _result = _meos_a.union_int_span(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_int_spanset(int i, Pointer ss) { - var _result = _meos_a.union_int_spanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_bigint(Pointer s, long i) { - var _result = _meos_a.union_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_date(Pointer s, int d) { - var _result = _meos_a.union_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_float(Pointer s, double d) { - var _result = _meos_a.union_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_int(Pointer s, int i) { - var _result = _meos_a.union_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_set(Pointer s1, Pointer s2) { - var _result = _meos_a.union_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_text(Pointer s, Pointer txt) { - var _result = _meos_a.union_set_text(s, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_bigint(Pointer s, long i) { - var _result = _meos_a.union_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_date(Pointer s, int d) { - var _result = _meos_a.union_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_float(Pointer s, double d) { - var _result = _meos_a.union_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_int(Pointer s, int i) { - var _result = _meos_a.union_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_span(Pointer s1, Pointer s2) { - var _result = _meos_a.union_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_spanset(Pointer s, Pointer ss) { - var _result = _meos_a.union_span_spanset(s, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.union_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_date(Pointer ss, int d) { - var _result = _meos_a.union_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_float(Pointer ss, double d) { - var _result = _meos_a.union_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_int(Pointer ss, int i) { - var _result = _meos_a.union_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_a.union_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.union_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_text_set(Pointer txt, Pointer s) { - var _result = _meos_a.union_text_set(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_timestamptz_set(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_timestamptz_set(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_timestamptz_span(OffsetDateTime t, Pointer s) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_timestamptz_span(t_new, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_timestamptz_spanset(OffsetDateTime t, Pointer ss) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.union_timestamptz_spanset(t_new, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_bigintset_bigintset(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_bigintset_bigintset(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_bigintspan_bigintspan(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_bigintspan_bigintspan(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_bigintspanset_bigintspan(Pointer ss, Pointer s) { - var _result = _meos_a.distance_bigintspanset_bigintspan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_bigintspanset_bigintspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.distance_bigintspanset_bigintspanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_dateset_dateset(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_dateset_dateset(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_datespan_datespan(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_datespan_datespan(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_datespanset_datespan(Pointer ss, Pointer s) { - var _result = _meos_a.distance_datespanset_datespan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_datespanset_datespanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.distance_datespanset_datespanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_floatset_floatset(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_floatset_floatset(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_floatspan_floatspan(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_floatspan_floatspan(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_floatspanset_floatspan(Pointer ss, Pointer s) { - var _result = _meos_a.distance_floatspanset_floatspan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_floatspanset_floatspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.distance_floatspanset_floatspanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_intset_intset(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_intset_intset(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_intspan_intspan(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_intspan_intspan(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_intspanset_intspan(Pointer ss, Pointer s) { - var _result = _meos_a.distance_intspanset_intspan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_intspanset_intspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.distance_intspanset_intspanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_set_bigint(Pointer s, long i) { - var _result = _meos_a.distance_set_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_set_date(Pointer s, int d) { - var _result = _meos_a.distance_set_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_set_float(Pointer s, double d) { - var _result = _meos_a.distance_set_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_set_int(Pointer s, int i) { - var _result = _meos_a.distance_set_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_set_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.distance_set_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_span_bigint(Pointer s, long i) { - var _result = _meos_a.distance_span_bigint(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_span_date(Pointer s, int d) { - var _result = _meos_a.distance_span_date(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_span_float(Pointer s, double d) { - var _result = _meos_a.distance_span_float(s, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_span_int(Pointer s, int i) { - var _result = _meos_a.distance_span_int(s, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_span_timestamptz(Pointer s, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.distance_span_timestamptz(s, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long distance_spanset_bigint(Pointer ss, long i) { - var _result = _meos_a.distance_spanset_bigint(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_spanset_date(Pointer ss, int d) { - var _result = _meos_a.distance_spanset_date(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_spanset_float(Pointer ss, double d) { - var _result = _meos_a.distance_spanset_float(ss, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_spanset_int(Pointer ss, int i) { - var _result = _meos_a.distance_spanset_int(ss, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_spanset_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.distance_spanset_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_tstzset_tstzset(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_tstzset_tstzset(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_tstzspan_tstzspan(Pointer s1, Pointer s2) { - var _result = _meos_a.distance_tstzspan_tstzspan(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_tstzspanset_tstzspan(Pointer ss, Pointer s) { - var _result = _meos_a.distance_tstzspanset_tstzspan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_tstzspanset_tstzspanset(Pointer ss1, Pointer ss2) { - var _result = _meos_a.distance_tstzspanset_tstzspanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigint_extent_transfn(Pointer state, long i) { - var _result = _meos_a.bigint_extent_transfn(state, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigint_union_transfn(Pointer state, long i) { - var _result = _meos_a.bigint_union_transfn(state, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer date_extent_transfn(Pointer state, int d) { - var _result = _meos_a.date_extent_transfn(state, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer date_union_transfn(Pointer state, int d) { - var _result = _meos_a.date_union_transfn(state, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_extent_transfn(Pointer state, double d) { - var _result = _meos_a.float_extent_transfn(state, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_union_transfn(Pointer state, double d) { - var _result = _meos_a.float_union_transfn(state, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_extent_transfn(Pointer state, int i) { - var _result = _meos_a.int_extent_transfn(state, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_union_transfn(Pointer state, int i) { - var _result = _meos_a.int_union_transfn(state, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_extent_transfn(Pointer state, Pointer s) { - var _result = _meos_a.set_extent_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_union_finalfn(Pointer state) { - var _result = _meos_a.set_union_finalfn(state); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_union_transfn(Pointer state, Pointer s) { - var _result = _meos_a.set_union_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_extent_transfn(Pointer state, Pointer s) { - var _result = _meos_a.span_extent_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_union_transfn(Pointer state, Pointer s) { - var _result = _meos_a.span_union_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_extent_transfn(Pointer state, Pointer ss) { - var _result = _meos_a.spanset_extent_transfn(state, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_union_finalfn(Pointer state) { - var _result = _meos_a.spanset_union_finalfn(state); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_union_transfn(Pointer state, Pointer ss) { - var _result = _meos_a.spanset_union_transfn(state, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer text_union_transfn(Pointer state, Pointer txt) { - var _result = _meos_a.text_union_transfn(state, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_extent_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_extent_transfn(state, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_union_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_union_transfn(state, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bigint_get_bin(long value, long vsize, long vorigin) { - var _result = _meos_a.bigint_get_bin(value, vsize, vorigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspan_bins(Pointer s, long vsize, long vorigin, Pointer count) { - var _result = _meos_a.bigintspan_bins(s, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bigintspanset_bins(Pointer ss, long vsize, long vorigin, Pointer count) { - var _result = _meos_a.bigintspanset_bins(ss, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int date_get_bin(int d, Pointer duration, int torigin) { - var _result = _meos_a.date_get_bin(d, duration, torigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespan_bins(Pointer s, Pointer duration, int torigin, Pointer count) { - var _result = _meos_a.datespan_bins(s, duration, torigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer datespanset_bins(Pointer ss, Pointer duration, int torigin, Pointer count) { - var _result = _meos_a.datespanset_bins(ss, duration, torigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_get_bin(double value, double vsize, double vorigin) { - var _result = _meos_a.float_get_bin(value, vsize, vorigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspan_bins(Pointer s, double vsize, double vorigin, Pointer count) { - var _result = _meos_a.floatspan_bins(s, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer floatspanset_bins(Pointer ss, double vsize, double vorigin, Pointer count) { - var _result = _meos_a.floatspanset_bins(ss, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int int_get_bin(int value, int vsize, int vorigin) { - var _result = _meos_a.int_get_bin(value, vsize, vorigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspan_bins(Pointer s, int vsize, int vorigin, Pointer count) { - var _result = _meos_a.intspan_bins(s, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intspanset_bins(Pointer ss, int vsize, int vorigin, Pointer count) { - var _result = _meos_a.intspanset_bins(ss, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_get_bin(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.timestamptz_get_bin(t_new, duration, torigin_new); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_bins(Pointer s, Pointer duration, OffsetDateTime origin, Pointer count) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_a.tstzspan_bins(s, duration, origin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_bins(Pointer ss, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_a.tstzspanset_bins(ss, duration, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tbox_as_hexwkb(Pointer box, byte variant, Pointer size) { - var _result = _meos_a.tbox_as_hexwkb(box, variant, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_as_wkb(Pointer box, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_a.tbox_as_wkb(box, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_from_hexwkb(String hexwkb) { - var _result = _meos_a.tbox_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_from_wkb(Pointer wkb, long size) { - var _result = _meos_a.tbox_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_in(String str) { - var _result = _meos_a.tbox_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tbox_out(Pointer box, int maxdd) { - var _result = _meos_a.tbox_out(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_timestamptz_to_tbox(double d, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.float_timestamptz_to_tbox(d, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_tstzspan_to_tbox(double d, Pointer s) { - var _result = _meos_a.float_tstzspan_to_tbox(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_timestamptz_to_tbox(int i, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.int_timestamptz_to_tbox(i, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_tstzspan_to_tbox(int i, Pointer s) { - var _result = _meos_a.int_tstzspan_to_tbox(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer numspan_tstzspan_to_tbox(Pointer span, Pointer s) { - var _result = _meos_a.numspan_tstzspan_to_tbox(span, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer numspan_timestamptz_to_tbox(Pointer span, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.numspan_timestamptz_to_tbox(span, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_copy(Pointer box) { - var _result = _meos_a.tbox_copy(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_make(Pointer s, Pointer p) { - var _result = _meos_a.tbox_make(s, p); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer float_to_tbox(double d) { - var _result = _meos_a.float_to_tbox(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer int_to_tbox(int i) { - var _result = _meos_a.int_to_tbox(i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_to_tbox(Pointer s) { - var _result = _meos_a.set_to_tbox(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_to_tbox(Pointer s) { - var _result = _meos_a.span_to_tbox(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_to_tbox(Pointer ss) { - var _result = _meos_a.spanset_to_tbox(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_to_bigintspan(Pointer box) { - var _result = _meos_a.tbox_to_bigintspan(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_to_intspan(Pointer box) { - var _result = _meos_a.tbox_to_intspan(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_to_floatspan(Pointer box) { - var _result = _meos_a.tbox_to_floatspan(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_to_tstzspan(Pointer box) { - var _result = _meos_a.tbox_to_tstzspan(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_to_tbox(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_a.timestamptz_to_tbox(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tbox_hash(Pointer box) { - var _result = _meos_a.tbox_hash(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tbox_hash_extended(Pointer box, long seed) { - var _result = _meos_a.tbox_hash_extended(box, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_hast(Pointer box) { - var _result = _meos_a.tbox_hast(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_hasx(Pointer box) { - var _result = _meos_a.tbox_hasx(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_tmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.tbox_tmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_tmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_tmax_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_tmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.tbox_tmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_tmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_tmin_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tbox_xmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_xmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_xmax_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tbox_xmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbox_xmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbox_xmin_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tboxfloat_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tboxfloat_xmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tboxfloat_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tboxfloat_xmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tboxint_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_b.tboxint_xmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tboxint_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_b.tboxint_xmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbigintbox_expand(Pointer box, long i) { - var _result = _meos_b.tbigintbox_expand(box, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigintbox_shift_scale(Pointer box, long shift, long width, boolean hasshift, boolean haswidth) { - var _result = _meos_b.tbigintbox_shift_scale(box, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_expand_time(Pointer box, Pointer interv) { - var _result = _meos_b.tbox_expand_time(box, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_round(Pointer box, int maxdd) { - var _result = _meos_b.tbox_round(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { - var _result = _meos_b.tbox_shift_scale_time(box, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatbox_expand(Pointer box, double d) { - var _result = _meos_b.tfloatbox_expand(box, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatbox_shift_scale(Pointer box, double shift, double width, boolean hasshift, boolean haswidth) { - var _result = _meos_b.tfloatbox_shift_scale(box, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintbox_expand(Pointer box, int i) { - var _result = _meos_b.tintbox_expand(box, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintbox_shift_scale(Pointer box, int shift, int width, boolean hasshift, boolean haswidth) { - var _result = _meos_b.tintbox_shift_scale(box, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_tbox_tbox(Pointer box1, Pointer box2, boolean strict) { - var _result = _meos_b.union_tbox_tbox(box1, box2, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.intersection_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.adjacent_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.contained_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.contains_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overlaps_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.same_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.after_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.before_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.left_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overafter_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overbefore_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overleft_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.overright_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_b.right_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tbox_cmp(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_cmp(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_eq(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_eq(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_ge(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_ge(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_gt(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_gt(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_le(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_le(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_lt(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_lt(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbox_ne(Pointer box1, Pointer box2) { - var _result = _meos_b.tbox_ne(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_from_mfjson(String str) { - var _result = _meos_b.tbigint_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_in(String str) { - var _result = _meos_b.tbigint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tbigint_out(Pointer temp) { - var _result = _meos_b.tbigint_out(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_from_mfjson(String str) { - var _result = _meos_b.tbool_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_in(String str) { - var _result = _meos_b.tbool_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tbool_out(Pointer temp) { - var _result = _meos_b.tbool_out(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String temporal_as_hexwkb(Pointer temp, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_b.temporal_as_hexwkb(temp, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String temporal_as_mfjson(Pointer temp, boolean with_bbox, int flags, int precision, String srs) { - var _result = _meos_b.temporal_as_mfjson(temp, with_bbox, flags, precision, srs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_as_wkb(Pointer temp, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_b.temporal_as_wkb(temp, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_from_hexwkb(String hexwkb) { - var _result = _meos_b.temporal_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_from_wkb(Pointer wkb, long size) { - var _result = _meos_b.temporal_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_from_mfjson(String str) { - var _result = _meos_b.tfloat_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_in(String str) { - var _result = _meos_b.tfloat_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tfloat_out(Pointer temp, int maxdd) { - var _result = _meos_b.tfloat_out(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_from_mfjson(String str) { - var _result = _meos_b.tint_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_in(String str) { - var _result = _meos_b.tint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tint_out(Pointer temp) { - var _result = _meos_b.tint_out(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_from_mfjson(String str) { - var _result = _meos_b.ttext_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_in(String str) { - var _result = _meos_b.ttext_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String ttext_out(Pointer temp) { - var _result = _meos_b.ttext_out(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_from_base_temp(long i, Pointer temp) { - var _result = _meos_b.tbigint_from_base_temp(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigintinst_make(long i, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tbigintinst_make(i, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigintseq_from_base_tstzset(long i, Pointer s) { - var _result = _meos_b.tbigintseq_from_base_tstzset(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigintseq_from_base_tstzspan(long i, Pointer s) { - var _result = _meos_b.tbigintseq_from_base_tstzspan(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigintseqset_from_base_tstzspanset(long i, Pointer ss) { - var _result = _meos_b.tbigintseqset_from_base_tstzspanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_from_base_temp(boolean b, Pointer temp) { - var _result = _meos_b.tbool_from_base_temp(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolinst_make(boolean b, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tboolinst_make(b, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseq_from_base_tstzset(boolean b, Pointer s) { - var _result = _meos_b.tboolseq_from_base_tstzset(b, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseq_from_base_tstzspan(boolean b, Pointer s) { - var _result = _meos_b.tboolseq_from_base_tstzspan(b, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseqset_from_base_tstzspanset(boolean b, Pointer ss) { - var _result = _meos_b.tboolseqset_from_base_tstzspanset(b, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_copy(Pointer temp) { - var _result = _meos_b.temporal_copy(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_from_base_temp(double d, Pointer temp) { - var _result = _meos_b.tfloat_from_base_temp(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatinst_make(double d, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tfloatinst_make(d, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseq_from_base_tstzset(double d, Pointer s) { - var _result = _meos_b.tfloatseq_from_base_tstzset(d, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseq_from_base_tstzspan(double d, Pointer s, int interp) { - var _result = _meos_b.tfloatseq_from_base_tstzspan(d, s, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseqset_from_base_tstzspanset(double d, Pointer ss, int interp) { - var _result = _meos_b.tfloatseqset_from_base_tstzspanset(d, ss, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_from_base_temp(int i, Pointer temp) { - var _result = _meos_b.tint_from_base_temp(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintinst_make(int i, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tintinst_make(i, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseq_from_base_tstzset(int i, Pointer s) { - var _result = _meos_b.tintseq_from_base_tstzset(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseq_from_base_tstzspan(int i, Pointer s) { - var _result = _meos_b.tintseq_from_base_tstzspan(i, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseqset_from_base_tstzspanset(int i, Pointer ss) { - var _result = _meos_b.tintseqset_from_base_tstzspanset(i, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_make(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_b.tsequence_make(instants, count, lower_inc, upper_inc, interp, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_make(Pointer sequences, int count, boolean normalize) { - var _result = _meos_b.tsequenceset_make(sequences, count, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_make_gaps(Pointer instants, int count, int interp, Pointer maxt, double maxdist) { - var _result = _meos_b.tsequenceset_make_gaps(instants, count, interp, maxt, maxdist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_from_base_temp(Pointer txt, Pointer temp) { - var _result = _meos_b.ttext_from_base_temp(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextinst_make(Pointer txt, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.ttextinst_make(txt, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseq_from_base_tstzset(Pointer txt, Pointer s) { - var _result = _meos_b.ttextseq_from_base_tstzset(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseq_from_base_tstzspan(Pointer txt, Pointer s) { - var _result = _meos_b.ttextseq_from_base_tstzspan(txt, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseqset_from_base_tstzspanset(Pointer txt, Pointer ss) { - var _result = _meos_b.ttextseqset_from_base_tstzspanset(txt, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_to_tfloat(Pointer temp) { - var _result = _meos_b.tbigint_to_tfloat(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_to_tint(Pointer temp) { - var _result = _meos_b.tbigint_to_tint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_to_tint(Pointer temp) { - var _result = _meos_b.tbool_to_tint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_to_tstzspan(Pointer temp) { - var _result = _meos_b.temporal_to_tstzspan(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_to_tbigint(Pointer temp) { - var _result = _meos_b.tfloat_to_tbigint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_to_tint(Pointer temp) { - var _result = _meos_b.tfloat_to_tint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_to_tbigint(Pointer temp) { - var _result = _meos_b.tint_to_tbigint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_to_tfloat(Pointer temp) { - var _result = _meos_b.tint_to_tfloat(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_to_span(Pointer temp) { - var _result = _meos_b.tnumber_to_span(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_to_tbox(Pointer temp) { - var _result = _meos_b.tnumber_to_tbox(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tbigint_end_value(Pointer temp) { - var _result = _meos_b.tbigint_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tbigint_max_value(Pointer temp) { - var _result = _meos_b.tbigint_max_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tbigint_min_value(Pointer temp) { - var _result = _meos_b.tbigint_min_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tbigint_start_value(Pointer temp) { - var _result = _meos_b.tbigint_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbigint_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tbigint_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_value_n(Pointer temp, long n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.tbigint_value_n(temp, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_values(Pointer temp, Pointer count) { - var _result = _meos_b.tbigint_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbool_end_value(Pointer temp) { - var _result = _meos_b.tbool_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbool_start_value(Pointer temp) { - var _result = _meos_b.tbool_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tbool_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tbool_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_b.tbool_value_n(temp, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbool_values(Pointer temp, Pointer count) { - var _result = _meos_b.tbool_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_duration(Pointer temp, boolean boundspan) { - var _result = _meos_b.temporal_duration(temp, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_end_instant(Pointer temp) { - var _result = _meos_b.temporal_end_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_end_sequence(Pointer temp) { - var _result = _meos_b.temporal_end_sequence(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime temporal_end_timestamptz(Pointer temp) { - var _result = _meos_b.temporal_end_timestamptz(temp); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static int temporal_hash(Pointer temp) { - var _result = _meos_b.temporal_hash(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_instant_n(Pointer temp, int n) { - var _result = _meos_b.temporal_instant_n(temp, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_instants(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_instants(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String temporal_interp(Pointer temp) { - var _result = _meos_b.temporal_interp(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_lower_inc(Pointer temp) { - var _result = _meos_b.temporal_lower_inc(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_max_instant(Pointer temp) { - var _result = _meos_b.temporal_max_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_min_instant(Pointer temp) { - var _result = _meos_b.temporal_min_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_num_instants(Pointer temp) { - var _result = _meos_b.temporal_num_instants(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_num_sequences(Pointer temp) { - var _result = _meos_b.temporal_num_sequences(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_num_timestamps(Pointer temp) { - var _result = _meos_b.temporal_num_timestamps(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_segm_duration(Pointer temp, Pointer duration, boolean atleast, boolean strict) { - var _result = _meos_b.temporal_segm_duration(temp, duration, atleast, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_segments(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_segments(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_sequence_n(Pointer temp, int i) { - var _result = _meos_b.temporal_sequence_n(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_sequences(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_sequences(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_start_instant(Pointer temp) { - var _result = _meos_b.temporal_start_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_start_sequence(Pointer temp) { - var _result = _meos_b.temporal_start_sequence(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime temporal_start_timestamptz(Pointer temp) { - var _result = _meos_b.temporal_start_timestamptz(temp); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer temporal_stops(Pointer temp, double maxdist, Pointer minduration) { - var _result = _meos_b.temporal_stops(temp, maxdist, minduration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String temporal_subtype(Pointer temp) { - var _result = _meos_b.temporal_subtype(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_time(Pointer temp) { - var _result = _meos_b.temporal_time(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_timestamps(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_timestamps(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_timestamptz_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.temporal_timestamptz_n(temp, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static boolean temporal_upper_inc(Pointer temp) { - var _result = _meos_b.temporal_upper_inc(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tfloat_avg_value(Pointer temp) { - var _result = _meos_b.tfloat_avg_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tfloat_end_value(Pointer temp) { - var _result = _meos_b.tfloat_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tfloat_min_value(Pointer temp) { - var _result = _meos_b.tfloat_min_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tfloat_max_value(Pointer temp) { - var _result = _meos_b.tfloat_max_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tfloat_start_value(Pointer temp) { - var _result = _meos_b.tfloat_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tfloat_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tfloat_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_b.tfloat_value_n(temp, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_values(Pointer temp, Pointer count) { - var _result = _meos_b.tfloat_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tint_end_value(Pointer temp) { - var _result = _meos_b.tint_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tint_max_value(Pointer temp) { - var _result = _meos_b.tint_max_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tint_min_value(Pointer temp) { - var _result = _meos_b.tint_min_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tint_start_value(Pointer temp) { - var _result = _meos_b.tint_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tint_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.tint_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Integer.BYTES); - out = _meos_b.tint_value_n(temp, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tint_values(Pointer temp, Pointer count) { - var _result = _meos_b.tint_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumber_avg_value(Pointer temp) { - var _result = _meos_b.tnumber_avg_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumber_integral(Pointer temp) { - var _result = _meos_b.tnumber_integral(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumber_twavg(Pointer temp) { - var _result = _meos_b.tnumber_twavg(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_valuespans(Pointer temp) { - var _result = _meos_b.tnumber_valuespans(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_end_value(Pointer temp) { - var _result = _meos_b.ttext_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_max_value(Pointer temp) { - var _result = _meos_b.ttext_max_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_min_value(Pointer temp) { - var _result = _meos_b.ttext_min_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_start_value(Pointer temp) { - var _result = _meos_b.ttext_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean ttext_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.ttext_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_b.ttext_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer ttext_values(Pointer temp, Pointer count) { - var _result = _meos_b.ttext_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_degrees(double value, boolean normalize) { - var _result = _meos_b.float_degrees(value, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_scale_value(Pointer temp, long width) { - var _result = _meos_b.tbigint_scale_value(temp, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_shift_scale_value(Pointer temp, long shift, long width) { - var _result = _meos_b.tbigint_shift_scale_value(temp, shift, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_shift_value(Pointer temp, long shift) { - var _result = _meos_b.tbigint_shift_value(temp, shift); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temparr_round(Pointer temp, int count, int maxdd) { - var _result = _meos_b.temparr_round(temp, count, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_round(Pointer temp, int maxdd) { - var _result = _meos_b.temporal_round(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_scale_time(Pointer temp, Pointer duration) { - var _result = _meos_b.temporal_scale_time(temp, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_set_interp(Pointer temp, int interp) { - var _result = _meos_b.temporal_set_interp(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_shift_scale_time(Pointer temp, Pointer shift, Pointer duration) { - var _result = _meos_b.temporal_shift_scale_time(temp, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_shift_time(Pointer temp, Pointer shift) { - var _result = _meos_b.temporal_shift_time(temp, shift); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_to_tinstant(Pointer temp) { - var _result = _meos_b.temporal_to_tinstant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_to_tsequence(Pointer temp, int interp) { - var _result = _meos_b.temporal_to_tsequence(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_to_tsequenceset(Pointer temp, int interp) { - var _result = _meos_b.temporal_to_tsequenceset(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_ceil(Pointer temp) { - var _result = _meos_b.tfloat_ceil(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_degrees(Pointer temp, boolean normalize) { - var _result = _meos_b.tfloat_degrees(temp, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_floor(Pointer temp) { - var _result = _meos_b.tfloat_floor(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_radians(Pointer temp) { - var _result = _meos_b.tfloat_radians(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_scale_value(Pointer temp, double width) { - var _result = _meos_b.tfloat_scale_value(temp, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_shift_scale_value(Pointer temp, double shift, double width) { - var _result = _meos_b.tfloat_shift_scale_value(temp, shift, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_shift_value(Pointer temp, double shift) { - var _result = _meos_b.tfloat_shift_value(temp, shift); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_scale_value(Pointer temp, int width) { - var _result = _meos_b.tint_scale_value(temp, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_shift_scale_value(Pointer temp, int shift, int width) { - var _result = _meos_b.tint_shift_scale_value(temp, shift, width); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_shift_value(Pointer temp, int shift) { - var _result = _meos_b.tint_shift_value(temp, shift); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand) { - var _result = _meos_b.temporal_append_tinstant(temp, inst, interp, maxdist, maxt, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_append_tsequence(Pointer temp, Pointer seq, boolean expand) { - var _result = _meos_b.temporal_append_tsequence(temp, seq, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_delete_timestamptz(Pointer temp, OffsetDateTime t, boolean connect) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.temporal_delete_timestamptz(temp, t_new, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzset(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_b.temporal_delete_tstzset(temp, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzspan(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_b.temporal_delete_tstzspan(temp, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect) { - var _result = _meos_b.temporal_delete_tstzspanset(temp, ss, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_insert(Pointer temp1, Pointer temp2, boolean connect) { - var _result = _meos_b.temporal_insert(temp1, temp2, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_merge(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_merge(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_merge_array(Pointer temparr, int count) { - var _result = _meos_b.temporal_merge_array(temparr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_update(Pointer temp1, Pointer temp2, boolean connect) { - var _result = _meos_b.temporal_update(temp1, temp2, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_at_value(Pointer temp, long i) { - var _result = _meos_b.tbigint_at_value(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_minus_value(Pointer temp, long i) { - var _result = _meos_b.tbigint_minus_value(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_at_value(Pointer temp, boolean b) { - var _result = _meos_b.tbool_at_value(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_minus_value(Pointer temp, boolean b) { - var _result = _meos_b.tbool_minus_value(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_after_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.temporal_after_timestamptz(temp, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_max(Pointer temp) { - var _result = _meos_b.temporal_at_max(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_min(Pointer temp) { - var _result = _meos_b.temporal_at_min(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_timestamptz(Pointer temp, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.temporal_at_timestamptz(temp, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_tstzset(Pointer temp, Pointer s) { - var _result = _meos_b.temporal_at_tstzset(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.temporal_at_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_tstzspanset(Pointer temp, Pointer ss) { - var _result = _meos_b.temporal_at_tstzspanset(temp, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_at_values(Pointer temp, Pointer set) { - var _result = _meos_b.temporal_at_values(temp, set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_before_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.temporal_before_timestamptz(temp, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_max(Pointer temp) { - var _result = _meos_b.temporal_minus_max(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_min(Pointer temp) { - var _result = _meos_b.temporal_minus_min(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_timestamptz(Pointer temp, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.temporal_minus_timestamptz(temp, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzset(Pointer temp, Pointer s) { - var _result = _meos_b.temporal_minus_tstzset(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.temporal_minus_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_tstzspanset(Pointer temp, Pointer ss) { - var _result = _meos_b.temporal_minus_tstzspanset(temp, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_minus_values(Pointer temp, Pointer set) { - var _result = _meos_b.temporal_minus_values(temp, set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_at_value(Pointer temp, double d) { - var _result = _meos_b.tfloat_at_value(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_minus_value(Pointer temp, double d) { - var _result = _meos_b.tfloat_minus_value(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_at_value(Pointer temp, int i) { - var _result = _meos_b.tint_at_value(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_minus_value(Pointer temp, int i) { - var _result = _meos_b.tint_minus_value(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_at_span(Pointer temp, Pointer span) { - var _result = _meos_b.tnumber_at_span(temp, span); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_at_spanset(Pointer temp, Pointer ss) { - var _result = _meos_b.tnumber_at_spanset(temp, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_at_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.tnumber_at_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_minus_span(Pointer temp, Pointer span) { - var _result = _meos_b.tnumber_minus_span(temp, span); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_minus_spanset(Pointer temp, Pointer ss) { - var _result = _meos_b.tnumber_minus_spanset(temp, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_minus_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.tnumber_minus_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_at_value(Pointer temp, Pointer txt) { - var _result = _meos_b.ttext_at_value(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_minus_value(Pointer temp, Pointer txt) { - var _result = _meos_b.ttext_minus_value(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_cmp(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_cmp(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_eq(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_eq(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_ge(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_ge(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_gt(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_gt(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_le(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_le(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_lt(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_lt(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_ne(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_ne(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_eq_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.always_eq_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_eq_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_eq_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.always_eq_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_eq_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_eq_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_eq_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_eq_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_eq_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_eq_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_ge_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_ge_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_ge_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_ge_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_ge_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_ge_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_ge_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_ge_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_ge_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_gt_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_gt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_gt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_gt_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_gt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_gt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_gt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_gt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_gt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_le_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_le_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_le_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_le_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_le_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_le_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_le_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_le_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_le_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_lt_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_lt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_lt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_lt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_lt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_lt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_lt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_lt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.always_ne_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.always_ne_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_int_tint(int i, Pointer temp) { - var _result = _meos_b.always_ne_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_lt_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.always_ne_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.always_ne_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.always_ne_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.always_ne_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.always_ne_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.always_ne_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tint_int(Pointer temp, int i) { - var _result = _meos_b.always_ne_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.always_ne_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_eq_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.ever_eq_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_eq_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_eq_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_eq_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.ever_eq_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_eq_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_eq_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_eq_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_eq_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_eq_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_ge_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_ge_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_ge_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_ge_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_ge_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_ge_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_ge_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_ge_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_ge_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_gt_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_gt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_gt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_gt_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_gt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_gt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_gt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_gt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_gt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_le_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_le_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_le_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_le_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_le_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_le_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_le_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_le_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_le_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_lt_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_lt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_lt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_lt_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_lt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_lt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_lt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_lt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_lt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_bigint_tbigint(long i, Pointer temp) { - var _result = _meos_b.ever_ne_bigint_tbigint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.ever_ne_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.ever_ne_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_int_tint(int i, Pointer temp) { - var _result = _meos_b.ever_ne_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tbigint_bigint(Pointer temp, long i) { - var _result = _meos_b.ever_ne_tbigint_bigint(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.ever_ne_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ever_ne_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.ever_ne_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.ever_ne_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tint_int(Pointer temp, int i) { - var _result = _meos_b.ever_ne_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.ever_ne_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.teq_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.teq_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_int_tint(int i, Pointer temp) { - var _result = _meos_b.teq_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.teq_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.teq_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.teq_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.teq_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tint_int(Pointer temp, int i) { - var _result = _meos_b.teq_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.teq_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.tge_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_int_tint(int i, Pointer temp) { - var _result = _meos_b.tge_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tge_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.tge_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tge_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_tint_int(Pointer temp, int i) { - var _result = _meos_b.tge_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tge_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.tge_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.tgt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_int_tint(int i, Pointer temp) { - var _result = _meos_b.tgt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tgt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.tgt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tgt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_tint_int(Pointer temp, int i) { - var _result = _meos_b.tgt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.tgt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.tle_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_int_tint(int i, Pointer temp) { - var _result = _meos_b.tle_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tle_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.tle_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tle_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_tint_int(Pointer temp, int i) { - var _result = _meos_b.tle_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tle_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.tle_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.tlt_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_int_tint(int i, Pointer temp) { - var _result = _meos_b.tlt_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tlt_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.tlt_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tlt_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_tint_int(Pointer temp, int i) { - var _result = _meos_b.tlt_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tlt_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.tlt_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.tne_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_float_tfloat(double d, Pointer temp) { - var _result = _meos_b.tne_float_tfloat(d, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_int_tint(int i, Pointer temp) { - var _result = _meos_b.tne_int_tint(i, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.tne_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tne_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.tne_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tne_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tint_int(Pointer temp, int i) { - var _result = _meos_b.tne_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.tne_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_spans(Pointer temp, Pointer count) { - var _result = _meos_b.temporal_spans(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_split_each_n_spans(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_b.temporal_split_each_n_spans(temp, elem_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_split_n_spans(Pointer temp, int span_count, Pointer count) { - var _result = _meos_b.temporal_split_n_spans(temp, span_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_split_each_n_tboxes(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_b.tnumber_split_each_n_tboxes(temp, elem_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_split_n_tboxes(Pointer temp, int box_count, Pointer count) { - var _result = _meos_b.tnumber_split_n_tboxes(temp, box_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_tboxes(Pointer temp, Pointer count) { - var _result = _meos_b.tnumber_tboxes(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.adjacent_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.adjacent_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.adjacent_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.adjacent_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.adjacent_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.adjacent_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.adjacent_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.adjacent_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.contained_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.contained_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.contained_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.contained_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.contained_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.contained_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.contained_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.contained_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.contains_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.contains_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.contains_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.contains_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.contains_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.contains_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.contains_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.contains_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.overlaps_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.overlaps_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overlaps_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.overlaps_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.overlaps_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.overlaps_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overlaps_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.overlaps_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.same_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.same_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.same_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.same_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.same_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.same_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.same_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.same_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.after_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.after_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.after_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.after_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.after_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.after_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.before_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.before_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.before_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.before_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.before_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.before_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.left_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.left_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.left_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.left_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.left_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.overafter_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.overafter_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overafter_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.overafter_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overafter_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.overafter_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.overbefore_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_temporal_tstzspan(Pointer temp, Pointer s) { - var _result = _meos_b.overbefore_temporal_tstzspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_temporal_temporal(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overbefore_temporal_temporal(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.overbefore_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overbefore_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tstzspan_temporal(Pointer s, Pointer temp) { - var _result = _meos_b.overbefore_tstzspan_temporal(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.overleft_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.overleft_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.overleft_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.overleft_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overleft_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.overright_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.overright_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.overright_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.overright_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.overright_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_numspan_tnumber(Pointer s, Pointer temp) { - var _result = _meos_b.right_numspan_tnumber(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tbox_tnumber(Pointer box, Pointer temp) { - var _result = _meos_b.right_tbox_tnumber(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tnumber_numspan(Pointer temp, Pointer s) { - var _result = _meos_b.right_tnumber_numspan(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.right_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.right_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tand_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.tand_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tand_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.tand_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tand_tbool_tbool(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tand_tbool_tbool(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_when_true(Pointer temp) { - var _result = _meos_b.tbool_when_true(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnot_tbool(Pointer temp) { - var _result = _meos_b.tnot_tbool(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tor_bool_tbool(boolean b, Pointer temp) { - var _result = _meos_b.tor_bool_tbool(b, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tor_tbool_bool(Pointer temp, boolean b) { - var _result = _meos_b.tor_tbool_bool(temp, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tor_tbool_tbool(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tor_tbool_tbool(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_bigint_tbigint(long i, Pointer tnumber) { - var _result = _meos_b.add_bigint_tbigint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_b.add_float_tfloat(d, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_int_tint(int i, Pointer tnumber) { - var _result = _meos_b.add_int_tint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_tbigint_bigint(Pointer tnumber, long i) { - var _result = _meos_b.add_tbigint_bigint(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_b.add_tfloat_float(tnumber, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_tint_int(Pointer tnumber, int i) { - var _result = _meos_b.add_tint_int(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer add_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_b.add_tnumber_tnumber(tnumber1, tnumber2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_bigint_tbigint(long i, Pointer tnumber) { - var _result = _meos_b.div_bigint_tbigint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_b.div_float_tfloat(d, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_int_tint(int i, Pointer tnumber) { - var _result = _meos_b.div_int_tint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_tbigint_bigint(Pointer tnumber, long i) { - var _result = _meos_b.div_tbigint_bigint(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_b.div_tfloat_float(tnumber, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_tint_int(Pointer tnumber, int i) { - var _result = _meos_b.div_tint_int(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer div_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_b.div_tnumber_tnumber(tnumber1, tnumber2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_bigint_tbigint(long i, Pointer tnumber) { - var _result = _meos_b.mul_bigint_tbigint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_b.mul_float_tfloat(d, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_int_tint(int i, Pointer tnumber) { - var _result = _meos_b.mul_int_tint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_tbigint_bigint(Pointer tnumber, long i) { - var _result = _meos_b.mul_tbigint_bigint(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_b.mul_tfloat_float(tnumber, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_tint_int(Pointer tnumber, int i) { - var _result = _meos_b.mul_tint_int(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer mul_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_b.mul_tnumber_tnumber(tnumber1, tnumber2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_bigint_tbigint(long i, Pointer tnumber) { - var _result = _meos_b.sub_bigint_tbigint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_float_tfloat(double d, Pointer tnumber) { - var _result = _meos_b.sub_float_tfloat(d, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_int_tint(int i, Pointer tnumber) { - var _result = _meos_b.sub_int_tint(i, tnumber); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_tbigint_bigint(Pointer tnumber, long i) { - var _result = _meos_b.sub_tbigint_bigint(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_tfloat_float(Pointer tnumber, double d) { - var _result = _meos_b.sub_tfloat_float(tnumber, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_tint_int(Pointer tnumber, int i) { - var _result = _meos_b.sub_tint_int(tnumber, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer sub_tnumber_tnumber(Pointer tnumber1, Pointer tnumber2) { - var _result = _meos_b.sub_tnumber_tnumber(tnumber1, tnumber2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_derivative(Pointer temp) { - var _result = _meos_b.temporal_derivative(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_exp(Pointer temp) { - var _result = _meos_b.tfloat_exp(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_ln(Pointer temp) { - var _result = _meos_b.tfloat_ln(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_log10(Pointer temp) { - var _result = _meos_b.tfloat_log10(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_abs(Pointer temp) { - var _result = _meos_b.tnumber_abs(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_trend(Pointer temp) { - var _result = _meos_b.tnumber_trend(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double float_angular_difference(double degrees1, double degrees2) { - var _result = _meos_b.float_angular_difference(degrees1, degrees2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_angular_difference(Pointer temp) { - var _result = _meos_b.tnumber_angular_difference(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_delta_value(Pointer temp) { - var _result = _meos_b.tnumber_delta_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_text_ttext(Pointer txt, Pointer temp) { - var _result = _meos_b.textcat_text_ttext(txt, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_ttext_text(Pointer temp, Pointer txt) { - var _result = _meos_b.textcat_ttext_text(temp, txt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_ttext_ttext(Pointer temp1, Pointer temp2) { - var _result = _meos_b.textcat_ttext_ttext(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_initcap(Pointer temp) { - var _result = _meos_b.ttext_initcap(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_upper(Pointer temp) { - var _result = _meos_b.ttext_upper(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_lower(Pointer temp) { - var _result = _meos_b.ttext_lower(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.tdistance_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tint_int(Pointer temp, int i) { - var _result = _meos_b.tdistance_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_b.tdistance_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tboxfloat_tboxfloat(Pointer box1, Pointer box2) { - var _result = _meos_b.nad_tboxfloat_tboxfloat(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nad_tboxint_tboxint(Pointer box1, Pointer box2) { - var _result = _meos_b.nad_tboxint_tboxint(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tfloat_float(Pointer temp, double d) { - var _result = _meos_b.nad_tfloat_float(temp, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tfloat_tfloat(Pointer temp1, Pointer temp2) { - var _result = _meos_b.nad_tfloat_tfloat(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tfloat_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.nad_tfloat_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nad_tint_int(Pointer temp, int i) { - var _result = _meos_b.nad_tint_int(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nad_tint_tbox(Pointer temp, Pointer box) { - var _result = _meos_b.nad_tint_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nad_tint_tint(Pointer temp1, Pointer temp2) { - var _result = _meos_b.nad_tint_tint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_tand_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tbool_tand_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbool_tor_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tbool_tor_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_extent_transfn(Pointer s, Pointer temp) { - var _result = _meos_b.temporal_extent_transfn(s, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_merge_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.temporal_merge_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_merge_combinefn(Pointer state1, Pointer state2) { - var _result = _meos_b.temporal_merge_combinefn(state1, state2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_tagg_finalfn(Pointer state) { - var _result = _meos_b.temporal_tagg_finalfn(state); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_tcount_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.temporal_tcount_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tfloat_tmax_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tfloat_tmin_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_tsum_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tfloat_tsum_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tfloat_wmax_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tfloat_wmin_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tfloat_wsum_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_tcount_transfn(Pointer state, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_b.timestamptz_tcount_transfn(state, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tint_tmax_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tint_tmin_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_tsum_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tint_tsum_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_wmax_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tint_wmax_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_wmin_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tint_wmin_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_wsum_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tint_wsum_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_extent_transfn(Pointer box, Pointer temp) { - var _result = _meos_b.tnumber_extent_transfn(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_tavg_finalfn(Pointer state) { - var _result = _meos_b.tnumber_tavg_finalfn(state); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_tavg_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.tnumber_tavg_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_wavg_transfn(Pointer state, Pointer temp, Pointer interv) { - var _result = _meos_b.tnumber_wavg_transfn(state, temp, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_tcount_transfn(Pointer state, Pointer s) { - var _result = _meos_b.tstzset_tcount_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_tcount_transfn(Pointer state, Pointer s) { - var _result = _meos_b.tstzspan_tcount_transfn(state, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_tcount_transfn(Pointer state, Pointer ss) { - var _result = _meos_b.tstzspanset_tcount_transfn(state, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_tmax_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.ttext_tmax_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttext_tmin_transfn(Pointer state, Pointer temp) { - var _result = _meos_b.ttext_tmin_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_simplify_dp(Pointer temp, double eps_dist, boolean synchronize) { - var _result = _meos_b.temporal_simplify_dp(temp, eps_dist, synchronize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_simplify_max_dist(Pointer temp, double eps_dist, boolean synchronize) { - var _result = _meos_b.temporal_simplify_max_dist(temp, eps_dist, synchronize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_simplify_min_dist(Pointer temp, double dist) { - var _result = _meos_b.temporal_simplify_min_dist(temp, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_simplify_min_tdelta(Pointer temp, Pointer mint) { - var _result = _meos_b.temporal_simplify_min_tdelta(temp, mint); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_tprecision(Pointer temp, Pointer duration, OffsetDateTime origin) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_b.temporal_tprecision(temp, duration, origin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_tsample(Pointer temp, Pointer duration, OffsetDateTime origin, int interp) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_b.temporal_tsample(temp, duration, origin_new, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double temporal_dyntimewarp_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_dyntimewarp_distance(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_dyntimewarp_path(Pointer temp1, Pointer temp2, Pointer count) { - var _result = _meos_b.temporal_dyntimewarp_path(temp1, temp2, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double temporal_frechet_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_frechet_distance(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_frechet_path(Pointer temp1, Pointer temp2, Pointer count) { - var _result = _meos_b.temporal_frechet_path(temp1, temp2, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double temporal_hausdorff_distance(Pointer temp1, Pointer temp2) { - var _result = _meos_b.temporal_hausdorff_distance(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_time_bins(Pointer temp, Pointer duration, OffsetDateTime origin, Pointer count) { - var origin_new = origin.toEpochSecond(); - var _result = _meos_b.temporal_time_bins(temp, duration, origin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_time_split(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.temporal_time_split(temp, duration, torigin_new, time_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tfloat_time_boxes(temp, duration, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_bins(Pointer temp, double vsize, double vorigin, Pointer count) { - var _result = _meos_b.tfloat_value_bins(temp, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_boxes(Pointer temp, double vsize, double vorigin, Pointer count) { - var _result = _meos_b.tfloat_value_boxes(temp, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_split(Pointer temp, double size, double origin, Pointer bins, Pointer count) { - var _result = _meos_b.tfloat_value_split(temp, size, origin, bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_time_boxes(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tfloat_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloat_value_time_split(Pointer temp, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tfloat_value_time_split(temp, vsize, duration, vorigin, torigin_new, value_bins, time_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tfloatbox_time_tiles(box, duration, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatbox_value_tiles(Pointer box, double vsize, double vorigin, Pointer count) { - var _result = _meos_b.tfloatbox_value_tiles(box, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatbox_value_time_tiles(Pointer box, double vsize, Pointer duration, double vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tfloatbox_value_time_tiles(box, vsize, duration, vorigin, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_time_boxes(Pointer temp, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tint_time_boxes(temp, duration, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_bins(Pointer temp, int vsize, int vorigin, Pointer count) { - var _result = _meos_b.tint_value_bins(temp, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_boxes(Pointer temp, int vsize, int vorigin, Pointer count) { - var _result = _meos_b.tint_value_boxes(temp, vsize, vorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_split(Pointer temp, int vsize, int vorigin, Pointer bins, Pointer count) { - var _result = _meos_b.tint_value_split(temp, vsize, vorigin, bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_time_boxes(Pointer temp, int vsize, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tint_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tint_value_time_split(Pointer temp, long size, Pointer duration, int vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tint_value_time_split(temp, size, duration, vorigin, torigin_new, value_bins, time_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintbox_time_tiles(Pointer box, Pointer duration, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tintbox_time_tiles(box, duration, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintbox_value_tiles(Pointer box, int xsize, int xorigin, Pointer count) { - var _result = _meos_b.tintbox_value_tiles(box, xsize, xorigin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintbox_value_time_tiles(Pointer box, int xsize, Pointer duration, int xorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_b.tintbox_value_time_tiles(box, xsize, duration, xorigin, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void meos_initialize_noexit_error_handler() { - _meos_b.meos_initialize_noexit_error_handler(); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static boolean h3_are_neighbor_cells_meos(long origin, long destination) { - var _result = _meos_b.h3_are_neighbor_cells_meos(origin, destination); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cells_to_directed_edge_meos(long origin, long destination) { - var _result = _meos_b.h3_cells_to_directed_edge_meos(origin, destination); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3_is_valid_directed_edge_meos(long edge) { - var _result = _meos_b.h3_is_valid_directed_edge_meos(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_get_directed_edge_origin_meos(long edge) { - var _result = _meos_b.h3_get_directed_edge_origin_meos(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_get_directed_edge_destination_meos(long edge) { - var _result = _meos_b.h3_get_directed_edge_destination_meos(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_parent_meos(long origin, int resolution) { - var _result = _meos_b.h3_cell_to_parent_meos(origin, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_center_child_meos(long origin, int resolution) { - var _result = _meos_b.h3_cell_to_center_child_meos(origin, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_child_pos_meos(long child, int parentRes) { - var _result = _meos_b.h3_cell_to_child_pos_meos(child, parentRes); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_child_pos_to_cell_meos(long childPos, long parent, int childRes) { - var _result = _meos_b.h3_child_pos_to_cell_meos(childPos, parent, childRes); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int h3_get_resolution_meos(long hex) { - var _result = _meos_b.h3_get_resolution_meos(hex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int h3_get_base_cell_number_meos(long hex) { - var _result = _meos_b.h3_get_base_cell_number_meos(hex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3_is_valid_cell_meos(long hex) { - var _result = _meos_b.h3_is_valid_cell_meos(hex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3_is_res_class_iii_meos(long hex) { - var _result = _meos_b.h3_is_res_class_iii_meos(hex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3_is_pentagon_meos(long hex) { - var _result = _meos_b.h3_is_pentagon_meos(hex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_get_num_cells_meos(int resolution) { - var _result = _meos_b.h3_get_num_cells_meos(resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_grid_distance_meos(long originIndex, long h3Index) { - var _result = _meos_b.h3_grid_distance_meos(originIndex, h3Index); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_vertex_meos(long cell, int vertexNum) { - var _result = _meos_b.h3_cell_to_vertex_meos(cell, vertexNum); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3_is_valid_vertex_meos(long vertex) { - var _result = _meos_b.h3_is_valid_vertex_meos(vertex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3index_parse(String str) { - var _result = _meos_b.h3index_parse(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String h3index_to_string(long cell) { - var _result = _meos_b.h3index_to_string(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_eq(long a, long b) { - var _result = _meos_b.h3index_eq(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_ne(long a, long b) { - var _result = _meos_b.h3index_ne(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_lt(long a, long b) { - var _result = _meos_b.h3index_lt(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_le(long a, long b) { - var _result = _meos_b.h3index_le(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_gt(long a, long b) { - var _result = _meos_b.h3index_gt(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean h3index_ge(long a, long b) { - var _result = _meos_b.h3index_ge(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int h3index_cmp(long a, long b) { - var _result = _meos_b.h3index_cmp(a, b); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int h3index_hash(long cell) { - var _result = _meos_b.h3index_hash(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_grid_disk(long origin, int k) { - var _result = _meos_b.h3_grid_disk(origin, k); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_grid_ring(long origin, int k) { - var _result = _meos_b.h3_grid_ring(origin, k); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_grid_path_cells(long start, long end) { - var _result = _meos_b.h3_grid_path_cells(start, end); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_cell_to_children(long origin, int childRes) { - var _result = _meos_b.h3_cell_to_children(origin, childRes); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_compact_cells(Pointer cells) { - var _result = _meos_b.h3_compact_cells(cells); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_uncompact_cells(Pointer cells, int res) { - var _result = _meos_b.h3_uncompact_cells(cells, res); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_origin_to_directed_edges(long origin) { - var _result = _meos_b.h3_origin_to_directed_edges(origin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_cell_to_vertexes(long cell) { - var _result = _meos_b.h3_cell_to_vertexes(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_get_icosahedron_faces(long cell) { - var _result = _meos_b.h3_get_icosahedron_faces(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean ensure_valid_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ensure_valid_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean ensure_valid_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_b.ensure_valid_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean ensure_valid_th3index_tgeogpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_b.ensure_valid_th3index_tgeogpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum2_h3index_eq(int d1, int d2, int type) { - var _result = _meos_b.datum2_h3index_eq(d1, d2, type); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum2_h3index_ne(int d1, int d2, int type) { - var _result = _meos_b.datum2_h3index_ne(d1, d2, type); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void th3indexinst_set_stbox(Pointer inst, Pointer box) { - _meos_b.th3indexinst_set_stbox(inst, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void th3indexinstarr_set_stbox(Pointer instants, int count, Pointer box) { - _meos_b.th3indexinstarr_set_stbox(instants, count, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void th3indexseq_expand_stbox(Pointer seq, Pointer inst) { - _meos_b.th3indexseq_expand_stbox(seq, inst); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static long h3_gs_point_to_cell(Pointer point, int resolution) { - var _result = _meos_b.h3_gs_point_to_cell(point, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_cell_to_gs_point(long cell) { - var _result = _meos_b.h3_cell_to_gs_point(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_cell_to_gs_boundary(long cell) { - var _result = _meos_b.h3_cell_to_gs_boundary(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cell_boundary_to_gs(Pointer bnd) { - var _result = _meos_b.cell_boundary_to_gs(bnd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double h3_sample_step_deg(int resolution) { - var _result = _meos_b.h3_sample_step_deg(resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_latlng_deg_to_cell(double lat_deg, double lng_deg, int resolution) { - var _result = _meos_b.h3_latlng_deg_to_cell(lat_deg, lng_deg, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_parent_next_meos(long cell) { - var _result = _meos_b.h3_cell_to_parent_next_meos(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_cell_to_center_child_next_meos(long cell) { - var _result = _meos_b.h3_cell_to_center_child_next_meos(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_directed_edge_to_gs_boundary(long edge) { - var _result = _meos_b.h3_directed_edge_to_gs_boundary(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_vertex_to_gs_point(long vertex) { - var _result = _meos_b.h3_vertex_to_gs_point(vertex); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer h3_cell_to_local_ij_meos(long origin, long cell) { - var _result = _meos_b.h3_cell_to_local_ij_meos(origin, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3_local_ij_to_cell_meos(long origin, Pointer coord) { - var _result = _meos_b.h3_local_ij_to_cell_meos(origin, coord); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int h3_unit_from_cstring(String unit) { - var _result = _meos_b.h3_unit_from_cstring(unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double h3_cell_area_meos(long cell, int unit) { - var _result = _meos_b.h3_cell_area_meos(cell, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double h3_edge_length_meos(long edge, int unit) { - var _result = _meos_b.h3_edge_length_meos(edge, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double h3_gs_great_circle_distance_meos(Pointer a, Pointer b, int unit) { - var _result = _meos_b.h3_gs_great_circle_distance_meos(a, b, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_get_resolution(int d) { - var _result = _meos_b.datum_h3_get_resolution(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_get_base_cell_number(int d) { - var _result = _meos_b.datum_h3_get_base_cell_number(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_is_valid_cell(int d) { - var _result = _meos_b.datum_h3_is_valid_cell(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_is_res_class_iii(int d) { - var _result = _meos_b.datum_h3_is_res_class_iii(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_is_pentagon(int d) { - var _result = _meos_b.datum_h3_is_pentagon(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_parent(int cell_d, int res_d) { - var _result = _meos_b.datum_h3_cell_to_parent(cell_d, res_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_parent_next(int cell_d) { - var _result = _meos_b.datum_h3_cell_to_parent_next(cell_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_center_child(int cell_d, int res_d) { - var _result = _meos_b.datum_h3_cell_to_center_child(cell_d, res_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_center_child_next(int cell_d) { - var _result = _meos_b.datum_h3_cell_to_center_child_next(cell_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_child_pos(int cell_d, int parent_res_d) { - var _result = _meos_b.datum_h3_cell_to_child_pos(cell_d, parent_res_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_child_pos_to_cell(int pos_d, int parent_d, int child_res_d) { - var _result = _meos_b.datum_h3_child_pos_to_cell(pos_d, parent_d, child_res_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_are_neighbor_cells(int origin_d, int dest_d) { - var _result = _meos_b.datum_h3_are_neighbor_cells(origin_d, dest_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cells_to_directed_edge(int origin_d, int dest_d) { - var _result = _meos_b.datum_h3_cells_to_directed_edge(origin_d, dest_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_is_valid_directed_edge(int d) { - var _result = _meos_b.datum_h3_is_valid_directed_edge(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_get_directed_edge_origin(int d) { - var _result = _meos_b.datum_h3_get_directed_edge_origin(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_get_directed_edge_destination(int d) { - var _result = _meos_b.datum_h3_get_directed_edge_destination(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_directed_edge_to_boundary(int d) { - var _result = _meos_b.datum_h3_directed_edge_to_boundary(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_vertex(int cell_d, int vnum_d) { - var _result = _meos_b.datum_h3_cell_to_vertex(cell_d, vnum_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_vertex_to_latlng(int d) { - var _result = _meos_b.datum_h3_vertex_to_latlng(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_is_valid_vertex(int d) { - var _result = _meos_b.datum_h3_is_valid_vertex(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_grid_distance(int origin_d, int dest_d) { - var _result = _meos_b.datum_h3_grid_distance(origin_d, dest_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_local_ij(int origin_d, int cell_d) { - var _result = _meos_b.datum_h3_cell_to_local_ij(origin_d, cell_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_local_ij_to_cell(int origin_d, int coord_d) { - var _result = _meos_b.datum_h3_local_ij_to_cell(origin_d, coord_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_latlng_to_cell(int point_d, int res_d) { - var _result = _meos_b.datum_h3_latlng_to_cell(point_d, res_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_latlng(int d) { - var _result = _meos_b.datum_h3_cell_to_latlng(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_to_boundary(int d) { - var _result = _meos_b.datum_h3_cell_to_boundary(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_cell_area(int cell_d, int unit_d) { - var _result = _meos_b.datum_h3_cell_area(cell_d, unit_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_edge_length(int edge_d, int unit_d) { - var _result = _meos_b.datum_h3_edge_length(edge_d, unit_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_h3_great_circle_distance(int a_d, int b_d, int unit_d) { - var _result = _meos_b.datum_h3_great_circle_distance(a_d, b_d, unit_d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_as_ewkb(Pointer gs, String endian, Pointer size) { - var _result = _meos_b.geo_as_ewkb(gs, endian, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_as_ewkt(Pointer gs, int precision) { - var _result = _meos_b.geo_as_ewkt(gs, precision); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_as_geojson(Pointer gs, int option, int precision, String srs) { - var _result = _meos_b.geo_as_geojson(gs, option, precision, srs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_as_hexewkb(Pointer gs, String endian) { - var _result = _meos_b.geo_as_hexewkb(gs, endian); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_as_text(Pointer gs, int precision) { - var _result = _meos_b.geo_as_text(gs, precision); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_from_ewkb(Pointer wkb, long wkb_size, int srid) { - var _result = _meos_b.geo_from_ewkb(wkb, wkb_size, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_from_geojson(String geojson) { - var _result = _meos_b.geo_from_geojson(geojson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_from_text(String wkt, int srid) { - var _result = _meos_b.geo_from_text(wkt, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_out(Pointer gs) { - var _result = _meos_b.geo_out(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geog_from_binary(String wkb_bytea) { - var _result = _meos_b.geog_from_binary(wkb_bytea); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geog_from_hexewkb(String wkt) { - var _result = _meos_b.geog_from_hexewkb(wkt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geog_in(String str, int typmod) { - var _result = _meos_b.geog_in(str, typmod); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_from_hexewkb(String wkt) { - var _result = _meos_b.geom_from_hexewkb(wkt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_in(String str, int typmod) { - var _result = _meos_b.geom_in(str, typmod); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer box3d_make(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int srid) { - var _result = _meos_b.box3d_make(xmin, xmax, ymin, ymax, zmin, zmax, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String box3d_out(Pointer box, int maxdd) { - var _result = _meos_b.box3d_out(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer gbox_make(boolean hasz, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) { - var _result = _meos_b.gbox_make(hasz, xmin, xmax, ymin, ymax, zmin, zmax); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String gbox_out(Pointer box, int maxdd) { - var _result = _meos_b.gbox_out(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_copy(Pointer g) { - var _result = _meos_b.geo_copy(g); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geogpoint_make2d(int srid, double x, double y) { - var _result = _meos_b.geogpoint_make2d(srid, x, y); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geogpoint_make3dz(int srid, double x, double y, double z) { - var _result = _meos_b.geogpoint_make3dz(srid, x, y, z); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geompoint_make2d(int srid, double x, double y) { - var _result = _meos_b.geompoint_make2d(srid, x, y); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geompoint_make3dz(int srid, double x, double y, double z) { - var _result = _meos_b.geompoint_make3dz(srid, x, y, z); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_to_geog(Pointer geom) { - var _result = _meos_b.geom_to_geog(geom); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geog_to_geom(Pointer geog) { - var _result = _meos_b.geog_to_geom(geog); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geo_is_empty(Pointer g) { - var _result = _meos_c.geo_is_empty(g); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geo_is_unitary(Pointer gs) { - var _result = _meos_c.geo_is_unitary(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String geo_typename(int type) { - var _result = _meos_c.geo_typename(type); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geog_area(Pointer g, boolean use_spheroid) { - var _result = _meos_c.geog_area(g, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geog_centroid(Pointer g, boolean use_spheroid) { - var _result = _meos_c.geog_centroid(g, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geog_length(Pointer g, boolean use_spheroid) { - var _result = _meos_c.geog_length(g, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geog_perimeter(Pointer g, boolean use_spheroid) { - var _result = _meos_c.geog_perimeter(g, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_azimuth(Pointer gs1, Pointer gs2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.geom_azimuth(gs1, gs2, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static double geom_length(Pointer gs) { - var _result = _meos_c.geom_length(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geom_perimeter(Pointer gs) { - var _result = _meos_c.geom_perimeter(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int line_numpoints(Pointer gs) { - var _result = _meos_c.line_numpoints(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer line_point_n(Pointer geom, int n) { - var _result = _meos_c.line_point_n(geom, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_reverse(Pointer gs) { - var _result = _meos_c.geo_reverse(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_round(Pointer gs, int maxdd) { - var _result = _meos_c.geo_round(gs, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_set_srid(Pointer gs, int srid) { - var _result = _meos_c.geo_set_srid(gs, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int geo_srid(Pointer gs) { - var _result = _meos_c.geo_srid(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_transform(Pointer geom, int srid_to) { - var _result = _meos_c.geo_transform(geom, srid_to); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_transform_pipeline(Pointer gs, String pipeline, int srid_to, boolean is_forward) { - var _result = _meos_c.geo_transform_pipeline(gs, pipeline, srid_to, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_collect_garray(Pointer gsarr, int count) { - var _result = _meos_c.geo_collect_garray(gsarr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_makeline_garray(Pointer gsarr, int count) { - var _result = _meos_c.geo_makeline_garray(gsarr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int geo_num_points(Pointer gs) { - var _result = _meos_c.geo_num_points(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int geo_num_geos(Pointer gs) { - var _result = _meos_c.geo_num_geos(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_geo_n(Pointer geom, int n) { - var _result = _meos_c.geo_geo_n(geom, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_pointarr(Pointer gs, Pointer count) { - var _result = _meos_c.geo_pointarr(gs, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_points(Pointer gs) { - var _result = _meos_c.geo_points(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_array_union(Pointer gsarr, int count) { - var _result = _meos_c.geom_array_union(gsarr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_boundary(Pointer gs) { - var _result = _meos_c.geom_boundary(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_buffer(Pointer gs, double size, String params) { - var _result = _meos_c.geom_buffer(gs, size, params); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_centroid(Pointer gs) { - var _result = _meos_c.geom_centroid(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_convex_hull(Pointer gs) { - var _result = _meos_c.geom_convex_hull(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_difference2d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_difference2d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_intersection2d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_intersection2d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_intersection2d_coll(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_intersection2d_coll(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_min_bounding_radius(Pointer geom, Pointer radius) { - var _result = _meos_c.geom_min_bounding_radius(geom, radius); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_shortestline2d(Pointer gs1, Pointer s2) { - var _result = _meos_c.geom_shortestline2d(gs1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_shortestline3d(Pointer gs1, Pointer s2) { - var _result = _meos_c.geom_shortestline3d(gs1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_unary_union(Pointer gs, double prec) { - var _result = _meos_c.geom_unary_union(gs, prec); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer line_interpolate_point(Pointer gs, double distance_fraction, boolean repeat) { - var _result = _meos_c.line_interpolate_point(gs, distance_fraction, repeat); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double line_locate_point(Pointer gs1, Pointer gs2) { - var _result = _meos_c.line_locate_point(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer line_substring(Pointer gs, double from, double to) { - var _result = _meos_c.line_substring(gs, from, to); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geog_dwithin(Pointer g1, Pointer g2, double tolerance, boolean use_spheroid) { - var _result = _meos_c.geog_dwithin(g1, g2, tolerance, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geog_intersects(Pointer gs1, Pointer gs2, boolean use_spheroid) { - var _result = _meos_c.geog_intersects(gs1, gs2, use_spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_contains(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_contains(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_covers(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_covers(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_disjoint2d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_disjoint2d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_dwithin2d(Pointer gs1, Pointer gs2, double tolerance) { - var _result = _meos_c.geom_dwithin2d(gs1, gs2, tolerance); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_dwithin3d(Pointer gs1, Pointer gs2, double tolerance) { - var _result = _meos_c.geom_dwithin3d(gs1, gs2, tolerance); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_intersects2d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_intersects2d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_intersects3d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_intersects3d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_relate_pattern(Pointer gs1, Pointer gs2, String patt) { - var _result = _meos_c.geom_relate_pattern(gs1, gs2, patt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geom_touches(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_touches(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_stboxes(Pointer gs, Pointer count) { - var _result = _meos_c.geo_stboxes(gs, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_split_each_n_stboxes(Pointer gs, int elem_count, Pointer count) { - var _result = _meos_c.geo_split_each_n_stboxes(gs, elem_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_split_n_stboxes(Pointer gs, int box_count, Pointer count) { - var _result = _meos_c.geo_split_n_stboxes(gs, box_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geog_distance(Pointer g1, Pointer g2) { - var _result = _meos_c.geog_distance(g1, g2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geom_distance2d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_distance2d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double geom_distance3d(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geom_distance3d(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int geo_equals(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geo_equals(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean geo_same(Pointer gs1, Pointer gs2) { - var _result = _meos_c.geo_same(gs1, gs2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geogset_in(String str) { - var _result = _meos_c.geogset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geomset_in(String str) { - var _result = _meos_c.geomset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String spatialset_as_text(Pointer set, int maxdd) { - var _result = _meos_c.spatialset_as_text(set, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String spatialset_as_ewkt(Pointer set, int maxdd) { - var _result = _meos_c.spatialset_as_ewkt(set, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geoset_make(Pointer values, int count) { - var _result = _meos_c.geoset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_to_set(Pointer gs) { - var _result = _meos_c.geo_to_set(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geoset_end_value(Pointer s) { - var _result = _meos_c.geoset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geoset_start_value(Pointer s) { - var _result = _meos_c.geoset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geoset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.geoset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer geoset_values(Pointer s) { - var _result = _meos_c.geoset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_geo_set(Pointer gs, Pointer s) { - var _result = _meos_c.contained_geo_set(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_geo(Pointer s, Pointer gs) { - var _result = _meos_c.contains_set_geo(s, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_union_transfn(Pointer state, Pointer gs) { - var _result = _meos_c.geo_union_transfn(state, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_geo_set(Pointer gs, Pointer s) { - var _result = _meos_c.intersection_geo_set(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_geo(Pointer s, Pointer gs) { - var _result = _meos_c.intersection_set_geo(s, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_geo_set(Pointer gs, Pointer s) { - var _result = _meos_c.minus_geo_set(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_geo(Pointer s, Pointer gs) { - var _result = _meos_c.minus_set_geo(s, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_geo_set(Pointer gs, Pointer s) { - var _result = _meos_c.union_geo_set(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_geo(Pointer s, Pointer gs) { - var _result = _meos_c.union_set_geo(s, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spatialset_set_srid(Pointer s, int srid) { - var _result = _meos_c.spatialset_set_srid(s, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spatialset_srid(Pointer s) { - var _result = _meos_c.spatialset_srid(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spatialset_transform(Pointer s, int srid) { - var _result = _meos_c.spatialset_transform(s, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spatialset_transform_pipeline(Pointer s, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_c.spatialset_transform_pipeline(s, pipelinestr, srid, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String stbox_as_hexwkb(Pointer box, byte variant, Pointer size) { - var _result = _meos_c.stbox_as_hexwkb(box, variant, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_as_wkb(Pointer box, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_c.stbox_as_wkb(box, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_from_hexwkb(String hexwkb) { - var _result = _meos_c.stbox_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_from_wkb(Pointer wkb, long size) { - var _result = _meos_c.stbox_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_in(String str) { - var _result = _meos_c.stbox_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String stbox_out(Pointer box, int maxdd) { - var _result = _meos_c.stbox_out(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_timestamptz_to_stbox(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.geo_timestamptz_to_stbox(gs, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_tstzspan_to_stbox(Pointer gs, Pointer s) { - var _result = _meos_c.geo_tstzspan_to_stbox(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_copy(Pointer box) { - var _result = _meos_c.stbox_copy(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_make(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s) { - var _result = _meos_c.stbox_make(hasx, hasz, geodetic, srid, xmin, xmax, ymin, ymax, zmin, zmax, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_to_stbox(Pointer gs) { - var _result = _meos_c.geo_to_stbox(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spatialset_to_stbox(Pointer s) { - var _result = _meos_c.spatialset_to_stbox(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_to_box3d(Pointer box) { - var _result = _meos_c.stbox_to_box3d(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_to_gbox(Pointer box) { - var _result = _meos_c.stbox_to_gbox(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_to_geo(Pointer box) { - var _result = _meos_c.stbox_to_geo(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_to_tstzspan(Pointer box) { - var _result = _meos_c.stbox_to_tstzspan(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer timestamptz_to_stbox(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.timestamptz_to_stbox(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzset_to_stbox(Pointer s) { - var _result = _meos_c.tstzset_to_stbox(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspan_to_stbox(Pointer s) { - var _result = _meos_c.tstzspan_to_stbox(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tstzspanset_to_stbox(Pointer ss) { - var _result = _meos_c.tstzspanset_to_stbox(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double stbox_area(Pointer box, boolean spheroid) { - var _result = _meos_c.stbox_area(box, spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int stbox_hash(Pointer box) { - var _result = _meos_c.stbox_hash(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long stbox_hash_extended(Pointer box, long seed) { - var _result = _meos_c.stbox_hash_extended(box, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_hast(Pointer box) { - var _result = _meos_c.stbox_hast(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_hasx(Pointer box) { - var _result = _meos_c.stbox_hasx(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_hasz(Pointer box) { - var _result = _meos_c.stbox_hasz(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_isgeodetic(Pointer box) { - var _result = _meos_c.stbox_isgeodetic(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double stbox_perimeter(Pointer box, boolean spheroid) { - var _result = _meos_c.stbox_perimeter(box, spheroid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_tmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.stbox_tmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_tmax_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_c.stbox_tmax_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_tmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.stbox_tmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_tmin_inc(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Byte.BYTES); - out = _meos_c.stbox_tmin_inc(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static double stbox_volume(Pointer box) { - var _result = _meos_c.stbox_volume(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_xmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_xmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_xmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_xmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_ymax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_ymax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_ymin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_ymin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_zmax(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_zmax(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_zmin(Pointer box) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.stbox_zmin(box, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_expand_space(Pointer box, double d) { - var _result = _meos_c.stbox_expand_space(box, d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_expand_time(Pointer box, Pointer interv) { - var _result = _meos_c.stbox_expand_time(box, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_get_space(Pointer box) { - var _result = _meos_c.stbox_get_space(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_quad_split(Pointer box, Pointer count) { - var _result = _meos_c.stbox_quad_split(box, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_round(Pointer box, int maxdd) { - var _result = _meos_c.stbox_round(box, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_shift_scale_time(Pointer box, Pointer shift, Pointer duration) { - var _result = _meos_c.stbox_shift_scale_time(box, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stboxarr_round(Pointer boxarr, int count, int maxdd) { - var _result = _meos_c.stboxarr_round(boxarr, count, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_set_srid(Pointer box, int srid) { - var _result = _meos_c.stbox_set_srid(box, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int stbox_srid(Pointer box) { - var _result = _meos_c.stbox_srid(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_transform(Pointer box, int srid) { - var _result = _meos_c.stbox_transform(box, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_transform_pipeline(Pointer box, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_c.stbox_transform_pipeline(box, pipelinestr, srid, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.adjacent_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.contained_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.contains_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overlaps_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.same_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean above_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.above_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.after_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean back_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.back_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.before_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean below_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.below_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean front_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.front_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.left_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overabove_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overabove_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overafter_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overback_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overback_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overbefore_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbelow_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overbelow_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overfront_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overfront_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overleft_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.overright_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.right_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_stbox_stbox(Pointer box1, Pointer box2, boolean strict) { - var _result = _meos_c.union_stbox_stbox(box1, box2, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.intersection_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int stbox_cmp(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_cmp(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_eq(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_eq(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_ge(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_ge(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_gt(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_gt(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_le(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_le(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_lt(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_lt(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean stbox_ne(Pointer box1, Pointer box2) { - var _result = _meos_c.stbox_ne(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpoint_from_mfjson(String str) { - var _result = _meos_c.tgeogpoint_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpoint_in(String str) { - var _result = _meos_c.tgeogpoint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeography_from_mfjson(String mfjson) { - var _result = _meos_c.tgeography_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeography_in(String str) { - var _result = _meos_c.tgeography_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometry_from_mfjson(String str) { - var _result = _meos_c.tgeometry_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometry_in(String str) { - var _result = _meos_c.tgeometry_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompoint_from_mfjson(String str) { - var _result = _meos_c.tgeompoint_from_mfjson(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompoint_in(String str) { - var _result = _meos_c.tgeompoint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tspatial_as_ewkt(Pointer temp, int maxdd) { - var _result = _meos_c.tspatial_as_ewkt(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tspatial_as_text(Pointer temp, int maxdd) { - var _result = _meos_c.tspatial_as_text(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tspatial_out(Pointer temp, int maxdd) { - var _result = _meos_c.tspatial_out(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_from_base_temp(Pointer gs, Pointer temp) { - var _result = _meos_c.tgeo_from_base_temp(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoinst_make(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.tgeoinst_make(gs, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_from_base_tstzset(Pointer gs, Pointer s) { - var _result = _meos_c.tgeoseq_from_base_tstzset(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { - var _result = _meos_c.tgeoseq_from_base_tstzspan(gs, s, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { - var _result = _meos_c.tgeoseqset_from_base_tstzspanset(gs, ss, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_from_base_temp(Pointer gs, Pointer temp) { - var _result = _meos_c.tpoint_from_base_temp(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointinst_make(Pointer gs, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.tpointinst_make(gs, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_from_base_tstzset(Pointer gs, Pointer s) { - var _result = _meos_c.tpointseq_from_base_tstzset(gs, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_from_base_tstzspan(Pointer gs, Pointer s, int interp) { - var _result = _meos_c.tpointseq_from_base_tstzspan(gs, s, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_make_coords(Pointer xcoords, Pointer ycoords, Pointer zcoords, Pointer times, int count, int srid, boolean geodetic, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_c.tpointseq_make_coords(xcoords, ycoords, zcoords, times, count, srid, geodetic, lower_inc, upper_inc, interp, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseqset_from_base_tstzspanset(Pointer gs, Pointer ss, int interp) { - var _result = _meos_c.tpointseqset_from_base_tstzspanset(gs, ss, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer box3d_to_stbox(Pointer box) { - var _result = _meos_c.box3d_to_stbox(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer gbox_to_stbox(Pointer box) { - var _result = _meos_c.gbox_to_stbox(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geomeas_to_tpoint(Pointer gs) { - var _result = _meos_c.geomeas_to_tpoint(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpoint_to_tgeography(Pointer temp) { - var _result = _meos_c.tgeogpoint_to_tgeography(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeography_to_tgeogpoint(Pointer temp) { - var _result = _meos_c.tgeography_to_tgeogpoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeography_to_tgeometry(Pointer temp) { - var _result = _meos_c.tgeography_to_tgeometry(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometry_to_tgeography(Pointer temp) { - var _result = _meos_c.tgeometry_to_tgeography(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometry_to_tgeompoint(Pointer temp) { - var _result = _meos_c.tgeometry_to_tgeompoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompoint_to_tgeometry(Pointer temp) { - var _result = _meos_c.tgeompoint_to_tgeometry(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tpoint_as_mvtgeom(Pointer temp, Pointer bounds, int extent, int buffer, boolean clip_geom, Pointer gsarr, Pointer timesarr, Pointer count) { - var _result = _meos_c.tpoint_as_mvtgeom(temp, bounds, extent, buffer, clip_geom, gsarr, timesarr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_tfloat_to_geomeas(Pointer tpoint, Pointer measure, boolean segmentize) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.tpoint_tfloat_to_geomeas(tpoint, measure, segmentize, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tspatial_to_stbox(Pointer temp) { - var _result = _meos_c.tspatial_to_stbox(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bearing_point_point(Pointer gs1, Pointer gs2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.bearing_point_point(gs1, gs2, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer bearing_tpoint_point(Pointer temp, Pointer gs, boolean invert) { - var _result = _meos_c.bearing_tpoint_point(temp, gs, invert); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer bearing_tpoint_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_c.bearing_tpoint_tpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_centroid(Pointer temp) { - var _result = _meos_c.tgeo_centroid(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_convex_hull(Pointer temp) { - var _result = _meos_c.tgeo_convex_hull(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_end_value(Pointer temp) { - var _result = _meos_c.tgeo_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_start_value(Pointer temp) { - var _result = _meos_c.tgeo_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_traversed_area(Pointer temp, boolean unary_union) { - var _result = _meos_c.tgeo_traversed_area(temp, unary_union); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tgeo_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.tgeo_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.tgeo_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_values(Pointer temp, Pointer count) { - var _result = _meos_c.tgeo_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_angular_difference(Pointer temp) { - var _result = _meos_c.tpoint_angular_difference(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_azimuth(Pointer temp) { - var _result = _meos_c.tpoint_azimuth(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_cumulative_length(Pointer temp) { - var _result = _meos_c.tpoint_cumulative_length(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_direction(Pointer temp) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Double.BYTES); - out = _meos_c.tpoint_direction(temp, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_get_x(Pointer temp) { - var _result = _meos_c.tpoint_get_x(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_get_y(Pointer temp) { - var _result = _meos_c.tpoint_get_y(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_get_z(Pointer temp) { - var _result = _meos_c.tpoint_get_z(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tpoint_is_simple(Pointer temp) { - var _result = _meos_c.tpoint_is_simple(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tpoint_length(Pointer temp) { - var _result = _meos_c.tpoint_length(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_speed(Pointer temp) { - var _result = _meos_c.tpoint_speed(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_trajectory(Pointer temp, boolean unary_union) { - var _result = _meos_c.tpoint_trajectory(temp, unary_union); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_twcentroid(Pointer temp) { - var _result = _meos_c.tpoint_twcentroid(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_affine(Pointer temp, Pointer a) { - var _result = _meos_c.tgeo_affine(temp, a); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_scale(Pointer temp, Pointer scale, Pointer sorigin) { - var _result = _meos_c.tgeo_scale(temp, scale, sorigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_make_simple(Pointer temp, Pointer count) { - var _result = _meos_c.tpoint_make_simple(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tspatial_srid(Pointer temp) { - var _result = _meos_c.tspatial_srid(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tspatial_set_srid(Pointer temp, int srid) { - var _result = _meos_c.tspatial_set_srid(temp, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tspatial_transform(Pointer temp, int srid) { - var _result = _meos_c.tspatial_transform(temp, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tspatial_transform_pipeline(Pointer temp, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_c.tspatial_transform_pipeline(temp, pipelinestr, srid, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tgeo_at_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_at_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_c.tgeo_at_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_at_value(Pointer temp, Pointer gs) { - var _result = _meos_c.tgeo_at_value(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tgeo_minus_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_c.tgeo_minus_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_minus_value(Pointer temp, Pointer gs) { - var _result = _meos_c.tgeo_minus_value(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_at_elevation(Pointer temp, Pointer s) { - var _result = _meos_c.tpoint_at_elevation(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tpoint_at_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_at_value(Pointer temp, Pointer gs) { - var _result = _meos_c.tpoint_at_value(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_minus_elevation(Pointer temp, Pointer s) { - var _result = _meos_c.tpoint_minus_elevation(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tpoint_minus_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_minus_value(Pointer temp, Pointer gs) { - var _result = _meos_c.tpoint_minus_value(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.always_eq_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.always_eq_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_eq_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.always_ne_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.always_ne_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_ne_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.ever_eq_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ever_eq_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_eq_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.ever_ne_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ever_ne_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_ne_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.teq_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.teq_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.tne_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tne_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_stboxes(Pointer temp, Pointer count) { - var _result = _meos_c.tgeo_stboxes(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_space_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer count) { - var _result = _meos_c.tgeo_space_boxes(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_space_time_boxes(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tgeo_space_time_boxes(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_split_each_n_stboxes(Pointer temp, int elem_count, Pointer count) { - var _result = _meos_c.tgeo_split_each_n_stboxes(temp, elem_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_split_n_stboxes(Pointer temp, int box_count, Pointer count) { - var _result = _meos_c.tgeo_split_n_stboxes(temp, box_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.adjacent_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.adjacent_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.adjacent_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.contained_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.contained_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contained_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.contains_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.contains_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.contains_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overlaps_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overlaps_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overlaps_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overlaps_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.same_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.same_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean same_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.same_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean above_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.above_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean above_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.above_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean above_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.above_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.after_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.after_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean after_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.after_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean back_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.back_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean back_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.back_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean back_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.back_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.before_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.before_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean before_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.before_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean below_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.below_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean below_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.below_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean below_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.below_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean front_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.front_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean front_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.front_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean front_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.front_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.left_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.left_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.left_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overabove_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overabove_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overabove_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overabove_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overabove_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overabove_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overafter_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overafter_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overafter_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overafter_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overback_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overback_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overback_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overback_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overback_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overback_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overbefore_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overbefore_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbefore_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overbefore_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbelow_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overbelow_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbelow_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overbelow_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overbelow_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overbelow_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overfront_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overfront_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overfront_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overfront_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overfront_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overfront_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overleft_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overleft_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overleft_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.overright_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.overright_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.overright_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_stbox_tspatial(Pointer box, Pointer temp) { - var _result = _meos_c.right_stbox_tspatial(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tspatial_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.right_tspatial_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_tspatial_tspatial(Pointer temp1, Pointer temp2) { - var _result = _meos_c.right_tspatial_tspatial(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.acontains_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.acontains_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.acontains_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adisjoint_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.adisjoint_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.adisjoint_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.adwithin_tgeo_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.adwithin_tgeo_tgeo(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int aintersects_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.aintersects_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int aintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.aintersects_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.atouches_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.atouches_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.atouches_tpoint_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.econtains_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.econtains_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.econtains_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.ecovers_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ecovers_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ecovers_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edisjoint_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.edisjoint_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.edisjoint_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.edwithin_tgeo_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.edwithin_tgeo_tgeo(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int eintersects_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.eintersects_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int eintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.eintersects_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.etouches_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.etouches_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.etouches_tpoint_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.tcontains_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tcontains_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tcontains_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.tcovers_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tcovers_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tcovers_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.tdisjoint_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tdisjoint_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tdisjoint_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_geo_tgeo(Pointer gs, Pointer temp, double dist) { - var _result = _meos_c.tdwithin_geo_tgeo(gs, temp, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_tgeo_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.tdwithin_tgeo_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_tgeo_tgeo(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.tdwithin_tgeo_tgeo(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.tintersects_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tintersects_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tintersects_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.ttouches_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ttouches_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ttouches_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tdistance_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tdistance_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_stbox_geo(Pointer box, Pointer gs) { - var _result = _meos_c.nad_stbox_geo(box, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_stbox_stbox(Pointer box1, Pointer box2) { - var _result = _meos_c.nad_stbox_stbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.nad_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tgeo_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.nad_tgeo_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nad_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.nai_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nai_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.shortestline_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tgeo_tgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_c.shortestline_tgeo_tgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tgeoarr_tgeoarr_mindist(Pointer arr1, int count1, Pointer arr2, int count2) { - var _result = _meos_c.tgeoarr_tgeoarr_mindist(arr1, count1, arr2, count2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double mindistance_tgeo_tgeo(Pointer temp1, Pointer temp2, double threshold) { - var _result = _meos_c.mindistance_tgeo_tgeo(temp1, temp2, threshold); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_tcentroid_finalfn(Pointer state) { - var _result = _meos_c.tpoint_tcentroid_finalfn(state); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_tcentroid_transfn(Pointer state, Pointer temp) { - var _result = _meos_c.tpoint_tcentroid_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tspatial_extent_transfn(Pointer box, Pointer temp) { - var _result = _meos_c.tspatial_extent_transfn(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_get_space_tile(Pointer point, double xsize, double ysize, double zsize, Pointer sorigin) { - var _result = _meos_c.stbox_get_space_tile(point, xsize, ysize, zsize, sorigin); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_get_space_time_tile(Pointer point, OffsetDateTime t, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.stbox_get_space_time_tile(point, t_new, xsize, ysize, zsize, duration, sorigin, torigin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_get_time_tile(OffsetDateTime t, Pointer duration, OffsetDateTime torigin) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.stbox_get_time_tile(t_new, duration, torigin_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_space_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer sorigin, boolean border_inc, Pointer count) { - var _result = _meos_c.stbox_space_tiles(bounds, xsize, ysize, zsize, sorigin, border_inc, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_space_time_tiles(Pointer bounds, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.stbox_space_time_tiles(bounds, xsize, ysize, zsize, duration, sorigin, torigin_new, border_inc, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer stbox_time_tiles(Pointer bounds, Pointer duration, OffsetDateTime torigin, boolean border_inc, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.stbox_time_tiles(bounds, duration, torigin_new, border_inc, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_space_split(Pointer temp, double xsize, double ysize, double zsize, Pointer sorigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer count) { - var _result = _meos_c.tgeo_space_split(temp, xsize, ysize, zsize, sorigin, bitmatrix, border_inc, space_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_space_time_split(Pointer temp, double xsize, double ysize, double zsize, Pointer duration, Pointer sorigin, OffsetDateTime torigin, boolean bitmatrix, boolean border_inc, Pointer space_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_c.tgeo_space_time_split(temp, xsize, ysize, zsize, duration, sorigin, torigin_new, bitmatrix, border_inc, space_bins, time_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_cluster_kmeans(Pointer geoms, int ngeoms, int k) { - var _result = _meos_c.geo_cluster_kmeans(geoms, ngeoms, k); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_cluster_dbscan(Pointer geoms, int ngeoms, double tolerance, int minpoints, Pointer count) { - var _result = _meos_c.geo_cluster_dbscan(geoms, ngeoms, tolerance, minpoints, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_cluster_intersecting(Pointer geoms, int ngeoms, Pointer count) { - var _result = _meos_c.geo_cluster_intersecting(geoms, ngeoms, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_cluster_within(Pointer geoms, int ngeoms, double tolerance, Pointer count) { - var _result = _meos_c.geo_cluster_within(geoms, ngeoms, tolerance, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_geo_tgeo(Pointer gs, Pointer temp) { - var _result = _meos_c.acovers_geo_tgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_tgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.acovers_tgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String cbuffer_as_ewkt(Pointer cb, int maxdd) { - var _result = _meos_c.cbuffer_as_ewkt(cb, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String cbuffer_as_hexwkb(Pointer cb, byte variant, Pointer size) { - var _result = _meos_c.cbuffer_as_hexwkb(cb, variant, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String cbuffer_as_text(Pointer cb, int maxdd) { - var _result = _meos_c.cbuffer_as_text(cb, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_as_wkb(Pointer cb, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_c.cbuffer_as_wkb(cb, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_from_hexwkb(String hexwkb) { - var _result = _meos_c.cbuffer_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_from_wkb(Pointer wkb, long size) { - var _result = _meos_c.cbuffer_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_in(String str) { - var _result = _meos_c.cbuffer_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String cbuffer_out(Pointer cb, int maxdd) { - var _result = _meos_c.cbuffer_out(cb, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_copy(Pointer cb) { - var _result = _meos_c.cbuffer_copy(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_make(Pointer point, double radius) { - var _result = _meos_c.cbuffer_make(point, radius); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_to_geom(Pointer cb) { - var _result = _meos_c.cbuffer_to_geom(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_to_stbox(Pointer cb) { - var _result = _meos_c.cbuffer_to_stbox(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferarr_to_geom(Pointer cbarr, int count) { - var _result = _meos_c.cbufferarr_to_geom(cbarr, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_to_cbuffer(Pointer gs) { - var _result = _meos_c.geom_to_cbuffer(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int cbuffer_hash(Pointer cb) { - var _result = _meos_c.cbuffer_hash(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long cbuffer_hash_extended(Pointer cb, long seed) { - var _result = _meos_c.cbuffer_hash_extended(cb, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_point(Pointer cb) { - var _result = _meos_c.cbuffer_point(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double cbuffer_radius(Pointer cb) { - var _result = _meos_c.cbuffer_radius(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_round(Pointer cb, int maxdd) { - var _result = _meos_c.cbuffer_round(cb, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferarr_round(Pointer cbarr, int count, int maxdd) { - var _result = _meos_c.cbufferarr_round(cbarr, count, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void cbuffer_set_srid(Pointer cb, int srid) { - _meos_c.cbuffer_set_srid(cb, srid); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int cbuffer_srid(Pointer cb) { - var _result = _meos_c.cbuffer_srid(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_transform(Pointer cb, int srid) { - var _result = _meos_c.cbuffer_transform(cb, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_transform_pipeline(Pointer cb, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_c.cbuffer_transform_pipeline(cb, pipelinestr, srid, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int contains_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.contains_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int covers_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.covers_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int disjoint_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.disjoint_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int dwithin_cbuffer_cbuffer(Pointer cb1, Pointer cb2, double dist) { - var _result = _meos_c.dwithin_cbuffer_cbuffer(cb1, cb2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int intersects_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.intersects_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int touches_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.touches_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_tstzspan_to_stbox(Pointer cb, Pointer s) { - var _result = _meos_c.cbuffer_tstzspan_to_stbox(cb, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_timestamptz_to_stbox(Pointer cb, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.cbuffer_timestamptz_to_stbox(cb, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_cbuffer_cbuffer(Pointer cb1, Pointer cb2) { - var _result = _meos_c.distance_cbuffer_cbuffer(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_cbuffer_geo(Pointer cb, Pointer gs) { - var _result = _meos_c.distance_cbuffer_geo(cb, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_cbuffer_stbox(Pointer cb, Pointer box) { - var _result = _meos_c.distance_cbuffer_stbox(cb, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_cbuffer_stbox(Pointer cb, Pointer box) { - var _result = _meos_c.nad_cbuffer_stbox(cb, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int cbuffer_cmp(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_cmp(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_eq(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_eq(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_ge(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_ge(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_gt(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_gt(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_le(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_le(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_lt(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_lt(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_ne(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_ne(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_nsame(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_nsame(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean cbuffer_same(Pointer cb1, Pointer cb2) { - var _result = _meos_c.cbuffer_same(cb1, cb2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_in(String str) { - var _result = _meos_c.cbufferset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String cbufferset_out(Pointer s, int maxdd) { - var _result = _meos_c.cbufferset_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_make(Pointer values, int count) { - var _result = _meos_c.cbufferset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_to_set(Pointer cb) { - var _result = _meos_c.cbuffer_to_set(cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_end_value(Pointer s) { - var _result = _meos_c.cbufferset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_start_value(Pointer s) { - var _result = _meos_c.cbufferset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.cbufferset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer cbufferset_values(Pointer s) { - var _result = _meos_c.cbufferset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer cbuffer_union_transfn(Pointer state, Pointer cb) { - var _result = _meos_c.cbuffer_union_transfn(state, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_cbuffer_set(Pointer cb, Pointer s) { - var _result = _meos_c.contained_cbuffer_set(cb, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_cbuffer(Pointer s, Pointer cb) { - var _result = _meos_c.contains_set_cbuffer(s, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_cbuffer_set(Pointer cb, Pointer s) { - var _result = _meos_c.intersection_cbuffer_set(cb, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_cbuffer(Pointer s, Pointer cb) { - var _result = _meos_c.intersection_set_cbuffer(s, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_cbuffer_set(Pointer cb, Pointer s) { - var _result = _meos_c.minus_cbuffer_set(cb, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_cbuffer(Pointer s, Pointer cb) { - var _result = _meos_c.minus_set_cbuffer(s, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_cbuffer_set(Pointer cb, Pointer s) { - var _result = _meos_c.union_cbuffer_set(cb, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_cbuffer(Pointer s, Pointer cb) { - var _result = _meos_c.union_set_cbuffer(s, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_in(String str) { - var _result = _meos_c.tcbuffer_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_from_mfjson(String mfjson) { - var _result = _meos_c.tcbuffer_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_make(Pointer tpoint, Pointer tfloat) { - var _result = _meos_c.tcbuffer_make(tpoint, tfloat); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_points(Pointer temp) { - var _result = _meos_c.tcbuffer_points(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_radius(Pointer temp) { - var _result = _meos_c.tcbuffer_radius(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_trav_area(Pointer temp, boolean merge_union) { - var _result = _meos_c.tcbuffer_trav_area(temp, merge_union); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_to_tfloat(Pointer temp) { - var _result = _meos_c.tcbuffer_to_tfloat(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_to_tgeompoint(Pointer temp) { - var _result = _meos_c.tcbuffer_to_tgeompoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometry_to_tcbuffer(Pointer temp) { - var _result = _meos_c.tgeometry_to_tcbuffer(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_expand(Pointer temp, double dist) { - var _result = _meos_c.tcbuffer_expand(temp, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_at_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tcbuffer_at_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tcbuffer_at_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_at_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_c.tcbuffer_at_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_minus_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tcbuffer_minus_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_c.tcbuffer_minus_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcbuffer_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_c.tcbuffer_minus_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tdistance_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tdistance_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tdistance_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.nad_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.nad_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tcbuffer_stbox(Pointer temp, Pointer box) { - var _result = _meos_c.nad_tcbuffer_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nad_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.nai_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.nai_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.nai_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.shortestline_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.shortestline_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.shortestline_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.always_eq_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.always_eq_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_eq_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.always_ne_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.always_ne_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_ne_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.ever_eq_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.ever_eq_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_eq_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.ever_ne_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.ever_ne_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_ne_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.teq_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.teq_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.tne_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tne_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.acontains_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.acontains_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.acontains_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acontains_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.acontains_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.acovers_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.acovers_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.acovers_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.acovers_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.adisjoint_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.adisjoint_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.adisjoint_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.adwithin_tcbuffer_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { - var _result = _meos_c.adwithin_tcbuffer_cbuffer(temp, cb, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int adwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.adwithin_tcbuffer_tcbuffer(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int aintersects_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.aintersects_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int aintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.aintersects_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int aintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.aintersects_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.atouches_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.atouches_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int atouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.atouches_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.econtains_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.econtains_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int econtains_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.econtains_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.ecovers_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.ecovers_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ecovers_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ecovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ecovers_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.edisjoint_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.edisjoint_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.edwithin_tcbuffer_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { - var _result = _meos_c.edwithin_tcbuffer_cbuffer(temp, cb, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int edwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.edwithin_tcbuffer_tcbuffer(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int eintersects_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.eintersects_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int eintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.eintersects_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int eintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.eintersects_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.etouches_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.etouches_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int etouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.etouches_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.tcontains_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.tcontains_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tcontains_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tcontains_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontains_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tcontains_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.tcovers_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.tcovers_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tcovers_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tcovers_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tcovers_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_geo_tcbuffer(Pointer gs, Pointer temp, double dist) { - var _result = _meos_c.tdwithin_geo_tcbuffer(gs, temp, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_tcbuffer_geo(Pointer temp, Pointer gs, double dist) { - var _result = _meos_c.tdwithin_tcbuffer_geo(temp, gs, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_tcbuffer_cbuffer(Pointer temp, Pointer cb, double dist) { - var _result = _meos_c.tdwithin_tcbuffer_cbuffer(temp, cb, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdwithin_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2, double dist) { - var _result = _meos_c.tdwithin_tcbuffer_tcbuffer(temp1, temp2, dist); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.tdisjoint_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.tdisjoint_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tdisjoint_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tdisjoint_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdisjoint_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tdisjoint_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.tintersects_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.tintersects_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.tintersects_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.tintersects_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintersects_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tintersects_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_geo_tcbuffer(Pointer gs, Pointer temp) { - var _result = _meos_c.ttouches_geo_tcbuffer(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_tcbuffer_geo(Pointer temp, Pointer gs) { - var _result = _meos_c.ttouches_tcbuffer_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_cbuffer_tcbuffer(Pointer cb, Pointer temp) { - var _result = _meos_c.ttouches_cbuffer_tcbuffer(cb, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_tcbuffer_cbuffer(Pointer temp, Pointer cb) { - var _result = _meos_c.ttouches_tcbuffer_cbuffer(temp, cb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttouches_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ttouches_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int acovers_tcbuffer_tcbuffer(Pointer temp1, Pointer temp2) { - var _result = _meos_c.acovers_tcbuffer_tcbuffer(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long h3index_in(String str) { - var _result = _meos_c.h3index_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String h3index_out(long cell) { - var _result = _meos_c.h3index_out(cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_in(String str) { - var _result = _meos_c.th3index_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexinst_in(String str) { - var _result = _meos_c.th3indexinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexseq_in(String str, int interp) { - var _result = _meos_c.th3indexseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexseqset_in(String str) { - var _result = _meos_c.th3indexseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_make(long value, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.th3index_make(value, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexinst_make(long value, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_c.th3indexinst_make(value, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexseq_make(Pointer values, Pointer times, int count, boolean lower_inc, boolean upper_inc) { - var _result = _meos_c.th3indexseq_make(values, times, count, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3indexseqset_make(Pointer sequences, int count) { - var _result = _meos_c.th3indexseqset_make(sequences, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long th3index_start_value(Pointer temp) { - var _result = _meos_c.th3index_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long th3index_end_value(Pointer temp) { - var _result = _meos_c.th3index_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.th3index_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer th3index_values(Pointer temp, Pointer count) { - var _result = _meos_c.th3index_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - var t_new = t.toEpochSecond(); - out = _meos_c.th3index_value_at_timestamptz(temp, t_new, strict, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tbigint_to_th3index(Pointer temp) { - var _result = _meos_c.tbigint_to_th3index(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_to_tbigint(Pointer temp) { - var _result = _meos_c.th3index_to_tbigint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.ever_eq_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.ever_eq_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.ever_ne_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.ever_ne_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.always_eq_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.always_eq_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.always_ne_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.always_ne_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_eq_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.ever_ne_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_eq_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.always_ne_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.teq_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.teq_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.teq_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_h3index_th3index(long cell, Pointer temp) { - var _result = _meos_c.tne_h3index_th3index(cell, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_th3index_h3index(Pointer temp, long cell) { - var _result = _meos_c.tne_th3index_h3index(temp, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_th3index_th3index(Pointer temp1, Pointer temp2) { - var _result = _meos_c.tne_th3index_th3index(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_get_resolution(Pointer temp) { - var _result = _meos_c.th3index_get_resolution(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_get_base_cell_number(Pointer temp) { - var _result = _meos_c.th3index_get_base_cell_number(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_is_valid_cell(Pointer temp) { - var _result = _meos_c.th3index_is_valid_cell(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_is_res_class_iii(Pointer temp) { - var _result = _meos_c.th3index_is_res_class_iii(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_is_pentagon(Pointer temp) { - var _result = _meos_c.th3index_is_pentagon(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_parent(Pointer temp, int resolution) { - var _result = _meos_c.th3index_cell_to_parent(temp, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_parent_next(Pointer temp) { - var _result = _meos_c.th3index_cell_to_parent_next(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_center_child(Pointer temp, int resolution) { - var _result = _meos_c.th3index_cell_to_center_child(temp, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_center_child_next(Pointer temp) { - var _result = _meos_c.th3index_cell_to_center_child_next(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_child_pos(Pointer temp, int parent_res) { - var _result = _meos_c.th3index_cell_to_child_pos(temp, parent_res); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_child_pos_to_cell(Pointer child_pos, Pointer parent, int child_res) { - var _result = _meos_c.th3index_child_pos_to_cell(child_pos, parent, child_res); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpoint_to_th3index(Pointer temp, int resolution) { - var _result = _meos_c.tgeogpoint_to_th3index(temp, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompoint_to_th3index(Pointer temp, int resolution) { - var _result = _meos_c.tgeompoint_to_th3index(temp, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_to_tgeogpoint(Pointer temp) { - var _result = _meos_c.th3index_to_tgeogpoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_to_tgeompoint(Pointer temp) { - var _result = _meos_c.th3index_to_tgeompoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_boundary(Pointer temp) { - var _result = _meos_c.th3index_cell_to_boundary(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_to_h3index_set(Pointer gs, int resolution) { - var _result = _meos_c.geo_to_h3index_set(gs, resolution); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_h3indexset_th3index(Pointer cells, Pointer th3idx) { - var _result = _meos_c.ever_eq_h3indexset_th3index(cells, th3idx); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_are_neighbor_cells(Pointer origin, Pointer dest) { - var _result = _meos_c.th3index_are_neighbor_cells(origin, dest); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cells_to_directed_edge(Pointer origin, Pointer dest) { - var _result = _meos_c.th3index_cells_to_directed_edge(origin, dest); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_is_valid_directed_edge(Pointer edge) { - var _result = _meos_c.th3index_is_valid_directed_edge(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_get_directed_edge_origin(Pointer edge) { - var _result = _meos_c.th3index_get_directed_edge_origin(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_get_directed_edge_destination(Pointer edge) { - var _result = _meos_c.th3index_get_directed_edge_destination(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_directed_edge_to_boundary(Pointer edge) { - var _result = _meos_c.th3index_directed_edge_to_boundary(edge); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_vertex(Pointer temp, int vertex_num) { - var _result = _meos_c.th3index_cell_to_vertex(temp, vertex_num); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_vertex_to_latlng(Pointer temp) { - var _result = _meos_c.th3index_vertex_to_latlng(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_is_valid_vertex(Pointer temp) { - var _result = _meos_c.th3index_is_valid_vertex(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_grid_distance(Pointer origin, Pointer dest) { - var _result = _meos_c.th3index_grid_distance(origin, dest); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_to_local_ij(Pointer origin, Pointer cell) { - var _result = _meos_c.th3index_cell_to_local_ij(origin, cell); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_local_ij_to_cell(Pointer origin, Pointer coord) { - var _result = _meos_c.th3index_local_ij_to_cell(origin, coord); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_cell_area(Pointer temp, String unit) { - var _result = _meos_c.th3index_cell_area(temp, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer th3index_edge_length(Pointer temp, String unit) { - var _result = _meos_c.th3index_edge_length(temp, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpoint_great_circle_distance(Pointer a, Pointer b, String unit) { - var _result = _meos_c.tgeogpoint_great_circle_distance(a, b, unit); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer gsl_get_generation_rng() { - var _result = _meos_c.gsl_get_generation_rng(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer gsl_get_aggregation_rng() { - var _result = _meos_c.gsl_get_aggregation_rng(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_ceil(Pointer d) { - var _result = _meos_c.datum_ceil(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_degrees(Pointer d, Pointer normalize) { - var _result = _meos_c.datum_degrees(d, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_float_round(Pointer value, Pointer size) { - var _result = _meos_c.datum_float_round(value, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_floor(Pointer d) { - var _result = _meos_c.datum_floor(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_hash(Pointer d, int basetype) { - var _result = _meos_c.datum_hash(d, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long datum_hash_extended(Pointer d, int basetype, long seed) { - var _result = _meos_c.datum_hash_extended(d, basetype, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_radians(Pointer d) { - var _result = _meos_c.datum_radians(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void floatspan_round_set(Pointer s, int maxdd, Pointer result) { - _meos_c.floatspan_round_set(s, maxdd, result); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer set_in(String str, int basetype) { - var _result = _meos_c.set_in(str, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String set_out(Pointer s, int maxdd) { - var _result = _meos_c.set_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_in(String str, int spantype) { - var _result = _meos_c.span_in(str, spantype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String span_out(Pointer s, int maxdd) { - var _result = _meos_c.span_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_in(String str, int spantype) { - var _result = _meos_c.spanset_in(str, spantype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String spanset_out(Pointer ss, int maxdd) { - var _result = _meos_c.spanset_out(ss, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_make(Pointer values, int count, int basetype, boolean order) { - var _result = _meos_c.set_make(values, count, basetype, order); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_make_exp(Pointer values, int count, int maxcount, int basetype, boolean order) { - var _result = _meos_c.set_make_exp(values, count, maxcount, basetype, order); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_make_free(Pointer values, int count, int basetype, boolean order) { - var _result = _meos_c.set_make_free(values, count, basetype, order); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_make(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype) { - var _result = _meos_c.span_make(lower, upper, lower_inc, upper_inc, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void span_set(Pointer lower, Pointer upper, boolean lower_inc, boolean upper_inc, int basetype, int spantype, Pointer s) { - _meos_c.span_set(lower, upper, lower_inc, upper_inc, basetype, spantype, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer spanset_make_exp(Pointer spans, int count, int maxcount, boolean normalize, boolean order) { - var _result = _meos_c.spanset_make_exp(spans, count, maxcount, normalize, order); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_make_free(Pointer spans, int count, boolean normalize, boolean order) { - var _result = _meos_c.spanset_make_free(spans, count, normalize, order); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_span(Pointer s) { - var _result = _meos_c.set_span(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_spanset(Pointer s) { - var _result = _meos_c.set_spanset(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void value_set_span(Pointer value, int basetype, Pointer s) { - _meos_c.value_set_span(value, basetype, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer value_set(Pointer d, int basetype) { - var _result = _meos_c.value_set(d, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer value_span(Pointer d, int basetype) { - var _result = _meos_c.value_span(d, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer value_spanset(Pointer d, int basetype) { - var _result = _meos_c.value_spanset(d, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int numspan_width(Pointer s) { - var _result = _meos_c.numspan_width(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int numspanset_width(Pointer ss, boolean boundspan) { - var _result = _meos_c.numspanset_width(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int set_end_value(Pointer s) { - var _result = _meos_c.set_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int set_mem_size(Pointer s) { - var _result = _meos_c.set_mem_size(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void set_set_subspan(Pointer s, int minidx, int maxidx, Pointer result) { - _meos_c.set_set_subspan(s, minidx, maxidx, result); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void set_set_span(Pointer s, Pointer result) { - _meos_c.set_set_span(s, result); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int set_start_value(Pointer s) { - var _result = _meos_c.set_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_c.set_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer set_vals(Pointer s) { - var _result = _meos_c.set_vals(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_values(Pointer s) { - var _result = _meos_c.set_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_lower(Pointer ss) { - var _result = _meos_c.spanset_lower(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_mem_size(Pointer ss) { - var _result = _meos_c.spanset_mem_size(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_sps(Pointer ss) { - var _result = _meos_c.spanset_sps(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spanset_upper(Pointer ss) { - var _result = _meos_c.spanset_upper(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void bigintspan_set_floatspan(Pointer s1, Pointer s2) { - _meos_c.bigintspan_set_floatspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void bigintspan_set_intspan(Pointer s1, Pointer s2) { - _meos_c.bigintspan_set_intspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void datespan_set_tstzspan(Pointer s1, Pointer s2) { - _meos_c.datespan_set_tstzspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void floatspan_set_bigintspan(Pointer s1, Pointer s2) { - _meos_c.floatspan_set_bigintspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void floatspan_set_intspan(Pointer s1, Pointer s2) { - _meos_c.floatspan_set_intspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void intspan_set_bigintspan(Pointer s1, Pointer s2) { - _meos_c.intspan_set_bigintspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void intspan_set_floatspan(Pointer s1, Pointer s2) { - _meos_c.intspan_set_floatspan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer numset_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_c.numset_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer numspan_expand(Pointer s, Pointer value) { - var _result = _meos_c.numspan_expand(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer numspan_shift_scale(Pointer s, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_c.numspan_shift_scale(s, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer numspanset_shift_scale(Pointer ss, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_c.numspanset_shift_scale(ss, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer set_compact(Pointer s) { - var _result = _meos_c.set_compact(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void span_expand(Pointer s1, Pointer s2) { - _meos_c.span_expand(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer spanset_compact(Pointer ss) { - var _result = _meos_c.spanset_compact(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_expand_value(Pointer box, Pointer value, int basetyp) { - var _result = _meos_c.tbox_expand_value(box, value, basetyp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer textcat_textset_text_common(Pointer s, Pointer txt, boolean invert) { - var _result = _meos_c.textcat_textset_text_common(s, txt, invert); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tstzspan_set_datespan(Pointer s1, Pointer s2) { - _meos_c.tstzspan_set_datespan(s1, s2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static boolean adjacent_span_value(Pointer s, Pointer value) { - var _result = _meos_c.adjacent_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_c.adjacent_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean adjacent_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_c.adjacent_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_value_set(Pointer value, Pointer s) { - var _result = _meos_c.contained_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_value_span(Pointer value, Pointer s) { - var _result = _meos_c.contained_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_c.contained_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_value(Pointer s, Pointer value) { - var _result = _meos_c.contains_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_span_value(Pointer s, Pointer value) { - var _result = _meos_c.contains_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_c.contains_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean ovadj_span_span(Pointer s1, Pointer s2) { - var _result = _meos_c.ovadj_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_set_value(Pointer s, Pointer value) { - var _result = _meos_c.left_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_span_value(Pointer s, Pointer value) { - var _result = _meos_c.left_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_c.left_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_value_set(Pointer value, Pointer s) { - var _result = _meos_c.left_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_value_span(Pointer value, Pointer s) { - var _result = _meos_c.left_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean left_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_c.left_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean lfnadj_span_span(Pointer s1, Pointer s2) { - var _result = _meos_c.lfnadj_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_set_value(Pointer s, Pointer value) { - var _result = _meos_c.overleft_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_span_value(Pointer s, Pointer value) { - var _result = _meos_c.overleft_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_c.overleft_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_value_set(Pointer value, Pointer s) { - var _result = _meos_c.overleft_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_value_span(Pointer value, Pointer s) { - var _result = _meos_c.overleft_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overleft_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_c.overleft_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_set_value(Pointer s, Pointer value) { - var _result = _meos_c.overright_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_span_value(Pointer s, Pointer value) { - var _result = _meos_c.overright_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_c.overright_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_value_set(Pointer value, Pointer s) { - var _result = _meos_c.overright_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_value_span(Pointer value, Pointer s) { - var _result = _meos_c.overright_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean overright_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_c.overright_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_value_set(Pointer value, Pointer s) { - var _result = _meos_d.right_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_set_value(Pointer s, Pointer value) { - var _result = _meos_d.right_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_value_span(Pointer value, Pointer s) { - var _result = _meos_d.right_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_d.right_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_span_value(Pointer s, Pointer value) { - var _result = _meos_d.right_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean right_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_d.right_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean bbox_type(int bboxtype) { - var _result = _meos_d.bbox_type(bboxtype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long bbox_get_size(int bboxtype) { - var _result = _meos_d.bbox_get_size(bboxtype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int bbox_max_dims(int bboxtype) { - var _result = _meos_d.bbox_max_dims(bboxtype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_bbox_eq(Pointer box1, Pointer box2, int temptype) { - var _result = _meos_d.temporal_bbox_eq(box1, box2, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_bbox_cmp(Pointer box1, Pointer box2, int temptype) { - var _result = _meos_d.temporal_bbox_cmp(box1, box2, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void bbox_union_span_span(Pointer s1, Pointer s2, Pointer result) { - _meos_d.bbox_union_span_span(s1, s2, result); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer inter_span_span(Pointer s1, Pointer s2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.inter_span_span(s1, s2, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_value(Pointer s, Pointer value) { - var _result = _meos_d.intersection_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_span_value(Pointer s, Pointer value) { - var _result = _meos_d.intersection_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_d.intersection_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_value_set(Pointer value, Pointer s) { - var _result = _meos_d.intersection_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_value_span(Pointer value, Pointer s) { - var _result = _meos_d.intersection_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_d.intersection_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int mi_span_span(Pointer s1, Pointer s2, Pointer result) { - var _result = _meos_d.mi_span_span(s1, s2, result); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_value(Pointer s, Pointer value) { - var _result = _meos_d.minus_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_span_value(Pointer s, Pointer value) { - var _result = _meos_d.minus_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_d.minus_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_value_set(Pointer value, Pointer s) { - var _result = _meos_d.minus_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_value_span(Pointer value, Pointer s) { - var _result = _meos_d.minus_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_d.minus_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer super_union_span_span(Pointer s1, Pointer s2) { - var _result = _meos_d.super_union_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_value(Pointer s, Pointer value) { - var _result = _meos_d.union_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_span_value(Pointer s, Pointer value) { - var _result = _meos_d.union_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_d.union_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_value_set(Pointer value, Pointer s) { - var _result = _meos_d.union_value_set(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_value_span(Pointer value, Pointer s) { - var _result = _meos_d.union_value_span(value, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_value_spanset(Pointer value, Pointer ss) { - var _result = _meos_d.union_value_spanset(value, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_set_set(Pointer s1, Pointer s2) { - var _result = _meos_d.distance_set_set(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_set_value(Pointer s, Pointer value) { - var _result = _meos_d.distance_set_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_span_span(Pointer s1, Pointer s2) { - var _result = _meos_d.distance_span_span(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_span_value(Pointer s, Pointer value) { - var _result = _meos_d.distance_span_value(s, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_spanset_span(Pointer ss, Pointer s) { - var _result = _meos_d.distance_spanset_span(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_spanset_spanset(Pointer ss1, Pointer ss2) { - var _result = _meos_d.distance_spanset_spanset(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_spanset_value(Pointer ss, Pointer value) { - var _result = _meos_d.distance_spanset_value(ss, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int distance_value_value(Pointer l, Pointer r, int basetype) { - var _result = _meos_d.distance_value_value(l, r, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanbase_extent_transfn(Pointer state, Pointer value, int basetype) { - var _result = _meos_d.spanbase_extent_transfn(state, value, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer value_union_transfn(Pointer state, Pointer value, int basetype) { - var _result = _meos_d.value_union_transfn(state, value, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer number_tstzspan_to_tbox(Pointer d, int basetype, Pointer s) { - var _result = _meos_d.number_tstzspan_to_tbox(d, basetype, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer number_timestamptz_to_tbox(Pointer d, int basetype, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.number_timestamptz_to_tbox(d, basetype, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tbox_set(Pointer s, Pointer p, Pointer box) { - _meos_d.tbox_set(s, p, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void float_set_tbox(double d, Pointer box) { - _meos_d.float_set_tbox(d, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void int_set_tbox(int i, Pointer box) { - _meos_d.int_set_tbox(i, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void number_set_tbox(Pointer d, int basetype, Pointer box) { - _meos_d.number_set_tbox(d, basetype, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer number_tbox(Pointer value, int basetype) { - var _result = _meos_d.number_tbox(value, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void numset_set_tbox(Pointer s, Pointer box) { - _meos_d.numset_set_tbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void numspan_set_tbox(Pointer span, Pointer box) { - _meos_d.numspan_set_tbox(span, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void timestamptz_set_tbox(OffsetDateTime t, Pointer box) { - var t_new = t.toEpochSecond(); - _meos_d.timestamptz_set_tbox(t_new, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tstzset_set_tbox(Pointer s, Pointer box) { - _meos_d.tstzset_set_tbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tstzspan_set_tbox(Pointer s, Pointer box) { - _meos_d.tstzspan_set_tbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tbox_shift_scale_value(Pointer box, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_d.tbox_shift_scale_value(box, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tbox_expand(Pointer box1, Pointer box2) { - _meos_d.tbox_expand(box1, box2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer inter_tbox_tbox(Pointer box1, Pointer box2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.inter_tbox_tbox(box1, box2, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tboolinst_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tboolinst_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolinst_in(String str) { - var _result = _meos_d.tboolinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseq_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tboolseq_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseq_in(String str, int interp) { - var _result = _meos_d.tboolseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseqset_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tboolseqset_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tboolseqset_in(String str) { - var _result = _meos_d.tboolseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_in(String str, int temptype) { - var _result = _meos_d.temporal_in(str, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String temporal_out(Pointer temp, int maxdd) { - var _result = _meos_d.temporal_out(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temparr_out(Pointer temparr, int count, int maxdd) { - var _result = _meos_d.temparr_out(temparr, count, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatinst_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tfloatinst_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatinst_in(String str) { - var _result = _meos_d.tfloatinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseq_from_mfjson(Pointer mfjson, int interp) { - var _result = _meos_d.tfloatseq_from_mfjson(mfjson, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseq_in(String str, int interp) { - var _result = _meos_d.tfloatseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseqset_from_mfjson(Pointer mfjson, int interp) { - var _result = _meos_d.tfloatseqset_from_mfjson(mfjson, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tfloatseqset_in(String str) { - var _result = _meos_d.tfloatseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype) { - var _result = _meos_d.tinstant_from_mfjson(mfjson, spatial, srid, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_in(String str, int temptype) { - var _result = _meos_d.tinstant_in(str, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tinstant_out(Pointer inst, int maxdd) { - var _result = _meos_d.tinstant_out(inst, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintinst_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tintinst_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintinst_in(String str) { - var _result = _meos_d.tintinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseq_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tintseq_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseq_in(String str, int interp) { - var _result = _meos_d.tintseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseqset_from_mfjson(Pointer mfjson) { - var _result = _meos_d.tintseqset_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tintseqset_in(String str) { - var _result = _meos_d.tintseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp) { - var _result = _meos_d.tsequence_from_mfjson(mfjson, spatial, srid, temptype, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_in(String str, int temptype, int interp) { - var _result = _meos_d.tsequence_in(str, temptype, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tsequence_out(Pointer seq, int maxdd) { - var _result = _meos_d.tsequence_out(seq, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_from_mfjson(Pointer mfjson, boolean spatial, int srid, int temptype, int interp) { - var _result = _meos_d.tsequenceset_from_mfjson(mfjson, spatial, srid, temptype, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_in(String str, int temptype, int interp) { - var _result = _meos_d.tsequenceset_in(str, temptype, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tsequenceset_out(Pointer ss, int maxdd) { - var _result = _meos_d.tsequenceset_out(ss, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextinst_from_mfjson(Pointer mfjson) { - var _result = _meos_d.ttextinst_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextinst_in(String str) { - var _result = _meos_d.ttextinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseq_from_mfjson(Pointer mfjson) { - var _result = _meos_d.ttextseq_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseq_in(String str, int interp) { - var _result = _meos_d.ttextseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseqset_from_mfjson(Pointer mfjson) { - var _result = _meos_d.ttextseqset_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer ttextseqset_in(String str) { - var _result = _meos_d.ttextseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_from_mfjson(String mfjson, int temptype) { - var _result = _meos_d.temporal_from_mfjson(mfjson, temptype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_from_base_temp(Pointer value, int temptype, Pointer temp) { - var _result = _meos_d.temporal_from_base_temp(value, temptype, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_copy(Pointer inst) { - var _result = _meos_d.tinstant_copy(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_make(Pointer value, int temptype, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tinstant_make(value, temptype, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_make_free(Pointer value, int temptype, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tinstant_make_free(value, temptype, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_copy(Pointer seq) { - var _result = _meos_d.tsequence_copy(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_from_base_temp(Pointer value, int temptype, Pointer seq) { - var _result = _meos_d.tsequence_from_base_temp(value, temptype, seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_from_base_tstzset(Pointer value, int temptype, Pointer s) { - var _result = _meos_d.tsequence_from_base_tstzset(value, temptype, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_from_base_tstzspan(Pointer value, int temptype, Pointer s, int interp) { - var _result = _meos_d.tsequence_from_base_tstzspan(value, temptype, s, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_make_exp(Pointer instants, int count, int maxcount, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_d.tsequence_make_exp(instants, count, maxcount, lower_inc, upper_inc, interp, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_make_free(Pointer instants, int count, boolean lower_inc, boolean upper_inc, int interp, boolean normalize) { - var _result = _meos_d.tsequence_make_free(instants, count, lower_inc, upper_inc, interp, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_copy(Pointer ss) { - var _result = _meos_d.tsequenceset_copy(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tseqsetarr_to_tseqset(Pointer seqsets, int count, int totalseqs) { - var _result = _meos_d.tseqsetarr_to_tseqset(seqsets, count, totalseqs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_from_base_temp(Pointer value, int temptype, Pointer ss) { - var _result = _meos_d.tsequenceset_from_base_temp(value, temptype, ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_from_base_tstzspanset(Pointer value, int temptype, Pointer ss, int interp) { - var _result = _meos_d.tsequenceset_from_base_tstzspanset(value, temptype, ss, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_make_exp(Pointer sequences, int count, int maxcount, boolean normalize) { - var _result = _meos_d.tsequenceset_make_exp(sequences, count, maxcount, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_make_free(Pointer sequences, int count, boolean normalize) { - var _result = _meos_d.tsequenceset_make_free(sequences, count, normalize); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void temporal_set_tstzspan(Pointer temp, Pointer s) { - _meos_d.temporal_set_tstzspan(temp, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tinstant_set_tstzspan(Pointer inst, Pointer s) { - _meos_d.tinstant_set_tstzspan(inst, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tnumber_set_tbox(Pointer temp, Pointer box) { - _meos_d.tnumber_set_tbox(temp, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tnumberinst_set_tbox(Pointer inst, Pointer box) { - _meos_d.tnumberinst_set_tbox(inst, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tnumberseq_set_tbox(Pointer seq, Pointer box) { - _meos_d.tnumberseq_set_tbox(seq, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tnumberseqset_set_tbox(Pointer ss, Pointer box) { - _meos_d.tnumberseqset_set_tbox(ss, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tsequence_set_tstzspan(Pointer seq, Pointer s) { - _meos_d.tsequence_set_tstzspan(seq, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tsequenceset_set_tstzspan(Pointer ss, Pointer s) { - _meos_d.tsequenceset_set_tstzspan(ss, s); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer temporal_end_inst(Pointer temp) { - var _result = _meos_d.temporal_end_inst(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_end_value(Pointer temp) { - var _result = _meos_d.temporal_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_inst_n(Pointer temp, int n) { - var _result = _meos_d.temporal_inst_n(temp, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_insts_p(Pointer temp, Pointer count) { - var _result = _meos_d.temporal_insts_p(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_max_inst_p(Pointer temp) { - var _result = _meos_d.temporal_max_inst_p(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_max_value(Pointer temp) { - var _result = _meos_d.temporal_max_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long temporal_mem_size(Pointer temp) { - var _result = _meos_d.temporal_mem_size(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_min_inst_p(Pointer temp) { - var _result = _meos_d.temporal_min_inst_p(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_min_value(Pointer temp) { - var _result = _meos_d.temporal_min_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_sequences_p(Pointer temp, Pointer count) { - var _result = _meos_d.temporal_sequences_p(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void temporal_set_bbox(Pointer temp, Pointer box) { - _meos_d.temporal_set_bbox(temp, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer temporal_start_inst(Pointer temp) { - var _result = _meos_d.temporal_start_inst(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int temporal_start_value(Pointer temp) { - var _result = _meos_d.temporal_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_values_p(Pointer temp, Pointer count) { - var _result = _meos_d.temporal_values_p(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.temporal_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer temporal_values(Pointer temp, Pointer count) { - var _result = _meos_d.temporal_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tinstant_hash(Pointer inst) { - var _result = _meos_d.tinstant_hash(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_insts(Pointer inst, Pointer count) { - var _result = _meos_d.tinstant_insts(inst, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tinstant_set_bbox(Pointer inst, Pointer box) { - _meos_d.tinstant_set_bbox(inst, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tinstant_time(Pointer inst) { - var _result = _meos_d.tinstant_time(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_timestamps(Pointer inst, Pointer count) { - var _result = _meos_d.tinstant_timestamps(inst, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tinstant_value_p(Pointer inst) { - var _result = _meos_d.tinstant_value_p(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tinstant_value(Pointer inst) { - var _result = _meos_d.tinstant_value(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_value_at_timestamptz(Pointer inst, OffsetDateTime t) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - var t_new = t.toEpochSecond(); - out = _meos_d.tinstant_value_at_timestamptz(inst, t_new, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_values_p(Pointer inst, Pointer count) { - var _result = _meos_d.tinstant_values_p(inst, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tnumber_set_span(Pointer temp, Pointer span) { - _meos_d.tnumber_set_span(temp, span); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tnumberinst_valuespans(Pointer inst) { - var _result = _meos_d.tnumberinst_valuespans(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseq_avg_val(Pointer seq) { - var _result = _meos_d.tnumberseq_avg_val(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseq_valuespans(Pointer seq) { - var _result = _meos_d.tnumberseq_valuespans(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseqset_avg_val(Pointer ss) { - var _result = _meos_d.tnumberseqset_avg_val(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_valuespans(Pointer ss) { - var _result = _meos_d.tnumberseqset_valuespans(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_duration(Pointer seq) { - var _result = _meos_d.tsequence_duration(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tsequence_end_timestamptz(Pointer seq) { - var _result = _meos_d.tsequence_end_timestamptz(seq); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static int tsequence_hash(Pointer seq) { - var _result = _meos_d.tsequence_hash(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_insts_p(Pointer seq) { - var _result = _meos_d.tsequence_insts_p(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_max_inst_p(Pointer seq) { - var _result = _meos_d.tsequence_max_inst_p(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequence_max_val(Pointer seq) { - var _result = _meos_d.tsequence_max_val(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_min_inst_p(Pointer seq) { - var _result = _meos_d.tsequence_min_inst_p(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequence_min_val(Pointer seq) { - var _result = _meos_d.tsequence_min_val(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_segments(Pointer seq, Pointer count) { - var _result = _meos_d.tsequence_segments(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_seqs(Pointer seq, Pointer count) { - var _result = _meos_d.tsequence_seqs(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tsequence_start_timestamptz(Pointer seq) { - var _result = _meos_d.tsequence_start_timestamptz(seq); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tsequence_time(Pointer seq) { - var _result = _meos_d.tsequence_time(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_timestamps(Pointer seq, Pointer count) { - var _result = _meos_d.tsequence_timestamps(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_value_at_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - var t_new = t.toEpochSecond(); - out = _meos_d.tsequence_value_at_timestamptz(seq, t_new, strict, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_values_p(Pointer seq, Pointer count) { - var _result = _meos_d.tsequence_values_p(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_duration(Pointer ss, boolean boundspan) { - var _result = _meos_d.tsequenceset_duration(ss, boundspan); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tsequenceset_end_timestamptz(Pointer ss) { - var _result = _meos_d.tsequenceset_end_timestamptz(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static int tsequenceset_hash(Pointer ss) { - var _result = _meos_d.tsequenceset_hash(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_inst_n(Pointer ss, int n) { - var _result = _meos_d.tsequenceset_inst_n(ss, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_insts_p(Pointer ss) { - var _result = _meos_d.tsequenceset_insts_p(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_max_inst_p(Pointer ss) { - var _result = _meos_d.tsequenceset_max_inst_p(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequenceset_max_val(Pointer ss) { - var _result = _meos_d.tsequenceset_max_val(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_min_inst_p(Pointer ss) { - var _result = _meos_d.tsequenceset_min_inst_p(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequenceset_min_val(Pointer ss) { - var _result = _meos_d.tsequenceset_min_val(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequenceset_num_instants(Pointer ss) { - var _result = _meos_d.tsequenceset_num_instants(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequenceset_num_timestamps(Pointer ss) { - var _result = _meos_d.tsequenceset_num_timestamps(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_segments(Pointer ss, Pointer count) { - var _result = _meos_d.tsequenceset_segments(ss, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_sequences_p(Pointer ss) { - var _result = _meos_d.tsequenceset_sequences_p(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime tsequenceset_start_timestamptz(Pointer ss) { - var _result = _meos_d.tsequenceset_start_timestamptz(ss); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_time(Pointer ss) { - var _result = _meos_d.tsequenceset_time(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_timestamptz_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.tsequenceset_timestamptz_n(ss, n, result); - MeosErrorHandler.checkError(); - return out ? result : null; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_timestamps(Pointer ss, Pointer count) { - var _result = _meos_d.tsequenceset_timestamps(ss, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_value_at_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - var t_new = t.toEpochSecond(); - out = _meos_d.tsequenceset_value_at_timestamptz(ss, t_new, strict, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_value_n(Pointer ss, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.tsequenceset_value_n(ss, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_values_p(Pointer ss, Pointer count) { - var _result = _meos_d.tsequenceset_values_p(ss, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void temporal_restart(Pointer temp, int count) { - _meos_d.temporal_restart(temp, count); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer temporal_tsequence(Pointer temp, int interp) { - var _result = _meos_d.temporal_tsequence(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_tsequenceset(Pointer temp, int interp) { - var _result = _meos_d.temporal_tsequenceset(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_shift_time(Pointer inst, Pointer interv) { - var _result = _meos_d.tinstant_shift_time(inst, interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_to_tsequence(Pointer inst, int interp) { - var _result = _meos_d.tinstant_to_tsequence(inst, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_to_tsequence_free(Pointer inst, int interp) { - var _result = _meos_d.tinstant_to_tsequence_free(inst, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_to_tsequenceset(Pointer inst, int interp) { - var _result = _meos_d.tinstant_to_tsequenceset(inst, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_shift_scale_value(Pointer temp, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_d.tnumber_shift_scale_value(temp, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberinst_shift_value(Pointer inst, Pointer shift) { - var _result = _meos_d.tnumberinst_shift_value(inst, shift); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseq_shift_scale_value(Pointer seq, Pointer shift, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_d.tnumberseq_shift_scale_value(seq, shift, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_shift_scale_value(Pointer ss, Pointer start, Pointer width, boolean hasshift, boolean haswidth) { - var _result = _meos_d.tnumberseqset_shift_scale_value(ss, start, width, hasshift, haswidth); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tsequence_restart(Pointer seq, int count) { - _meos_d.tsequence_restart(seq, count); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tsequence_set_interp(Pointer seq, int interp) { - var _result = _meos_d.tsequence_set_interp(seq, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_shift_scale_time(Pointer seq, Pointer shift, Pointer duration) { - var _result = _meos_d.tsequence_shift_scale_time(seq, shift, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_subseq(Pointer seq, int from, int to, boolean lower_inc, boolean upper_inc) { - var _result = _meos_d.tsequence_subseq(seq, from, to, lower_inc, upper_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_to_tinstant(Pointer seq) { - var _result = _meos_d.tsequence_to_tinstant(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_to_tsequenceset(Pointer seq) { - var _result = _meos_d.tsequence_to_tsequenceset(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_to_tsequenceset_free(Pointer seq) { - var _result = _meos_d.tsequence_to_tsequenceset_free(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_to_tsequenceset_interp(Pointer seq, int interp) { - var _result = _meos_d.tsequence_to_tsequenceset_interp(seq, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tsequenceset_restart(Pointer ss, int count) { - _meos_d.tsequenceset_restart(ss, count); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_set_interp(Pointer ss, int interp) { - var _result = _meos_d.tsequenceset_set_interp(ss, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_shift_scale_time(Pointer ss, Pointer start, Pointer duration) { - var _result = _meos_d.tsequenceset_shift_scale_time(ss, start, duration); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_to_discrete(Pointer ss) { - var _result = _meos_d.tsequenceset_to_discrete(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_to_linear(Pointer ss) { - var _result = _meos_d.tsequenceset_to_linear(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_to_step(Pointer ss) { - var _result = _meos_d.tsequenceset_to_step(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_to_tinstant(Pointer ss) { - var _result = _meos_d.tsequenceset_to_tinstant(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_to_tsequence(Pointer ss) { - var _result = _meos_d.tsequenceset_to_tsequence(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_merge(Pointer inst1, Pointer inst2) { - var _result = _meos_d.tinstant_merge(inst1, inst2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_merge_array(Pointer instants, int count) { - var _result = _meos_d.tinstant_merge_array(instants, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_append_tinstant(Pointer seq, Pointer inst, double maxdist, Pointer maxt, boolean expand) { - var _result = _meos_d.tsequence_append_tinstant(seq, inst, maxdist, maxt, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_append_tsequence(Pointer seq1, Pointer seq2, boolean expand) { - var _result = _meos_d.tsequence_append_tsequence(seq1, seq2, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_delete_timestamptz(Pointer seq, OffsetDateTime t, boolean connect) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequence_delete_timestamptz(seq, t_new, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_delete_tstzset(Pointer seq, Pointer s, boolean connect) { - var _result = _meos_d.tsequence_delete_tstzset(seq, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_delete_tstzspan(Pointer seq, Pointer s, boolean connect) { - var _result = _meos_d.tsequence_delete_tstzspan(seq, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_delete_tstzspanset(Pointer seq, Pointer ss, boolean connect) { - var _result = _meos_d.tsequence_delete_tstzspanset(seq, ss, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_insert(Pointer seq1, Pointer seq2, boolean connect) { - var _result = _meos_d.tsequence_insert(seq1, seq2, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_merge(Pointer seq1, Pointer seq2) { - var _result = _meos_d.tsequence_merge(seq1, seq2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_merge_array(Pointer sequences, int count) { - var _result = _meos_d.tsequence_merge_array(sequences, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_append_tinstant(Pointer ss, Pointer inst, double maxdist, Pointer maxt, boolean expand) { - var _result = _meos_d.tsequenceset_append_tinstant(ss, inst, maxdist, maxt, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_append_tsequence(Pointer ss, Pointer seq, boolean expand) { - var _result = _meos_d.tsequenceset_append_tsequence(ss, seq, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_delete_timestamptz(Pointer ss, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequenceset_delete_timestamptz(ss, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_delete_tstzset(Pointer ss, Pointer s) { - var _result = _meos_d.tsequenceset_delete_tstzset(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_delete_tstzspan(Pointer ss, Pointer s) { - var _result = _meos_d.tsequenceset_delete_tstzspan(ss, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_delete_tstzspanset(Pointer ss, Pointer ps) { - var _result = _meos_d.tsequenceset_delete_tstzspanset(ss, ps); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_insert(Pointer ss1, Pointer ss2) { - var _result = _meos_d.tsequenceset_insert(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_merge(Pointer ss1, Pointer ss2) { - var _result = _meos_d.tsequenceset_merge(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_merge_array(Pointer seqsets, int count) { - var _result = _meos_d.tsequenceset_merge_array(seqsets, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tsequence_expand_bbox(Pointer seq, Pointer inst) { - _meos_d.tsequence_expand_bbox(seq, inst); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tsequence_set_bbox(Pointer seq, Pointer box) { - _meos_d.tsequence_set_bbox(seq, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tsequenceset_expand_bbox(Pointer ss, Pointer seq) { - _meos_d.tsequenceset_expand_bbox(ss, seq); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tsequenceset_set_bbox(Pointer ss, Pointer box) { - _meos_d.tsequenceset_set_bbox(ss, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tcontseq_after_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tcontseq_after_timestamptz(seq, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontseq_before_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tcontseq_before_timestamptz(seq, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tcontseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc) { - var _result = _meos_d.tcontseq_restrict_minmax(seq, min, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdiscseq_after_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tdiscseq_after_timestamptz(seq, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdiscseq_before_timestamptz(Pointer seq, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tdiscseq_before_timestamptz(seq, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdiscseq_restrict_minmax(Pointer seq, boolean min, boolean atfunc) { - var _result = _meos_d.tdiscseq_restrict_minmax(seq, min, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean temporal_bbox_restrict_set(Pointer temp, Pointer set) { - var _result = _meos_d.temporal_bbox_restrict_set(temp, set); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_minmax(Pointer temp, boolean min, boolean atfunc) { - var _result = _meos_d.temporal_restrict_minmax(temp, min, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_timestamptz(Pointer temp, OffsetDateTime t, boolean atfunc) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.temporal_restrict_timestamptz(temp, t_new, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.temporal_restrict_tstzset(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.temporal_restrict_tstzspan(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc) { - var _result = _meos_d.temporal_restrict_tstzspanset(temp, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_value(Pointer temp, Pointer value, boolean atfunc) { - var _result = _meos_d.temporal_restrict_value(temp, value, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_restrict_values(Pointer temp, Pointer set, boolean atfunc) { - var _result = _meos_d.temporal_restrict_values(temp, set, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - var t_new = t.toEpochSecond(); - out = _meos_d.temporal_value_at_timestamptz(temp, t_new, strict, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_after_timestamptz(Pointer inst, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tinstant_after_timestamptz(inst, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_before_timestamptz(Pointer inst, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tinstant_before_timestamptz(inst, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_tstzspan(Pointer inst, Pointer period, boolean atfunc) { - var _result = _meos_d.tinstant_restrict_tstzspan(inst, period, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_tstzspanset(Pointer inst, Pointer ss, boolean atfunc) { - var _result = _meos_d.tinstant_restrict_tstzspanset(inst, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_timestamptz(Pointer inst, OffsetDateTime t, boolean atfunc) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tinstant_restrict_timestamptz(inst, t_new, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_tstzset(Pointer inst, Pointer s, boolean atfunc) { - var _result = _meos_d.tinstant_restrict_tstzset(inst, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_value(Pointer inst, Pointer value, boolean atfunc) { - var _result = _meos_d.tinstant_restrict_value(inst, value, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tinstant_restrict_values(Pointer inst, Pointer set, boolean atfunc) { - var _result = _meos_d.tinstant_restrict_values(inst, set, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_restrict_span(Pointer temp, Pointer span, boolean atfunc) { - var _result = _meos_d.tnumber_restrict_span(temp, span, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_restrict_spanset(Pointer temp, Pointer ss, boolean atfunc) { - var _result = _meos_d.tnumber_restrict_spanset(temp, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberinst_restrict_span(Pointer inst, Pointer span, boolean atfunc) { - var _result = _meos_d.tnumberinst_restrict_span(inst, span, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberinst_restrict_spanset(Pointer inst, Pointer ss, boolean atfunc) { - var _result = _meos_d.tnumberinst_restrict_spanset(inst, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_restrict_span(Pointer ss, Pointer span, boolean atfunc) { - var _result = _meos_d.tnumberseqset_restrict_span(ss, span, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_restrict_spanset(Pointer ss, Pointer spanset, boolean atfunc) { - var _result = _meos_d.tnumberseqset_restrict_spanset(ss, spanset, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_at_timestamptz(Pointer seq, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequence_at_timestamptz(seq, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_restrict_tstzspan(Pointer seq, Pointer s, boolean atfunc) { - var _result = _meos_d.tsequence_restrict_tstzspan(seq, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_restrict_tstzspanset(Pointer seq, Pointer ss, boolean atfunc) { - var _result = _meos_d.tsequence_restrict_tstzspanset(seq, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_after_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequenceset_after_timestamptz(ss, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_before_timestamptz(Pointer ss, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequenceset_before_timestamptz(ss, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_minmax(Pointer ss, boolean min, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_minmax(ss, min, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_tstzspan(Pointer ss, Pointer s, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_tstzspan(ss, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_tstzspanset(Pointer ss, Pointer ps, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_tstzspanset(ss, ps, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_timestamptz(Pointer ss, OffsetDateTime t, boolean atfunc) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tsequenceset_restrict_timestamptz(ss, t_new, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_tstzset(Pointer ss, Pointer s, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_tstzset(ss, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_value(Pointer ss, Pointer value, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_value(ss, value, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_restrict_values(Pointer ss, Pointer s, boolean atfunc) { - var _result = _meos_d.tsequenceset_restrict_values(ss, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tinstant_cmp(Pointer inst1, Pointer inst2) { - var _result = _meos_d.tinstant_cmp(inst1, inst2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tinstant_eq(Pointer inst1, Pointer inst2) { - var _result = _meos_d.tinstant_eq(inst1, inst2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequence_cmp(Pointer seq1, Pointer seq2) { - var _result = _meos_d.tsequence_cmp(seq1, seq2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tsequence_eq(Pointer seq1, Pointer seq2) { - var _result = _meos_d.tsequence_eq(seq1, seq2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tsequenceset_cmp(Pointer ss1, Pointer ss2) { - var _result = _meos_d.tsequenceset_cmp(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tsequenceset_eq(Pointer ss1, Pointer ss2) { - var _result = _meos_d.tsequenceset_eq(ss1, ss2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_eq_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_eq_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_ne_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_ne_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_ge_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ge_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_ge_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_gt_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_gt_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_gt_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_le_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_le_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_le_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.always_lt_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_lt_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.always_lt_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_eq_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_eq_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_ne_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_ne_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_ge_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ge_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_ge_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_gt_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_gt_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_gt_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_le_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_le_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_le_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_base_temporal(Pointer value, Pointer temp) { - var _result = _meos_d.ever_lt_base_temporal(value, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_lt_temporal_base(Pointer temp, Pointer value) { - var _result = _meos_d.ever_lt_temporal_base(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberinst_abs(Pointer inst) { - var _result = _meos_d.tnumberinst_abs(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseq_abs(Pointer seq) { - var _result = _meos_d.tnumberseq_abs(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseq_angular_difference(Pointer seq) { - var _result = _meos_d.tnumberseq_angular_difference(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseq_delta_value(Pointer seq) { - var _result = _meos_d.tnumberseq_delta_value(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_abs(Pointer ss) { - var _result = _meos_d.tnumberseqset_abs(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_angular_difference(Pointer ss) { - var _result = _meos_d.tnumberseqset_angular_difference(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumberseqset_delta_value(Pointer ss) { - var _result = _meos_d.tnumberseqset_delta_value(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_span_span_double(Pointer s1, Pointer s2) { - var _result = _meos_d.distance_span_span_double(s1, s2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tbox_tbox(Pointer box1, Pointer box2) { - var _result = _meos_d.nad_tbox_tbox(box1, box2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnumber_number(Pointer temp, Pointer value) { - var _result = _meos_d.nad_tnumber_number(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnumber_tbox(Pointer temp, Pointer box) { - var _result = _meos_d.nad_tnumber_tbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnumber_tnumber(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_tnumber_tnumber(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tnumber_number(Pointer temp, Pointer value) { - var _result = _meos_d.tdistance_tnumber_number(temp, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberinst_distance(Pointer inst1, Pointer inst2) { - var _result = _meos_d.tnumberinst_distance(inst1, inst2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseq_integral(Pointer seq) { - var _result = _meos_d.tnumberseq_integral(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseq_twavg(Pointer seq) { - var _result = _meos_d.tnumberseq_twavg(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseqset_integral(Pointer ss) { - var _result = _meos_d.tnumberseqset_integral(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnumberseqset_twavg(Pointer ss) { - var _result = _meos_d.tnumberseqset_twavg(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_compact(Pointer temp) { - var _result = _meos_d.temporal_compact(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequence_compact(Pointer seq) { - var _result = _meos_d.tsequence_compact(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tsequenceset_compact(Pointer ss) { - var _result = _meos_d.tsequenceset_compact(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_skiplist_make() { - var _result = _meos_d.temporal_skiplist_make(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer skiplist_make(long key_size, long value_size, Pointer comp_fn, Pointer merge_fn) { - var _result = _meos_d.skiplist_make(key_size, value_size, comp_fn, merge_fn); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int skiplist_search(Pointer list, Pointer key, Pointer value) { - var _result = _meos_d.skiplist_search(list, key, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void skiplist_free(Pointer list) { - _meos_d.skiplist_free(list); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void skiplist_splice(Pointer list, Pointer keys, Pointer values, int count, Pointer func, boolean crossings, int sktype) { - _meos_d.skiplist_splice(list, keys, values, count, func, crossings, sktype); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void temporal_skiplist_splice(Pointer list, Pointer values, int count, Pointer func, boolean crossings) { - _meos_d.temporal_skiplist_splice(list, values, count, func, crossings); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer skiplist_values(Pointer list) { - var _result = _meos_d.skiplist_values(list); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer skiplist_keys_values(Pointer list, Pointer values) { - var _result = _meos_d.skiplist_keys_values(list, values); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_app_tinst_transfn(Pointer state, Pointer inst, int interp, double maxdist, Pointer maxt) { - var _result = _meos_d.temporal_app_tinst_transfn(state, inst, interp, maxdist, maxt); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer temporal_app_tseq_transfn(Pointer state, Pointer seq) { - var _result = _meos_d.temporal_app_tseq_transfn(state, seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer span_bins(Pointer s, Pointer size, Pointer origin, Pointer count) { - var _result = _meos_d.span_bins(s, size, origin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer spanset_bins(Pointer ss, Pointer size, Pointer origin, Pointer count) { - var _result = _meos_d.spanset_bins(ss, size, origin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_value_bins(Pointer temp, Pointer size, Pointer origin, Pointer count) { - var _result = _meos_d.tnumber_value_bins(temp, size, origin, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_value_time_boxes(Pointer temp, Pointer vsize, Pointer duration, Pointer vorigin, OffsetDateTime torigin, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tnumber_value_time_boxes(temp, vsize, duration, vorigin, torigin_new, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_value_split(Pointer temp, Pointer vsize, Pointer vorigin, Pointer bins, Pointer count) { - var _result = _meos_d.tnumber_value_split(temp, vsize, vorigin, bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tbox_get_value_time_tile(Pointer value, OffsetDateTime t, Pointer vsize, Pointer duration, Pointer vorigin, OffsetDateTime torigin, int basetype, int spantype) { - var t_new = t.toEpochSecond(); - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tbox_get_value_time_tile(value, t_new, vsize, duration, vorigin, torigin_new, basetype, spantype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnumber_value_time_split(Pointer temp, Pointer size, Pointer duration, Pointer vorigin, OffsetDateTime torigin, Pointer value_bins, Pointer time_bins, Pointer count) { - var torigin_new = torigin.toEpochSecond(); - var _result = _meos_d.tnumber_value_time_split(temp, size, duration, vorigin, torigin_new, value_bins, time_bins, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer proj_get_context() { - var _result = _meos_d.proj_get_context(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int datum_geo_round(Pointer value, Pointer size) { - var _result = _meos_d.datum_geo_round(value, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer point_round(Pointer gs, int maxdd) { - var _result = _meos_d.point_round(gs, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void stbox_set(boolean hasx, boolean hasz, boolean geodetic, int srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, Pointer s, Pointer box) { - _meos_d.stbox_set(hasx, hasz, geodetic, srid, xmin, xmax, ymin, ymax, zmin, zmax, s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void gbox_set_stbox(Pointer box, int srid, Pointer result) { - _meos_d.gbox_set_stbox(box, srid, result); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static boolean geo_set_stbox(Pointer gs, Pointer box) { - var _result = _meos_d.geo_set_stbox(gs, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void geoarr_set_stbox(Pointer values, int count, Pointer box) { - _meos_d.geoarr_set_stbox(values, count, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static boolean spatial_set_stbox(Pointer d, int basetype, Pointer box) { - var _result = _meos_d.spatial_set_stbox(d, basetype, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void spatialset_set_stbox(Pointer set, Pointer box) { - _meos_d.spatialset_set_stbox(set, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void stbox_set_box3d(Pointer box, Pointer box3d) { - _meos_d.stbox_set_box3d(box, box3d); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void stbox_set_gbox(Pointer box, Pointer gbox) { - _meos_d.stbox_set_gbox(box, gbox); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tstzset_set_stbox(Pointer s, Pointer box) { - _meos_d.tstzset_set_stbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tstzspan_set_stbox(Pointer s, Pointer box) { - _meos_d.tstzspan_set_stbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tstzspanset_set_stbox(Pointer s, Pointer box) { - _meos_d.tstzspanset_set_stbox(s, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void stbox_expand(Pointer box1, Pointer box2) { - _meos_d.stbox_expand(box1, box2); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer inter_stbox_stbox(Pointer box1, Pointer box2) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.inter_stbox_stbox(box1, box2, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer stbox_geo(Pointer box) { - var _result = _meos_d.stbox_geo(box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointinst_from_mfjson(Pointer mfjson, int srid) { - var _result = _meos_d.tgeogpointinst_from_mfjson(mfjson, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointinst_in(String str) { - var _result = _meos_d.tgeogpointinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointseq_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeogpointseq_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointseq_in(String str, int interp) { - var _result = _meos_d.tgeogpointseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointseqset_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeogpointseqset_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeogpointseqset_in(String str) { - var _result = _meos_d.tgeogpointseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointinst_from_mfjson(Pointer mfjson, int srid) { - var _result = _meos_d.tgeompointinst_from_mfjson(mfjson, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointinst_in(String str) { - var _result = _meos_d.tgeompointinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointseq_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeompointseq_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointseq_in(String str, int interp) { - var _result = _meos_d.tgeompointseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointseqset_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeompointseqset_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompointseqset_in(String str) { - var _result = _meos_d.tgeompointseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyinst_from_mfjson(Pointer mfjson, int srid) { - var _result = _meos_d.tgeographyinst_from_mfjson(mfjson, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyinst_in(String str) { - var _result = _meos_d.tgeographyinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyseq_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeographyseq_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyseq_in(String str, int interp) { - var _result = _meos_d.tgeographyseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyseqset_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeographyseqset_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeographyseqset_in(String str) { - var _result = _meos_d.tgeographyseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryinst_from_mfjson(Pointer mfjson, int srid) { - var _result = _meos_d.tgeometryinst_from_mfjson(mfjson, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryinst_in(String str) { - var _result = _meos_d.tgeometryinst_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryseq_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeometryseq_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryseq_in(String str, int interp) { - var _result = _meos_d.tgeometryseq_in(str, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryseqset_from_mfjson(Pointer mfjson, int srid, int interp) { - var _result = _meos_d.tgeometryseqset_from_mfjson(mfjson, srid, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeometryseqset_in(String str) { - var _result = _meos_d.tgeometryseqset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tspatial_set_stbox(Pointer temp, Pointer box) { - _meos_d.tspatial_set_stbox(temp, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tgeoinst_set_stbox(Pointer inst, Pointer box) { - _meos_d.tgeoinst_set_stbox(inst, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tspatialseq_set_stbox(Pointer seq, Pointer box) { - _meos_d.tspatialseq_set_stbox(seq, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static void tspatialseqset_set_stbox(Pointer ss, Pointer box) { - _meos_d.tspatialseqset_set_stbox(ss, box); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tgeo_restrict_elevation(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.tgeo_restrict_elevation(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_restrict_geom(Pointer temp, Pointer gs, boolean atfunc) { - var _result = _meos_d.tgeo_restrict_geom(temp, gs, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_restrict_stbox(Pointer temp, Pointer box, boolean border_inc, boolean atfunc) { - var _result = _meos_d.tgeo_restrict_stbox(temp, box, border_inc, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoinst_restrict_geom(Pointer inst, Pointer gs, boolean atfunc) { - var _result = _meos_d.tgeoinst_restrict_geom(inst, gs, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoinst_restrict_stbox(Pointer inst, Pointer box, boolean border_inc, boolean atfunc) { - var _result = _meos_d.tgeoinst_restrict_stbox(inst, box, border_inc, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_restrict_geom(Pointer seq, Pointer gs, boolean atfunc) { - var _result = _meos_d.tgeoseq_restrict_geom(seq, gs, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_restrict_stbox(Pointer seq, Pointer box, boolean border_inc, boolean atfunc) { - var _result = _meos_d.tgeoseq_restrict_stbox(seq, box, border_inc, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseqset_restrict_geom(Pointer ss, Pointer gs, boolean atfunc) { - var _result = _meos_d.tgeoseqset_restrict_geom(ss, gs, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseqset_restrict_stbox(Pointer ss, Pointer box, boolean border_inc, boolean atfunc) { - var _result = _meos_d.tgeoseqset_restrict_stbox(ss, box, border_inc, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int spatial_srid(Pointer d, int basetype) { - var _result = _meos_d.spatial_srid(d, basetype); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean spatial_set_srid(Pointer d, int basetype, int srid) { - var _result = _meos_d.spatial_set_srid(d, basetype, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int tspatialinst_srid(Pointer inst) { - var _result = _meos_d.tspatialinst_srid(inst); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_azimuth(Pointer seq) { - var _result = _meos_d.tpointseq_azimuth(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_cumulative_length(Pointer seq, double prevlength) { - var _result = _meos_d.tpointseq_cumulative_length(seq, prevlength); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tpointseq_is_simple(Pointer seq) { - var _result = _meos_d.tpointseq_is_simple(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tpointseq_length(Pointer seq) { - var _result = _meos_d.tpointseq_length(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_linear_trajectory(Pointer seq, boolean unary_union) { - var _result = _meos_d.tpointseq_linear_trajectory(seq, unary_union); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_stboxes(Pointer seq, Pointer count) { - var _result = _meos_d.tgeoseq_stboxes(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseq_split_n_stboxes(Pointer seq, int max_count, Pointer count) { - var _result = _meos_d.tgeoseq_split_n_stboxes(seq, max_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseqset_azimuth(Pointer ss) { - var _result = _meos_d.tpointseqset_azimuth(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseqset_cumulative_length(Pointer ss) { - var _result = _meos_d.tpointseqset_cumulative_length(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tpointseqset_is_simple(Pointer ss) { - var _result = _meos_d.tpointseqset_is_simple(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tpointseqset_length(Pointer ss) { - var _result = _meos_d.tpointseqset_length(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseqset_stboxes(Pointer ss, Pointer count) { - var _result = _meos_d.tgeoseqset_stboxes(ss, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeoseqset_split_n_stboxes(Pointer ss, int max_count, Pointer count) { - var _result = _meos_d.tgeoseqset_split_n_stboxes(ss, max_count, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpoint_get_coord(Pointer temp, int coord) { - var _result = _meos_d.tpoint_get_coord(temp, coord); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeominst_tgeoginst(Pointer inst, boolean oper) { - var _result = _meos_d.tgeominst_tgeoginst(inst, oper); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeomseq_tgeogseq(Pointer seq, boolean oper) { - var _result = _meos_d.tgeomseq_tgeogseq(seq, oper); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeomseqset_tgeogseqset(Pointer ss, boolean oper) { - var _result = _meos_d.tgeomseqset_tgeogseqset(ss, oper); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeom_tgeog(Pointer temp, boolean oper) { - var _result = _meos_d.tgeom_tgeog(temp, oper); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeo_tpoint(Pointer temp, boolean oper) { - var _result = _meos_d.tgeo_tpoint(temp, oper); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tspatialinst_set_srid(Pointer inst, int srid) { - _meos_d.tspatialinst_set_srid(inst, srid); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_make_simple(Pointer seq, Pointer count) { - var _result = _meos_d.tpointseq_make_simple(seq, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tspatialseq_set_srid(Pointer seq, int srid) { - _meos_d.tspatialseq_set_srid(seq, srid); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tpointseqset_make_simple(Pointer ss, Pointer count) { - var _result = _meos_d.tpointseqset_make_simple(ss, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void tspatialseqset_set_srid(Pointer ss, int srid) { - _meos_d.tspatialseqset_set_srid(ss, srid); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static Pointer tpointseq_twcentroid(Pointer seq) { - var _result = _meos_d.tpointseq_twcentroid(seq); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpointseqset_twcentroid(Pointer ss) { - var _result = _meos_d.tpointseqset_twcentroid(ss); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String npoint_as_ewkt(Pointer np, int maxdd) { - var _result = _meos_d.npoint_as_ewkt(np, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String npoint_as_hexwkb(Pointer np, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_d.npoint_as_hexwkb(np, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String npoint_as_text(Pointer np, int maxdd) { - var _result = _meos_d.npoint_as_text(np, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_as_wkb(Pointer np, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_d.npoint_as_wkb(np, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_from_hexwkb(String hexwkb) { - var _result = _meos_d.npoint_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_from_wkb(Pointer wkb, long size) { - var _result = _meos_d.npoint_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_in(String str) { - var _result = _meos_d.npoint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String npoint_out(Pointer np, int maxdd) { - var _result = _meos_d.npoint_out(np, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nsegment_in(String str) { - var _result = _meos_d.nsegment_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String nsegment_out(Pointer ns, int maxdd) { - var _result = _meos_d.nsegment_out(ns, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_make(long rid, double pos) { - var _result = _meos_d.npoint_make(rid, pos); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nsegment_make(long rid, double pos1, double pos2) { - var _result = _meos_d.nsegment_make(rid, pos1, pos2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geompoint_to_npoint(Pointer gs) { - var _result = _meos_d.geompoint_to_npoint(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geom_to_nsegment(Pointer gs) { - var _result = _meos_d.geom_to_nsegment(gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_to_geompoint(Pointer np) { - var _result = _meos_d.npoint_to_geompoint(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_to_nsegment(Pointer np) { - var _result = _meos_d.npoint_to_nsegment(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_to_stbox(Pointer np) { - var _result = _meos_d.npoint_to_stbox(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nsegment_to_geom(Pointer ns) { - var _result = _meos_d.nsegment_to_geom(ns); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nsegment_to_stbox(Pointer np) { - var _result = _meos_d.nsegment_to_stbox(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int npoint_hash(Pointer np) { - var _result = _meos_d.npoint_hash(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long npoint_hash_extended(Pointer np, long seed) { - var _result = _meos_d.npoint_hash_extended(np, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double npoint_position(Pointer np) { - var _result = _meos_d.npoint_position(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long npoint_route(Pointer np) { - var _result = _meos_d.npoint_route(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nsegment_end_position(Pointer ns) { - var _result = _meos_d.nsegment_end_position(ns); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long nsegment_route(Pointer ns) { - var _result = _meos_d.nsegment_route(ns); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nsegment_start_position(Pointer ns) { - var _result = _meos_d.nsegment_start_position(ns); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean route_exists(long rid) { - var _result = _meos_d.route_exists(rid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer route_geom(long rid) { - var _result = _meos_d.route_geom(rid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double route_length(long rid) { - var _result = _meos_d.route_length(rid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_round(Pointer np, int maxdd) { - var _result = _meos_d.npoint_round(np, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nsegment_round(Pointer ns, int maxdd) { - var _result = _meos_d.nsegment_round(ns, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int get_srid_ways() { - var _result = _meos_d.get_srid_ways(); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int npoint_srid(Pointer np) { - var _result = _meos_d.npoint_srid(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nsegment_srid(Pointer ns) { - var _result = _meos_d.nsegment_srid(ns); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_timestamptz_to_stbox(Pointer np, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.npoint_timestamptz_to_stbox(np, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_tstzspan_to_stbox(Pointer np, Pointer s) { - var _result = _meos_d.npoint_tstzspan_to_stbox(np, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int npoint_cmp(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_cmp(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_eq(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_eq(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_ge(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_ge(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_gt(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_gt(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_le(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_le(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_lt(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_lt(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_ne(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_ne(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean npoint_same(Pointer np1, Pointer np2) { - var _result = _meos_d.npoint_same(np1, np2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int nsegment_cmp(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_cmp(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_eq(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_eq(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_ge(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_ge(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_gt(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_gt(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_le(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_le(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_lt(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_lt(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean nsegment_ne(Pointer ns1, Pointer ns2) { - var _result = _meos_d.nsegment_ne(ns1, ns2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_in(String str) { - var _result = _meos_d.npointset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String npointset_out(Pointer s, int maxdd) { - var _result = _meos_d.npointset_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_make(Pointer values, int count) { - var _result = _meos_d.npointset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_to_set(Pointer np) { - var _result = _meos_d.npoint_to_set(np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_end_value(Pointer s) { - var _result = _meos_d.npointset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_routes(Pointer s) { - var _result = _meos_d.npointset_routes(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_start_value(Pointer s) { - var _result = _meos_d.npointset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npointset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.npointset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer npointset_values(Pointer s) { - var _result = _meos_d.npointset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_npoint_set(Pointer np, Pointer s) { - var _result = _meos_d.contained_npoint_set(np, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_npoint(Pointer s, Pointer np) { - var _result = _meos_d.contains_set_npoint(s, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_npoint_set(Pointer np, Pointer s) { - var _result = _meos_d.intersection_npoint_set(np, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_npoint(Pointer s, Pointer np) { - var _result = _meos_d.intersection_set_npoint(s, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_npoint_set(Pointer np, Pointer s) { - var _result = _meos_d.minus_npoint_set(np, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_npoint(Pointer s, Pointer np) { - var _result = _meos_d.minus_set_npoint(s, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer npoint_union_transfn(Pointer state, Pointer np) { - var _result = _meos_d.npoint_union_transfn(state, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_npoint_set(Pointer np, Pointer s) { - var _result = _meos_d.union_npoint_set(np, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_npoint(Pointer s, Pointer np) { - var _result = _meos_d.union_set_npoint(s, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_in(String str) { - var _result = _meos_d.tnpoint_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_from_mfjson(String mfjson) { - var _result = _meos_d.tnpoint_from_mfjson(mfjson); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String tnpoint_out(Pointer temp, int maxdd) { - var _result = _meos_d.tnpoint_out(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpointinst_make(Pointer np, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tnpointinst_make(np, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tgeompoint_to_tnpoint(Pointer temp) { - var _result = _meos_d.tgeompoint_to_tnpoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_to_tgeompoint(Pointer temp) { - var _result = _meos_d.tnpoint_to_tgeompoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_cumulative_length(Pointer temp) { - var _result = _meos_d.tnpoint_cumulative_length(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double tnpoint_length(Pointer temp) { - var _result = _meos_d.tnpoint_length(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_positions(Pointer temp, Pointer count) { - var _result = _meos_d.tnpoint_positions(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long tnpoint_route(Pointer temp) { - var _result = _meos_d.tnpoint_route(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_routes(Pointer temp) { - var _result = _meos_d.tnpoint_routes(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_speed(Pointer temp) { - var _result = _meos_d.tnpoint_speed(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_trajectory(Pointer temp) { - var _result = _meos_d.tnpoint_trajectory(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_twcentroid(Pointer temp) { - var _result = _meos_d.tnpoint_twcentroid(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tnpoint_at_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_at_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.tnpoint_at_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_at_npointset(Pointer temp, Pointer s) { - var _result = _meos_d.tnpoint_at_npointset(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_at_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tnpoint_at_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tnpoint_minus_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_minus_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.tnpoint_minus_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_minus_npointset(Pointer temp, Pointer s) { - var _result = _meos_d.tnpoint_minus_npointset(temp, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tnpoint_minus_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.tdistance_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tnpoint_point(Pointer temp, Pointer gs) { - var _result = _meos_d.tdistance_tnpoint_point(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.tdistance_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nad_tnpoint_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.nad_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnpoint_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.nad_tnpoint_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tnpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nai_tnpoint_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.nai_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nai_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tnpoint_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.shortestline_tnpoint_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.shortestline_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.shortestline_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tnpoint_tcentroid_transfn(Pointer state, Pointer temp) { - var _result = _meos_d.tnpoint_tcentroid_transfn(state, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_npoint_tnpoint(Pointer np, Pointer temp) { - var _result = _meos_d.always_eq_npoint_tnpoint(np, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.always_eq_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_eq_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_npoint_tnpoint(Pointer np, Pointer temp) { - var _result = _meos_d.always_ne_npoint_tnpoint(np, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.always_ne_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_ne_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_npoint_tnpoint(Pointer np, Pointer temp) { - var _result = _meos_d.ever_eq_npoint_tnpoint(np, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.ever_eq_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_eq_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_npoint_tnpoint(Pointer np, Pointer temp) { - var _result = _meos_d.ever_ne_npoint_tnpoint(np, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.ever_ne_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tnpoint_tnpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_ne_tnpoint_tnpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.teq_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tnpoint_npoint(Pointer temp, Pointer np) { - var _result = _meos_d.tne_tnpoint_npoint(temp, np); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pose_as_ewkt(Pointer pose, int maxdd) { - var _result = _meos_d.pose_as_ewkt(pose, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pose_as_hexwkb(Pointer pose, byte variant, Pointer size) { - var _result = _meos_d.pose_as_hexwkb(pose, variant, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pose_as_text(Pointer pose, int maxdd) { - var _result = _meos_d.pose_as_text(pose, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_as_wkb(Pointer pose, byte variant) { - Runtime runtime = Runtime.getSystemRuntime(); - Pointer size_out = Memory.allocateDirect(runtime, Long.BYTES); - var _result = _meos_d.pose_as_wkb(pose, variant, size_out); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_from_wkb(Pointer wkb, long size) { - var _result = _meos_d.pose_from_wkb(wkb, size); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_from_hexwkb(String hexwkb) { - var _result = _meos_d.pose_from_hexwkb(hexwkb); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_in(String str) { - var _result = _meos_d.pose_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String pose_out(Pointer pose, int maxdd) { - var _result = _meos_d.pose_out(pose, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_copy(Pointer pose) { - var _result = _meos_d.pose_copy(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_make_2d(double x, double y, double theta, int srid) { - var _result = _meos_d.pose_make_2d(x, y, theta, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_make_3d(double x, double y, double z, double W, double X, double Y, double Z, int srid) { - var _result = _meos_d.pose_make_3d(x, y, z, W, X, Y, Z, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_make_point2d(Pointer gs, double theta) { - var _result = _meos_d.pose_make_point2d(gs, theta); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_make_point3d(Pointer gs, double W, double X, double Y, double Z) { - var _result = _meos_d.pose_make_point3d(gs, W, X, Y, Z); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_to_point(Pointer pose) { - var _result = _meos_d.pose_to_point(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_to_stbox(Pointer pose) { - var _result = _meos_d.pose_to_stbox(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int pose_hash(Pointer pose) { - var _result = _meos_d.pose_hash(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static long pose_hash_extended(Pointer pose, long seed) { - var _result = _meos_d.pose_hash_extended(pose, seed); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_orientation(Pointer pose) { - var _result = _meos_d.pose_orientation(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double pose_rotation(Pointer pose) { - var _result = _meos_d.pose_rotation(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_round(Pointer pose, int maxdd) { - var _result = _meos_d.pose_round(pose, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer posearr_round(Pointer posearr, int count, int maxdd) { - var _result = _meos_d.posearr_round(posearr, count, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static void pose_set_srid(Pointer pose, int srid) { - _meos_d.pose_set_srid(pose, srid); - MeosErrorHandler.checkError(); - } - - @SuppressWarnings("unused") - public static int pose_srid(Pointer pose) { - var _result = _meos_d.pose_srid(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_transform(Pointer pose, int srid) { - var _result = _meos_d.pose_transform(pose, srid); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_transform_pipeline(Pointer pose, String pipelinestr, int srid, boolean is_forward) { - var _result = _meos_d.pose_transform_pipeline(pose, pipelinestr, srid, is_forward); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_tstzspan_to_stbox(Pointer pose, Pointer s) { - var _result = _meos_d.pose_tstzspan_to_stbox(pose, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_timestamptz_to_stbox(Pointer pose, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.pose_timestamptz_to_stbox(pose, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_pose_geo(Pointer pose, Pointer gs) { - var _result = _meos_d.distance_pose_geo(pose, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_pose_pose(Pointer pose1, Pointer pose2) { - var _result = _meos_d.distance_pose_pose(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double distance_pose_stbox(Pointer pose, Pointer box) { - var _result = _meos_d.distance_pose_stbox(pose, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int pose_cmp(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_cmp(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_eq(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_eq(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_ge(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_ge(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_gt(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_gt(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_le(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_le(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_lt(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_lt(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_ne(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_ne(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_nsame(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_nsame(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean pose_same(Pointer pose1, Pointer pose2) { - var _result = _meos_d.pose_same(pose1, pose2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer poseset_in(String str) { - var _result = _meos_d.poseset_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String poseset_out(Pointer s, int maxdd) { - var _result = _meos_d.poseset_out(s, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer poseset_make(Pointer values, int count) { - var _result = _meos_d.poseset_make(values, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_to_set(Pointer pose) { - var _result = _meos_d.pose_to_set(pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer poseset_end_value(Pointer s) { - var _result = _meos_d.poseset_end_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer poseset_start_value(Pointer s) { - var _result = _meos_d.poseset_start_value(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer poseset_value_n(Pointer s, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.poseset_value_n(s, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer poseset_values(Pointer s) { - var _result = _meos_d.poseset_values(s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contained_pose_set(Pointer pose, Pointer s) { - var _result = _meos_d.contained_pose_set(pose, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean contains_set_pose(Pointer s, Pointer pose) { - var _result = _meos_d.contains_set_pose(s, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_pose_set(Pointer pose, Pointer s) { - var _result = _meos_d.intersection_pose_set(pose, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer intersection_set_pose(Pointer s, Pointer pose) { - var _result = _meos_d.intersection_set_pose(s, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_pose_set(Pointer pose, Pointer s) { - var _result = _meos_d.minus_pose_set(pose, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer minus_set_pose(Pointer s, Pointer pose) { - var _result = _meos_d.minus_set_pose(s, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer pose_union_transfn(Pointer state, Pointer pose) { - var _result = _meos_d.pose_union_transfn(state, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_pose_set(Pointer pose, Pointer s) { - var _result = _meos_d.union_pose_set(pose, s); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer union_set_pose(Pointer s, Pointer pose) { - var _result = _meos_d.union_set_pose(s, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_in(String str) { - var _result = _meos_d.tpose_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_make(Pointer tpoint, Pointer tradius) { - var _result = _meos_d.tpose_make(tpoint, tradius); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_to_tpoint(Pointer temp) { - var _result = _meos_d.tpose_to_tpoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_end_value(Pointer temp) { - var _result = _meos_d.tpose_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_points(Pointer temp) { - var _result = _meos_d.tpose_points(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_rotation(Pointer temp) { - var _result = _meos_d.tpose_rotation(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_start_value(Pointer temp) { - var _result = _meos_d.tpose_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_trajectory(Pointer temp) { - var _result = _meos_d.tpose_trajectory(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static boolean tpose_value_at_timestamptz(Pointer temp, OffsetDateTime t, boolean strict, Pointer value) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.tpose_value_at_timestamptz(temp, t_new, strict, value); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.tpose_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer tpose_values(Pointer temp, Pointer count) { - var _result = _meos_d.tpose_values(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_at_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tpose_at_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_at_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tpose_at_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_at_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.tpose_at_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_minus_geom(Pointer temp, Pointer gs) { - var _result = _meos_d.tpose_minus_geom(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_minus_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.tpose_minus_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tpose_minus_stbox(Pointer temp, Pointer box, boolean border_inc) { - var _result = _meos_d.tpose_minus_stbox(temp, box, border_inc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.tdistance_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tpose_point(Pointer temp, Pointer gs) { - var _result = _meos_d.tdistance_tpose_point(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.tdistance_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tpose_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nad_tpose_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.nad_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tpose_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.nad_tpose_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tpose_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nai_tpose_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.nai_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nai_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tpose_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.shortestline_tpose_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.shortestline_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.shortestline_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.always_eq_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.always_eq_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_eq_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.always_ne_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.always_ne_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_ne_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.ever_eq_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.ever_eq_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_eq_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.ever_ne_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.ever_ne_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_tpose_tpose(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_ne_tpose_tpose(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.teq_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.teq_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_pose_tpose(Pointer pose, Pointer temp) { - var _result = _meos_d.tne_pose_tpose(pose, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_tpose_pose(Pointer temp, Pointer pose) { - var _result = _meos_d.tne_tpose_pose(temp, pose); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String trgeo_out(Pointer temp) { - var _result = _meos_d.trgeo_out(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeoinst_make(Pointer geom, Pointer pose, OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.trgeoinst_make(geom, pose, t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer geo_tpose_to_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.geo_tpose_to_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_to_tpose(Pointer temp) { - var _result = _meos_d.trgeo_to_tpose(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_to_tpoint(Pointer temp) { - var _result = _meos_d.trgeo_to_tpoint(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_end_instant(Pointer temp) { - var _result = _meos_d.trgeo_end_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_end_sequence(Pointer temp) { - var _result = _meos_d.trgeo_end_sequence(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_end_value(Pointer temp) { - var _result = _meos_d.trgeo_end_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_geom(Pointer temp) { - var _result = _meos_d.trgeo_geom(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_instant_n(Pointer temp, int n) { - var _result = _meos_d.trgeo_instant_n(temp, n); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_instants(Pointer temp, Pointer count) { - var _result = _meos_d.trgeo_instants(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_points(Pointer temp) { - var _result = _meos_d.trgeo_points(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_rotation(Pointer temp) { - var _result = _meos_d.trgeo_rotation(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_segments(Pointer temp, Pointer count) { - var _result = _meos_d.trgeo_segments(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_sequence_n(Pointer temp, int i) { - var _result = _meos_d.trgeo_sequence_n(temp, i); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_sequences(Pointer temp, Pointer count) { - var _result = _meos_d.trgeo_sequences(temp, count); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_start_instant(Pointer temp) { - var _result = _meos_d.trgeo_start_instant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_start_sequence(Pointer temp) { - var _result = _meos_d.trgeo_start_sequence(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_start_value(Pointer temp) { - var _result = _meos_d.trgeo_start_value(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_value_n(Pointer temp, int n) { - boolean out; - Runtime runtime = Runtime.getSystemRuntime(); - Pointer result = Memory.allocateDirect(runtime, Long.BYTES); - out = _meos_d.trgeo_value_n(temp, n, result); - Pointer new_result = result.getPointer(0); - MeosErrorHandler.checkError(); - return out ? new_result : null; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_traversed_area(Pointer temp, boolean unary_union) { - var _result = _meos_d.trgeo_traversed_area(temp, unary_union); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_append_tinstant(Pointer temp, Pointer inst, int interp, double maxdist, Pointer maxt, boolean expand) { - var _result = _meos_d.trgeo_append_tinstant(temp, inst, interp, maxdist, maxt, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_append_tsequence(Pointer temp, Pointer seq, boolean expand) { - var _result = _meos_d.trgeo_append_tsequence(temp, seq, expand); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_delete_timestamptz(Pointer temp, OffsetDateTime t, boolean connect) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.trgeo_delete_timestamptz(temp, t_new, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_delete_tstzset(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_d.trgeo_delete_tstzset(temp, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_delete_tstzspan(Pointer temp, Pointer s, boolean connect) { - var _result = _meos_d.trgeo_delete_tstzspan(temp, s, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_delete_tstzspanset(Pointer temp, Pointer ss, boolean connect) { - var _result = _meos_d.trgeo_delete_tstzspanset(temp, ss, connect); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_round(Pointer temp, int maxdd) { - var _result = _meos_d.trgeo_round(temp, maxdd); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_set_interp(Pointer temp, int interp) { - var _result = _meos_d.trgeo_set_interp(temp, interp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_to_tinstant(Pointer temp) { - var _result = _meos_d.trgeo_to_tinstant(temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_after_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.trgeo_after_timestamptz(temp, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_before_timestamptz(Pointer temp, OffsetDateTime t, boolean strict) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.trgeo_before_timestamptz(temp, t_new, strict); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_value(Pointer temp, Pointer value, boolean atfunc) { - var _result = _meos_d.trgeo_restrict_value(temp, value, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_values(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.trgeo_restrict_values(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_timestamptz(Pointer temp, OffsetDateTime t, boolean atfunc) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.trgeo_restrict_timestamptz(temp, t_new, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_tstzset(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.trgeo_restrict_tstzset(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_tstzspan(Pointer temp, Pointer s, boolean atfunc) { - var _result = _meos_d.trgeo_restrict_tstzspan(temp, s, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer trgeo_restrict_tstzspanset(Pointer temp, Pointer ss, boolean atfunc) { - var _result = _meos_d.trgeo_restrict_tstzspanset(temp, ss, atfunc); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.tdistance_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_trgeo_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.tdistance_trgeo_tpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tdistance_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.tdistance_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_stbox_trgeo(Pointer box, Pointer temp) { - var _result = _meos_d.nad_stbox_trgeo(box, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nad_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_trgeo_stbox(Pointer temp, Pointer box) { - var _result = _meos_d.nad_trgeo_stbox(temp, box); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_trgeo_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_trgeo_tpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static double nad_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nad_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.nai_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_trgeo_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nai_trgeo_tpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer nai_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.nai_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.shortestline_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_trgeo_tpoint(Pointer temp1, Pointer temp2) { - var _result = _meos_d.shortestline_trgeo_tpoint(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer shortestline_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.shortestline_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.always_eq_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.always_eq_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_eq_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_eq_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.always_ne_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.always_ne_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int always_ne_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.always_ne_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.ever_eq_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.ever_eq_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_eq_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_eq_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.ever_ne_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.ever_ne_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int ever_ne_trgeo_trgeo(Pointer temp1, Pointer temp2) { - var _result = _meos_d.ever_ne_trgeo_trgeo(temp1, temp2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.teq_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer teq_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.teq_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_geo_trgeo(Pointer gs, Pointer temp) { - var _result = _meos_d.tne_geo_trgeo(gs, temp); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer tne_trgeo_geo(Pointer temp, Pointer gs) { - var _result = _meos_d.tne_trgeo_geo(temp, gs); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int geo_get_srid(Pointer g) { - var _result = _meos_d.geo_get_srid(g); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int date_in(String str) { - var _result = _meos_d.date_in(str); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String date_out(int d) { - var _result = _meos_d.date_out(d); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static int interval_cmp(Pointer interv1, Pointer interv2) { - var _result = _meos_d.interval_cmp(interv1, interv2); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer interval_in(String str, int typmod) { - var _result = _meos_d.interval_in(str, typmod); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String interval_out(Pointer interv) { - var _result = _meos_d.interval_out(interv); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static Pointer time_in(String str, int typmod) { - var _result = _meos_d.time_in(str, typmod); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static String time_out(Pointer t) { - var _result = _meos_d.time_out(t); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static LocalDateTime timestamp_in(String str, int typmod) { - var _result = _meos_d.timestamp_in(str, typmod); - MeosErrorHandler.checkError(); - return java.time.LocalDateTime.ofInstant(java.time.Instant.ofEpochSecond(_result), java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static String timestamp_out(LocalDateTime t) { - var t_new = t.toInstant(java.time.ZoneOffset.UTC).getEpochSecond(); - var _result = _meos_d.timestamp_out(t_new); - MeosErrorHandler.checkError(); - return _result; - } - - @SuppressWarnings("unused") - public static OffsetDateTime timestamptz_in(String str, int typmod) { - var _result = _meos_d.timestamptz_in(str, typmod); - MeosErrorHandler.checkError(); - return java.time.Instant.ofEpochSecond(_result).atOffset(java.time.ZoneOffset.UTC); - } - - @SuppressWarnings("unused") - public static String timestamptz_out(OffsetDateTime t) { - var t_new = t.toEpochSecond(); - var _result = _meos_d.timestamptz_out(t_new); - MeosErrorHandler.checkError(); - return _result; - } - -} From 8a772a11f3ac70f569d3f28d41ddfa48a42d184b Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sun, 31 May 2026 10:22:45 +0200 Subject: [PATCH 03/14] feat(meos): bump the rigid-geometry surface to the post-#1137 trgeometry C API MobilityDB #1137 renamed the public rigid-geometry C API from trgeo to trgeometry. The MEOS IDL the facade is generated from adopts the new names (verified 1:1 against the master meos_rgeo.h: 67 trgeo->trgeometry; the trgeoinst_make instant constructor is unchanged, matching master), so the generated functions.GeneratedFunctions and the bundled jar resolve against a post-#1137 libmeos. --- codegen/input/meos-idl.json | 134 ++++++++++++++++++------------------ 1 file changed, 67 insertions(+), 67 deletions(-) diff --git a/codegen/input/meos-idl.json b/codegen/input/meos-idl.json index dbdd46a6..186c3783 100644 --- a/codegen/input/meos-idl.json +++ b/codegen/input/meos-idl.json @@ -56842,7 +56842,7 @@ ] }, { - "name": "trgeo_out", + "name": "trgeometry_out", "file": "meos_rgeo.h", "returnType": { "c": "char *", @@ -56882,7 +56882,7 @@ ] }, { - "name": "geo_tpose_to_trgeo", + "name": "geo_tpose_to_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -56902,7 +56902,7 @@ ] }, { - "name": "trgeo_to_tpose", + "name": "trgeometry_to_tpose", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -56917,7 +56917,7 @@ ] }, { - "name": "trgeo_to_tpoint", + "name": "trgeometry_to_tpoint", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -56932,7 +56932,7 @@ ] }, { - "name": "trgeo_end_instant", + "name": "trgeometry_end_instant", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -56947,7 +56947,7 @@ ] }, { - "name": "trgeo_end_sequence", + "name": "trgeometry_end_sequence", "file": "meos_rgeo.h", "returnType": { "c": "TSequence *", @@ -56962,7 +56962,7 @@ ] }, { - "name": "trgeo_end_value", + "name": "trgeometry_end_value", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -56977,7 +56977,7 @@ ] }, { - "name": "trgeo_geom", + "name": "trgeometry_geom", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -56992,7 +56992,7 @@ ] }, { - "name": "trgeo_instant_n", + "name": "trgeometry_instant_n", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57012,7 +57012,7 @@ ] }, { - "name": "trgeo_instants", + "name": "trgeometry_instants", "file": "meos_rgeo.h", "returnType": { "c": "TInstant **", @@ -57032,7 +57032,7 @@ ] }, { - "name": "trgeo_points", + "name": "trgeometry_points", "file": "meos_rgeo.h", "returnType": { "c": "Set *", @@ -57047,7 +57047,7 @@ ] }, { - "name": "trgeo_rotation", + "name": "trgeometry_rotation", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57062,7 +57062,7 @@ ] }, { - "name": "trgeo_segments", + "name": "trgeometry_segments", "file": "meos_rgeo.h", "returnType": { "c": "TSequence **", @@ -57082,7 +57082,7 @@ ] }, { - "name": "trgeo_sequence_n", + "name": "trgeometry_sequence_n", "file": "meos_rgeo.h", "returnType": { "c": "TSequence *", @@ -57102,7 +57102,7 @@ ] }, { - "name": "trgeo_sequences", + "name": "trgeometry_sequences", "file": "meos_rgeo.h", "returnType": { "c": "TSequence **", @@ -57122,7 +57122,7 @@ ] }, { - "name": "trgeo_start_instant", + "name": "trgeometry_start_instant", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57137,7 +57137,7 @@ ] }, { - "name": "trgeo_start_sequence", + "name": "trgeometry_start_sequence", "file": "meos_rgeo.h", "returnType": { "c": "TSequence *", @@ -57152,7 +57152,7 @@ ] }, { - "name": "trgeo_start_value", + "name": "trgeometry_start_value", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -57167,7 +57167,7 @@ ] }, { - "name": "trgeo_value_n", + "name": "trgeometry_value_n", "file": "meos_rgeo.h", "returnType": { "c": "bool", @@ -57192,7 +57192,7 @@ ] }, { - "name": "trgeo_traversed_area", + "name": "trgeometry_traversed_area", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -57212,7 +57212,7 @@ ] }, { - "name": "trgeo_append_tinstant", + "name": "trgeometry_append_tinstant", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57252,7 +57252,7 @@ ] }, { - "name": "trgeo_append_tsequence", + "name": "trgeometry_append_tsequence", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57277,7 +57277,7 @@ ] }, { - "name": "trgeo_delete_timestamptz", + "name": "trgeometry_delete_timestamptz", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57302,7 +57302,7 @@ ] }, { - "name": "trgeo_delete_tstzset", + "name": "trgeometry_delete_tstzset", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57327,7 +57327,7 @@ ] }, { - "name": "trgeo_delete_tstzspan", + "name": "trgeometry_delete_tstzspan", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57352,7 +57352,7 @@ ] }, { - "name": "trgeo_delete_tstzspanset", + "name": "trgeometry_delete_tstzspanset", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57377,7 +57377,7 @@ ] }, { - "name": "trgeo_round", + "name": "trgeometry_round", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57397,7 +57397,7 @@ ] }, { - "name": "trgeo_set_interp", + "name": "trgeometry_set_interp", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57417,7 +57417,7 @@ ] }, { - "name": "trgeo_to_tinstant", + "name": "trgeometry_to_tinstant", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57432,7 +57432,7 @@ ] }, { - "name": "trgeo_after_timestamptz", + "name": "trgeometry_after_timestamptz", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57457,7 +57457,7 @@ ] }, { - "name": "trgeo_before_timestamptz", + "name": "trgeometry_before_timestamptz", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57482,7 +57482,7 @@ ] }, { - "name": "trgeo_restrict_value", + "name": "trgeometry_restrict_value", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57507,7 +57507,7 @@ ] }, { - "name": "trgeo_restrict_values", + "name": "trgeometry_restrict_values", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57532,7 +57532,7 @@ ] }, { - "name": "trgeo_restrict_timestamptz", + "name": "trgeometry_restrict_timestamptz", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57557,7 +57557,7 @@ ] }, { - "name": "trgeo_restrict_tstzset", + "name": "trgeometry_restrict_tstzset", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57582,7 +57582,7 @@ ] }, { - "name": "trgeo_restrict_tstzspan", + "name": "trgeometry_restrict_tstzspan", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57607,7 +57607,7 @@ ] }, { - "name": "trgeo_restrict_tstzspanset", + "name": "trgeometry_restrict_tstzspanset", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57632,7 +57632,7 @@ ] }, { - "name": "tdistance_trgeo_geo", + "name": "tdistance_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57652,7 +57652,7 @@ ] }, { - "name": "tdistance_trgeo_tpoint", + "name": "tdistance_trgeometry_tpoint", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57672,7 +57672,7 @@ ] }, { - "name": "tdistance_trgeo_trgeo", + "name": "tdistance_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -57692,7 +57692,7 @@ ] }, { - "name": "nad_stbox_trgeo", + "name": "nad_stbox_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "double", @@ -57712,7 +57712,7 @@ ] }, { - "name": "nad_trgeo_geo", + "name": "nad_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "double", @@ -57732,7 +57732,7 @@ ] }, { - "name": "nad_trgeo_stbox", + "name": "nad_trgeometry_stbox", "file": "meos_rgeo.h", "returnType": { "c": "double", @@ -57752,7 +57752,7 @@ ] }, { - "name": "nad_trgeo_tpoint", + "name": "nad_trgeometry_tpoint", "file": "meos_rgeo.h", "returnType": { "c": "double", @@ -57772,7 +57772,7 @@ ] }, { - "name": "nad_trgeo_trgeo", + "name": "nad_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "double", @@ -57792,7 +57792,7 @@ ] }, { - "name": "nai_trgeo_geo", + "name": "nai_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57812,7 +57812,7 @@ ] }, { - "name": "nai_trgeo_tpoint", + "name": "nai_trgeometry_tpoint", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57832,7 +57832,7 @@ ] }, { - "name": "nai_trgeo_trgeo", + "name": "nai_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "TInstant *", @@ -57852,7 +57852,7 @@ ] }, { - "name": "shortestline_trgeo_geo", + "name": "shortestline_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -57872,7 +57872,7 @@ ] }, { - "name": "shortestline_trgeo_tpoint", + "name": "shortestline_trgeometry_tpoint", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -57892,7 +57892,7 @@ ] }, { - "name": "shortestline_trgeo_trgeo", + "name": "shortestline_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int *", @@ -57912,7 +57912,7 @@ ] }, { - "name": "always_eq_geo_trgeo", + "name": "always_eq_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -57932,7 +57932,7 @@ ] }, { - "name": "always_eq_trgeo_geo", + "name": "always_eq_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -57952,7 +57952,7 @@ ] }, { - "name": "always_eq_trgeo_trgeo", + "name": "always_eq_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -57972,7 +57972,7 @@ ] }, { - "name": "always_ne_geo_trgeo", + "name": "always_ne_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -57992,7 +57992,7 @@ ] }, { - "name": "always_ne_trgeo_geo", + "name": "always_ne_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58012,7 +58012,7 @@ ] }, { - "name": "always_ne_trgeo_trgeo", + "name": "always_ne_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58032,7 +58032,7 @@ ] }, { - "name": "ever_eq_geo_trgeo", + "name": "ever_eq_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58052,7 +58052,7 @@ ] }, { - "name": "ever_eq_trgeo_geo", + "name": "ever_eq_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58072,7 +58072,7 @@ ] }, { - "name": "ever_eq_trgeo_trgeo", + "name": "ever_eq_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58092,7 +58092,7 @@ ] }, { - "name": "ever_ne_geo_trgeo", + "name": "ever_ne_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58112,7 +58112,7 @@ ] }, { - "name": "ever_ne_trgeo_geo", + "name": "ever_ne_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58132,7 +58132,7 @@ ] }, { - "name": "ever_ne_trgeo_trgeo", + "name": "ever_ne_trgeometry_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "int", @@ -58152,7 +58152,7 @@ ] }, { - "name": "teq_geo_trgeo", + "name": "teq_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -58172,7 +58172,7 @@ ] }, { - "name": "teq_trgeo_geo", + "name": "teq_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -58192,7 +58192,7 @@ ] }, { - "name": "tne_geo_trgeo", + "name": "tne_geo_trgeometry", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", @@ -58212,7 +58212,7 @@ ] }, { - "name": "tne_trgeo_geo", + "name": "tne_trgeometry_geo", "file": "meos_rgeo.h", "returnType": { "c": "Temporal *", From 6282b1acb057662cb5093ae1ff99036149519781 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Wed, 3 Jun 2026 09:14:00 +0200 Subject: [PATCH 04/14] Regenerate the MEOS IDL against the consolidated pin 588768d7ab Bumps codegen/input/meos-idl.json to the public+bound MEOS surface of the ecosystem pin: the set-set spatial-join family (edwithin/tdwithin/adisjoint _tgeoarr_tgeoarr), the mindistance_tgeoarr_tgeoarr rename, the trgeometry analytics (frechet/hausdorff/dyntimewarp/centroid/length/speed), tpose and tnpoint value accessors, tcbuffer traversed-area, and the aggregate combine functions. 3031 bound functions (was 2916). --- codegen/input/meos-idl.json | 36980 +++++++++++++++++++--------------- 1 file changed, 20569 insertions(+), 16411 deletions(-) diff --git a/codegen/input/meos-idl.json b/codegen/input/meos-idl.json index 186c3783..f4d30632 100644 --- a/codegen/input/meos-idl.json +++ b/codegen/input/meos-idl.json @@ -258,6 +258,36 @@ } ] }, + { + "name": "rtree_insert_temporal_split", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "rtree", + "cType": "RTree *", + "canonical": "struct RTree *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "id", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxboxes", + "cType": "int", + "canonical": "int" + } + ] + }, { "name": "rtree_search", "file": "meos.h", @@ -318,6 +348,41 @@ } ] }, + { + "name": "rtree_search_temporal_dedup", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "rtree", + "cType": "const RTree *", + "canonical": "const struct RTree *" + }, + { + "name": "op", + "cType": "RTreeSearchOp", + "canonical": "RTreeSearchOp" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxboxes", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "MeosArray *", + "canonical": "struct MeosArray *" + } + ] + }, { "name": "meos_error", "file": "meos.h", @@ -421,6 +486,15 @@ } ] }, + { + "name": "meos_initialize_noexit_error_handler", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [] + }, { "name": "meos_finalize_timezone", "file": "meos.h", @@ -448,6 +522,15 @@ }, "params": [] }, + { + "name": "meos_initialize_pointcloud", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [] + }, { "name": "meos_set_datestyle", "file": "meos.h", @@ -521,6 +604,21 @@ } ] }, + { + "name": "meos_set_ways_csv", + "file": "meos.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "path", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, { "name": "meos_initialize", "file": "meos.h", @@ -3031,6 +3129,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -3196,6 +3299,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -3416,6 +3524,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -3581,6 +3694,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -3921,6 +4039,11 @@ "name": "ss", "cType": "const SpanSet *", "canonical": "const struct SpanSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -4021,6 +4144,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -4091,6 +4219,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -5661,6 +5794,11 @@ "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -5726,6 +5864,11 @@ "name": "ss", "cType": "const SpanSet *", "canonical": "const struct SpanSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, @@ -11719,6 +11862,31 @@ } ] }, + { + "name": "super_union_span_span", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, { "name": "union_span_spanset", "file": "meos.h", @@ -13683,12 +13851,12 @@ }, "params": [ { - "name": "span", + "name": "s", "cType": "const Span *", "canonical": "const struct Span *" }, { - "name": "s", + "name": "p", "cType": "const Span *", "canonical": "const struct Span *" } @@ -15089,6 +15257,366 @@ } ] }, + { + "name": "meos_temporal_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_temporal_from_arrow", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_temporal_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "meos_set_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_set_from_arrow", + "file": "meos.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_set_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "meos_span_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_span_from_arrow", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_span_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "Span *", + "canonical": "struct Span *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + } + ] + }, + { + "name": "meos_spanset_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_spanset_from_arrow", + "file": "meos.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_spanset_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "SpanSet *", + "canonical": "struct SpanSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "meos_tbox_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_tbox_from_arrow", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_tbox_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "struct TBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + } + ] + }, + { + "name": "meos_stbox_to_arrow", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "out_schema", + "cType": "struct ArrowSchema *", + "canonical": "struct ArrowSchema *" + }, + { + "name": "out_array", + "cType": "struct ArrowArray *", + "canonical": "struct ArrowArray *" + } + ] + }, + { + "name": "meos_stbox_from_arrow", + "file": "meos.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "schema", + "cType": "const struct ArrowSchema *", + "canonical": "const struct ArrowSchema *" + }, + { + "name": "array", + "cType": "const struct ArrowArray *", + "canonical": "const struct ArrowArray *" + } + ] + }, + { + "name": "meos_stbox_arrow_roundtrip", + "file": "meos.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, { "name": "tfloat_from_mfjson", "file": "meos.h", @@ -16064,36 +16592,6 @@ } ] }, - { - "name": "tbigint_value_at_timestamptz", - "file": "meos.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "value", - "cType": "int64 *", - "canonical": "long *" - } - ] - }, { "name": "tbigint_value_n", "file": "meos.h", @@ -16193,7 +16691,7 @@ "canonical": "bool" }, { - "name": "value", + "name": "result", "cType": "bool *", "canonical": "_Bool *" } @@ -16644,6 +17142,21 @@ } ] }, + { + "name": "temporal_basetype_name", + "file": "meos.h", + "returnType": { + "c": "const char *", + "canonical": "const char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, { "name": "temporal_time", "file": "meos.h", @@ -16719,21 +17232,6 @@ } ] }, - { - "name": "tfloat_avg_value", - "file": "meos.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, { "name": "tfloat_end_value", "file": "meos.h", @@ -16818,7 +17316,7 @@ "canonical": "bool" }, { - "name": "value", + "name": "result", "cType": "double *", "canonical": "double *" } @@ -16953,7 +17451,7 @@ "canonical": "bool" }, { - "name": "value", + "name": "result", "cType": "int *", "canonical": "int *" } @@ -17148,7 +17646,7 @@ "canonical": "bool" }, { - "name": "value", + "name": "result", "cType": "int **", "canonical": "int **" } @@ -17919,46 +18417,6 @@ } ] }, - { - "name": "tbigint_at_value", - "file": "meos.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "i", - "cType": "int64", - "canonical": "long" - } - ] - }, - { - "name": "tbigint_minus_value", - "file": "meos.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "i", - "cType": "int64", - "canonical": "long" - } - ] - }, { "name": "tbool_at_value", "file": "meos.h", @@ -24953,6 +25411,26 @@ } ] }, + { + "name": "tbool_tand_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tbool_tor_transfn", "file": "meos.h", @@ -24973,6 +25451,26 @@ } ] }, + { + "name": "tbool_tor_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "temporal_extent_transfn", "file": "meos.h", @@ -25068,6 +25566,26 @@ } ] }, + { + "name": "temporal_tcount_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tfloat_tmax_transfn", "file": "meos.h", @@ -25088,6 +25606,26 @@ } ] }, + { + "name": "tfloat_tmax_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tfloat_tmin_transfn", "file": "meos.h", @@ -25108,6 +25646,26 @@ } ] }, + { + "name": "tfloat_tmin_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tfloat_tsum_transfn", "file": "meos.h", @@ -25128,6 +25686,26 @@ } ] }, + { + "name": "tfloat_tsum_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tfloat_wmax_transfn", "file": "meos.h", @@ -25244,7 +25822,7 @@ ] }, { - "name": "tint_tmin_transfn", + "name": "tint_tmax_combinefn", "file": "meos.h", "returnType": { "c": "SkipList *", @@ -25252,19 +25830,19 @@ }, "params": [ { - "name": "state", + "name": "state1", "cType": "SkipList *", "canonical": "struct SkipList *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "tint_tsum_transfn", + "name": "tint_tmin_transfn", "file": "meos.h", "returnType": { "c": "SkipList *", @@ -25284,7 +25862,7 @@ ] }, { - "name": "tint_wmax_transfn", + "name": "tint_tmin_combinefn", "file": "meos.h", "returnType": { "c": "SkipList *", @@ -25292,24 +25870,19 @@ }, "params": [ { - "name": "state", + "name": "state1", "cType": "SkipList *", "canonical": "struct SkipList *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "tint_wmin_transfn", + "name": "tint_tsum_transfn", "file": "meos.h", "returnType": { "c": "SkipList *", @@ -25325,16 +25898,81 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + } + ] + }, + { + "name": "tint_tsum_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "tint_wsum_transfn", + "name": "tint_wmax_transfn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interv", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tint_wmin_transfn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interv", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tint_wsum_transfn", "file": "meos.h", "returnType": { "c": "SkipList *", @@ -25413,6 +26051,26 @@ } ] }, + { + "name": "tnumber_tavg_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "tnumber_wavg_transfn", "file": "meos.h", @@ -25518,6 +26176,26 @@ } ] }, + { + "name": "ttext_tmax_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "ttext_tmin_transfn", "file": "meos.h", @@ -25538,6 +26216,26 @@ } ] }, + { + "name": "ttext_tmin_combinefn", + "file": "meos.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, { "name": "temporal_simplify_dp", "file": "meos.h", @@ -25827,8 +26525,8 @@ "name": "temporal_time_split", "file": "meos.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "TimeSplit", + "canonical": "TimeSplit" }, "params": [ { @@ -25845,16 +26543,6 @@ "name": "torigin", "cType": "TimestampTz", "canonical": "long" - }, - { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, @@ -25952,8 +26640,8 @@ "name": "tfloat_value_split", "file": "meos.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "FloatSplit", + "canonical": "FloatSplit" }, "params": [ { @@ -25970,16 +26658,6 @@ "name": "origin", "cType": "double", "canonical": "double" - }, - { - "name": "bins", - "cType": "double **", - "canonical": "double **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, @@ -26027,8 +26705,8 @@ "name": "tfloat_value_time_split", "file": "meos.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "FloatTimeSplit", + "canonical": "FloatTimeSplit" }, "params": [ { @@ -26055,21 +26733,6 @@ "name": "torigin", "cType": "TimestampTz", "canonical": "long" - }, - { - "name": "value_bins", - "cType": "double **", - "canonical": "double **" - }, - { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, @@ -26267,8 +26930,8 @@ "name": "tint_value_split", "file": "meos.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "IntSplit", + "canonical": "IntSplit" }, "params": [ { @@ -26285,16 +26948,6 @@ "name": "vorigin", "cType": "int", "canonical": "int" - }, - { - "name": "bins", - "cType": "int **", - "canonical": "int **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, @@ -26342,8 +26995,8 @@ "name": "tint_value_time_split", "file": "meos.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "IntTimeSplit", + "canonical": "IntTimeSplit" }, "params": [ { @@ -26370,21 +27023,6 @@ "name": "torigin", "cType": "TimestampTz", "canonical": "long" - }, - { - "name": "value_bins", - "cType": "int **", - "canonical": "int **" - }, - { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, @@ -26489,1680 +27127,1911 @@ ] }, { - "name": "meos_initialize_noexit_error_handler", - "file": "meos.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [] - }, - { - "name": "h3_are_neighbor_cells_meos", - "file": "h3_generated.h", + "name": "geo_as_ewkb", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "destination", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "endian", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "h3_cells_to_directed_edge_meos", - "file": "h3_generated.h", + "name": "geo_as_ewkt", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "destination", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "precision", + "cType": "int", + "canonical": "int" } ] }, { - "name": "h3_is_valid_directed_edge_meos", - "file": "h3_generated.h", + "name": "geo_as_geojson", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" - } - ] - }, - { - "name": "h3_get_directed_edge_origin_meos", - "file": "h3_generated.h", - "returnType": { - "c": "H3Index", - "canonical": "unsigned long" - }, - "params": [ + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "option", + "cType": "int", + "canonical": "int" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" + }, + { + "name": "srs", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_get_directed_edge_destination_meos", - "file": "h3_generated.h", + "name": "geo_as_hexewkb", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "endian", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_cell_to_parent_meos", - "file": "h3_generated.h", + "name": "geo_as_text", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "resolution", - "cType": "int32", + "name": "precision", + "cType": "int", "canonical": "int" } ] }, { - "name": "h3_cell_to_center_child_meos", - "file": "h3_generated.h", + "name": "geo_from_ewkb", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "origin", - "cType": "H3Index", + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "wkb_size", + "cType": "size_t", "canonical": "unsigned long" }, { - "name": "resolution", + "name": "srid", "cType": "int32", "canonical": "int" } ] }, { - "name": "h3_cell_to_child_pos_meos", - "file": "h3_generated.h", + "name": "geo_from_geojson", + "file": "meos_geo.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "child", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "parentRes", - "cType": "int32", - "canonical": "int" + "name": "geojson", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_child_pos_to_cell_meos", - "file": "h3_generated.h", + "name": "geo_from_text", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "childPos", - "cType": "int64", - "canonical": "long" - }, - { - "name": "parent", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "wkt", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "childRes", - "cType": "int32", + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "h3_get_resolution_meos", - "file": "h3_generated.h", + "name": "geo_out", + "file": "meos_geo.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_get_base_cell_number_meos", - "file": "h3_generated.h", + "name": "geog_from_hexewkb", + "file": "meos_geo.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "wkt", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_is_valid_cell_meos", - "file": "h3_generated.h", + "name": "geog_in", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "h3_is_res_class_iii_meos", - "file": "h3_generated.h", + "name": "geom_from_hexewkb", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "wkt", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_is_pentagon_meos", - "file": "h3_generated.h", + "name": "geom_in", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "h3_get_num_cells_meos", - "file": "h3_generated.h", + "name": "box3d_make", + "file": "meos_geo.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "resolution", - "cType": "int32", + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "h3_grid_distance_meos", - "file": "h3_generated.h", + "name": "box3d_out", + "file": "meos_geo.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "originIndex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "box", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "h3Index", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "h3_cell_to_vertex_meos", - "file": "h3_generated.h", - "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "name": "gbox_make", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "hasz", + "cType": "bool", + "canonical": "bool" }, { - "name": "vertexNum", - "cType": "int32", - "canonical": "int" + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3_is_valid_vertex_meos", - "file": "h3_generated.h", + "name": "gbox_out", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "vertex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "box", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "h3index_parse", - "file": "h3index.h", + "name": "geo_copy", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "g", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3index_to_string", - "file": "h3index.h", + "name": "geogpoint_make2d", + "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3index_eq", - "file": "h3index.h", + "name": "geogpoint_make3dz", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3index_ne", - "file": "h3index.h", + "name": "geompoint_make2d", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3index_lt", - "file": "h3index.h", + "name": "geompoint_make3dz", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3index_le", - "file": "h3index.h", + "name": "geom_to_geog", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3index_gt", - "file": "h3index.h", + "name": "geog_to_geom", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "geog", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3index_ge", - "file": "h3index.h", + "name": "geo_is_empty", + "file": "meos_geo.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "g", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3index_cmp", - "file": "h3index.h", + "name": "geo_is_unitary", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3index_hash", - "file": "h3index.h", + "name": "geo_typename", + "file": "meos_geo.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "const char *", + "canonical": "const char *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "type", + "cType": "int", + "canonical": "int" } ] }, { - "name": "h3_grid_disk", - "file": "h3index_sets.h", + "name": "geog_area", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "k", - "cType": "int", - "canonical": "int" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_grid_ring", - "file": "h3index_sets.h", + "name": "geog_centroid", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "k", - "cType": "int", - "canonical": "int" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_grid_path_cells", - "file": "h3index_sets.h", + "name": "geog_length", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "start", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "end", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_children", - "file": "h3index_sets.h", + "name": "geog_perimeter", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "g", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "childRes", - "cType": "int", - "canonical": "int" + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_compact_cells", - "file": "h3index_sets.h", + "name": "geom_azimuth", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cells", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "h3_uncompact_cells", - "file": "h3index_sets.h", + "name": "geom_length", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cells", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "res", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_origin_to_directed_edges", - "file": "h3index_sets.h", + "name": "geom_perimeter", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_cell_to_vertexes", - "file": "h3index_sets.h", + "name": "line_numpoints", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_get_icosahedron_faces", - "file": "h3index_sets.h", + "name": "line_point_n", + "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ensure_valid_th3index_th3index", - "file": "th3index.h", + "name": "geo_reverse", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ensure_valid_th3index_h3index", - "file": "th3index.h", + "name": "geo_round", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ensure_valid_th3index_tgeogpoint", - "file": "th3index.h", + "name": "geo_set_srid", + "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "datum2_h3index_eq", - "file": "th3index.h", + "name": "geo_srid", + "file": "meos_geo.h", "returnType": { - "c": "int", + "c": "int32_t", "canonical": "int" }, "params": [ { - "name": "d1", - "cType": "int", - "canonical": "int" - }, - { - "name": "d2", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "geo_transform", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "geom", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "type", - "cType": "int", + "name": "srid_to", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "datum2_h3index_ne", - "file": "th3index.h", + "name": "geo_transform_pipeline", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "d1", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "d2", - "cType": "int", - "canonical": "int" + "name": "pipeline", + "cType": "char *", + "canonical": "char *" }, { - "name": "type", - "cType": "int", + "name": "srid_to", + "cType": "int32_t", "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "th3indexinst_set_stbox", - "file": "th3index_boxops.h", + "name": "geo_collect_garray", + "file": "meos_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "th3indexinstarr_set_stbox", - "file": "th3index_boxops.h", + "name": "geo_makeline_garray", + "file": "meos_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" }, { "name": "count", "cType": "int", "canonical": "int" - }, - { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" } ] }, { - "name": "th3indexseq_expand_stbox", - "file": "th3index_boxops.h", + "name": "geo_num_points", + "file": "meos_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "geo_num_geos", + "file": "meos_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_gs_point_to_cell", - "file": "th3index_internal.h", + "name": "geo_geo_n", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "point", + "name": "geom", "cType": "const int *", "canonical": "const int *" }, { - "name": "resolution", - "cType": "int32", + "name": "n", + "cType": "int", "canonical": "int" } ] }, { - "name": "h3_cell_to_gs_point", - "file": "th3index_internal.h", + "name": "geo_pointarr", + "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "h3_cell_to_gs_boundary", - "file": "th3index_internal.h", + "name": "geo_points", + "file": "meos_geo.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cell_boundary_to_gs", - "file": "th3index_internal.h", + "name": "geom_array_union", + "file": "meos_geo.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "bnd", - "cType": "const CellBoundary *", - "canonical": "const CellBoundary *" + "name": "gsarr", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "h3_sample_step_deg", - "file": "th3index_internal.h", + "name": "geom_boundary", + "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_latlng_deg_to_cell", - "file": "th3index_internal.h", + "name": "geom_buffer", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "lat_deg", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "lng_deg", + "name": "size", "cType": "double", "canonical": "double" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "params", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "h3_cell_to_parent_next_meos", - "file": "th3index_internal.h", + "name": "geom_centroid", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_cell_to_center_child_next_meos", - "file": "th3index_internal.h", + "name": "geom_convex_hull", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_directed_edge_to_gs_boundary", - "file": "th3index_internal.h", + "name": "geom_difference2d", + "file": "meos_geo.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_vertex_to_gs_point", - "file": "th3index_internal.h", + "name": "geom_intersection2d", + "file": "meos_geo.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "vertex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_cell_to_local_ij_meos", - "file": "th3index_internal.h", + "name": "geom_intersection2d_coll", + "file": "meos_geo.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_local_ij_to_cell_meos", - "file": "th3index_internal.h", + "name": "geom_min_bounding_radius", + "file": "meos_geo.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "MinBoundingCircle", + "canonical": "struct MinBoundingCircle" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "coord", + "name": "geom", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "h3_unit_from_cstring", - "file": "th3index_internal.h", + "name": "geom_shortestline2d", + "file": "meos_geo.h", "returnType": { - "c": "H3Unit", - "canonical": "H3Unit" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "s2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_cell_area_meos", - "file": "th3index_internal.h", + "name": "geom_shortestline3d", + "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "s2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "h3_edge_length_meos", - "file": "th3index_internal.h", + "name": "geom_unary_union", + "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "prec", + "cType": "double", + "canonical": "double" } ] }, { - "name": "h3_gs_great_circle_distance_meos", - "file": "th3index_internal.h", + "name": "line_interpolate_point", + "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "a", + "name": "gs", "cType": "const int *", "canonical": "const int *" }, { - "name": "b", - "cType": "const int *", - "canonical": "const int *" + "name": "distance_fraction", + "cType": "double", + "canonical": "double" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "repeat", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "datum_h3_get_resolution", - "file": "th3index_internal.h", + "name": "line_locate_point", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_get_base_cell_number", - "file": "th3index_internal.h", + "name": "line_substring", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "from", + "cType": "double", + "canonical": "double" + }, + { + "name": "to", + "cType": "double", + "canonical": "double" } ] }, { - "name": "datum_h3_is_valid_cell", - "file": "th3index_internal.h", + "name": "geog_dwithin", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "g1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "g2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" + }, + { + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "datum_h3_is_res_class_iii", - "file": "th3index_internal.h", + "name": "geog_intersects", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "use_spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "datum_h3_is_pentagon", - "file": "th3index_internal.h", + "name": "geom_contains", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_to_parent", - "file": "th3index_internal.h", + "name": "geom_covers", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "res_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_to_parent_next", - "file": "th3index_internal.h", + "name": "geom_disjoint2d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_to_center_child", - "file": "th3index_internal.h", + "name": "geom_dwithin2d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "res_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" } ] }, { - "name": "datum_h3_cell_to_center_child_next", - "file": "th3index_internal.h", + "name": "geom_dwithin3d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" } ] }, { - "name": "datum_h3_cell_to_child_pos", - "file": "th3index_internal.h", + "name": "geom_intersects2d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "parent_res_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_child_pos_to_cell", - "file": "th3index_internal.h", + "name": "geom_intersects3d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "pos_d", - "cType": "int", - "canonical": "int" - }, - { - "name": "parent_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "child_res_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_are_neighbor_cells", - "file": "th3index_internal.h", + "name": "geom_relate_pattern", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "dest_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "patt", + "cType": "char *", + "canonical": "char *" } ] }, { - "name": "datum_h3_cells_to_directed_edge", - "file": "th3index_internal.h", + "name": "geom_touches", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "dest_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_is_valid_directed_edge", - "file": "th3index_internal.h", + "name": "geo_stboxes", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "datum_h3_get_directed_edge_origin", - "file": "th3index_internal.h", + "name": "geo_split_each_n_stboxes", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "d", + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "elem_count", "cType": "int", "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "datum_h3_get_directed_edge_destination", - "file": "th3index_internal.h", + "name": "geo_split_n_stboxes", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "d", + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "box_count", "cType": "int", "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "datum_h3_directed_edge_to_boundary", - "file": "th3index_internal.h", + "name": "geog_distance", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "g1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "g2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_to_vertex", - "file": "th3index_internal.h", + "name": "geom_distance2d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "vnum_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_vertex_to_latlng", - "file": "th3index_internal.h", + "name": "geom_distance3d", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_is_valid_vertex", - "file": "th3index_internal.h", + "name": "geo_equals", + "file": "meos_geo.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_grid_distance", - "file": "th3index_internal.h", + "name": "geo_same", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin_d", - "cType": "int", - "canonical": "int" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "dest_d", - "cType": "int", - "canonical": "int" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_to_local_ij", - "file": "th3index_internal.h", + "name": "geogset_in", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "origin_d", - "cType": "int", - "canonical": "int" - }, + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "geomset_in", + "file": "meos_geo.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "datum_h3_local_ij_to_cell", - "file": "th3index_internal.h", + "name": "spatialset_as_text", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "origin_d", - "cType": "int", - "canonical": "int" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "coord_d", + "name": "maxdd", "cType": "int", "canonical": "int" } ] }, { - "name": "datum_h3_latlng_to_cell", - "file": "th3index_internal.h", + "name": "spatialset_as_ewkt", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "point_d", - "cType": "int", - "canonical": "int" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "res_d", + "name": "maxdd", "cType": "int", "canonical": "int" } ] }, { - "name": "datum_h3_cell_to_latlng", - "file": "th3index_internal.h", + "name": "geoset_make", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "d", + "name": "values", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "count", "cType": "int", "canonical": "int" } ] }, { - "name": "datum_h3_cell_to_boundary", - "file": "th3index_internal.h", + "name": "geo_to_set", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "d", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_h3_cell_area", - "file": "th3index_internal.h", + "name": "geoset_end_value", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cell_d", - "cType": "int", - "canonical": "int" - }, - { - "name": "unit_d", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "datum_h3_edge_length", - "file": "th3index_internal.h", + "name": "geoset_start_value", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "edge_d", - "cType": "int", - "canonical": "int" - }, - { - "name": "unit_d", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "datum_h3_great_circle_distance", - "file": "th3index_internal.h", + "name": "geoset_value_n", + "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "a_d", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "b_d", + "name": "n", "cType": "int", "canonical": "int" }, { - "name": "unit_d", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "geo_as_ewkb", + "name": "geoset_values", "file": "meos_geo.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "endian", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "size", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "geo_as_ewkt", + "name": "contained_geo_set", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -28171,68 +29040,58 @@ "canonical": "const int *" }, { - "name": "precision", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geo_as_geojson", + "name": "contains_set_geo", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "option", - "cType": "int", - "canonical": "int" - }, - { - "name": "precision", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "srs", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "geo_as_hexewkb", + "name": "geo_union_transfn", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "endian", - "cType": "const char *", - "canonical": "const char *" } ] }, { - "name": "geo_as_text", + "name": "intersection_geo_set", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -28241,219 +29100,199 @@ "canonical": "const int *" }, { - "name": "precision", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geo_from_ewkb", + "name": "intersection_set_geo", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" - }, - { - "name": "wkb_size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "srid", - "cType": "int32", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "geo_from_geojson", + "name": "minus_geo_set", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "geojson", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geo_from_text", + "name": "minus_set_geo", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "geo_out", + "name": "union_geo_set", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { "name": "gs", "cType": "const int *", "canonical": "const int *" - } - ] - }, - { - "name": "geog_from_binary", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + }, { - "name": "wkb_bytea", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geog_from_hexewkb", + "name": "union_set_geo", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "geog_in", + "name": "spatialset_set_srid", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "typmod", - "cType": "int32", + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "geom_from_hexewkb", + "name": "spatialset_srid", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "wkt", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geom_in", + "name": "spatialset_transform", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "typmod", - "cType": "int32", + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "box3d_make", + "name": "spatialset_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "xmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymax", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmin", - "cType": "double", - "canonical": "double" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "zmax", - "cType": "double", - "canonical": "double" + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" }, { "name": "srid", "cType": "int32_t", "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "box3d_out", + "name": "stbox_as_hexwkb", "file": "meos_geo.h", "returnType": { "c": "char *", @@ -28462,63 +29301,98 @@ "params": [ { "name": "box", - "cType": "const int *", - "canonical": "const int *" + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "gbox_make", + "name": "stbox_as_wkb", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "hasz", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "xmin", - "cType": "double", - "canonical": "double" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" }, { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "stbox_from_hexwkb", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "stbox_from_wkb", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ { - "name": "ymax", - "cType": "double", - "canonical": "double" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "zmin", - "cType": "double", - "canonical": "double" - }, + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "stbox_in", + "file": "meos_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ { - "name": "zmax", - "cType": "double", - "canonical": "double" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "gbox_out", + "name": "stbox_out", "file": "meos_geo.h", "returnType": { "c": "char *", @@ -28527,8 +29401,8 @@ "params": [ { "name": "box", - "cType": "const int *", - "canonical": "const int *" + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { "name": "maxdd", @@ -28538,312 +29412,277 @@ ] }, { - "name": "geo_copy", + "name": "geo_timestamptz_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "g", + "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "geogpoint_make2d", + "name": "geo_tstzspan_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "x", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "y", - "cType": "double", - "canonical": "double" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "geogpoint_make3dz", + "name": "stbox_copy", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "z", - "cType": "double", - "canonical": "double" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geompoint_make2d", + "name": "stbox_make", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, { "name": "srid", - "cType": "int32_t", + "cType": "int32", "canonical": "int" }, { - "name": "x", + "name": "xmin", "cType": "double", "canonical": "double" }, { - "name": "y", + "name": "xmax", "cType": "double", "canonical": "double" - } - ] - }, - { - "name": "geompoint_make3dz", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "ymin", + "cType": "double", + "canonical": "double" }, { - "name": "x", + "name": "ymax", "cType": "double", "canonical": "double" }, { - "name": "y", + "name": "zmin", "cType": "double", "canonical": "double" }, { - "name": "z", + "name": "zmax", "cType": "double", "canonical": "double" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "geom_to_geog", + "name": "geo_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "geom", + "name": "gs", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "geog_to_geom", + "name": "spatialset_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "geog", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geo_is_empty", + "name": "stbox_to_box3d", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_is_unitary", + "name": "stbox_to_gbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_typename", + "name": "stbox_to_geo", "file": "meos_geo.h", "returnType": { - "c": "const char *", - "canonical": "const char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "type", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geog_area", + "name": "stbox_to_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geog_centroid", + "name": "timestamptz_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "geog_length", + "name": "tstzset_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "geog_perimeter", + "name": "tstzspan_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "g", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "geom_azimuth", + "name": "tstzspanset_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "geom_length", + "name": "stbox_area", "file": "meos_geo.h", "returnType": { "c": "double", @@ -28851,609 +29690,619 @@ }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "geom_perimeter", + "name": "stbox_hash", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "line_numpoints", + "name": "stbox_hash_extended", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "line_point_n", + "name": "stbox_hast", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_reverse", + "name": "stbox_hasx", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_round", + "name": "stbox_hasz", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_set_srid", + "name": "stbox_isgeodetic", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_srid", + "name": "stbox_perimeter", "file": "meos_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "spheroid", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "geo_transform", + "name": "stbox_tmax", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "srid_to", - "cType": "int32_t", - "canonical": "int" + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "geo_transform_pipeline", + "name": "stbox_tmax_inc", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "pipeline", - "cType": "char *", - "canonical": "char *" - }, - { - "name": "srid_to", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "bool *", + "canonical": "_Bool *" } ] }, { - "name": "geo_collect_garray", + "name": "stbox_tmin", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "geo_makeline_garray", + "name": "stbox_tmin_inc", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "bool *", + "canonical": "_Bool *" } ] }, { - "name": "geo_num_points", + "name": "stbox_volume", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_num_geos", + "name": "stbox_xmax", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geo_geo_n", + "name": "stbox_xmin", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geo_pointarr", + "name": "stbox_ymax", "file": "meos_geo.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geo_points", + "name": "stbox_ymin", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geom_array_union", + "name": "stbox_zmax", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geom_boundary", + "name": "stbox_zmin", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "geom_buffer", + "name": "stbox_expand_space", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "size", + "name": "d", "cType": "double", "canonical": "double" - }, - { - "name": "params", - "cType": "const char *", - "canonical": "const char *" } ] }, { - "name": "geom_centroid", + "name": "stbox_expand_time", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "interv", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "geom_convex_hull", + "name": "stbox_get_space", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_difference2d", + "name": "stbox_quad_split", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "geom_intersection2d", + "name": "stbox_round", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_intersection2d_coll", + "name": "stbox_shift_scale_time", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs1", + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "shift", "cType": "const int *", "canonical": "const int *" }, { - "name": "gs2", + "name": "duration", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "geom_min_bounding_radius", + "name": "stboxarr_round", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "boxarr", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "radius", - "cType": "double *", - "canonical": "double *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_shortestline2d", + "name": "stbox_set_srid", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "s2", - "cType": "const int *", - "canonical": "const int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "geom_shortestline3d", + "name": "stbox_srid", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s2", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_unary_union", + "name": "stbox_transform", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "prec", - "cType": "double", - "canonical": "double" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "line_interpolate_point", + "name": "stbox_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "distance_fraction", - "cType": "double", - "canonical": "double" + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "repeat", + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", "cType": "bool", "canonical": "bool" } ] }, { - "name": "line_locate_point", + "name": "adjacent_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "line_substring", + "name": "contained_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "from", - "cType": "double", - "canonical": "double" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "to", - "cType": "double", - "canonical": "double" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geog_dwithin", + "name": "contains_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29461,29 +30310,19 @@ }, "params": [ { - "name": "g1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "g2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geog_intersects", + "name": "overlaps_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29491,24 +30330,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "use_spheroid", - "cType": "bool", - "canonical": "bool" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_contains", + "name": "same_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29516,19 +30350,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_covers", + "name": "above_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29536,19 +30370,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_disjoint2d", + "name": "after_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29556,19 +30390,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_dwithin2d", + "name": "back_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29576,24 +30410,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_dwithin3d", + "name": "before_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29601,24 +30430,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "tolerance", - "cType": "double", - "canonical": "double" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_intersects2d", + "name": "below_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29626,19 +30450,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_intersects3d", + "name": "front_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29646,19 +30470,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_relate_pattern", + "name": "left_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29666,24 +30490,19 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "patt", - "cType": "char *", - "canonical": "char *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_touches", + "name": "overabove_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29691,169 +30510,159 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_stboxes", + "name": "overafter_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_split_each_n_stboxes", + "name": "overback_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "elem_count", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_split_n_stboxes", + "name": "overbefore_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "box_count", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geog_distance", + "name": "overbelow_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "g1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "g2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_distance2d", + "name": "overfront_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geom_distance3d", + "name": "overleft_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_equals", + "name": "overright_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_same", + "name": "right_stbox_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -29861,154 +30670,124 @@ }, "params": [ { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geogset_in", + "name": "union_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "geomset_in", + "name": "intersection_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "spatialset_as_text", - "file": "meos_geo.h", - "returnType": { - "c": "char *", - "canonical": "char *" - }, - "params": [ - { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "spatialset_as_ewkt", + "name": "stbox_cmp", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geoset_make", + "name": "stbox_eq", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "values", - "cType": "int **", - "canonical": "int **" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int", - "canonical": "int" - } - ] - }, - { - "name": "geo_to_set", - "file": "meos_geo.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geoset_end_value", + "name": "stbox_ge", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "geoset_start_value", - "file": "meos_geo.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geoset_value_n", + "name": "stbox_gt", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30016,39 +30795,39 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "result", - "cType": "int **", - "canonical": "int **" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geoset_values", + "name": "stbox_le", "file": "meos_geo.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contained_geo_set", + "name": "stbox_lt", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30056,19 +30835,19 @@ }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "contains_set_geo", + "name": "stbox_ne", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30076,368 +30855,333 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "geo_union_transfn", + "name": "tgeogpoint_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "intersection_geo_set", + "name": "tgeogpoint_in", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "intersection_set_geo", + "name": "tgeography_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "minus_geo_set", + "name": "tgeography_in", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "minus_set_geo", + "name": "tgeometry_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "union_geo_set", + "name": "tgeometry_in", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "union_set_geo", + "name": "tgeompoint_from_mfjson", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spatialset_set_srid", + "name": "tgeompoint_in", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spatialset_srid", + "name": "tspatial_as_ewkt", "file": "meos_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "spatialset_transform", + "name": "tspatial_as_text", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "maxdd", + "cType": "int", "canonical": "int" } ] }, { - "name": "spatialset_transform_pipeline", + "name": "tspatial_out", "file": "meos_geo.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "maxdd", + "cType": "int", "canonical": "int" - }, - { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "stbox_as_hexwkb", + "name": "tgeo_from_base_temp", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "size", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_as_wkb", + "name": "tgeoinst_make", "file": "meos_geo.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "stbox_from_hexwkb", + "name": "tgeoseq_from_base_tstzset", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "hexwkb", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "stbox_from_wkb", + "name": "tgeoseq_from_base_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "stbox_in", + "name": "tgeoseqset_from_base_tstzspanset", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "stbox_out", + "name": "tpoint_from_base_temp", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_timestamptz_to_stbox", + "name": "tpointinst_make", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -30453,11 +31197,11 @@ ] }, { - "name": "geo_tstzspan_to_stbox", + "name": "tpointseq_from_base_tstzset", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { @@ -30467,48 +31211,68 @@ }, { "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "stbox_copy", + "name": "tpointseq_from_base_tstzspan", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - } - ] + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] }, { - "name": "stbox_make", + "name": "tpointseq_make_coords", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "hasx", - "cType": "bool", - "canonical": "bool" + "name": "xcoords", + "cType": "const double *", + "canonical": "const double *" }, { - "name": "hasz", - "cType": "bool", - "canonical": "bool" + "name": "ycoords", + "cType": "const double *", + "canonical": "const double *" }, { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" + "name": "zcoords", + "cType": "const double *", + "canonical": "const double *" + }, + { + "name": "times", + "cType": "const TimestampTz *", + "canonical": "const long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" }, { "name": "srid", @@ -30516,44 +31280,59 @@ "canonical": "int" }, { - "name": "xmin", - "cType": "double", - "canonical": "double" + "name": "geodetic", + "cType": "bool", + "canonical": "bool" }, { - "name": "xmax", - "cType": "double", - "canonical": "double" + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" }, { - "name": "ymin", - "cType": "double", - "canonical": "double" + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" }, { - "name": "ymax", - "cType": "double", - "canonical": "double" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" }, { - "name": "zmin", - "cType": "double", - "canonical": "double" + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tpointseqset_from_base_tstzspanset", + "file": "meos_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "zmax", - "cType": "double", - "canonical": "double" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "geo_to_stbox", + "name": "box3d_to_stbox", "file": "meos_geo.h", "returnType": { "c": "STBox *", @@ -30561,14 +31340,14 @@ }, "params": [ { - "name": "gs", + "name": "box", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "spatialset_to_stbox", + "name": "gbox_to_stbox", "file": "meos_geo.h", "returnType": { "c": "STBox *", @@ -30576,289 +31355,349 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_to_box3d", + "name": "geomeas_to_tpoint", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_to_gbox", + "name": "tgeogpoint_to_tgeography", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_to_geo", + "name": "tgeography_to_tgeogpoint", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_to_tstzspan", + "name": "tgeography_to_tgeometry", "file": "meos_geo.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "timestamptz_to_stbox", + "name": "tgeometry_to_tgeography", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzset_to_stbox", + "name": "tgeometry_to_tgeompoint", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzspan_to_stbox", + "name": "tgeompoint_to_tgeometry", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzspanset_to_stbox", + "name": "tpoint_as_mvtgeom", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "MvtGeom", + "canonical": "struct MvtGeom" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "extent", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "buffer", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "clip_geom", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_area", + "name": "tpoint_tfloat_to_geomeas", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "tpoint", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "spheroid", + "name": "measure", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "segmentize", "cType": "bool", "canonical": "bool" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "stbox_hash", + "name": "tspatial_to_stbox", "file": "meos_geo.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_hash_extended", + "name": "bearing_point_point", "file": "meos_geo.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "stbox_hast", + "name": "bearing_tpoint_point", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_hasx", + "name": "bearing_tpoint_tpoint", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_hasz", + "name": "tgeo_centroid", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_isgeodetic", + "name": "tgeo_convex_hull", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_perimeter", + "name": "tgeo_end_value", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tgeo_start_value", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ { - "name": "spheroid", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_tmax", + "name": "tgeo_traversed_area", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "name": "unary_union", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_tmax_inc", + "name": "tgeo_value_at_timestamptz", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30866,19 +31705,29 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" }, { "name": "result", - "cType": "bool *", - "canonical": "_Bool *" + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "stbox_tmin", + "name": "tgeo_value_n", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30886,74 +31735,89 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" }, { "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "stbox_tmin_inc", + "name": "tgeo_values", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "bool *", - "canonical": "_Bool *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "stbox_volume", + "name": "tpoint_angular_difference", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_xmax", + "name": "tpoint_azimuth", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpoint_cumulative_length", + "file": "meos_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_xmin", + "name": "tpoint_direction", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -30961,9 +31825,9 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "result", @@ -30973,67 +31837,52 @@ ] }, { - "name": "stbox_ymax", + "name": "tpoint_get_x", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_ymin", + "name": "tpoint_get_y", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_zmax", + "name": "tpoint_get_z", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_zmin", + "name": "tpoint_is_simple", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -31041,209 +31890,198 @@ }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_expand_space", + "name": "tpoint_length", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "d", - "cType": "double", - "canonical": "double" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_expand_time", + "name": "tpoint_speed", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } - ] + ], + "ownership": "caller", + "nullable": true, + "doc": "Computes the instantaneous speed of a temporal point.", + "meos": { + "temporalDim": "sequence", + "spatialDim": null, + "interpolation": true, + "subtype": "TPoint" + } }, { - "name": "stbox_get_space", + "name": "tpoint_trajectory", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "stbox_quad_split", + "name": "tpoint_twcentroid", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_round", + "name": "tgeo_affine", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "a", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_shift_scale_time", + "name": "tgeo_scale", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "shift", + "name": "scale", "cType": "const int *", "canonical": "const int *" }, { - "name": "duration", + "name": "sorigin", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "stboxarr_round", + "name": "tpoint_make_simple", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal **", + "canonical": "Temporal **" }, "params": [ { - "name": "boxarr", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "stbox_set_srid", + "name": "tspatial_srid", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_srid", + "name": "tspatial_set_srid", "file": "meos_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "stbox_transform", + "name": "tspatial_transform", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "srid", @@ -31253,17 +32091,17 @@ ] }, { - "name": "stbox_transform_pipeline", + "name": "tspatial_transform_pipeline", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "pipelinestr", @@ -31283,472 +32121,477 @@ ] }, { - "name": "adjacent_stbox_stbox", + "name": "tgeo_at_geom", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contained_stbox_stbox", + "name": "tgeo_at_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", + "name": "box", "cType": "const STBox *", "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "contains_stbox_stbox", + "name": "tgeo_at_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overlaps_stbox_stbox", + "name": "tgeo_minus_geom", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "same_stbox_stbox", + "name": "tgeo_minus_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", + "name": "box", "cType": "const STBox *", "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "above_stbox_stbox", + "name": "tgeo_minus_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "after_stbox_stbox", + "name": "tpoint_at_elevation", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "back_stbox_stbox", + "name": "tpoint_at_geom", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "before_stbox_stbox", + "name": "tpoint_at_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "below_stbox_stbox", + "name": "tpoint_minus_elevation", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "front_stbox_stbox", + "name": "tpoint_minus_geom", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "left_stbox_stbox", + "name": "tpoint_minus_value", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overabove_stbox_stbox", + "name": "always_eq_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overafter_stbox_stbox", + "name": "always_eq_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overback_stbox_stbox", + "name": "always_eq_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" - }, + "c": "int", + "canonical": "int" + }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overbefore_stbox_stbox", + "name": "always_ne_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overbelow_stbox_stbox", + "name": "always_ne_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overfront_stbox_stbox", + "name": "always_ne_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overleft_stbox_stbox", + "name": "ever_eq_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overright_stbox_stbox", + "name": "ever_eq_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "right_stbox_stbox", + "name": "ever_eq_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "union_stbox_stbox", + "name": "ever_ne_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "intersection_stbox_stbox", + "name": "ever_ne_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_cmp", + "name": "ever_ne_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -31756,303 +32599,423 @@ }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_eq", + "name": "teq_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_ge", + "name": "teq_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_gt", + "name": "tne_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_le", + "name": "tne_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "stbox_lt", + "name": "tgeo_stboxes", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "stbox_ne", + "name": "tgeo_space_boxes", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tgeogpoint_from_mfjson", + "name": "tgeo_space_time_boxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tgeogpoint_in", + "name": "tgeo_split_each_n_stboxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "elem_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tgeography_from_mfjson", + "name": "tgeo_split_n_stboxes", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tgeography_in", + "name": "adjacent_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometry_from_mfjson", + "name": "adjacent_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeometry_in", + "name": "adjacent_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeompoint_from_mfjson", + "name": "contained_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeompoint_in", + "name": "contained_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tspatial_as_ewkt", + "name": "contained_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tspatial_as_text", + "name": "contains_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" } ] }, { - "name": "tspatial_out", + "name": "contains_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32061,380 +33024,345 @@ "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_from_base_temp", + "name": "contains_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tgeoinst_make", + "name": "overlaps_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeoseq_from_base_tstzset", + "name": "overlaps_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeoseq_from_base_tstzspan", + "name": "overlaps_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeoseqset_from_base_tstzspanset", + "name": "same_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpoint_from_base_temp", + "name": "same_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpointinst_make", + "name": "same_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpointseq_from_base_tstzset", + "name": "above_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpointseq_from_base_tstzspan", + "name": "above_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpointseq_make_coords", + "name": "above_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "xcoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "ycoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "zcoords", - "cType": "const double *", - "canonical": "const double *" - }, - { - "name": "times", - "cType": "const TimestampTz *", - "canonical": "const long *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "srid", - "cType": "int32", - "canonical": "int" - }, - { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpointseqset_from_base_tstzspanset", + "name": "after_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "box3d_to_stbox", + "name": "after_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "box", - "cType": "const int *", - "canonical": "const int *" + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "gbox_to_stbox", + "name": "after_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geomeas_to_tpoint", + "name": "back_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpoint_to_tgeography", + "name": "back_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeography_to_tgeogpoint", + "name": "back_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tgeography_to_tgeometry", + "name": "before_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32443,43 +33371,58 @@ ] }, { - "name": "tgeometry_to_tgeography", + "name": "before_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeometry_to_tgeompoint", + "name": "before_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tgeompoint_to_tgeometry", + "name": "below_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32488,7 +33431,7 @@ ] }, { - "name": "tpoint_as_mvtgeom", + "name": "below_tspatial_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32501,44 +33444,14 @@ "canonical": "const Temporal *" }, { - "name": "bounds", + "name": "box", "cType": "const STBox *", "canonical": "const struct STBox *" - }, - { - "name": "extent", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "buffer", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "clip_geom", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "gsarr", - "cType": "int **", - "canonical": "int **" - }, - { - "name": "timesarr", - "cType": "int64 **", - "canonical": "long **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "tpoint_tfloat_to_geomeas", + "name": "below_tspatial_tspatial", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32546,35 +33459,30 @@ }, "params": [ { - "name": "tpoint", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "measure", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "segmentize", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "result", - "cType": "int **", - "canonical": "int **" } ] }, { - "name": "tspatial_to_stbox", + "name": "front_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32583,37 +33491,12 @@ ] }, { - "name": "bearing_point_point", + "name": "front_tspatial_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", "canonical": "bool" }, - "params": [ - { - "name": "gs1", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "gs2", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "result", - "cType": "double *", - "canonical": "double *" - } - ] - }, - { - "name": "bearing_tpoint_point", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, "params": [ { "name": "temp", @@ -32621,23 +33504,18 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "invert", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "bearing_tpoint_tpoint", + "name": "front_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32653,13 +33531,18 @@ ] }, { - "name": "tgeo_centroid", + "name": "left_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32668,43 +33551,58 @@ ] }, { - "name": "tgeo_convex_hull", + "name": "left_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_end_value", + "name": "left_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tgeo_start_value", + "name": "overabove_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32713,11 +33611,11 @@ ] }, { - "name": "tgeo_traversed_area", + "name": "overabove_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32726,14 +33624,14 @@ "canonical": "const Temporal *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tgeo_value_at_timestamptz", + "name": "overabove_tspatial_tspatial", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32741,58 +33639,43 @@ }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "value", - "cType": "int **", - "canonical": "int **" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_value_n", + "name": "overafter_stbox_tspatial", "file": "meos_geo.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "int **", - "canonical": "int **" } ] }, { - "name": "tgeo_values", + "name": "overafter_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32801,50 +33684,45 @@ "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_angular_difference", + "name": "overafter_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" - } - ] - }, - { - "name": "tpoint_azimuth", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tpoint_cumulative_length", + "name": "overback_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32853,7 +33731,7 @@ ] }, { - "name": "tpoint_direction", + "name": "overback_tspatial_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32866,50 +33744,45 @@ "canonical": "const Temporal *" }, { - "name": "result", - "cType": "double *", - "canonical": "double *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_get_x", + "name": "overback_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" - } - ] - }, - { - "name": "tpoint_get_y", - "file": "meos_geo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tpoint_get_z", + "name": "overbefore_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", @@ -32918,7 +33791,7 @@ ] }, { - "name": "tpoint_is_simple", + "name": "overbefore_tspatial_stbox", "file": "meos_geo.h", "returnType": { "c": "bool", @@ -32929,54 +33802,60 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_length", + "name": "overbefore_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tpoint_speed", + "name": "overbelow_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } - ], - "ownership": "caller", - "nullable": true, - "doc": "Computes the instantaneous speed of a temporal point.", - "meos": { - "temporalDim": "sequence", - "spatialDim": null, - "interpolation": true, - "subtype": "TPoint" - } + ] }, { - "name": "tpoint_trajectory", + "name": "overbelow_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -32985,53 +33864,58 @@ "canonical": "const Temporal *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_twcentroid", + "name": "overbelow_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tgeo_affine", + "name": "overfront_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "a", - "cType": "const int *", - "canonical": "const int *" } ] }, { - "name": "tgeo_scale", + "name": "overfront_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33040,78 +33924,58 @@ "canonical": "const Temporal *" }, { - "name": "scale", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tpoint_make_simple", + "name": "overfront_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "tspatial_srid", - "file": "meos_geo.h", - "returnType": { - "c": "int32_t", - "canonical": "int" - }, - "params": [ - { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tspatial_set_srid", + "name": "overleft_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" } ] }, { - "name": "tspatial_transform", + "name": "overleft_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33120,68 +33984,58 @@ "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tspatial_transform_pipeline", + "name": "overleft_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_at_geom", + "name": "overright_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" } ] }, { - "name": "tgeo_at_stbox", + "name": "overright_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33193,60 +34047,55 @@ "name": "box", "cType": "const STBox *", "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tgeo_at_value", + "name": "overright_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_minus_geom", + "name": "right_stbox_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" } ] }, { - "name": "tgeo_minus_stbox", + "name": "right_tspatial_stbox", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -33258,60 +34107,55 @@ "name": "box", "cType": "const STBox *", "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tgeo_minus_value", + "name": "right_tspatial_tspatial", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpoint_at_elevation", + "name": "acontains_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" } ] }, { - "name": "tpoint_at_geom", + "name": "acontains_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33327,51 +34171,51 @@ ] }, { - "name": "tpoint_at_value", + "name": "acontains_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpoint_minus_elevation", + "name": "acovers_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" } ] }, { - "name": "tpoint_minus_geom", + "name": "acovers_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33387,47 +34231,47 @@ ] }, { - "name": "tpoint_minus_value", + "name": "acovers_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "always_eq_geo_tgeo", + "name": "adisjoint_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_eq_tgeo_geo", + "name": "adisjoint_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33435,19 +34279,19 @@ }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "always_eq_tgeo_tgeo", + "name": "adwithin_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33455,19 +34299,24 @@ }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "always_ne_geo_tgeo", + "name": "adwithin_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33475,19 +34324,24 @@ }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "always_ne_tgeo_geo", + "name": "aintersects_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33507,7 +34361,7 @@ ] }, { - "name": "always_ne_tgeo_tgeo", + "name": "aintersects_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33527,27 +34381,27 @@ ] }, { - "name": "ever_eq_geo_tgeo", + "name": "atouches_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ever_eq_tgeo_geo", + "name": "atouches_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33555,19 +34409,19 @@ }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "ever_eq_tgeo_tgeo", + "name": "atouches_tpoint_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33575,19 +34429,19 @@ }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ever_ne_geo_tgeo", + "name": "econtains_geo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33607,7 +34461,7 @@ ] }, { - "name": "ever_ne_tgeo_geo", + "name": "econtains_tgeo_geo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33627,7 +34481,7 @@ ] }, { - "name": "ever_ne_tgeo_tgeo", + "name": "econtains_tgeo_tgeo", "file": "meos_geo.h", "returnType": { "c": "int", @@ -33647,11 +34501,11 @@ ] }, { - "name": "teq_geo_tgeo", + "name": "ecovers_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33667,11 +34521,11 @@ ] }, { - "name": "teq_tgeo_geo", + "name": "ecovers_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33687,31 +34541,31 @@ ] }, { - "name": "tne_geo_tgeo", + "name": "ecovers_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tne_tgeo_geo", + "name": "edisjoint_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33727,31 +34581,31 @@ ] }, { - "name": "tgeo_stboxes", + "name": "edisjoint_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_space_boxes", + "name": "edwithin_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33760,108 +34614,48 @@ "canonical": "const Temporal *" }, { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "sorigin", + "name": "gs", "cType": "const int *", "canonical": "const int *" }, { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tgeo_space_time_boxes", + "name": "edwithin_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "zsize", + "name": "dist", "cType": "double", "canonical": "double" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "tgeo_split_each_n_stboxes", + "name": "eintersects_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -33870,114 +34664,104 @@ "canonical": "const Temporal *" }, { - "name": "elem_count", - "cType": "int", - "canonical": "int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeo_split_n_stboxes", + "name": "eintersects_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "box_count", - "cType": "int", - "canonical": "int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "adjacent_stbox_tspatial", + "name": "etouches_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "adjacent_tspatial_stbox", + "name": "etouches_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "adjacent_tspatial_tspatial", + "name": "etouches_tpoint_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contained_stbox_tspatial", + "name": "tcontains_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -33987,11 +34771,11 @@ ] }, { - "name": "contained_tspatial_stbox", + "name": "tcontains_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34000,18 +34784,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contained_tspatial_tspatial", + "name": "tcontains_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34027,17 +34811,17 @@ ] }, { - "name": "contains_stbox_tspatial", + "name": "tcovers_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -34047,11 +34831,11 @@ ] }, { - "name": "contains_tspatial_stbox", + "name": "tcovers_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34060,18 +34844,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contains_tspatial_tspatial", + "name": "tcovers_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34087,17 +34871,17 @@ ] }, { - "name": "overlaps_stbox_tspatial", + "name": "tdisjoint_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -34107,11 +34891,11 @@ ] }, { - "name": "overlaps_tspatial_stbox", + "name": "tdisjoint_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34120,18 +34904,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overlaps_tspatial_tspatial", + "name": "tdisjoint_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34147,31 +34931,36 @@ ] }, { - "name": "same_stbox_tspatial", + "name": "tdwithin_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "same_tspatial_stbox", + "name": "tdwithin_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34180,18 +34969,23 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "same_tspatial_tspatial", + "name": "tdwithin_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34203,21 +34997,26 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "above_stbox_tspatial", + "name": "tintersects_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -34227,11 +35026,11 @@ ] }, { - "name": "above_tspatial_stbox", + "name": "tintersects_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34240,18 +35039,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "above_tspatial_tspatial", + "name": "tintersects_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34267,17 +35066,17 @@ ] }, { - "name": "after_stbox_tspatial", + "name": "ttouches_geo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -34287,11 +35086,11 @@ ] }, { - "name": "after_tspatial_stbox", + "name": "ttouches_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34300,18 +35099,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "after_tspatial_tspatial", + "name": "ttouches_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34327,31 +35126,11 @@ ] }, { - "name": "back_stbox_tspatial", + "name": "tdistance_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "back_tspatial_stbox", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34360,18 +35139,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "back_tspatial_tspatial", + "name": "tdistance_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -34387,11 +35166,11 @@ ] }, { - "name": "before_stbox_tspatial", + "name": "nad_stbox_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { @@ -34400,78 +35179,58 @@ "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "before_tspatial_stbox", + "name": "nad_stbox_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "box", + "name": "box2", "cType": "const STBox *", "canonical": "const struct STBox *" } ] }, { - "name": "before_tspatial_tspatial", + "name": "nad_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - } - ] - }, - { - "name": "below_stbox_tspatial", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "below_tspatial_stbox", + "name": "nad_tgeo_stbox", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { @@ -34487,11 +35246,11 @@ ] }, { - "name": "below_tspatial_tspatial", + "name": "nad_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { @@ -34507,31 +35266,11 @@ ] }, { - "name": "front_stbox_tspatial", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "front_tspatial_stbox", + "name": "nai_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -34540,18 +35279,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "front_tspatial_tspatial", + "name": "nai_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -34567,31 +35306,11 @@ ] }, { - "name": "left_stbox_tspatial", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "left_tspatial_stbox", + "name": "shortestline_tgeo_geo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -34600,18 +35319,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "left_tspatial_tspatial", + "name": "shortestline_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { @@ -34627,51 +35346,41 @@ ] }, { - "name": "overabove_stbox_tspatial", + "name": "mindistance_tgeoarr_tgeoarr", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "arr1", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "overabove_tspatial_stbox", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "count1", + "cType": "int", + "canonical": "int" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "arr2", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "count2", + "cType": "int", + "canonical": "int" } ] }, { - "name": "overabove_tspatial_tspatial", + "name": "mindistance_tgeo_tgeo", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { @@ -34683,141 +35392,181 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "threshold", + "cType": "double", + "canonical": "double" } ] }, { - "name": "overafter_stbox_tspatial", + "name": "edwithin_tgeoarr_tgeoarr", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "arr1", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "overafter_tspatial_stbox", - "file": "meos_geo.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "count1", + "cType": "int", + "canonical": "int" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "arr2", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "count2", + "cType": "int", + "canonical": "int" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overafter_tspatial_tspatial", + "name": "tdwithin_tgeoarr_tgeoarr", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "arr1", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count1", + "cType": "int", + "canonical": "int" + }, + { + "name": "arr2", + "cType": "const Temporal **", + "canonical": "const Temporal **" + }, + { + "name": "count2", + "cType": "int", + "canonical": "int" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "periods", + "cType": "SpanSet ***", + "canonical": "struct SpanSet ***" } ] }, { - "name": "overback_stbox_tspatial", + "name": "adisjoint_tgeoarr_tgeoarr", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "arr1", + "cType": "const Temporal **", + "canonical": "const Temporal **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count1", + "cType": "int", + "canonical": "int" + }, + { + "name": "arr2", + "cType": "const Temporal **", + "canonical": "const Temporal **" + }, + { + "name": "count2", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overback_tspatial_stbox", + "name": "tpoint_tcentroid_finalfn", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "overback_tspatial_tspatial", + "name": "tpoint_tcentroid_transfn", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "overbefore_stbox_tspatial", + "name": "tspatial_extent_transfn", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "cType": "STBox *", + "canonical": "struct STBox *" }, { "name": "temp", @@ -34827,131 +35576,256 @@ ] }, { - "name": "overbefore_tspatial_stbox", + "name": "stbox_get_space_tile", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "point", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "overbefore_tspatial_tspatial", + "name": "stbox_get_space_time_tile", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "point", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "overbelow_stbox_tspatial", + "name": "stbox_get_time_tile", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "overbelow_tspatial_stbox", + "name": "stbox_space_tiles", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", + "name": "bounds", "cType": "const STBox *", "canonical": "const struct STBox *" - } - ] - }, + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, { - "name": "overbelow_tspatial_tspatial", + "name": "stbox_space_time_tiles", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bounds", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overfront_stbox_tspatial", + "name": "stbox_time_tiles", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "box", + "name": "bounds", "cType": "const STBox *", "canonical": "const struct STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overfront_tspatial_stbox", + "name": "tgeo_space_split", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SpaceSplit", + "canonical": "struct SpaceSplit" }, "params": [ { @@ -34960,375 +35834,465 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overfront_tspatial_tspatial", + "name": "tgeo_space_time_split", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SpaceTimeSplit", + "canonical": "struct SpaceTimeSplit" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overleft_stbox_tspatial", + "name": "geo_cluster_kmeans", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "k", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overleft_tspatial_stbox", + "name": "geo_cluster_dbscan", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint32_t *", + "canonical": "unsigned int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" + }, + { + "name": "minpoints", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overleft_tspatial_tspatial", + "name": "geo_cluster_intersecting", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overright_stbox_tspatial", + "name": "geo_cluster_within", "file": "meos_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "tolerance", + "cType": "double", + "canonical": "double" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "overright_tspatial_stbox", - "file": "meos_geo.h", + "name": "cbuffer_as_ewkt", + "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "overright_tspatial_tspatial", - "file": "meos_geo.h", + "name": "cbuffer_as_hexwkb", + "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "right_stbox_tspatial", - "file": "meos_geo.h", + "name": "cbuffer_as_text", + "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "right_tspatial_stbox", - "file": "meos_geo.h", + "name": "cbuffer_as_wkb", + "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "right_tspatial_tspatial", - "file": "meos_geo.h", + "name": "cbuffer_from_hexwkb", + "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "acontains_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_from_wkb", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" } ] }, { - "name": "acontains_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_in", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "acontains_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_out", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "adisjoint_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_copy", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "adisjoint_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_make", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "point", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "radius", + "cType": "double", + "canonical": "double" } ] }, { - "name": "adwithin_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_to_geom", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "adwithin_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_to_stbox", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + } + ] + }, + { + "name": "cbufferarr_to_geom", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cbarr", + "cType": "const Cbuffer **", + "canonical": "const struct Cbuffer **" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "aintersects_tgeo_geo", - "file": "meos_geo.h", + "name": "geom_to_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "gs", "cType": "const int *", @@ -35337,287 +36301,277 @@ ] }, { - "name": "aintersects_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_hash", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "atouches_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_hash_extended", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "atouches_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_point", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "atouches_tpoint_geo", - "file": "meos_geo.h", + "name": "cbuffer_radius", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "econtains_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_round", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "econtains_tgeo_geo", - "file": "meos_geo.h", + "name": "cbufferarr_round", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer **", + "canonical": "struct Cbuffer **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cbarr", + "cType": "const Cbuffer **", + "canonical": "const struct Cbuffer **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "econtains_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_set_srid", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "Cbuffer *", + "canonical": "struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "ecovers_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_srid", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", + "c": "int32_t", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "ecovers_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_transform", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "ecovers_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_transform_pipeline", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "edisjoint_tgeo_geo", - "file": "meos_geo.h", + "name": "contains_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "edisjoint_tgeo_tgeo", - "file": "meos_geo.h", + "name": "covers_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "edwithin_tgeo_geo", - "file": "meos_geo.h", + "name": "disjoint_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "edwithin_tgeo_tgeo", - "file": "meos_geo.h", + "name": "dwithin_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { "name": "dist", @@ -35627,1061 +36581,961 @@ ] }, { - "name": "eintersects_tgeo_geo", - "file": "meos_geo.h", + "name": "intersects_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "eintersects_tgeo_tgeo", - "file": "meos_geo.h", + "name": "touches_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "etouches_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_tstzspan_to_stbox", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "etouches_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_timestamptz_to_stbox", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "etouches_tpoint_geo", - "file": "meos_geo.h", + "name": "distance_cbuffer_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcontains_geo_tgeo", - "file": "meos_geo.h", + "name": "distance_cbuffer_geo", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "tcontains_tgeo_geo", - "file": "meos_geo.h", + "name": "distance_cbuffer_stbox", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tcontains_tgeo_tgeo", - "file": "meos_geo.h", + "name": "nad_cbuffer_stbox", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "tcovers_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_cmp", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcovers_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_eq", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcovers_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_ge", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdisjoint_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_gt", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdisjoint_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_le", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdisjoint_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_lt", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdwithin_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_ne", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdwithin_tgeo_geo", - "file": "meos_geo.h", + "name": "cbuffer_nsame", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tdwithin_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_same", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tintersects_geo_tgeo", - "file": "meos_geo.h", + "name": "cbufferset_in", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tintersects_tgeo_geo", - "file": "meos_geo.h", + "name": "cbufferset_out", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tintersects_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbufferset_make", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ttouches_geo_tgeo", - "file": "meos_geo.h", + "name": "cbuffer_to_set", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "ttouches_tgeo_geo", - "file": "meos_geo.h", + "name": "cbufferset_end_value", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ttouches_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbufferset_start_value", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tdistance_tgeo_geo", - "file": "meos_geo.h", + "name": "cbufferset_value_n", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" } ] }, { - "name": "tdistance_tgeo_tgeo", - "file": "meos_geo.h", + "name": "cbufferset_values", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Cbuffer **", + "canonical": "struct Cbuffer **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "nad_stbox_geo", - "file": "meos_geo.h", + "name": "cbuffer_union_transfn", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "state", + "cType": "Set *", + "canonical": "Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "nad_stbox_stbox", - "file": "meos_geo.h", + "name": "contained_cbuffer_set", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nad_tgeo_geo", - "file": "meos_geo.h", + "name": "contains_set_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "Cbuffer *", + "canonical": "struct Cbuffer *" } ] }, { - "name": "nad_tgeo_stbox", - "file": "meos_geo.h", + "name": "intersection_cbuffer_set", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nad_tgeo_tgeo", - "file": "meos_geo.h", + "name": "intersection_set_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "nai_tgeo_geo", - "file": "meos_geo.h", + "name": "minus_cbuffer_set", + "file": "meos_cbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nai_tgeo_tgeo", - "file": "meos_geo.h", + "name": "minus_set_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "shortestline_tgeo_geo", - "file": "meos_geo.h", + "name": "union_cbuffer_set", + "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "shortestline_tgeo_tgeo", - "file": "meos_geo.h", + "name": "union_set_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tgeoarr_tgeoarr_mindist", - "file": "meos_geo.h", + "name": "tcbuffer_in", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "arr1", - "cType": "const Temporal **", - "canonical": "const Temporal **" - }, + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tcbuffer_from_mfjson", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { - "name": "count1", - "cType": "int", - "canonical": "int" - }, + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tcbufferinst_make", + "file": "meos_cbuffer.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ { - "name": "arr2", - "cType": "const Temporal **", - "canonical": "const Temporal **" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "count2", - "cType": "int", - "canonical": "int" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "mindistance_tgeo_tgeo", - "file": "meos_geo.h", + "name": "tcbuffer_make", + "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "tpoint", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", + "name": "tfloat", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "threshold", - "cType": "double", - "canonical": "double" } ] }, { - "name": "tpoint_tcentroid_finalfn", - "file": "meos_geo.h", + "name": "tcbuffer_from_base_temp", + "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tpoint_tcentroid_transfn", - "file": "meos_geo.h", + "name": "tcbufferseq_from_base_tstzset", + "file": "meos_cbuffer.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tspatial_extent_transfn", - "file": "meos_geo.h", + "name": "tcbufferseq_from_base_tstzspan", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "stbox_get_space_tile", - "file": "meos_geo.h", + "name": "tcbufferseqset_from_base_tstzspanset", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "zsize", - "cType": "double", - "canonical": "double" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "stbox_get_space_time_tile", - "file": "meos_geo.h", + "name": "tcbuffer_end_value", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_get_time_tile", - "file": "meos_geo.h", + "name": "tcbuffer_points", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_space_tiles", - "file": "meos_geo.h", + "name": "tcbuffer_radius", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_space_time_tiles", - "file": "meos_geo.h", + "name": "tcbuffer_traversed_area", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "border_inc", + "name": "unary_union", "cType": "bool", "canonical": "bool" - }, + } + ] + }, + { + "name": "tcbuffer_convex_hull", + "file": "meos_cbuffer.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_time_tiles", - "file": "meos_geo.h", + "name": "tcbuffer_start_value", + "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "bounds", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tcbuffer_value_at_timestamptz", + "file": "meos_cbuffer.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "torigin", + "name": "t", "cType": "TimestampTz", "canonical": "long" }, { - "name": "border_inc", + "name": "strict", "cType": "bool", "canonical": "bool" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" } ] }, { - "name": "tgeo_space_split", - "file": "meos_geo.h", + "name": "tcbuffer_value_n", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -36690,53 +37544,23 @@ "canonical": "const Temporal *" }, { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "space_bins", - "cType": "int ***", - "canonical": "int ***" + "name": "n", + "cType": "int", + "canonical": "int" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "Cbuffer **", + "canonical": "struct Cbuffer **" } ] }, { - "name": "tgeo_space_time_split", - "file": "meos_geo.h", + "name": "tcbuffer_values", + "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "Cbuffer **", + "canonical": "struct Cbuffer **" }, "params": [ { @@ -36744,56 +37568,6 @@ "cType": "const Temporal *", "canonical": "const Temporal *" }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "space_bins", - "cType": "int ***", - "canonical": "int ***" - }, - { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" - }, { "name": "count", "cType": "int *", @@ -36802,146 +37576,96 @@ ] }, { - "name": "geo_cluster_kmeans", - "file": "meos_geo.h", + "name": "tcbuffer_to_tfloat", + "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" - }, - { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" - }, - { - "name": "k", - "cType": "uint32_t", - "canonical": "unsigned int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_cluster_dbscan", - "file": "meos_geo.h", + "name": "tcbuffer_to_tgeompoint", + "file": "meos_cbuffer.h", "returnType": { - "c": "uint32_t *", - "canonical": "unsigned int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" - }, - { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" - }, - { - "name": "tolerance", - "cType": "double", - "canonical": "double" - }, - { - "name": "minpoints", - "cType": "int", - "canonical": "int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_cluster_intersecting", - "file": "meos_geo.h", + "name": "tgeometry_to_tcbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" - }, - { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geo_cluster_within", - "file": "meos_geo.h", + "name": "tcbuffer_expand", + "file": "meos_cbuffer.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "geoms", - "cType": "const int **", - "canonical": "const int **" - }, - { - "name": "ngeoms", - "cType": "uint32_t", - "canonical": "unsigned int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "tolerance", + "name": "dist", "cType": "double", "canonical": "double" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "acovers_geo_tgeo", - "file": "meos_geo.h", + "name": "tcbuffer_at_cbuffer", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "acovers_tgeo_geo", - "file": "meos_geo.h", + "name": "tcbuffer_at_geom", + "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -36957,258 +37681,293 @@ ] }, { - "name": "cbuffer_as_ewkt", + "name": "tcbuffer_at_stbox", "file": "meos_cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "cbuffer_as_hexwkb", + "name": "tcbuffer_minus_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size", - "cType": "size_t *", - "canonical": "unsigned long *" } ] }, { - "name": "cbuffer_as_text", + "name": "tcbuffer_minus_geom", "file": "meos_cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_as_wkb", + "name": "tcbuffer_minus_stbox", "file": "meos_cbuffer.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "cbuffer_from_hexwkb", + "name": "tdistance_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "hexwkb", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbuffer_from_wkb", + "name": "tdistance_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_in", + "name": "tdistance_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_out", + "name": "nad_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "double", + "canonical": "double" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" } ] }, { - "name": "cbuffer_copy", + "name": "nad_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_make", + "name": "nad_tcbuffer_stbox", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "radius", - "cType": "double", - "canonical": "double" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "cbuffer_to_geom", + "name": "nad_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_to_stbox", + "name": "mindistance_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "threshold", + "cType": "double", + "canonical": "double" } ] }, { - "name": "cbufferarr_to_geom", + "name": "nai_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "cbarr", - "cType": "const Cbuffer **", - "canonical": "const struct Cbuffer **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "geom_to_cbuffer", + "name": "nai_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "gs", "cType": "const int *", @@ -37217,42 +37976,47 @@ ] }, { - "name": "cbuffer_hash", + "name": "nai_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_hash_extended", + "name": "shortestline_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "int *", + "canonical": "int *" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" } ] }, { - "name": "cbuffer_point", + "name": "shortestline_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { "c": "int *", @@ -37260,33 +38024,43 @@ }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_radius", + "name": "shortestline_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_round", + "name": "always_eq_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -37295,62 +38069,57 @@ "canonical": "const struct Cbuffer *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbufferarr_round", + "name": "always_eq_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer **", - "canonical": "struct Cbuffer **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cbarr", - "cType": "const Cbuffer **", - "canonical": "const struct Cbuffer **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbuffer_set_srid", + "name": "always_eq_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "Cbuffer *", - "canonical": "struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_srid", + "name": "always_ne_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int32_t", + "c": "int", "canonical": "int" }, "params": [ @@ -37358,61 +38127,36 @@ "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_transform", + "name": "always_ne_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - } - ] - }, - { - "name": "cbuffer_transform_pipeline", - "file": "meos_cbuffer.h", - "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" - }, - "params": [ { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "contains_cbuffer_cbuffer", + "name": "always_ne_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37420,19 +38164,19 @@ }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "covers_cbuffer_cbuffer", + "name": "ever_eq_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37440,19 +38184,19 @@ }, "params": [ { - "name": "cb1", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "disjoint_cbuffer_cbuffer", + "name": "ever_eq_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37460,19 +38204,19 @@ }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" } ] }, { - "name": "dwithin_cbuffer_cbuffer", + "name": "ever_eq_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37480,24 +38224,19 @@ }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, - { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "intersects_cbuffer_cbuffer", + "name": "ever_ne_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37505,19 +38244,19 @@ }, "params": [ { - "name": "cb1", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "touches_cbuffer_cbuffer", + "name": "ever_ne_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37525,43 +38264,43 @@ }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbuffer_tstzspan_to_stbox", + "name": "ever_ne_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_timestamptz_to_stbox", + "name": "teq_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -37570,38 +38309,38 @@ "canonical": "const struct Cbuffer *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "distance_cbuffer_cbuffer", + "name": "teq_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" } ] }, { - "name": "distance_cbuffer_geo", + "name": "tne_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -37610,38 +38349,38 @@ "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "distance_cbuffer_stbox", + "name": "tne_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" } ] }, { - "name": "nad_cbuffer_stbox", + "name": "acontains_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { @@ -37650,14 +38389,14 @@ "canonical": "const struct Cbuffer *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_cmp", + "name": "acontains_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "int", @@ -37665,383 +38404,418 @@ }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_eq", + "name": "acontains_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbuffer_ge", + "name": "acontains_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_gt", + "name": "acovers_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_le", + "name": "acovers_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_lt", + "name": "acovers_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", + "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbuffer_ne", + "name": "acovers_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbuffer_nsame", + "name": "acovers_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_same", + "name": "adisjoint_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb1", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb2", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbufferset_in", + "name": "adisjoint_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbufferset_out", + "name": "adisjoint_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbufferset_make", + "name": "adwithin_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "Cbuffer **", - "canonical": "struct Cbuffer **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "cbuffer_to_set", + "name": "adwithin_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "cbufferset_end_value", + "name": "adwithin_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "cbufferset_start_value", + "name": "aintersects_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer *", - "canonical": "struct Cbuffer *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "cbufferset_value_n", + "name": "aintersects_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "Cbuffer **", - "canonical": "struct Cbuffer **" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "cbufferset_values", + "name": "aintersects_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Cbuffer **", - "canonical": "struct Cbuffer **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "cbuffer_union_transfn", + "name": "atouches_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "contained_cbuffer_set", + "name": "atouches_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" } ] }, { - "name": "contains_set_cbuffer", + "name": "atouches_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "Cbuffer *", - "canonical": "struct Cbuffer *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "intersection_cbuffer_set", + "name": "econtains_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -38050,24 +38824,24 @@ "canonical": "const struct Cbuffer *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "intersection_set_cbuffer", + "name": "econtains_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "cb", @@ -38077,77 +38851,77 @@ ] }, { - "name": "minus_cbuffer_set", + "name": "econtains_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "minus_set_cbuffer", + "name": "ecovers_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, { "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "union_cbuffer_set", + "name": "ecovers_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "union_set_cbuffer", + "name": "ecovers_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "cb", @@ -38157,91 +38931,91 @@ ] }, { - "name": "tcbuffer_in", + "name": "ecovers_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "tcbuffer_from_mfjson", - "file": "meos_cbuffer.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tcbuffer_make", + "name": "ecovers_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "tpoint", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "tfloat", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tcbuffer_points", + "name": "edisjoint_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tcbuffer_radius", + "name": "edisjoint_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcbuffer_trav_area", + "name": "edwithin_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -38250,63 +39024,93 @@ "canonical": "const Temporal *" }, { - "name": "merge_union", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tcbuffer_to_tfloat", + "name": "edwithin_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tcbuffer_to_tgeompoint", + "name": "edwithin_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tgeometry_to_tcbuffer", + "name": "eintersects_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tcbuffer_expand", + "name": "eintersects_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -38315,38 +39119,38 @@ "canonical": "const Temporal *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcbuffer_at_cbuffer", + "name": "eintersects_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tcbuffer_at_geom", + "name": "etouches_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -38362,11 +39166,11 @@ ] }, { - "name": "tcbuffer_at_stbox", + "name": "etouches_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -38375,59 +39179,74 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tcbuffer_minus_cbuffer", + "name": "etouches_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tcbuffer_minus_geom", + "name": "tcontains_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, + } + ] + }, + { + "name": "tcontains_geo_tcbuffer", + "file": "meos_cbuffer.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tcbuffer_minus_stbox", + "name": "tcontains_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38440,19 +39259,14 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tdistance_tcbuffer_cbuffer", + "name": "tcontains_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38472,7 +39286,7 @@ ] }, { - "name": "tdistance_tcbuffer_geo", + "name": "tcontains_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38480,19 +39294,19 @@ }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tdistance_tcbuffer_tcbuffer", + "name": "tcovers_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38500,43 +39314,43 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "nad_tcbuffer_cbuffer", + "name": "tcovers_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" } ] }, { - "name": "nad_tcbuffer_geo", + "name": "tcovers_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38552,11 +39366,11 @@ ] }, { - "name": "nad_tcbuffer_stbox", + "name": "tcovers_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38565,18 +39379,18 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "nad_tcbuffer_tcbuffer", + "name": "tcovers_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38592,31 +39406,36 @@ ] }, { - "name": "nai_tcbuffer_cbuffer", + "name": "tdwithin_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "nai_tcbuffer_geo", + "name": "tdwithin_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38628,35 +39447,20 @@ "name": "gs", "cType": "const int *", "canonical": "const int *" - } - ] - }, - { - "name": "nai_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ - { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "shortestline_tcbuffer_cbuffer", + "name": "tdwithin_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38668,35 +39472,20 @@ "name": "cb", "cType": "const Cbuffer *", "canonical": "const struct Cbuffer *" - } - ] - }, - { - "name": "shortestline_tcbuffer_geo", - "file": "meos_cbuffer.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "shortestline_tcbuffer_tcbuffer", + "name": "tdwithin_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38708,15 +39497,20 @@ "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "always_eq_cbuffer_tcbuffer", + "name": "tdisjoint_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38732,71 +39526,51 @@ ] }, { - "name": "always_eq_tcbuffer_cbuffer", + "name": "tdisjoint_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" } ] }, { - "name": "always_eq_tcbuffer_tcbuffer", + "name": "tdisjoint_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - } - ] - }, - { - "name": "always_ne_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_ne_tcbuffer_cbuffer", + "name": "tdisjoint_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38812,11 +39586,11 @@ ] }, { - "name": "always_ne_tcbuffer_tcbuffer", + "name": "tdisjoint_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38832,11 +39606,11 @@ ] }, { - "name": "ever_eq_cbuffer_tcbuffer", + "name": "tintersects_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38852,71 +39626,51 @@ ] }, { - "name": "ever_eq_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - } - ] - }, - { - "name": "ever_eq_tcbuffer_tcbuffer", + "name": "tintersects_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "ever_ne_cbuffer_tcbuffer", + "name": "tintersects_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ever_ne_tcbuffer_cbuffer", + "name": "tintersects_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38932,11 +39686,11 @@ ] }, { - "name": "ever_ne_tcbuffer_tcbuffer", + "name": "tintersects_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -38952,7 +39706,7 @@ ] }, { - "name": "teq_cbuffer_tcbuffer", + "name": "ttouches_geo_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38960,9 +39714,9 @@ }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { "name": "temp", @@ -38972,7 +39726,7 @@ ] }, { - "name": "teq_tcbuffer_cbuffer", + "name": "ttouches_tcbuffer_geo", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -38985,14 +39739,14 @@ "canonical": "const Temporal *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tne_cbuffer_tcbuffer", + "name": "ttouches_cbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -39012,7 +39766,7 @@ ] }, { - "name": "tne_tcbuffer_cbuffer", + "name": "ttouches_tcbuffer_cbuffer", "file": "meos_cbuffer.h", "returnType": { "c": "Temporal *", @@ -39032,2710 +39786,2670 @@ ] }, { - "name": "acontains_cbuffer_tcbuffer", + "name": "ttouches_tcbuffer_tcbuffer", "file": "meos_cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, - { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" - } - ] - }, - { - "name": "acontains_geo_tcbuffer", - "file": "meos_cbuffer.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "acontains_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "gsl_get_generation_rng", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "gsl_rng *", + "canonical": "gsl_rng *" }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - } - ] + "params": [] }, { - "name": "acontains_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "gsl_get_aggregation_rng", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "gsl_rng *", + "canonical": "gsl_rng *" }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - } - ] + "params": [] }, { - "name": "acovers_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "datum_ceil", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "acovers_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "datum_degrees", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "normalize", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "acovers_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "datum_float_round", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "acovers_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "datum_floor", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "adisjoint_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "datum_hash", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adisjoint_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "datum_hash_extended", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "adisjoint_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "datum_radians", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "adwithin_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "floatspan_round_set", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "adwithin_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "set_in", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adwithin_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_out", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "aintersects_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "span_in", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "aintersects_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "span_out", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "aintersects_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_in", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "atouches_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "spanset_out", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "atouches_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "set_make", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "atouches_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_make_exp", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "econtains_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_make_free", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "econtains_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "span_make", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "lower", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "upper", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "econtains_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "span_set", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "lower", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "upper", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "ecovers_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_make_exp", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "spans", + "cType": "Span *", + "canonical": "struct Span *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ecovers_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_make_free", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "spans", + "cType": "Span *", + "canonical": "struct Span *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ecovers_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "set_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ecovers_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_spanset", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "edisjoint_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "value_set_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "edisjoint_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "value_set", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edwithin_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "value_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edwithin_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edwithin_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "numspan_width", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "eintersects_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "numspanset_width", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "boundspan", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "eintersects_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "set_end_value", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "eintersects_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_mem_size", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "etouches_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "set_set_subspan", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "minidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "etouches_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "set_set_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "etouches_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_start_value", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tcontains_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_value_n", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "tcontains_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "set_vals", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcontains_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "set_values", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcontains_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_lower", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, + "c": "int", + "canonical": "int" + }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + } + ] + }, + { + "name": "spanset_mem_size", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "tcontains_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_sps", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const Span **", + "canonical": "const struct Span **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tcovers_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_upper", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "tcovers_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "bigintspan_set_floatspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tcovers_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "bigintspan_set_intspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tcovers_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "datespan_set_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tcovers_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "floatspan_set_bigintspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tdwithin_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "floatspan_set_intspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tdwithin_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "intspan_set_bigintspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tdwithin_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "intspan_set_floatspan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tdwithin_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "numset_shift_scale", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tdisjoint_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "numspan_expand", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tdisjoint_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "numspan_shift_scale", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tdisjoint_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "numspanset_shift_scale", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tdisjoint_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "set_compact", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tdisjoint_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "span_expand", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tintersects_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "spanset_compact", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "tintersects_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "tbox_expand_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetyp", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tintersects_tcbuffer_geo", - "file": "meos_cbuffer.h", + "name": "textcat_textset_text_common", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", + "name": "txt", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tintersects_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "tstzspan_set_datespan", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s2", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tintersects_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "adjacent_span_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ttouches_geo_tcbuffer", - "file": "meos_cbuffer.h", + "name": "adjacent_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ttouches_tcbuffer_geo", - "file": "meos_cbuffer.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "name": "adjacent_value_spanset", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "ttouches_cbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "contained_value_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ttouches_tcbuffer_cbuffer", - "file": "meos_cbuffer.h", + "name": "contained_value_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cb", - "cType": "const Cbuffer *", - "canonical": "const struct Cbuffer *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "ttouches_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "contained_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "acovers_tcbuffer_tcbuffer", - "file": "meos_cbuffer.h", + "name": "contains_set_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "h3index_in", - "file": "meos_h3.h", + "name": "contains_span_value", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "h3index_out", - "file": "meos_h3.h", + "name": "contains_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_in", - "file": "meos_h3.h", + "name": "ovadj_span_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3indexinst_in", - "file": "meos_h3.h", + "name": "left_set_value", + "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3indexseq_in", - "file": "meos_h3.h", + "name": "left_span_value", + "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3indexseqset_in", - "file": "meos_h3.h", + "name": "left_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_make", - "file": "meos_h3.h", + "name": "left_value_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "value", - "cType": "H3Index", - "canonical": "unsigned long" + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "th3indexinst_make", - "file": "meos_h3.h", + "name": "left_value_span", + "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "value", - "cType": "H3Index", - "canonical": "unsigned long" + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3indexseq_make", - "file": "meos_h3.h", + "name": "left_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "values", - "cType": "const H3Index *", - "canonical": "const unsigned long *" - }, - { - "name": "times", - "cType": "const TimestampTz *", - "canonical": "const long *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "th3indexseqset_make", - "file": "meos_h3.h", + "name": "lfnadj_span_span", + "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "sequences", - "cType": "const TSequence **", - "canonical": "const struct TSequence **" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3index_start_value", - "file": "meos_h3.h", + "name": "overleft_set_value", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_end_value", - "file": "meos_h3.h", + "name": "overleft_span_value", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_value_n", - "file": "meos_h3.h", + "name": "overleft_spanset_value", + "file": "meos_internal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "result", - "cType": "H3Index *", - "canonical": "unsigned long *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_values", - "file": "meos_h3.h", + "name": "overleft_value_set", + "file": "meos_internal.h", "returnType": { - "c": "H3Index *", - "canonical": "unsigned long *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "th3index_value_at_timestamptz", - "file": "meos_h3.h", + "name": "overleft_value_span", + "file": "meos_internal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "result", - "cType": "H3Index *", - "canonical": "unsigned long *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tbigint_to_th3index", - "file": "meos_h3.h", + "name": "overleft_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "th3index_to_tbigint", - "file": "meos_h3.h", + "name": "overright_set_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_eq_h3index_th3index", - "file": "meos_h3.h", + "name": "overright_span_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_eq_th3index_h3index", - "file": "meos_h3.h", + "name": "overright_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_ne_h3index_th3index", - "file": "meos_h3.h", + "name": "overright_value_set", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ever_ne_th3index_h3index", - "file": "meos_h3.h", + "name": "overright_value_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "always_eq_h3index_th3index", - "file": "meos_h3.h", + "name": "overright_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "always_eq_th3index_h3index", - "file": "meos_h3.h", + "name": "right_value_set", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "always_ne_h3index_th3index", - "file": "meos_h3.h", + "name": "right_set_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "always_ne_th3index_h3index", - "file": "meos_h3.h", + "name": "right_value_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "ever_eq_th3index_th3index", - "file": "meos_h3.h", + "name": "right_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "ever_ne_th3index_th3index", - "file": "meos_h3.h", + "name": "right_span_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "always_eq_th3index_th3index", - "file": "meos_h3.h", + "name": "right_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "always_ne_th3index_th3index", - "file": "meos_h3.h", + "name": "bbox_type", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "teq_h3index_th3index", - "file": "meos_h3.h", + "name": "bbox_get_size", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "size_t", + "canonical": "unsigned long" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "teq_th3index_h3index", - "file": "meos_h3.h", + "name": "bbox_max_dims", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "teq_th3index_th3index", - "file": "meos_h3.h", + "name": "temporal_bbox_eq", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const void *", + "canonical": "const void *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tne_h3index_th3index", - "file": "meos_h3.h", + "name": "temporal_bbox_cmp", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "box1", + "cType": "const void *", + "canonical": "const void *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tne_th3index_h3index", - "file": "meos_h3.h", + "name": "bbox_union_span_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "tne_th3index_th3index", - "file": "meos_h3.h", + "name": "inter_span_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "th3index_get_resolution", - "file": "meos_h3.h", + "name": "intersection_set_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_get_base_cell_number", - "file": "meos_h3.h", + "name": "intersection_span_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_is_valid_cell", - "file": "meos_h3.h", + "name": "intersection_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_is_res_class_iii", - "file": "meos_h3.h", + "name": "intersection_value_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "th3index_is_pentagon", - "file": "meos_h3.h", + "name": "intersection_value_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3index_cell_to_parent", - "file": "meos_h3.h", + "name": "intersection_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "th3index_cell_to_parent_next", - "file": "meos_h3.h", + "name": "mi_span_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "th3index_cell_to_center_child", - "file": "meos_h3.h", + "name": "minus_set_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_cell_to_center_child_next", - "file": "meos_h3.h", + "name": "minus_span_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_cell_to_child_pos", - "file": "meos_h3.h", + "name": "minus_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "parent_res", - "cType": "int32", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_child_pos_to_cell", - "file": "meos_h3.h", + "name": "minus_value_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "child_pos", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "parent", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "child_res", - "cType": "int32", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tgeogpoint_to_th3index", - "file": "meos_h3.h", + "name": "minus_value_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tgeompoint_to_th3index", - "file": "meos_h3.h", + "name": "minus_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" - } - ] - }, - { - "name": "th3index_to_tgeogpoint", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_to_tgeompoint", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_cell_to_boundary", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "geo_to_h3index_set", - "file": "meos_h3.h", + "name": "union_set_value", + "file": "meos_internal.h", "returnType": { "c": "Set *", "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "resolution", - "cType": "int32", - "canonical": "int" - } - ] - }, - { - "name": "ever_eq_h3indexset_th3index", - "file": "meos_h3.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "cells", + "name": "s", "cType": "const Set *", "canonical": "const Set *" }, { - "name": "th3idx", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_are_neighbor_cells", - "file": "meos_h3.h", + "name": "union_span_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_cells_to_directed_edge", - "file": "meos_h3.h", + "name": "union_spanset_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_is_valid_directed_edge", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_get_directed_edge_origin", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_get_directed_edge_destination", - "file": "meos_h3.h", + "name": "union_value_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_directed_edge_to_boundary", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "th3index_cell_to_vertex", - "file": "meos_h3.h", + "name": "union_value_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "vertex_num", - "cType": "int32", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3index_vertex_to_latlng", - "file": "meos_h3.h", + "name": "union_value_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "th3index_is_valid_vertex", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "th3index_grid_distance", - "file": "meos_h3.h", + "name": "distance_set_set", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "th3index_cell_to_local_ij", - "file": "meos_h3.h", + "name": "distance_set_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "cell", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_local_ij_to_cell", - "file": "meos_h3.h", + "name": "distance_span_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "coord", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "th3index_cell_area", - "file": "meos_h3.h", + "name": "distance_span_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "th3index_edge_length", - "file": "meos_h3.h", + "name": "distance_spanset_span", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tgeogpoint_great_circle_distance", - "file": "meos_h3.h", + "name": "distance_spanset_spanset", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "a", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "b", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss1", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "ss2", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "gsl_get_generation_rng", - "file": "meos_internal.h", - "returnType": { - "c": "gsl_rng *", - "canonical": "gsl_rng *" - }, - "params": [] - }, - { - "name": "gsl_get_aggregation_rng", - "file": "meos_internal.h", - "returnType": { - "c": "gsl_rng *", - "canonical": "gsl_rng *" - }, - "params": [] - }, - { - "name": "datum_ceil", + "name": "distance_spanset_value", "file": "meos_internal.h", "returnType": { "c": "int", @@ -41743,14 +42457,19 @@ }, "params": [ { - "name": "d", + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "value", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "datum_degrees", + "name": "distance_value_value", "file": "meos_internal.h", "returnType": { "c": "int", @@ -41758,58 +42477,78 @@ }, "params": [ { - "name": "d", + "name": "l", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "normalize", + "name": "r", "cType": "Datum", "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "datum_float_round", + "name": "spanbase_extent_transfn", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ + { + "name": "state", + "cType": "Span *", + "canonical": "struct Span *" + }, { "name": "value", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "datum_floor", + "name": "value_union_transfn", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "d", + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "value", "cType": "Datum", "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "datum_hash", + "name": "number_tstzspan_to_tbox", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { @@ -41819,17 +42558,22 @@ }, { "name": "basetype", - "cType": "int", - "canonical": "int" + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "datum_hash_extended", + "name": "number_timestamptz_to_tbox", "file": "meos_internal.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { @@ -41839,37 +42583,22 @@ }, { "name": "basetype", - "cType": "int", - "canonical": "int" + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "datum_radians", + "name": "tbox_set", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - } - ] - }, - { - "name": "floatspan_round_set", - "file": "meos_internal.h", - "returnType": { - "c": "void", - "canonical": "void" + "c": "void", + "canonical": "void" }, "params": [ { @@ -41878,269 +42607,239 @@ "canonical": "const struct Span *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "p", + "cType": "const Span *", + "canonical": "const struct Span *" }, { "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "set_in", + "name": "float_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "d", + "cType": "double", + "canonical": "double" }, { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "set_out", + "name": "int_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "maxdd", + "name": "i", "cType": "int", "canonical": "int" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "span_in", + "name": "number_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "spantype", - "cType": "int", - "canonical": "int" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "span_out", + "name": "number_tbox", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "spanset_in", + "name": "numset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "spantype", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "spanset_out", + "name": "numspan_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "set_make", + "name": "timestamptz_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "set_make_exp", + "name": "tstzset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "set_make_free", + "name": "tstzspan_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "span_make", + "name": "tbox_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { - "name": "lower", + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "shift", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "upper", + "name": "width", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "lower_inc", + "name": "hasshift", "cType": "bool", "canonical": "bool" }, { - "name": "upper_inc", + "name": "haswidth", "cType": "bool", "canonical": "bool" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" } ] }, { - "name": "span_set", + "name": "tbox_expand", "file": "meos_internal.h", "returnType": { "c": "void", @@ -42148,898 +42847,818 @@ }, "params": [ { - "name": "lower", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "upper", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" - }, - { - "name": "spantype", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" }, { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" + "name": "box2", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "spanset_make_exp", + "name": "inter_tbox_tbox", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "spans", - "cType": "Span *", - "canonical": "struct Span *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "box2", + "cType": "const TBox *", + "canonical": "const struct TBox *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "spanset_make_free", + "name": "tboolinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "spans", - "cType": "Span *", - "canonical": "struct Span *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "normalize", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "set_span", + "name": "tboolinst_in", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "set_spanset", + "name": "tboolseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "value_set_span", + "name": "tboolseq_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "value_set", + "name": "tboolseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "value_span", + "name": "tboolseqset_in", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "value_spanset", + "name": "temporal_in", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numspan_width", + "name": "temporal_out", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "numspanset_width", + "name": "temparr_out", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char **", + "canonical": "char **" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temparr", + "cType": "Temporal **", + "canonical": "Temporal **" }, { - "name": "boundspan", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "set_end_value", + "name": "tfloatinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "set_mem_size", + "name": "tfloatinst_in", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "set_set_subspan", + "name": "tfloatseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "minidx", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxidx", - "cType": "int", - "canonical": "int" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "set_set_span", + "name": "tfloatseq_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "set_start_value", + "name": "tfloatseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "set_value_n", + "name": "tfloatseqset_in", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "set_vals", + "name": "tinstant_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "set_values", + "name": "tinstant_in", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "spanset_lower", + "name": "tinstant_out", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "spanset_mem_size", + "name": "tintinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "spanset_sps", + "name": "tintinst_in", "file": "meos_internal.h", "returnType": { - "c": "const Span **", - "canonical": "const struct Span **" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spanset_upper", + "name": "tintseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "bigintspan_set_floatspan", + "name": "tintseq_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "bigintspan_set_intspan", + "name": "tintseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "datespan_set_tstzspan", + "name": "tintseqset_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "floatspan_set_bigintspan", + "name": "tsequence_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "floatspan_set_intspan", + "name": "tsequence_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "intspan_set_bigintspan", + "name": "tsequence_out", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "intspan_set_floatspan", + "name": "tsequenceset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "numset_shift_scale", + "name": "tsequenceset_in", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "numspan_expand", + "name": "tsequenceset_out", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "numspan_shift_scale", + "name": "ttextinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "numspanset_shift_scale", + "name": "ttextinst_in", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "set_compact", + "name": "ttextseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "span_expand", + "name": "ttextseq_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "spanset_compact", + "name": "ttextseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tbox_expand_value", + "name": "ttextseqset_in", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetyp", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "textcat_textset_text_common", + "name": "temporal_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "invert", - "cType": "bool", - "canonical": "bool" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tstzspan_set_datespan", + "name": "temporal_from_base_temp", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "adjacent_span_value", + "name": "tinstant_copy", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "adjacent_spanset_value", + "name": "tinstant_make", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, { "name": "value", "cType": "Datum", "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "adjacent_value_spanset", + "name": "tinstant_make_free", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -43048,38 +43667,38 @@ "canonical": "int ((int *))()" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "contained_value_set", + "name": "tsequence_copy", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "contained_value_span", + "name": "tsequence_from_base_temp", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { @@ -43088,18 +43707,23 @@ "canonical": "int ((int *))()" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "contained_value_spanset", + "name": "tsequence_from_base_tstzset", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { @@ -43108,178 +43732,178 @@ "canonical": "int ((int *))()" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - } - ] - }, - { - "name": "contains_set_value", - "file": "meos_internal.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, { "name": "s", "cType": "const Set *", "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" } ] }, { - "name": "contains_span_value", + "name": "tsequence_from_base_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, { "name": "s", "cType": "const Span *", "canonical": "const struct Span *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "contains_spanset_value", + "name": "tsequence_make_exp", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - } - ] - }, - { - "name": "ovadj_span_span", - "file": "meos_internal.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "count", + "cType": "int", + "canonical": "int" + }, { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "maxcount", + "cType": "int", + "canonical": "int" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - } - ] - }, - { - "name": "left_set_value", - "file": "meos_internal.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "left_span_value", + "name": "tsequence_make_free", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "left_spanset_value", + "name": "tsequenceset_copy", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "left_value_set", + "name": "tseqsetarr_to_tseqset", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "struct TSequenceSet **" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "totalseqs", + "cType": "int", + "canonical": "int" } ] }, { - "name": "left_value_span", + "name": "tsequenceset_from_base_temp", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -43288,18 +43912,23 @@ "canonical": "int ((int *))()" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "left_value_spanset", + "name": "tsequenceset_from_base_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { @@ -43307,425 +43936,440 @@ "cType": "Datum", "canonical": "int ((int *))()" }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, { "name": "ss", "cType": "const SpanSet *", "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "lfnadj_span_span", + "name": "tsequenceset_make_exp", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overleft_set_value", + "name": "tsequenceset_make_free", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "overleft_span_value", + "name": "temporal_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "overleft_spanset_value", + "name": "tinstant_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "overleft_value_set", + "name": "tnumber_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "overleft_value_span", + "name": "tnumberinst_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "overleft_value_spanset", + "name": "tnumberseq_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "overright_set_value", + "name": "tnumberseqset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "TBox *", + "canonical": "struct TBox *" } ] }, { - "name": "overright_span_value", + "name": "tsequence_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - } + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" + } ] }, { - "name": "overright_spanset_value", + "name": "tsequenceset_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "overright_value_set", + "name": "temporal_end_inst", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overright_value_span", + "name": "temporal_end_value", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "overright_value_spanset", + "name": "temporal_inst_n", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "right_value_set", + "name": "temporal_insts_p", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant **", + "canonical": "const struct TInstant **" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "right_set_value", + "name": "temporal_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "right_value_span", + "name": "temporal_max_value", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "right_value_spanset", + "name": "temporal_mem_size", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "size_t", + "canonical": "unsigned long" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "right_span_value", + "name": "temporal_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_min_value", + "file": "meos_internal.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "right_spanset_value", + "name": "temporal_sequences_p", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TSequence **", + "canonical": "const struct TSequence **" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "bbox_type", + "name": "temporal_set_bbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "bboxtype", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "bbox_get_size", + "name": "temporal_start_inst", "file": "meos_internal.h", "returnType": { - "c": "size_t", - "canonical": "unsigned long" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "bboxtype", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "bbox_max_dims", + "name": "temporal_start_value", "file": "meos_internal.h", "returnType": { "c": "int", @@ -43733,154 +44377,134 @@ }, "params": [ { - "name": "bboxtype", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "temporal_bbox_eq", + "name": "temporal_values_p", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "box1", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "box2", - "cType": "const void *", - "canonical": "const void *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "temporal_bbox_cmp", + "name": "temporal_value_n", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "box2", - "cType": "const void *", - "canonical": "const void *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temptype", + "name": "n", "cType": "int", "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "bbox_union_span_span", + "name": "temporal_values", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "inter_span_span", + "name": "tinstant_hash", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "intersection_set_value", + "name": "tinstant_insts", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "const TInstant **", + "canonical": "const struct TInstant **" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "intersection_span_value", + "name": "tinstant_set_bbox", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "intersection_spanset_value", + "name": "tinstant_time", "file": "meos_internal.h", "returnType": { "c": "SpanSet *", @@ -43888,144 +44512,129 @@ }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "intersection_value_set", + "name": "tinstant_timestamps", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "intersection_value_span", + "name": "tinstant_value_p", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "intersection_value_spanset", + "name": "tinstant_value", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "mi_span_span", + "name": "tinstant_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "minus_set_value", + "name": "tinstant_values_p", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "minus_span_value", + "name": "tnumber_set_span", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "Span *", + "canonical": "struct Span *" } ] }, { - "name": "minus_spanset_value", + "name": "tnumberinst_valuespans", "file": "meos_internal.h", "returnType": { "c": "SpanSet *", @@ -44033,39 +44642,29 @@ }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "minus_value_set", + "name": "tnumberseq_avg_val", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "minus_value_span", + "name": "tnumberseq_valuespans", "file": "meos_internal.h", "returnType": { "c": "SpanSet *", @@ -44073,199 +44672,154 @@ }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "minus_value_spanset", + "name": "tnumberseqset_avg_val", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "double", + "canonical": "double" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, { "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "super_union_span_span", + "name": "tnumberseqset_valuespans", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "union_set_value", + "name": "tsequence_duration", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "union_span_value", + "name": "tsequence_end_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "union_spanset_value", + "name": "tsequence_hash", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "union_value_set", + "name": "tsequence_insts_p", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "const TInstant **", + "canonical": "const struct TInstant **" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "union_value_span", + "name": "tsequence_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "union_value_spanset", + "name": "tsequence_max_val", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "distance_set_set", + "name": "tsequence_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "s1", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "s2", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "distance_set_value", + "name": "tsequence_min_val", "file": "meos_internal.h", "returnType": { "c": "int", @@ -44273,509 +44827,404 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "distance_span_span", + "name": "tsequence_segments", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence **", + "canonical": "struct TSequence **" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "distance_span_value", + "name": "tsequence_seqs", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TSequence **", + "canonical": "const struct TSequence **" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "distance_spanset_span", + "name": "tsequence_start_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "distance_spanset_spanset", + "name": "tsequence_time", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "ss1", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "ss2", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "distance_spanset_value", + "name": "tsequence_timestamps", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "distance_value_value", + "name": "tsequence_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "l", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "r", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "spanbase_extent_transfn", + "name": "tsequence_values_p", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "state", - "cType": "Span *", - "canonical": "struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "value_union_transfn", + "name": "tsequenceset_duration", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "boundspan", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "number_tstzspan_to_tbox", + "name": "tsequenceset_end_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "number_timestamptz_to_tbox", + "name": "tsequenceset_hash", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tbox_set", + "name": "tsequenceset_inst_n", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "p", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "float_set_tbox", + "name": "tsequenceset_insts_p", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "const TInstant **", + "canonical": "const struct TInstant **" }, "params": [ { - "name": "d", - "cType": "double", - "canonical": "double" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "int_set_tbox", + "name": "tsequenceset_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "i", - "cType": "int", - "canonical": "int" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "number_set_tbox", + "name": "tsequenceset_max_val", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "number_tbox", + "name": "tsequenceset_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "const TInstant *", + "canonical": "const struct TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "numset_set_tbox", + "name": "tsequenceset_min_val", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "numspan_set_tbox", + "name": "tsequenceset_num_instants", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "timestamptz_set_tbox", + "name": "tsequenceset_num_timestamps", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tstzset_set_tbox", + "name": "tsequenceset_segments", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence **", + "canonical": "struct TSequence **" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tstzspan_set_tbox", + "name": "tsequenceset_sequences_p", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "const TSequence **", + "canonical": "const struct TSequence **" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tbox_shift_scale_value", + "name": "tsequenceset_start_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tbox_expand", + "name": "tsequenceset_time", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "SpanSet *", + "canonical": "struct SpanSet *" }, "params": [ { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "box2", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "inter_tbox_tbox", + "name": "tsequenceset_timestamptz_n", "file": "meos_internal.h", "returnType": { "c": "bool", @@ -44783,143 +45232,143 @@ }, "params": [ { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "box2", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "n", + "cType": "int", + "canonical": "int" }, { "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tboolinst_from_mfjson", + "name": "tsequenceset_timestamps", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - } - ] - }, - { - "name": "tboolinst_in", - "file": "meos_internal.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tboolseq_from_mfjson", + "name": "tsequenceset_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - } - ] - }, - { - "name": "tboolseq_in", - "file": "meos_internal.h", - "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" - }, - "params": [ + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "tboolseqset_from_mfjson", + "name": "tsequenceset_value_n", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" } ] }, { - "name": "tboolseqset_in", + "name": "tsequenceset_values_p", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Datum *", + "canonical": "int ((*)(int *))()" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "temporal_in", + "name": "temporal_restart", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" }, { - "name": "temptype", + "name": "count", "cType": "int", "canonical": "int" } ] }, { - "name": "temporal_out", + "name": "temporal_tsequence", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { @@ -44928,39 +45377,34 @@ "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "temparr_out", + "name": "temporal_tsequenceset", "file": "meos_internal.h", "returnType": { - "c": "char **", - "canonical": "char **" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temparr", - "cType": "Temporal **", - "canonical": "Temporal **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tfloatinst_from_mfjson", + "name": "tinstant_shift_time", "file": "meos_internal.h", "returnType": { "c": "TInstant *", @@ -44968,29 +45412,19 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - } - ] - }, - { - "name": "tfloatinst_in", - "file": "meos_internal.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "interv", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tfloatseq_from_mfjson", + "name": "tinstant_to_tsequence", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -44998,9 +45432,9 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { "name": "interp", @@ -45010,7 +45444,7 @@ ] }, { - "name": "tfloatseq_in", + "name": "tinstant_to_tsequence_free", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -45018,9 +45452,9 @@ }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "inst", + "cType": "TInstant *", + "canonical": "struct TInstant *" }, { "name": "interp", @@ -45030,7 +45464,7 @@ ] }, { - "name": "tfloatseqset_from_mfjson", + "name": "tinstant_to_tsequenceset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45038,9 +45472,9 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { "name": "interp", @@ -45050,52 +45484,42 @@ ] }, { - "name": "tfloatseqset_in", + "name": "tnumber_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "tinstant_from_mfjson", - "file": "meos_internal.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "spatial", - "cType": "bool", - "canonical": "bool" + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "hasshift", + "cType": "bool", + "canonical": "bool" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_in", + "name": "tnumberinst_shift_value", "file": "meos_internal.h", "returnType": { "c": "TInstant *", @@ -45103,84 +45527,129 @@ }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tinstant_out", + "name": "tnumberseq_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "shift", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tintinst_from_mfjson", + "name": "tnumberseqset_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "start", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tintinst_in", + "name": "tsequence_restart", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tintseq_from_mfjson", + "name": "tsequence_set_interp", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tintseq_in", + "name": "tsequence_shift_scale_time", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -45188,49 +45657,24 @@ }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "shift", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tintseqset_from_mfjson", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ - { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - } - ] - }, - { - "name": "tintseqset_in", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ - { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "tsequence_from_mfjson", + "name": "tsequence_subseq", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -45238,79 +45682,64 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "spatial", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "srid", - "cType": "int32_t", + "name": "from", + "cType": "int", "canonical": "int" }, { - "name": "temptype", + "name": "to", "cType": "int", "canonical": "int" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_in", + "name": "tsequence_to_tinstant", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequence_out", + "name": "tsequence_to_tsequenceset", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" } ] }, { - "name": "tsequenceset_from_mfjson", + "name": "tsequence_to_tsequenceset_free", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45318,34 +45747,14 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "spatial", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" } ] }, { - "name": "tsequenceset_in", + "name": "tsequence_to_tsequenceset_interp", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45353,14 +45762,9 @@ }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { "name": "interp", @@ -45370,57 +45774,72 @@ ] }, { - "name": "tsequenceset_out", + "name": "tsequenceset_restart", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, { - "name": "maxdd", + "name": "count", "cType": "int", "canonical": "int" } ] }, { - "name": "ttextinst_from_mfjson", + "name": "tsequenceset_set_interp", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "ttextinst_in", + "name": "tsequenceset_shift_scale_time", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "start", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ttextseq_from_mfjson", + "name": "tsequenceset_to_discrete", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -45428,34 +45847,29 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "ttextseq_in", + "name": "tsequenceset_to_linear", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "ttextseqset_from_mfjson", + "name": "tsequenceset_to_step", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45463,29 +45877,44 @@ }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "ttextseqset_in", + "name": "tsequenceset_to_tinstant", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "temporal_from_mfjson", + "name": "tsequenceset_to_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + } + ] + }, + { + "name": "tinstant_merge", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -45493,19 +45922,19 @@ }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "temporal_from_base_temp", + "name": "tinstant_merge_array", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -45513,269 +45942,244 @@ }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" }, { - "name": "temptype", + "name": "count", "cType": "int", "canonical": "int" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "tinstant_copy", + "name": "tsequence_append_tinstant", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_make", + "name": "tsequence_append_tsequence", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_make_free", + "name": "tsequence_delete_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { "name": "t", "cType": "TimestampTz", "canonical": "long" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_copy", + "name": "tsequence_delete_tstzset", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_from_base_temp", + "name": "tsequence_delete_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_from_base_tstzset", + "name": "tsequence_delete_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_from_base_tstzspan", + "name": "tsequence_insert", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_make_exp", + "name": "tsequence_merge", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequence_make_free", + "name": "tsequence_merge_array", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" + "name": "sequences", + "cType": "TSequence **", + "canonical": "struct TSequence **" }, { "name": "count", "cType": "int", "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" - }, - { - "name": "normalize", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tsequenceset_copy", + "name": "tsequenceset_append_tinstant", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45784,13 +46188,33 @@ "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tseqsetarr_to_tseqset", + "name": "tsequenceset_append_tsequence", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45798,79 +46222,64 @@ }, "params": [ { - "name": "seqsets", - "cType": "TSequenceSet **", - "canonical": "struct TSequenceSet **" + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "totalseqs", - "cType": "int", - "canonical": "int" + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequenceset_from_base_temp", + "name": "tsequenceset_delete_timestamptz", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", "canonical": "struct TSequenceSet *" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" - }, { "name": "ss", "cType": "const TSequenceSet *", "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tsequenceset_from_base_tstzspanset", + "name": "tsequenceset_delete_tstzset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", "canonical": "struct TSequenceSet *" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "int", - "canonical": "int" - }, { "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tsequenceset_make_exp", + "name": "tsequenceset_delete_tstzspan", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45878,29 +46287,19 @@ }, "params": [ { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tsequenceset_make_free", + "name": "tsequenceset_delete_tstzspanset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", @@ -45908,104 +46307,99 @@ }, "params": [ { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" } ] }, { - "name": "temporal_set_tstzspan", + "name": "tsequenceset_insert", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tinstant_set_tstzspan", + "name": "tsequenceset_merge", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tnumber_set_tbox", + "name": "tsequenceset_merge_array", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "struct TSequenceSet **" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberinst_set_tbox", + "name": "tsequence_expand_bbox", "file": "meos_internal.h", "returnType": { "c": "void", "canonical": "void" }, "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" + }, { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" - }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" } ] }, { - "name": "tnumberseq_set_tbox", + "name": "tsequence_set_bbox", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46018,14 +46412,14 @@ "canonical": "const struct TSequence *" }, { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "tnumberseqset_set_tbox", + "name": "tsequenceset_expand_bbox", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46034,38 +46428,18 @@ "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, - { - "name": "box", - "cType": "TBox *", - "canonical": "struct TBox *" - } - ] - }, - { - "name": "tsequence_set_tstzspan", - "file": "meos_internal.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" - }, - { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" } ] }, { - "name": "tsequenceset_set_tstzspan", + "name": "tsequenceset_set_bbox", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46078,163 +46452,238 @@ "canonical": "const struct TSequenceSet *" }, { - "name": "s", - "cType": "Span *", - "canonical": "struct Span *" + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "temporal_end_inst", + "name": "tcontseq_after_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_end_value", + "name": "tcontseq_before_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_inst_n", + "name": "tcontseq_restrict_minmax", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_insts_p", + "name": "tdiscseq_after_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_max_inst_p", + "name": "tdiscseq_before_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_max_value", + "name": "tdiscseq_restrict_minmax", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_mem_size", + "name": "temporal_bbox_restrict_set", "file": "meos_internal.h", "returnType": { - "c": "size_t", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "temporal_min_inst_p", + "name": "temporal_restrict_minmax", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_min_value", + "name": "temporal_restrict_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_sequences_p", + "name": "temporal_restrict_tstzset", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -46243,18 +46692,23 @@ "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_set_bbox", + "name": "temporal_restrict_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -46263,48 +46717,73 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "void *", - "canonical": "void *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_start_inst", + "name": "temporal_restrict_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_start_value", + "name": "temporal_restrict_value", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_values_p", + "name": "temporal_restrict_values", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -46313,14 +46792,19 @@ "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_value_n", + "name": "temporal_value_at_timestamptz", "file": "meos_internal.h", "returnType": { "c": "bool", @@ -46333,9 +46817,14 @@ "canonical": "const Temporal *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" }, { "name": "result", @@ -46345,46 +46834,36 @@ ] }, { - "name": "temporal_values", + "name": "tinstant_after_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "tinstant_hash", - "file": "meos_internal.h", - "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_insts", + "name": "tinstant_before_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -46393,18 +46872,23 @@ "canonical": "const struct TInstant *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_set_bbox", + "name": "tinstant_restrict_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -46413,33 +46897,48 @@ "canonical": "const struct TInstant *" }, { - "name": "box", - "cType": "void *", - "canonical": "void *" + "name": "period", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_time", + "name": "tinstant_restrict_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_timestamps", + "name": "tinstant_restrict_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -46448,48 +46947,73 @@ "canonical": "const struct TInstant *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_value_p", + "name": "tinstant_restrict_tstzset", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_value", + "name": "tinstant_restrict_value", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_value_at_timestamptz", + "name": "tinstant_restrict_values", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { @@ -46498,43 +47022,48 @@ "canonical": "const struct TInstant *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_values_p", + "name": "tnumber_restrict_span", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumber_set_span", + "name": "tnumber_restrict_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -46543,449 +47072,574 @@ "canonical": "const Temporal *" }, { - "name": "span", - "cType": "Span *", - "canonical": "struct Span *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumberinst_valuespans", + "name": "tnumberinst_restrict_span", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" - } - ] - }, - { - "name": "tnumberseq_avg_val", - "file": "meos_internal.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ + }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumberseq_valuespans", + "name": "tnumberinst_restrict_spanset", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumberseqset_avg_val", + "name": "tnumberseqset_restrict_span", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "ss", "cType": "const TSequenceSet *", "canonical": "const struct TSequenceSet *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumberseqset_valuespans", + "name": "tnumberseqset_restrict_spanset", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { "name": "ss", "cType": "const TSequenceSet *", "canonical": "const struct TSequenceSet *" - } - ] - }, - { - "name": "tsequence_duration", - "file": "meos_internal.h", - "returnType": { - "c": "int *", - "canonical": "int *" - }, - "params": [ + }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "spanset", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_end_timestamptz", + "name": "tsequence_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tsequence_hash", + "name": "tsequence_restrict_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_insts_p", + "name": "tsequence_restrict_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_max_inst_p", + "name": "tsequenceset_after_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_max_val", + "name": "tsequenceset_before_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_min_inst_p", + "name": "tsequenceset_restrict_minmax", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_min_val", + "name": "tsequenceset_restrict_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_segments", + "name": "tsequenceset_restrict_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_seqs", + "name": "tsequenceset_restrict_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_start_timestamptz", + "name": "tsequenceset_restrict_tstzset", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_time", + "name": "tsequenceset_restrict_value", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_timestamps", + "name": "tsequenceset_restrict_values", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_value_at_timestamptz", + "name": "tinstant_cmp", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "tsequence_values_p", + "name": "tinstant_eq", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "tsequenceset_duration", + "name": "tsequence_cmp", "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "boundspan", - "cType": "bool", - "canonical": "bool" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequenceset_end_timestamptz", + "name": "tsequence_eq", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequenceset_hash", + "name": "tsequenceset_cmp", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "ss2", "cType": "const TSequenceSet *", "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequenceset_inst_n", + "name": "tsequenceset_eq", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", + "name": "ss1", "cType": "const TSequenceSet *", "canonical": "const struct TSequenceSet *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequenceset_insts_p", + "name": "always_eq_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_max_inst_p", + "name": "always_eq_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_max_val", + "name": "always_ne_base_temporal", "file": "meos_internal.h", "returnType": { "c": "int", @@ -46993,29 +47647,39 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_min_inst_p", + "name": "always_ne_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_min_val", + "name": "always_ge_base_temporal", "file": "meos_internal.h", "returnType": { "c": "int", @@ -47023,14 +47687,19 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_num_instants", + "name": "always_ge_temporal_base", "file": "meos_internal.h", "returnType": { "c": "int", @@ -47038,14 +47707,19 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_num_timestamps", + "name": "always_gt_base_temporal", "file": "meos_internal.h", "returnType": { "c": "int", @@ -47053,223 +47727,223 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_segments", + "name": "always_gt_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_sequences_p", + "name": "always_le_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_start_timestamptz", + "name": "always_le_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_time", + "name": "always_lt_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_timestamptz_n", + "name": "always_lt_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_timestamps", + "name": "ever_eq_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_value_at_timestamptz", + "name": "ever_eq_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_value_n", + "name": "ever_ne_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_values_p", + "name": "ever_ne_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "temporal_restart", + "name": "ever_ge_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "temporal_tsequence", + "name": "ever_ge_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -47278,118 +47952,118 @@ "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "temporal_tsequenceset", + "name": "ever_gt_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "tinstant_shift_time", + "name": "ever_gt_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tinstant_to_tsequence", + "name": "ever_le_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tinstant_to_tsequence_free", + "name": "ever_le_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "TInstant *", - "canonical": "struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tinstant_to_tsequenceset", + "name": "ever_lt_base_temporal", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tnumber_shift_scale_value", + "name": "ever_lt_temporal_base", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { @@ -47398,29 +48072,14 @@ "canonical": "const Temporal *" }, { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", + "name": "value", "cType": "Datum", "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tnumberinst_shift_value", + "name": "tnumberinst_abs", "file": "meos_internal.h", "returnType": { "c": "TInstant *", @@ -47431,16 +48090,11 @@ "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseq_shift_scale_value", + "name": "tnumberseq_abs", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -47451,106 +48105,56 @@ "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tnumberseqset_shift_scale_value", + "name": "tnumberseq_angular_difference", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "start", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequence_restart", + "name": "tnumberseq_delta_value", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequence_set_interp", + "name": "tnumberseqset_abs", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequence_shift_scale_time", + "name": "tnumberseqset_angular_difference", "file": "meos_internal.h", "returnType": { "c": "TSequence *", @@ -47558,144 +48162,129 @@ }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "shift", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequence_subseq", + "name": "tnumberseqset_delta_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "from", - "cType": "int", - "canonical": "int" - }, - { - "name": "to", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequence_to_tinstant", + "name": "distance_span_span_double", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s1", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tsequence_to_tsequenceset", + "name": "nad_tbox_tbox", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "box1", + "cType": "const TBox *", + "canonical": "const struct TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const struct TBox *" } ] }, { - "name": "tsequence_to_tsequenceset_free", + "name": "nad_tnumber_number", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequence_to_tsequenceset_interp", + "name": "nad_tnumber_tbox", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "box", + "cType": "const TBox *", + "canonical": "const struct TBox *" } ] }, { - "name": "tsequenceset_restart", + "name": "nad_tnumber_tnumber", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_set_interp", + "name": "tdistance_tnumber_number", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -47703,78 +48292,73 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_shift_scale_time", + "name": "tnumberinst_distance", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "start", - "cType": "const int *", - "canonical": "const int *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "tsequenceset_to_discrete", + "name": "tnumberseq_integral", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequenceset_to_linear", + "name": "tnumberseq_twavg", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tsequenceset_to_step", + "name": "tnumberseqset_integral", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { @@ -47785,11 +48369,11 @@ ] }, { - "name": "tsequenceset_to_tinstant", + "name": "tnumberseqset_twavg", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "double", + "canonical": "double" }, "params": [ { @@ -47800,303 +48384,267 @@ ] }, { - "name": "tsequenceset_to_tsequence", + "name": "temporal_compact", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tinstant_merge", + "name": "tsequence_compact", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "tinstant_merge_array", + "name": "tsequenceset_compact", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "tsequence_append_tinstant", + "name": "temporal_skiplist_make", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SkipList *", + "canonical": "struct SkipList *" }, - "params": [ - { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" - }, - { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "maxdist", - "cType": "double", - "canonical": "double" - }, - { - "name": "maxt", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "expand", - "cType": "bool", - "canonical": "bool" - } - ] + "params": [] }, { - "name": "tsequence_append_tsequence", + "name": "skiplist_make", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "key_size", + "cType": "size_t", + "canonical": "unsigned long" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value_size", + "cType": "size_t", + "canonical": "unsigned long" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "comp_fn", + "cType": "int (*)(void *, void *)", + "canonical": "int (*)(void *, void *)" + }, + { + "name": "merge_fn", + "cType": "void *(*)(void *, void *)", + "canonical": "void *(*)(void *, void *)" } ] }, { - "name": "tsequence_delete_timestamptz", + "name": "skiplist_search", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "key", + "cType": "void *", + "canonical": "void *" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "tsequence_delete_tstzset", + "name": "skiplist_free", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "tsequence_delete_tstzspan", + "name": "skiplist_splice", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "keys", + "cType": "void **", + "canonical": "void **" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" - } - ] - }, - { - "name": "tsequence_delete_tstzspanset", - "file": "meos_internal.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "values", + "cType": "void **", + "canonical": "void **" + }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "func", + "cType": "datum_func2", + "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" }, { - "name": "connect", + "name": "crossings", "cType": "bool", "canonical": "bool" + }, + { + "name": "sktype", + "cType": "SkipListType", + "canonical": "SkipListType" } ] }, { - "name": "tsequence_insert", + "name": "temporal_skiplist_splice", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "values", + "cType": "void **", + "canonical": "void **" }, { - "name": "connect", + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" + }, + { + "name": "crossings", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tsequence_merge", + "name": "skiplist_values", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void **", + "canonical": "void **" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "tsequence_merge_array", + "name": "skiplist_keys_values", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void **", + "canonical": "void **" }, "params": [ { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "values", + "cType": "void **", + "canonical": "void **" } ] }, { - "name": "tsequenceset_append_tinstant", + "name": "temporal_app_tinst_transfn", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" }, { "name": "inst", "cType": "const TInstant *", "canonical": "const struct TInstant *" }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, { "name": "maxdist", "cType": "double", @@ -48106,2330 +48654,2041 @@ "name": "maxt", "cType": "const int *", "canonical": "const int *" - }, - { - "name": "expand", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tsequenceset_append_tsequence", + "name": "temporal_app_tseq_transfn", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" }, { "name": "seq", "cType": "const TSequence *", "canonical": "const struct TSequence *" - }, - { - "name": "expand", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tsequenceset_delete_timestamptz", + "name": "span_bins", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_delete_tstzset", + "name": "spanset_bins", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_delete_tstzspan", + "name": "tnumber_value_bins", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Span *", + "canonical": "struct Span *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_delete_tstzspanset", + "name": "tnumber_value_time_boxes", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "ps", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_insert", + "name": "tnumber_value_split", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "DatumSplit", + "canonical": "DatumSplit" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tsequenceset_merge", + "name": "tbox_get_value_time_tile", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TBox *", + "canonical": "struct TBox *" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequenceset_merge_array", + "name": "tnumber_value_time_split", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal **", + "canonical": "Temporal **" }, "params": [ { - "name": "seqsets", - "cType": "TSequenceSet **", - "canonical": "struct TSequenceSet **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "value_bins", + "cType": "Datum **", + "canonical": "int ((**)(int *))()" + }, + { + "name": "time_bins", + "cType": "TimestampTz **", + "canonical": "long **" }, { "name": "count", - "cType": "int", - "canonical": "int" + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequence_expand_bbox", - "file": "meos_internal.h", + "name": "h3_are_neighbor_cells_meos", + "file": "h3_generated.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_set_bbox", - "file": "meos_internal.h", + "name": "h3_cells_to_directed_edge_meos", + "file": "h3_generated.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "box", - "cType": "void *", - "canonical": "void *" + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_expand_bbox", - "file": "meos_internal.h", + "name": "h3_is_valid_directed_edge_meos", + "file": "h3_generated.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_set_bbox", - "file": "meos_internal.h", + "name": "h3_get_directed_edge_origin_meos", + "file": "h3_generated.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "box", - "cType": "void *", - "canonical": "void *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tcontseq_after_timestamptz", - "file": "meos_internal.h", + "name": "h3_get_directed_edge_destination_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tcontseq_before_timestamptz", - "file": "meos_internal.h", + "name": "h3_cell_to_parent_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tcontseq_restrict_minmax", - "file": "meos_internal.h", + "name": "h3_cell_to_center_child_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tdiscseq_after_timestamptz", - "file": "meos_internal.h", + "name": "h3_cell_to_child_pos_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "child", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "parentRes", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tdiscseq_before_timestamptz", - "file": "meos_internal.h", + "name": "h3_child_pos_to_cell_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "childPos", + "cType": "int64", + "canonical": "long" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "parent", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "childRes", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tdiscseq_restrict_minmax", - "file": "meos_internal.h", + "name": "h3_get_resolution_meos", + "file": "h3_generated.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int32", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_bbox_restrict_set", - "file": "meos_internal.h", + "name": "h3_get_base_cell_number_meos", + "file": "h3_generated.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int32", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_restrict_minmax", - "file": "meos_internal.h", + "name": "h3_is_valid_cell_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_restrict_timestamptz", - "file": "meos_internal.h", + "name": "h3_is_res_class_iii_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_restrict_tstzset", - "file": "meos_internal.h", + "name": "h3_is_pentagon_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_restrict_tstzspan", - "file": "meos_internal.h", + "name": "h3_get_num_cells_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "temporal_restrict_tstzspanset", - "file": "meos_internal.h", + "name": "h3_grid_distance_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "originIndex", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "h3Index", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_restrict_value", - "file": "meos_internal.h", + "name": "h3_cell_to_vertex_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "vertexNum", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "temporal_restrict_values", - "file": "meos_internal.h", + "name": "h3_is_valid_vertex_meos", + "file": "h3_generated.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "temporal_value_at_timestamptz", - "file": "meos_internal.h", + "name": "h3index_parse", + "file": "h3index.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tinstant_after_timestamptz", - "file": "meos_internal.h", + "name": "h3index_to_string", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_before_timestamptz", - "file": "meos_internal.h", + "name": "h3index_eq", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_tstzspan", - "file": "meos_internal.h", + "name": "h3index_ne", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "period", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_tstzspanset", - "file": "meos_internal.h", + "name": "h3index_lt", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_timestamptz", - "file": "meos_internal.h", + "name": "h3index_le", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_tstzset", - "file": "meos_internal.h", + "name": "h3index_gt", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_value", - "file": "meos_internal.h", + "name": "h3index_ge", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_restrict_values", - "file": "meos_internal.h", + "name": "h3index_cmp", + "file": "h3index.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tnumber_restrict_span", - "file": "meos_internal.h", + "name": "h3index_hash", + "file": "h3index.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tnumber_restrict_spanset", - "file": "meos_internal.h", + "name": "h3_grid_disk", + "file": "h3index_sets.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "k", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberinst_restrict_span", - "file": "meos_internal.h", + "name": "h3_grid_ring", + "file": "h3index_sets.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "k", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberinst_restrict_spanset", - "file": "meos_internal.h", + "name": "h3_grid_path_cells", + "file": "h3index_sets.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "start", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "end", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tnumberseqset_restrict_span", - "file": "meos_internal.h", + "name": "h3_cell_to_children", + "file": "h3index_sets.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "childRes", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberseqset_restrict_spanset", - "file": "meos_internal.h", + "name": "h3_compact_cells", + "file": "h3index_sets.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "spanset", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tsequence_at_timestamptz", - "file": "meos_internal.h", + "name": "h3_uncompact_cells", + "file": "h3index_sets.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "res", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tsequence_restrict_tstzspan", - "file": "meos_internal.h", + "name": "h3_origin_to_directed_edges", + "file": "h3index_sets.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_restrict_tstzspanset", - "file": "meos_internal.h", + "name": "h3_cell_to_vertexes", + "file": "h3index_sets.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_after_timestamptz", - "file": "meos_internal.h", + "name": "h3_get_icosahedron_faces", + "file": "h3index_sets.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_before_timestamptz", - "file": "meos_internal.h", + "name": "ensure_valid_th3index_th3index", + "file": "th3index.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_restrict_minmax", - "file": "meos_internal.h", + "name": "ensure_valid_th3index_h3index", + "file": "th3index.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_restrict_tstzspan", - "file": "meos_internal.h", + "name": "ensure_valid_th3index_tgeogpoint", + "file": "th3index.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequenceset_restrict_tstzspanset", - "file": "meos_internal.h", + "name": "datum2_h3index_eq", + "file": "th3index.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "d1", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "ps", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "d2", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequenceset_restrict_timestamptz", - "file": "meos_internal.h", + "name": "datum2_h3index_ne", + "file": "th3index.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "d1", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "d2", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequenceset_restrict_tstzset", - "file": "meos_internal.h", + "name": "th3indexinst_set_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tsequenceset_restrict_value", - "file": "meos_internal.h", + "name": "th3indexinstarr_set_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "instants", + "cType": "TInstant **", + "canonical": "struct TInstant **" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tsequenceset_restrict_values", - "file": "meos_internal.h", + "name": "th3indexseq_expand_stbox", + "file": "th3index_boxops.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "tinstant_cmp", - "file": "meos_internal.h", + "name": "h3_gs_point_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "point", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tinstant_eq", - "file": "meos_internal.h", + "name": "h3_cell_to_gs_point", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_cmp", - "file": "meos_internal.h", + "name": "h3_cell_to_gs_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_eq", - "file": "meos_internal.h", + "name": "cell_boundary_to_gs", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "bnd", + "cType": "const CellBoundary *", + "canonical": "const CellBoundary *" } ] }, { - "name": "tsequenceset_cmp", - "file": "meos_internal.h", + "name": "h3_sample_step_deg", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tsequenceset_eq", - "file": "meos_internal.h", + "name": "h3_latlng_deg_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "lat_deg", + "cType": "double", + "canonical": "double" }, { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "lng_deg", + "cType": "double", + "canonical": "double" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "always_eq_base_temporal", - "file": "meos_internal.h", + "name": "h3_cell_to_parent_next_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "always_eq_temporal_base", - "file": "meos_internal.h", + "name": "h3_cell_to_center_child_next_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "always_ne_base_temporal", - "file": "meos_internal.h", + "name": "h3_directed_edge_to_gs_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_vertex_to_gs_point", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "always_ne_temporal_base", - "file": "meos_internal.h", + "name": "h3_cell_to_local_ij_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "always_ge_base_temporal", - "file": "meos_internal.h", + "name": "h3_local_ij_to_cell_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "coord", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_ge_temporal_base", - "file": "meos_internal.h", + "name": "h3_unit_from_cstring", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "H3Unit", + "canonical": "H3Unit" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "unit", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "always_gt_base_temporal", - "file": "meos_internal.h", + "name": "h3_cell_area_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "always_gt_temporal_base", - "file": "meos_internal.h", + "name": "h3_edge_length_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "always_le_base_temporal", - "file": "meos_internal.h", + "name": "h3_gs_great_circle_distance_meos", + "file": "th3index_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "a", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "b", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" } ] }, { - "name": "always_le_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_get_resolution", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "always_lt_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_get_base_cell_number", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "always_lt_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_is_valid_cell", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_eq_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_is_res_class_iii", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "ever_eq_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_is_pentagon", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_ne_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_parent", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "cell_d", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "res_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_ne_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_parent_next", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "cell_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_ge_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_center_child", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "cell_d", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "res_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_ge_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_center_child_next", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "cell_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_gt_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_child_pos", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "cell_d", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "parent_res_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_gt_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_child_pos_to_cell", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pos_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "value", + "name": "parent_d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "child_res_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_le_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_are_neighbor_cells", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "origin_d", "cType": "Datum", "canonical": "int ((int *))()" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "dest_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "ever_le_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_cells_to_directed_edge", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "origin_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "value", + "name": "dest_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "ever_lt_base_temporal", - "file": "meos_internal.h", + "name": "datum_h3_is_valid_directed_edge", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" } ] }, { - "name": "ever_lt_temporal_base", - "file": "meos_internal.h", + "name": "datum_h3_get_directed_edge_origin", + "file": "th3index_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", + "name": "d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "tnumberinst_abs", - "file": "meos_internal.h", + "name": "datum_h3_get_directed_edge_destination", + "file": "th3index_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseq_abs", - "file": "meos_internal.h", + "name": "datum_h3_directed_edge_to_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseq_angular_difference", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_vertex", + "file": "th3index_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "cell_d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "vnum_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseq_delta_value", - "file": "meos_internal.h", + "name": "datum_h3_vertex_to_latlng", + "file": "th3index_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseqset_abs", - "file": "meos_internal.h", + "name": "datum_h3_is_valid_vertex", + "file": "th3index_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseqset_angular_difference", - "file": "meos_internal.h", + "name": "datum_h3_grid_distance", + "file": "th3index_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "origin_d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "dest_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseqset_delta_value", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_local_ij", + "file": "th3index_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - } - ] - }, - { - "name": "distance_span_span_double", - "file": "meos_internal.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ - { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "origin_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "cell_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "nad_tbox_tbox", - "file": "meos_internal.h", + "name": "datum_h3_local_ij_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "origin_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "box2", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "coord_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "nad_tnumber_number", - "file": "meos_internal.h", + "name": "datum_h3_latlng_to_cell", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "point_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "value", + "name": "res_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "nad_tnumber_tbox", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_latlng", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "nad_tnumber_tnumber", - "file": "meos_internal.h", + "name": "datum_h3_cell_to_boundary", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tdistance_tnumber_number", - "file": "meos_internal.h", + "name": "datum_h3_cell_area", + "file": "th3index_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "cell_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "value", + "name": "unit_d", "cType": "Datum", "canonical": "int ((int *))()" } ] }, { - "name": "tnumberinst_distance", - "file": "meos_internal.h", + "name": "datum_h3_edge_length", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "edge_d", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "unit_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseq_integral", - "file": "meos_internal.h", + "name": "datum_h3_great_circle_distance", + "file": "th3index_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - } - ] - }, - { - "name": "tnumberseq_twavg", - "file": "meos_internal.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ + "name": "a_d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - } - ] - }, - { - "name": "tnumberseqset_integral", - "file": "meos_internal.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ + "name": "b_d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "unit_d", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tnumberseqset_twavg", - "file": "meos_internal.h", + "name": "th3index_in", + "file": "meos_h3.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "temporal_compact", - "file": "meos_internal.h", + "name": "th3indexinst_in", + "file": "meos_h3.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequence_compact", - "file": "meos_internal.h", + "name": "th3indexseq_in", + "file": "meos_h3.h", "returnType": { "c": "TSequence *", "canonical": "struct TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_compact", - "file": "meos_internal.h", + "name": "th3indexseqset_in", + "file": "meos_h3.h", "returnType": { "c": "TSequenceSet *", "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "temporal_skiplist_make", - "file": "meos_internal.h", - "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" - }, - "params": [] - }, - { - "name": "skiplist_make", - "file": "meos_internal.h", + "name": "th3index_make", + "file": "meos_h3.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "key_size", - "cType": "size_t", - "canonical": "unsigned long" - }, - { - "name": "value_size", - "cType": "size_t", + "name": "value", + "cType": "H3Index", "canonical": "unsigned long" }, { - "name": "comp_fn", - "cType": "int (*)(void *, void *)", - "canonical": "int (*)(void *, void *)" - }, - { - "name": "merge_fn", - "cType": "void *(*)(void *, void *)", - "canonical": "void *(*)(void *, void *)" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "skiplist_search", - "file": "meos_internal.h", + "name": "th3indexinst_make", + "file": "meos_h3.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ - { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "key", - "cType": "void *", - "canonical": "void *" - }, { "name": "value", - "cType": "void *", - "canonical": "void *" - } - ] - }, - { - "name": "skiplist_free", - "file": "meos_internal.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [ + "cType": "H3Index", + "canonical": "unsigned long" + }, { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "skiplist_splice", - "file": "meos_internal.h", + "name": "th3indexseq_make", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "keys", - "cType": "void **", - "canonical": "void **" + "name": "values", + "cType": "const H3Index *", + "canonical": "const unsigned long *" }, { - "name": "values", - "cType": "void **", - "canonical": "void **" + "name": "times", + "cType": "const TimestampTz *", + "canonical": "const long *" }, { "name": "count", @@ -50437,283 +50696,198 @@ "canonical": "int" }, { - "name": "func", - "cType": "datum_func2", - "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" - }, - { - "name": "crossings", + "name": "lower_inc", "cType": "bool", "canonical": "bool" }, { - "name": "sktype", - "cType": "SkipListType", - "canonical": "SkipListType" + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_skiplist_splice", - "file": "meos_internal.h", + "name": "th3indexseqset_make", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "values", - "cType": "void **", - "canonical": "void **" + "name": "sequences", + "cType": "const TSequence **", + "canonical": "const struct TSequence **" }, { "name": "count", "cType": "int", "canonical": "int" - }, - { - "name": "func", - "cType": "datum_func2", - "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" - }, - { - "name": "crossings", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "skiplist_values", - "file": "meos_internal.h", + "name": "th3index_start_value", + "file": "meos_h3.h", "returnType": { - "c": "void **", - "canonical": "void **" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "skiplist_keys_values", - "file": "meos_internal.h", + "name": "th3index_end_value", + "file": "meos_h3.h", "returnType": { - "c": "void **", - "canonical": "void **" + "c": "H3Index", + "canonical": "unsigned long" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "values", - "cType": "void **", - "canonical": "void **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "temporal_app_tinst_transfn", - "file": "meos_internal.h", + "name": "th3index_value_n", + "file": "meos_h3.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "state", - "cType": "Temporal *", - "canonical": "Temporal *" - }, - { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdist", - "cType": "double", - "canonical": "double" + "name": "n", + "cType": "int", + "canonical": "int" }, { - "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" } ] }, { - "name": "temporal_app_tseq_transfn", - "file": "meos_internal.h", + "name": "th3index_values", + "file": "meos_h3.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "H3Index *", + "canonical": "unsigned long *" }, "params": [ { - "name": "state", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "span_bins", - "file": "meos_internal.h", + "name": "th3index_value_at_timestamptz", + "file": "meos_h3.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "strict", + "cType": "bool", + "canonical": "bool" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" } ] }, { - "name": "spanset_bins", - "file": "meos_internal.h", + "name": "tbigint_to_th3index", + "file": "meos_h3.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tnumber_value_bins", - "file": "meos_internal.h", + "name": "th3index_to_tbigint", + "file": "meos_h3.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "tnumber_value_time_boxes", - "file": "meos_internal.h", + "name": "ever_eq_h3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "int", + "canonical": "int" }, "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" } ] }, { - "name": "tnumber_value_split", - "file": "meos_internal.h", + "name": "ever_eq_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "int", + "canonical": "int" }, "params": [ { @@ -50722,83 +50896,38 @@ "canonical": "const Temporal *" }, { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "bins", - "cType": "Datum **", - "canonical": "int ((**)(int *))()" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tbox_get_value_time_tile", - "file": "meos_internal.h", + "name": "ever_ne_h3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "spantype", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tnumber_value_time_split", - "file": "meos_internal.h", + "name": "ever_ne_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "int", + "canonical": "int" }, "params": [ { @@ -50807,1024 +50936,820 @@ "canonical": "const Temporal *" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "value_bins", - "cType": "Datum **", - "canonical": "int ((**)(int *))()" - }, - { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "proj_get_context", - "file": "meos_internal_geo.h", - "returnType": { - "c": "PJ_CONTEXT *", - "canonical": "struct pj_ctx *" - }, - "params": [] - }, - { - "name": "datum_geo_round", - "file": "meos_internal_geo.h", + "name": "always_eq_h3index_th3index", + "file": "meos_h3.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "point_round", - "file": "meos_internal_geo.h", + "name": "always_eq_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "stbox_set", - "file": "meos_internal_geo.h", + "name": "always_ne_h3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "hasx", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "hasz", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "srid", - "cType": "int32", - "canonical": "int" - }, - { - "name": "xmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymax", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "gbox_set_stbox", - "file": "meos_internal_geo.h", + "name": "always_ne_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "geo_set_stbox", - "file": "meos_internal_geo.h", + "name": "ever_eq_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geoarr_set_stbox", - "file": "meos_internal_geo.h", + "name": "ever_ne_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "spatial_set_stbox", - "file": "meos_internal_geo.h", + "name": "always_eq_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "int", - "canonical": "int" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "spatialset_set_stbox", - "file": "meos_internal_geo.h", + "name": "always_ne_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_set_box3d", - "file": "meos_internal_geo.h", + "name": "teq_h3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "box3d", - "cType": "int *", - "canonical": "int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_set_gbox", - "file": "meos_internal_geo.h", + "name": "teq_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "gbox", - "cType": "int *", - "canonical": "int *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "tstzset_set_stbox", - "file": "meos_internal_geo.h", + "name": "teq_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzspan_set_stbox", - "file": "meos_internal_geo.h", + "name": "tne_h3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" - } - ] - }, - { - "name": "tstzspanset_set_stbox", - "file": "meos_internal_geo.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [ - { - "name": "s", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_expand", - "file": "meos_internal_geo.h", + "name": "tne_th3index_h3index", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box2", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" } ] }, { - "name": "inter_stbox_stbox", - "file": "meos_internal_geo.h", + "name": "tne_th3index_th3index", + "file": "meos_h3.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "stbox_geo", - "file": "meos_internal_geo.h", + "name": "th3index_get_resolution", + "file": "meos_h3.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpointinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_get_base_cell_number", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpointinst_in", - "file": "meos_internal_geo.h", + "name": "th3index_is_valid_cell", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpointseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_is_res_class_iii", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpointseq_in", - "file": "meos_internal_geo.h", + "name": "th3index_is_pentagon", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeogpointseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_parent", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "resolution", + "cType": "int32", "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "tgeogpointseqset_in", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_parent_next", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeompointinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_center_child", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "resolution", + "cType": "int32", "canonical": "int" } ] }, { - "name": "tgeompointinst_in", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_center_child_next", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeompointseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_child_pos", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "parent_res", + "cType": "int32", "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "tgeompointseq_in", - "file": "meos_internal_geo.h", + "name": "th3index_child_pos_to_cell", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "child_pos", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "parent", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "child_res", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tgeompointseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "tgeogpoint_to_th3index", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", + "name": "resolution", + "cType": "int32", "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "tgeompointseqset_in", - "file": "meos_internal_geo.h", + "name": "tgeompoint_to_th3index", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tgeographyinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_to_tgeogpoint", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeographyinst_in", - "file": "meos_internal_geo.h", + "name": "th3index_to_tgeompoint", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeographyseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_boundary", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeographyseq_in", - "file": "meos_internal_geo.h", + "name": "geo_to_h3index_set", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "resolution", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tgeographyseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "ever_eq_h3indexset_th3index", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "th3idx", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeographyseqset_in", - "file": "meos_internal_geo.h", + "name": "th3index_are_neighbor_cells", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_cells_to_directed_edge", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryinst_in", - "file": "meos_internal_geo.h", + "name": "th3index_is_valid_directed_edge", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_get_directed_edge_origin", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryseq_in", - "file": "meos_internal_geo.h", + "name": "th3index_get_directed_edge_destination", + "file": "meos_h3.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "th3index_directed_edge_to_boundary", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeometryseqset_in", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_vertex", + "file": "meos_h3.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "vertex_num", + "cType": "int32", + "canonical": "int" } ] }, { - "name": "tspatial_set_stbox", - "file": "meos_internal_geo.h", + "name": "th3index_vertex_to_latlng", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" } ] }, { - "name": "tgeoinst_set_stbox", - "file": "meos_internal_geo.h", + "name": "th3index_is_valid_vertex", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tspatialseq_set_stbox", - "file": "meos_internal_geo.h", + "name": "th3index_grid_distance", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tspatialseqset_set_stbox", - "file": "meos_internal_geo.h", + "name": "th3index_cell_to_local_ij", + "file": "meos_h3.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "cell", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_restrict_elevation", - "file": "meos_internal_geo.h", + "name": "th3index_local_ij_to_cell", + "file": "meos_h3.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp", + "name": "origin", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "coord", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeo_restrict_geom", - "file": "meos_internal_geo.h", + "name": "th3index_cell_area", + "file": "meos_h3.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -51836,20 +51761,15 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "unit", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tgeo_restrict_stbox", - "file": "meos_internal_geo.h", + "name": "th3index_edge_length", + "file": "meos_h3.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -51861,209 +51781,228 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "unit", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tgeoinst_restrict_geom", - "file": "meos_internal_geo.h", + "name": "tgeogpoint_great_circle_distance", + "file": "meos_h3.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "a", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "b", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "unit", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tgeoinst_restrict_stbox", + "name": "proj_get_context", "file": "meos_internal_geo.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "PJ_CONTEXT *", + "canonical": "struct pj_ctx *" + }, + "params": [] + }, + { + "name": "datum_geo_round", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "size", + "cType": "Datum", + "canonical": "int ((int *))()" } ] }, { - "name": "tgeoseq_restrict_geom", + "name": "point_round", "file": "meos_internal_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, { "name": "gs", "cType": "const int *", "canonical": "const int *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeoseq_restrict_stbox", + "name": "stbox_set", "file": "meos_internal_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "hasx", + "cType": "bool", + "canonical": "bool" }, { - "name": "border_inc", + "name": "hasz", "cType": "bool", "canonical": "bool" }, { - "name": "atfunc", + "name": "geodetic", "cType": "bool", "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32", + "canonical": "int" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tgeoseqset_restrict_geom", + "name": "gbox_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "gs", + "name": "box", "cType": "const int *", "canonical": "const int *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tgeoseqset_restrict_stbox", + "name": "geo_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "spatial_srid", + "name": "geoarr_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "values", + "cType": "Datum *", + "canonical": "int ((*)(int *))()" }, { - "name": "basetype", + "name": "count", "cType": "int", "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "spatial_set_srid", + "name": "spatial_set_stbox", "file": "meos_internal_geo.h", "returnType": { "c": "bool", @@ -52077,288 +52016,323 @@ }, { "name": "basetype", - "cType": "int", - "canonical": "int" + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tspatialinst_srid", + "name": "spatialset_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tpointseq_azimuth", + "name": "stbox_set_box3d", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "result", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpointseq_cumulative_length", + "name": "stbox_set_gbox", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "prevlength", - "cType": "double", - "canonical": "double" + "name": "result", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpointseq_is_simple", + "name": "tstzset_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tpointseq_length", + "name": "tstzspan_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tpointseq_linear_trajectory", + "name": "tstzspanset_set_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tgeoseq_stboxes", + "name": "stbox_expand", "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tgeoseq_split_n_stboxes", + "name": "inter_stbox_stbox", "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "max_count", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "tpointseqset_azimuth", + "name": "tgeogpointinst_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpointseqset_cumulative_length", + "name": "tgeogpointinst_in", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpointseqset_is_simple", + "name": "tgeogpointseq_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tpointseqset_length", + "name": "tgeogpointseq_in", "file": "meos_internal_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tgeoseqset_stboxes", + "name": "tgeogpointseqset_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tgeoseqset_split_n_stboxes", + "name": "tgeogpointseqset_in", "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "max_count", - "cType": "int", - "canonical": "int" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpoint_get_coord", + "name": "tgeompointinst_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "coord", - "cType": "int", + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "tgeominst_tgeoginst", + "name": "tgeompointinst_in", "file": "meos_internal_geo.h", "returnType": { "c": "TInstant *", @@ -52366,19 +52340,14 @@ }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "oper", - "cType": "bool", - "canonical": "bool" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tgeomseq_tgeogseq", + "name": "tgeompointseq_from_mfjson", "file": "meos_internal_geo.h", "returnType": { "c": "TSequence *", @@ -52386,89 +52355,94 @@ }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "oper", - "cType": "bool", - "canonical": "bool" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tgeomseqset_tgeogseqset", + "name": "tgeompointseq_in", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "oper", - "cType": "bool", - "canonical": "bool" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tgeom_tgeog", + "name": "tgeompointseqset_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "oper", - "cType": "bool", - "canonical": "bool" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tgeo_tpoint", + "name": "tgeompointseqset_in", "file": "meos_internal_geo.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "oper", - "cType": "bool", - "canonical": "bool" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tspatialinst_set_srid", + "name": "tgeographyinst_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "inst", - "cType": "TInstant *", - "canonical": "struct TInstant *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { "name": "srid", @@ -52478,1040 +52452,1221 @@ ] }, { - "name": "tpointseq_make_simple", + "name": "tgeographyinst_in", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tspatialseq_set_srid", + "name": "tgeographyseq_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { "name": "srid", "cType": "int32_t", "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tpointseqset_make_simple", + "name": "tgeographyseq_in", "file": "meos_internal_geo.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tspatialseqset_set_srid", + "name": "tgeographyseqset_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { "name": "srid", "cType": "int32_t", "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tpointseq_twcentroid", + "name": "tgeographyseqset_in", "file": "meos_internal_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpointseqset_twcentroid", + "name": "tgeometryinst_from_mfjson", "file": "meos_internal_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npoint_as_ewkt", - "file": "meos_npoint.h", + "name": "tgeometryinst_in", + "file": "meos_internal_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "npoint_as_hexwkb", - "file": "meos_npoint.h", + "name": "tgeometryseq_from_mfjson", + "file": "meos_internal_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "npoint_as_text", - "file": "meos_npoint.h", + "name": "tgeometryseq_in", + "file": "meos_internal_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "npoint_as_wkb", - "file": "meos_npoint.h", + "name": "tgeometryseqset_from_mfjson", + "file": "meos_internal_geo.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "npoint_from_hexwkb", - "file": "meos_npoint.h", + "name": "tgeometryseqset_in", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "hexwkb", + "name": "str", "cType": "const char *", "canonical": "const char *" } ] }, { - "name": "npoint_from_wkb", - "file": "meos_npoint.h", + "name": "tspatial_set_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "result", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "npoint_in", - "file": "meos_npoint.h", + "name": "tspatialseq_set_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "npoint_out", - "file": "meos_npoint.h", + "name": "tspatialseqset_set_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "STBox *", + "canonical": "struct STBox *" } ] }, { - "name": "nsegment_in", - "file": "meos_npoint.h", + "name": "tgeo_restrict_elevation", + "file": "meos_internal_geo.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nsegment_out", - "file": "meos_npoint.h", + "name": "tgeo_restrict_geom", + "file": "meos_internal_geo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_make", - "file": "meos_npoint.h", + "name": "tgeo_restrict_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pos", - "cType": "double", - "canonical": "double" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nsegment_make", - "file": "meos_npoint.h", + "name": "tgeoinst_restrict_geom", + "file": "meos_internal_geo.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" }, { - "name": "pos1", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "pos2", - "cType": "double", - "canonical": "double" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "geompoint_to_npoint", - "file": "meos_npoint.h", + "name": "tgeoinst_restrict_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "geom_to_nsegment", - "file": "meos_npoint.h", + "name": "tgeoseq_restrict_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseqset_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_to_geompoint", - "file": "meos_npoint.h", + "name": "tgeoseqset_restrict_stbox", + "file": "meos_internal_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_to_nsegment", - "file": "meos_npoint.h", + "name": "spatial_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "npoint_to_stbox", - "file": "meos_npoint.h", + "name": "spatial_set_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "d", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "nsegment_to_geom", - "file": "meos_npoint.h", + "name": "tspatialinst_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" } ] }, { - "name": "nsegment_to_stbox", - "file": "meos_npoint.h", + "name": "tpointseq_azimuth", + "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "np", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "npoint_hash", - "file": "meos_npoint.h", + "name": "tpointseq_cumulative_length", + "file": "meos_internal_geo.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "prevlength", + "cType": "double", + "canonical": "double" } ] }, { - "name": "npoint_hash_extended", - "file": "meos_npoint.h", + "name": "tpointseq_is_simple", + "file": "meos_internal_geo.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "npoint_position", - "file": "meos_npoint.h", + "name": "tpointseq_length", + "file": "meos_internal_geo.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "npoint_route", - "file": "meos_npoint.h", + "name": "tpointseq_linear_trajectory", + "file": "meos_internal_geo.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nsegment_end_position", - "file": "meos_npoint.h", + "name": "tgeoseq_stboxes", + "file": "meos_internal_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "nsegment_route", - "file": "meos_npoint.h", + "name": "tgeoseq_split_n_stboxes", + "file": "meos_internal_geo.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "max_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "nsegment_start_position", - "file": "meos_npoint.h", + "name": "tpointseqset_azimuth", + "file": "meos_internal_geo.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "route_exists", - "file": "meos_npoint.h", + "name": "tpointseqset_cumulative_length", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "route_geom", - "file": "meos_npoint.h", + "name": "tpointseqset_is_simple", + "file": "meos_internal_geo.h", "returnType": { - "c": "const int *", - "canonical": "const int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "route_length", - "file": "meos_npoint.h", + "name": "tpointseqset_length", + "file": "meos_internal_geo.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "npoint_round", - "file": "meos_npoint.h", + "name": "tgeoseqset_stboxes", + "file": "meos_internal_geo.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "nsegment_round", - "file": "meos_npoint.h", + "name": "tgeoseqset_split_n_stboxes", + "file": "meos_internal_geo.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "maxdd", + "name": "max_count", "cType": "int", "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "get_srid_ways", - "file": "meos_npoint.h", + "name": "tgeominst_tgeoginst", + "file": "meos_internal_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, - "params": [] + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] }, { - "name": "npoint_srid", - "file": "meos_npoint.h", + "name": "tgeomseq_tgeogseq", + "file": "meos_internal_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nsegment_srid", - "file": "meos_npoint.h", + "name": "tgeomseqset_tgeogseqset", + "file": "meos_internal_geo.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_timestamptz_to_stbox", - "file": "meos_npoint.h", + "name": "tgeom_tgeog", + "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "oper", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_tstzspan_to_stbox", - "file": "meos_npoint.h", + "name": "tgeo_tpoint", + "file": "meos_internal_geo.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "oper", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_cmp", - "file": "meos_npoint.h", + "name": "tspatialinst_set_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "inst", + "cType": "TInstant *", + "canonical": "struct TInstant *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npoint_eq", - "file": "meos_npoint.h", + "name": "tpointseq_make_simple", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence **", + "canonical": "struct TSequence **" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "npoint_ge", - "file": "meos_npoint.h", + "name": "tspatialseq_set_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "TSequence *", + "canonical": "struct TSequence *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npoint_gt", - "file": "meos_npoint.h", + "name": "tpointseqset_make_simple", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence **", + "canonical": "struct TSequence **" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "npoint_le", - "file": "meos_npoint.h", + "name": "tspatialseqset_set_srid", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npoint_lt", - "file": "meos_npoint.h", + "name": "tpointseq_twcentroid", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" } ] }, { - "name": "npoint_ne", - "file": "meos_npoint.h", + "name": "tpointseqset_twcentroid", + "file": "meos_internal_geo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const struct TSequenceSet *" } ] }, { - "name": "npoint_same", + "name": "npoint_as_ewkt", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "np1", + "name": "np", "cType": "const Npoint *", "canonical": "const Npoint *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "nsegment_cmp", + "name": "npoint_as_hexwkb", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "nsegment_eq", + "name": "npoint_as_text", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "nsegment_ge", + "name": "npoint_as_wkb", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "nsegment_gt", + "name": "npoint_from_hexwkb", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - }, - { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "nsegment_le", + "name": "npoint_from_wkb", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" } ] }, { - "name": "nsegment_lt", + "name": "npoint_in", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - }, - { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "nsegment_ne", + "name": "npoint_out", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "npointset_in", + "name": "nsegment_in", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Nsegment *", + "canonical": "Nsegment *" }, "params": [ { @@ -53522,7 +53677,7 @@ ] }, { - "name": "npointset_out", + "name": "nsegment_out", "file": "meos_npoint.h", "returnType": { "c": "char *", @@ -53530,9 +53685,9 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { "name": "maxdd", @@ -53542,42 +53697,52 @@ ] }, { - "name": "npointset_make", + "name": "npoint_make", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "values", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "rid", + "cType": "int64", + "canonical": "long" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "pos", + "cType": "double", + "canonical": "double" } ] }, { - "name": "npoint_to_set", + "name": "nsegment_make", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Nsegment *", + "canonical": "Nsegment *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos1", + "cType": "double", + "canonical": "double" + }, + { + "name": "pos2", + "cType": "double", + "canonical": "double" } ] }, { - "name": "npointset_end_value", + "name": "geompoint_to_npoint", "file": "meos_npoint.h", "returnType": { "c": "Npoint *", @@ -53585,155 +53750,110 @@ }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "npointset_routes", - "file": "meos_npoint.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "npointset_start_value", + "name": "geom_to_nsegment", "file": "meos_npoint.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "Nsegment *", + "canonical": "Nsegment *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "npointset_value_n", + "name": "npoint_to_geompoint", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "npointset_values", + "name": "npoint_to_nsegment", "file": "meos_npoint.h", "returnType": { - "c": "Npoint **", - "canonical": "Npoint **" + "c": "Nsegment *", + "canonical": "Nsegment *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "contained_npoint_set", + "name": "npoint_to_stbox", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { "name": "np", "cType": "const Npoint *", "canonical": "const Npoint *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" } ] }, { - "name": "contains_set_npoint", + "name": "nsegment_to_geom", "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "intersection_npoint_set", + "name": "nsegment_to_stbox", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "intersection_set_npoint", + "name": "npoint_hash", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, { "name": "np", "cType": "const Npoint *", @@ -53742,11 +53862,11 @@ ] }, { - "name": "minus_npoint_set", + "name": "npoint_hash_extended", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { @@ -53755,25 +53875,20 @@ "canonical": "const Npoint *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "minus_set_npoint", + "name": "npoint_position", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, { "name": "np", "cType": "const Npoint *", @@ -53782,18 +53897,13 @@ ] }, { - "name": "npoint_union_transfn", + "name": "npoint_route", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int64", + "canonical": "long" }, "params": [ - { - "name": "state", - "cType": "Set *", - "canonical": "Set *" - }, { "name": "np", "cType": "const Npoint *", @@ -53802,101 +53912,101 @@ ] }, { - "name": "union_npoint_set", + "name": "nsegment_end_position", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "union_set_npoint", + "name": "nsegment_route", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_in", + "name": "nsegment_start_position", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_from_mfjson", + "name": "route_exists", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "rid", + "cType": "int64", + "canonical": "long" } ] }, { - "name": "tnpoint_out", + "name": "route_geom", "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "const int *", + "canonical": "const int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "route_length", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "rid", + "cType": "int64", + "canonical": "long" } ] }, { - "name": "tnpointinst_make", + "name": "npoint_round", "file": "meos_npoint.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { @@ -53905,430 +54015,474 @@ "canonical": "const Npoint *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tgeompoint_to_tnpoint", + "name": "nsegment_round", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Nsegment *", + "canonical": "Nsegment *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnpoint_to_tgeompoint", + "name": "get_srid_ways", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int32_t", + "canonical": "int" }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] + "params": [] }, { - "name": "tnpoint_cumulative_length", + "name": "npoint_srid", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_length", + "name": "nsegment_srid", "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_positions", + "name": "npoint_timestamptz_to_stbox", "file": "meos_npoint.h", "returnType": { - "c": "Nsegment **", - "canonical": "Nsegment **" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tnpoint_route", + "name": "npoint_tstzspan_to_stbox", "file": "meos_npoint.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "tnpoint_routes", + "name": "npoint_cmp", "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_speed", + "name": "npoint_eq", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_trajectory", + "name": "npoint_ge", "file": "meos_npoint.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_twcentroid", + "name": "npoint_gt", "file": "meos_npoint.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_at_geom", + "name": "npoint_le", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_at_npoint", + "name": "npoint_lt", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "np", + "name": "np2", "cType": "const Npoint *", "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_at_npointset", + "name": "npoint_ne", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_at_stbox", + "name": "npoint_same", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "tnpoint_minus_geom", + "name": "nsegment_cmp", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_minus_npoint", + "name": "nsegment_eq", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_minus_npointset", + "name": "nsegment_ge", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tnpoint_minus_stbox", + "name": "nsegment_gt", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tdistance_tnpoint_npoint", + "name": "nsegment_le", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tdistance_tnpoint_point", + "name": "nsegment_lt", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "tdistance_tnpoint_tnpoint", + "name": "nsegment_ne", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" } ] }, { - "name": "nad_tnpoint_geo", + "name": "npointset_in", "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npointset_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "nad_tnpoint_npoint", + "name": "npointset_make", "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Npoint **", + "canonical": "Npoint **" }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_to_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ { "name": "np", "cType": "const Npoint *", @@ -54337,137 +54491,127 @@ ] }, { - "name": "nad_tnpoint_stbox", + "name": "npointset_end_value", "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nad_tnpoint_tnpoint", + "name": "npointset_routes", "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nai_tnpoint_geo", + "name": "npointset_start_value", "file": "meos_npoint.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "nai_tnpoint_npoint", + "name": "npointset_value_n", "file": "meos_npoint.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" } ] }, { - "name": "nai_tnpoint_tnpoint", + "name": "npointset_values", "file": "meos_npoint.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Npoint **", + "canonical": "Npoint **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "shortestline_tnpoint_geo", + "name": "contained_npoint_set", "file": "meos_npoint.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "shortestline_tnpoint_npoint", + "name": "contains_set_npoint", "file": "meos_npoint.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { "name": "np", @@ -54477,51 +54621,51 @@ ] }, { - "name": "shortestline_tnpoint_tnpoint", + "name": "intersection_npoint_set", "file": "meos_npoint.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tnpoint_tcentroid_transfn", + "name": "intersection_set_npoint", "file": "meos_npoint.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "always_eq_npoint_tnpoint", + "name": "minus_npoint_set", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -54530,24 +54674,24 @@ "canonical": "const Npoint *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "always_eq_tnpoint_npoint", + "name": "minus_set_npoint", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { "name": "np", @@ -54557,31 +54701,31 @@ ] }, { - "name": "always_eq_tnpoint_tnpoint", + "name": "npoint_union_transfn", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "Set *", + "canonical": "Set *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "always_ne_npoint_tnpoint", + "name": "union_npoint_set", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { @@ -54590,24 +54734,24 @@ "canonical": "const Npoint *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "always_ne_tnpoint_npoint", + "name": "union_set_npoint", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { "name": "np", @@ -54617,51 +54761,41 @@ ] }, { - "name": "always_ne_tnpoint_tnpoint", + "name": "tnpoint_in", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "ever_eq_npoint_tnpoint", + "name": "tnpoint_from_mfjson", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "ever_eq_tnpoint_npoint", + "name": "tnpoint_out", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -54670,38 +54804,38 @@ "canonical": "const Temporal *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ever_eq_tnpoint_tnpoint", + "name": "tnpointinst_make", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "ever_ne_npoint_tnpoint", + "name": "tnpoint_from_base_temp", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -54717,67 +54851,77 @@ ] }, { - "name": "ever_ne_tnpoint_npoint", + "name": "tnpointseq_from_base_tstzset", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "np", "cType": "const Npoint *", "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ever_ne_tnpoint_tnpoint", + "name": "tnpointseq_from_base_tstzspan", "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "teq_tnpoint_npoint", + "name": "tnpointseqset_from_base_tstzspanset", "file": "meos_npoint.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "np", "cType": "const Npoint *", "canonical": "const Npoint *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tne_tnpoint_npoint", + "name": "tgeompoint_to_tnpoint", "file": "meos_npoint.h", "returnType": { "c": "Temporal *", @@ -54788,1055 +54932,1010 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" } ] }, { - "name": "pose_as_ewkt", - "file": "meos_pose.h", + "name": "tnpoint_to_tgeompoint", + "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_as_hexwkb", - "file": "meos_pose.h", + "name": "tnpoint_cumulative_length", + "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_as_text", - "file": "meos_pose.h", + "name": "tnpoint_end_value", + "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_as_wkb", - "file": "meos_pose.h", + "name": "tnpoint_length", + "file": "meos_npoint.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_from_wkb", - "file": "meos_pose.h", + "name": "tnpoint_positions", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Nsegment **", + "canonical": "Nsegment **" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "pose_from_hexwkb", - "file": "meos_pose.h", + "name": "tnpoint_route", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "hexwkb", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_in", - "file": "meos_pose.h", + "name": "tnpoint_routes", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_out", - "file": "meos_pose.h", + "name": "tnpoint_speed", + "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_copy", - "file": "meos_pose.h", + "name": "tnpoint_start_value", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Npoint *", + "canonical": "Npoint *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_make_2d", - "file": "meos_pose.h", + "name": "tnpoint_trajectory", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "theta", - "cType": "double", - "canonical": "double" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_make_3d", - "file": "meos_pose.h", + "name": "tnpoint_value_at_timestamptz", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "z", - "cType": "double", - "canonical": "double" - }, - { - "name": "W", - "cType": "double", - "canonical": "double" - }, - { - "name": "X", - "cType": "double", - "canonical": "double" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "Y", - "cType": "double", - "canonical": "double" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "Z", - "cType": "double", - "canonical": "double" + "name": "strict", + "cType": "bool", + "canonical": "bool" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "value", + "cType": "Npoint **", + "canonical": "Npoint **" } ] }, { - "name": "pose_make_point2d", - "file": "meos_pose.h", + "name": "tnpoint_value_n", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "theta", - "cType": "double", - "canonical": "double" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" } ] }, { - "name": "pose_make_point3d", - "file": "meos_pose.h", + "name": "tnpoint_values", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Npoint **", + "canonical": "Npoint **" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "W", - "cType": "double", - "canonical": "double" - }, - { - "name": "X", - "cType": "double", - "canonical": "double" - }, - { - "name": "Y", - "cType": "double", - "canonical": "double" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "Z", - "cType": "double", - "canonical": "double" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "pose_to_point", - "file": "meos_pose.h", + "name": "tnpoint_twcentroid", + "file": "meos_npoint.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_to_stbox", - "file": "meos_pose.h", + "name": "tnpoint_at_geom", + "file": "meos_npoint.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_hash", - "file": "meos_pose.h", + "name": "tnpoint_at_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "pose_hash_extended", - "file": "meos_pose.h", + "name": "tnpoint_at_npointset", + "file": "meos_npoint.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "pose_orientation", - "file": "meos_pose.h", + "name": "tnpoint_at_stbox", + "file": "meos_npoint.h", "returnType": { - "c": "double *", - "canonical": "double *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_rotation", - "file": "meos_pose.h", + "name": "tnpoint_minus_geom", + "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_round", - "file": "meos_pose.h", + "name": "tnpoint_minus_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "posearr_round", - "file": "meos_pose.h", + "name": "tnpoint_minus_npointset", + "file": "meos_npoint.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "posearr", - "cType": "const Pose **", - "canonical": "const struct Pose **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "pose_set_srid", - "file": "meos_pose.h", + "name": "tnpoint_minus_stbox", + "file": "meos_npoint.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "Pose *", - "canonical": "struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_srid", - "file": "meos_pose.h", + "name": "tdistance_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "int32_t", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "pose_transform", - "file": "meos_pose.h", + "name": "tdistance_tnpoint_geo", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_transform_pipeline", - "file": "meos_pose.h", + "name": "tdistance_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - }, - { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "is_forward", - "cType": "bool", - "canonical": "bool" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_tstzspan_to_stbox", - "file": "meos_pose.h", + "name": "nad_tnpoint_geo", + "file": "meos_npoint.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_timestamptz_to_stbox", - "file": "meos_pose.h", + "name": "nad_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "distance_pose_geo", - "file": "meos_pose.h", + "name": "nad_tnpoint_stbox", + "file": "meos_npoint.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "distance_pose_pose", - "file": "meos_pose.h", + "name": "nad_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "distance_pose_stbox", - "file": "meos_pose.h", + "name": "nai_tnpoint_geo", + "file": "meos_npoint.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_cmp", - "file": "meos_pose.h", + "name": "nai_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "pose_eq", - "file": "meos_pose.h", + "name": "nai_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_ge", - "file": "meos_pose.h", + "name": "shortestline_tnpoint_geo", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "pose_gt", - "file": "meos_pose.h", + "name": "shortestline_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "pose_le", - "file": "meos_pose.h", + "name": "shortestline_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_lt", - "file": "meos_pose.h", + "name": "tnpoint_tcentroid_transfn", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_ne", - "file": "meos_pose.h", + "name": "always_eq_npoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_nsame", - "file": "meos_pose.h", + "name": "always_eq_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "pose_same", - "file": "meos_pose.h", + "name": "always_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "poseset_in", - "file": "meos_pose.h", + "name": "always_ne_npoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "poseset_out", - "file": "meos_pose.h", + "name": "always_ne_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "poseset_make", - "file": "meos_pose.h", + "name": "always_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "const Pose **", - "canonical": "const struct Pose **" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "pose_to_set", - "file": "meos_pose.h", + "name": "ever_eq_npoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "poseset_end_value", - "file": "meos_pose.h", + "name": "ever_eq_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "poseset_start_value", - "file": "meos_pose.h", + "name": "ever_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "poseset_value_n", - "file": "meos_pose.h", + "name": "ever_ne_npoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" }, { - "name": "result", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "poseset_values", - "file": "meos_pose.h", + "name": "ever_ne_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "contained_pose_set", - "file": "meos_pose.h", + "name": "ever_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "contains_set_pose", - "file": "meos_pose.h", + "name": "teq_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "Pose *", - "canonical": "struct Pose *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "intersection_pose_set", - "file": "meos_pose.h", + "name": "tne_tnpoint_npoint", + "file": "meos_npoint.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" } ] }, { - "name": "intersection_set_pose", + "name": "pose_as_ewkt", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, { "name": "pose", "cType": "const Pose *", "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "minus_pose_set", + "name": "pose_as_hexwkb", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { @@ -55845,144 +55944,134 @@ "canonical": "const struct Pose *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "minus_set_pose", + "name": "pose_as_text", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, { "name": "pose", "cType": "const Pose *", "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "pose_union_transfn", + "name": "pose_as_wkb", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ - { - "name": "state", - "cType": "Set *", - "canonical": "Set *" - }, { "name": "pose", "cType": "const Pose *", "canonical": "const struct Pose *" - } - ] - }, - { - "name": "union_pose_set", - "file": "meos_pose.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "union_set_pose", + "name": "pose_from_wkb", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" } ] }, { - "name": "tpose_in", + "name": "pose_from_hexwkb", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "str", + "name": "hexwkb", "cType": "const char *", "canonical": "const char *" } ] }, { - "name": "tpose_make", + "name": "pose_in", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "tpoint", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "tradius", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpose_to_tpoint", + "name": "pose_out", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tpose_end_value", + "name": "pose_from_geopose", "file": "meos_pose.h", "returnType": { "c": "Pose *", @@ -55990,29 +56079,39 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "json", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpose_points", + "name": "pose_as_geopose", "file": "meos_pose.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "conformance", + "cType": "int", + "canonical": "int" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tpose_rotation", + "name": "tpose_from_geopose", "file": "meos_pose.h", "returnType": { "c": "Temporal *", @@ -56020,29 +56119,39 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "json", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tpose_start_value", + "name": "tpose_as_geopose", "file": "meos_pose.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "char *", + "canonical": "char *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "conformance", + "cType": "int", + "canonical": "int" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tpose_trajectory", + "name": "pose_apply_geo", "file": "meos_pose.h", "returnType": { "c": "int *", @@ -56050,18 +56159,23 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "body", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tpose_value_at_timestamptz", + "name": "tpose_apply_geo", "file": "meos_pose.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -56070,165 +56184,170 @@ "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "value", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "body", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tpose_value_n", + "name": "pose_copy", "file": "meos_pose.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tpose_values", + "name": "pose_make_2d", "file": "meos_pose.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x", + "cType": "double", + "canonical": "double" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "tpose_at_geom", - "file": "meos_pose.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "y", + "cType": "double", + "canonical": "double" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "theta", + "cType": "double", + "canonical": "double" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpose_at_stbox", + "name": "pose_make_3d", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x", + "cType": "double", + "canonical": "double" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "y", + "cType": "double", + "canonical": "double" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "z", + "cType": "double", + "canonical": "double" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tpose_at_pose", + "name": "pose_make_point2d", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "theta", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tpose_minus_geom", + "name": "pose_make_point3d", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tpose_minus_pose", + "name": "pose_to_point", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", @@ -56237,43 +56356,28 @@ ] }, { - "name": "tpose_minus_stbox", + "name": "pose_to_stbox", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tdistance_tpose_pose", + "name": "pose_hash", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", @@ -56282,47 +56386,47 @@ ] }, { - "name": "tdistance_tpose_point", + "name": "pose_hash_extended", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "tdistance_tpose_tpose", + "name": "pose_orientation", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double *", + "canonical": "double *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "nad_tpose_geo", + "name": "pose_rotation", "file": "meos_pose.h", "returnType": { "c": "double", @@ -56330,30 +56434,20 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nad_tpose_pose", + "name": "pose_yaw", "file": "meos_pose.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", @@ -56362,7 +56456,7 @@ ] }, { - "name": "nad_tpose_stbox", + "name": "pose_pitch", "file": "meos_pose.h", "returnType": { "c": "double", @@ -56370,19 +56464,14 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nad_tpose_tpose", + "name": "pose_roll", "file": "meos_pose.h", "returnType": { "c": "double", @@ -56390,50 +56479,40 @@ }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nai_tpose_geo", + "name": "pose_angular_distance", "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nai_tpose_pose", + "name": "pose_normalise", "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", @@ -56442,91 +56521,91 @@ ] }, { - "name": "nai_tpose_tpose", + "name": "pose_round", "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "shortestline_tpose_geo", + "name": "posearr_round", "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Pose **", + "canonical": "struct Pose **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "posearr", + "cType": "const Pose **", + "canonical": "const struct Pose **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "shortestline_tpose_pose", + "name": "pose_set_srid", "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "shortestline_tpose_tpose", + "name": "pose_srid", "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int32_t", + "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "always_eq_pose_tpose", + "name": "pose_transform", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { @@ -56535,58 +56614,68 @@ "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "always_eq_tpose_pose", + "name": "pose_transform_pipeline", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", "canonical": "const struct Pose *" + }, + { + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "always_eq_tpose_tpose", + "name": "pose_tstzspan_to_stbox", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" } ] }, { - "name": "always_ne_pose_tpose", + "name": "pose_timestamptz_to_stbox", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "STBox *", + "canonical": "struct STBox *" }, "params": [ { @@ -56595,58 +56684,58 @@ "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "always_ne_tpose_pose", + "name": "distance_pose_geo", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "pose", "cType": "const Pose *", "canonical": "const struct Pose *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_ne_tpose_tpose", + "name": "distance_pose_pose", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "ever_eq_pose_tpose", + "name": "distance_pose_stbox", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { @@ -56655,14 +56744,14 @@ "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "ever_eq_tpose_pose", + "name": "pose_cmp", "file": "meos_pose.h", "returnType": { "c": "int", @@ -56670,615 +56759,665 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "pose", + "name": "pose2", "cType": "const Pose *", "canonical": "const struct Pose *" } ] }, { - "name": "ever_eq_tpose_tpose", + "name": "pose_eq", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "ever_ne_pose_tpose", + "name": "pose_ge", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "pose", + "name": "pose1", "cType": "const Pose *", "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "ever_ne_tpose_pose", + "name": "pose_gt", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "pose", + "name": "pose2", "cType": "const Pose *", "canonical": "const struct Pose *" } ] }, { - "name": "ever_ne_tpose_tpose", + "name": "pose_le", "file": "meos_pose.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "teq_pose_tpose", + "name": "pose_lt", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "pose", + "name": "pose1", "cType": "const Pose *", "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "teq_tpose_pose", + "name": "pose_ne", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "pose", + "name": "pose2", "cType": "const Pose *", "canonical": "const struct Pose *" } ] }, { - "name": "tne_pose_tpose", + "name": "pose_nsame", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "pose", + "name": "pose1", "cType": "const Pose *", "canonical": "const struct Pose *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tne_tpose_pose", + "name": "pose_same", "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "pose", + "name": "pose2", "cType": "const Pose *", "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_out", - "file": "meos_rgeo.h", + "name": "poseset_in", + "file": "meos_pose.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "trgeoinst_make", - "file": "meos_rgeo.h", + "name": "poseset_out", + "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geo_tpose_to_trgeometry", - "file": "meos_rgeo.h", + "name": "poseset_make", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "values", + "cType": "const Pose **", + "canonical": "const struct Pose **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "trgeometry_to_tpose", - "file": "meos_rgeo.h", + "name": "pose_to_set", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_to_tpoint", - "file": "meos_rgeo.h", + "name": "poseset_end_value", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_end_instant", - "file": "meos_rgeo.h", + "name": "poseset_start_value", + "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_end_sequence", - "file": "meos_rgeo.h", + "name": "poseset_value_n", + "file": "meos_pose.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" } ] }, { - "name": "trgeometry_end_value", - "file": "meos_rgeo.h", + "name": "poseset_values", + "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Pose **", + "canonical": "struct Pose **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "trgeometry_geom", - "file": "meos_rgeo.h", + "name": "contained_pose_set", + "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_instant_n", - "file": "meos_rgeo.h", + "name": "contains_set_pose", + "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" } ] }, { - "name": "trgeometry_instants", - "file": "meos_rgeo.h", + "name": "intersection_pose_set", + "file": "meos_pose.h", "returnType": { - "c": "TInstant **", - "canonical": "struct TInstant **" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_points", - "file": "meos_rgeo.h", + "name": "intersection_set_pose", + "file": "meos_pose.h", "returnType": { "c": "Set *", "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_rotation", - "file": "meos_rgeo.h", + "name": "minus_pose_set", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_segments", - "file": "meos_rgeo.h", + "name": "minus_set_pose", + "file": "meos_pose.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_sequence_n", - "file": "meos_rgeo.h", + "name": "pose_union_transfn", + "file": "meos_pose.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "Set *", + "canonical": "Set *" }, { - "name": "i", - "cType": "int", - "canonical": "int" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_sequences", - "file": "meos_rgeo.h", + "name": "union_pose_set", + "file": "meos_pose.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_start_instant", - "file": "meos_rgeo.h", + "name": "union_set_pose", + "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "trgeometry_start_sequence", - "file": "meos_rgeo.h", + "name": "tpose_from_mfjson", + "file": "meos_pose.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "trgeometry_start_value", - "file": "meos_rgeo.h", + "name": "tpose_in", + "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "trgeometry_value_n", - "file": "meos_rgeo.h", + "name": "tposeinst_make", + "file": "meos_pose.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "result", - "cType": "int **", - "canonical": "int **" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "trgeometry_traversed_area", - "file": "meos_rgeo.h", + "name": "tpose_from_base_temp", + "file": "meos_pose.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + } + ] + }, + { + "name": "tposeseq_from_base_tstzset", + "file": "meos_pose.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "trgeometry_append_tinstant", - "file": "meos_rgeo.h", + "name": "tposeseq_from_base_tstzspan", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" }, { "name": "interp", "cType": "interpType", "canonical": "interpType" - }, + } + ] + }, + { + "name": "tposeseqset_from_base_tstzspanset", + "file": "meos_pose.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "struct TSequenceSet *" + }, + "params": [ { - "name": "maxdist", - "cType": "double", - "canonical": "double" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { - "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "trgeometry_append_tsequence", - "file": "meos_rgeo.h", + "name": "tpose_make", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" - }, - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "tpoint", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "tradius", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "trgeometry_delete_timestamptz", - "file": "meos_rgeo.h", + "name": "tpose_to_tpoint", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57288,72 +57427,42 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "trgeometry_delete_tstzset", - "file": "meos_rgeo.h", + "name": "tpose_end_value", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose *", + "canonical": "struct Pose *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "trgeometry_delete_tstzspan", - "file": "meos_rgeo.h", + "name": "tpose_points", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "trgeometry_delete_tstzspanset", - "file": "meos_rgeo.h", + "name": "tpose_rotation", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57363,22 +57472,12 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "trgeometry_round", - "file": "meos_rgeo.h", + "name": "tpose_yaw", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57388,17 +57487,12 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" } ] }, { - "name": "trgeometry_set_interp", - "file": "meos_rgeo.h", + "name": "tpose_pitch", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57408,20 +57502,15 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "trgeometry_to_tinstant", - "file": "meos_rgeo.h", + "name": "tpose_roll", + "file": "meos_pose.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -57432,8 +57521,8 @@ ] }, { - "name": "trgeometry_after_timestamptz", - "file": "meos_rgeo.h", + "name": "tpose_speed", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57443,22 +57532,12 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "trgeometry_before_timestamptz", - "file": "meos_rgeo.h", + "name": "tpose_angular_speed", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57468,25 +57547,45 @@ "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, + } + ] + }, + { + "name": "tpose_start_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_trajectory", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "trgeometry_restrict_value", - "file": "meos_rgeo.h", + "name": "tpose_value_at_timestamptz", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -57495,23 +57594,28 @@ "canonical": "const Temporal *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "atfunc", + "name": "strict", "cType": "bool", "canonical": "bool" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" } ] }, { - "name": "trgeometry_restrict_values", - "file": "meos_rgeo.h", + "name": "tpose_value_n", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -57520,23 +57624,23 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "n", + "cType": "int", + "canonical": "int" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" } ] }, { - "name": "trgeometry_restrict_timestamptz", - "file": "meos_rgeo.h", + "name": "tpose_values", + "file": "meos_pose.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Pose **", + "canonical": "struct Pose **" }, "params": [ { @@ -57545,20 +57649,15 @@ "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "trgeometry_restrict_tstzset", - "file": "meos_rgeo.h", + "name": "tpose_at_geom", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57570,20 +57669,15 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "trgeometry_restrict_tstzspan", - "file": "meos_rgeo.h", + "name": "tpose_at_stbox", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57595,20 +57689,20 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" }, { - "name": "atfunc", + "name": "border_inc", "cType": "bool", "canonical": "bool" } ] }, { - "name": "trgeometry_restrict_tstzspanset", - "file": "meos_rgeo.h", + "name": "tpose_at_pose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57620,20 +57714,15 @@ "canonical": "const Temporal *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tdistance_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "tpose_minus_geom", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -57652,68 +57741,113 @@ ] }, { - "name": "tdistance_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "tpose_minus_pose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tdistance_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "tpose_minus_stbox", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } ] }, { - "name": "nad_stbox_trgeometry", - "file": "meos_rgeo.h", + "name": "tdistance_tpose_pose", + "file": "meos_pose.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tdistance_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nad_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "tdistance_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tpose_geo", + "file": "meos_pose.h", "returnType": { "c": "double", "canonical": "double" @@ -57732,8 +57866,8 @@ ] }, { - "name": "nad_trgeometry_stbox", - "file": "meos_rgeo.h", + "name": "nad_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "double", "canonical": "double" @@ -57745,35 +57879,35 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nad_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "nad_tpose_stbox", + "file": "meos_pose.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" } ] }, { - "name": "nad_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "nad_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "double", "canonical": "double" @@ -57792,8 +57926,8 @@ ] }, { - "name": "nai_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "nai_tpose_geo", + "file": "meos_pose.h", "returnType": { "c": "TInstant *", "canonical": "struct TInstant *" @@ -57812,28 +57946,28 @@ ] }, { - "name": "nai_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "nai_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "TInstant *", "canonical": "struct TInstant *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "nai_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "nai_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "TInstant *", "canonical": "struct TInstant *" @@ -57852,8 +57986,8 @@ ] }, { - "name": "shortestline_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "shortestline_tpose_geo", + "file": "meos_pose.h", "returnType": { "c": "int *", "canonical": "int *" @@ -57872,28 +58006,28 @@ ] }, { - "name": "shortestline_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "shortestline_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "shortestline_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "shortestline_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int *", "canonical": "int *" @@ -57912,17 +58046,17 @@ ] }, { - "name": "always_eq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "always_eq_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -57932,8 +58066,8 @@ ] }, { - "name": "always_eq_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "always_eq_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -57945,15 +58079,15 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "always_eq_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "always_eq_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -57972,17 +58106,17 @@ ] }, { - "name": "always_ne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "always_ne_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -57992,8 +58126,8 @@ ] }, { - "name": "always_ne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "always_ne_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58005,15 +58139,15 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "always_ne_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "always_ne_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58032,17 +58166,17 @@ ] }, { - "name": "ever_eq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "ever_eq_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -58052,8 +58186,8 @@ ] }, { - "name": "ever_eq_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "ever_eq_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58065,15 +58199,15 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "ever_eq_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "ever_eq_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58092,17 +58226,17 @@ ] }, { - "name": "ever_ne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "ever_ne_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -58112,8 +58246,8 @@ ] }, { - "name": "ever_ne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "ever_ne_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58125,15 +58259,15 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "ever_ne_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "ever_ne_tpose_tpose", + "file": "meos_pose.h", "returnType": { "c": "int", "canonical": "int" @@ -58152,17 +58286,17 @@ ] }, { - "name": "teq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "teq_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -58172,8 +58306,8 @@ ] }, { - "name": "teq_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "teq_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -58185,24 +58319,24 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "tne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "tne_pose_tpose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" }, { "name": "temp", @@ -58212,8 +58346,8 @@ ] }, { - "name": "tne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "tne_tpose_pose", + "file": "meos_pose.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -58225,1965 +58359,5953 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" } ] }, { - "name": "geo_get_srid", - "file": "postgis_ext_defs.in.h", + "name": "trgeometry_out", + "file": "meos_rgeo.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "g", - "cType": "const GSERIALIZED *", - "canonical": "const GSERIALIZED *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "date_in", - "file": "postgres_ext_defs.in.h", + "name": "trgeoinst_make", + "file": "meos_rgeo.h", "returnType": { - "c": "DateADT", - "canonical": "int" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "date_out", - "file": "postgres_ext_defs.in.h", + "name": "geo_tpose_to_trgeometry", + "file": "meos_rgeo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "d", - "cType": "DateADT", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "interval_cmp", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_to_tpose", + "file": "meos_rgeo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "interv1", - "cType": "const Interval *", - "canonical": "const Interval *" - }, - { - "name": "interv2", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "interval_in", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_to_tpoint", + "file": "meos_rgeo.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "interval_out", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_to_tgeometry", + "file": "meos_rgeo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "time_in", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_end_instant", + "file": "meos_rgeo.h", "returnType": { - "c": "TimeADT", - "canonical": "long" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "time_out", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_end_sequence", + "file": "meos_rgeo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "struct TSequence *" }, "params": [ { - "name": "t", - "cType": "TimeADT", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "timestamp_in", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_end_value", + "file": "meos_rgeo.h", "returnType": { - "c": "Timestamp", - "canonical": "long" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "timestamp_out", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_geom", + "file": "meos_rgeo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "t", - "cType": "Timestamp", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "timestamptz_in", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_instant_n", + "file": "meos_rgeo.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "TInstant *", + "canonical": "struct TInstant *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "typmod", - "cType": "int32", + "name": "n", + "cType": "int", "canonical": "int" } ] }, { - "name": "timestamptz_out", - "file": "postgres_ext_defs.in.h", + "name": "trgeometry_instants", + "file": "meos_rgeo.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TInstant **", + "canonical": "struct TInstant **" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] - } - ], - "structs": [ + }, { - "name": "Set", - "file": "meos.h", - "fields": [ + "name": "trgeometry_points", + "file": "meos_rgeo.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ { - "name": "vl_len_", - "cType": "int32", - "offset_bits": 0 - }, + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_rotation", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { - "name": "settype", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_segments", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_sequence_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeometry_sequences", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "struct TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_start_instant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_start_sequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "struct TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_start_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_value_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" + } + ] + }, + { + "name": "trgeometry_traversed_area", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_centroid", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_convex_hull", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_body_point_trajectory", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_space_boxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_space_time_boxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_split_n_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_split_each_n_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "struct STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "elem_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_hausdorff_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_frechet_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_dyntimewarp_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_frechet_path", + "file": "meos_rgeo.h", + "returnType": { + "c": "Match *", + "canonical": "Match *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_dyntimewarp_path", + "file": "meos_rgeo.h", + "returnType": { + "c": "Match *", + "canonical": "Match *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_length", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_cumulative_length", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_speed", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_twcentroid", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_append_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const struct TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_append_tsequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const struct TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_round", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeometry_set_interp", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "trgeometry_to_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_after_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_before_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "int ((int *))()" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_values", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const struct Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const struct SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_at_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_minus_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_at_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_minus_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdistance_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_stbox_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_trgeometry_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const struct STBox *" + } + ] + }, + { + "name": "nad_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "struct TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_eq_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_ne_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_eq_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_ne_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "econtains_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "acovers_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edisjoint_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "adisjoint_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "eintersects_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "aintersects_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "etouches_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "atouches_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edwithin_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "edisjoint_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "adisjoint_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "eintersects_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "aintersects_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "edwithin_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "geo_get_srid", + "file": "postgis_ext_defs.in.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "g", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "date_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "DateADT", + "canonical": "int" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "date_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "d", + "cType": "DateADT", + "canonical": "int" + } + ] + }, + { + "name": "interval_cmp", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "interv1", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "interv2", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "interval_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "Interval *", + "canonical": "Interval *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "interval_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "interv", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "time_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "TimeADT", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "time_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "TimeADT", + "canonical": "long" + } + ] + }, + { + "name": "timestamp_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "Timestamp", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "timestamp_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "Timestamp", + "canonical": "long" + } + ] + }, + { + "name": "timestamptz_in", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "TimestampTz", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "typmod", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "timestamptz_out", + "file": "postgres_ext_defs.in.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + } + ], + "structs": [ + { + "name": "Set", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": 0 + }, + { + "name": "settype", + "cType": "uint8", + "offset_bits": 32 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": 40 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": 48 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": 64 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": 96 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": 128 + } + ] + }, + { + "name": "Span", + "file": "meos.h", + "fields": [ + { + "name": "spantype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "lower_inc", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "upper_inc", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char[4]", + "offset_bits": -1 + }, + { + "name": "lower", + "cType": "int", + "offset_bits": -1 + }, + { + "name": "upper", + "cType": "int", + "offset_bits": -1 + } + ] + }, + { + "name": "SpanSet", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "spansettype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "spantype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "basetype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "span", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "elems", + "cType": "Span[1]", + "offset_bits": -1 + } + ] + }, + { + "name": "TBox", + "file": "meos.h", + "fields": [ + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "span", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + } + ] + }, + { + "name": "STBox", + "file": "meos.h", + "fields": [ + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "xmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + } + ] + }, + { + "name": "Temporal", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": 0 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": 32 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": 40 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": 48 + } + ] + }, + { + "name": "TInstant", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "t", + "cType": "TimestampTz", + "offset_bits": -1 + }, + { + "name": "value", + "cType": "int", + "offset_bits": -1 + } + ], + "meosType": "TPointInst" + }, + { + "name": "TSequence", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char[6]", + "offset_bits": -1 + }, + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + } + ], + "meosType": "TPointSeq" + }, + { + "name": "TSequenceSet", + "file": "meos.h", + "fields": [ + { + "name": "vl_len_", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "temptype", + "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "subtype", "cType": "uint8", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "totalcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "maxcount", + "cType": "int32", + "offset_bits": -1 + }, + { + "name": "bboxsize", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + } + ] + }, + { + "name": "Match", + "file": "meos.h", + "fields": [ + { + "name": "i", + "cType": "int", + "offset_bits": 0 + }, + { + "name": "j", + "cType": "int", + "offset_bits": 32 + } + ] + }, + { + "name": "SkipList", + "file": "meos.h", + "fields": [] + }, + { + "name": "MeosArray", + "file": "meos.h", + "fields": [] + }, + { + "name": "RTree", + "file": "meos.h", + "fields": [] + }, + { + "name": "ArrowSchema", + "file": "meos.h", + "fields": [] + }, + { + "name": "ArrowArray", + "file": "meos.h", + "fields": [] + }, + { + "name": "IntSplit", + "file": "meos.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "bins", + "cType": "int *", + "offset_bits": 64 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 128 + } + ] + }, + { + "name": "FloatSplit", + "file": "meos.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "bins", + "cType": "double *", + "offset_bits": 64 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 128 + } + ] + }, + { + "name": "TimeSplit", + "file": "meos.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "bins", + "cType": "TimestampTz *", + "offset_bits": 64 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 128 + } + ] + }, + { + "name": "IntTimeSplit", + "file": "meos.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "value_bins", + "cType": "int *", + "offset_bits": 64 + }, + { + "name": "time_bins", + "cType": "TimestampTz *", + "offset_bits": 128 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 192 + } + ] + }, + { + "name": "FloatTimeSplit", + "file": "meos.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "value_bins", + "cType": "double *", + "offset_bits": 64 + }, + { + "name": "time_bins", + "cType": "TimestampTz *", + "offset_bits": 128 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 192 + } + ] + }, + { + "name": "MinBoundingCircle", + "file": "meos_geo.h", + "fields": [ + { + "name": "center", + "cType": "int *", + "offset_bits": -1 + }, + { + "name": "radius", + "cType": "double", + "offset_bits": -1 + } + ] + }, + { + "name": "MvtGeom", + "file": "meos_geo.h", + "fields": [ + { + "name": "geom", + "cType": "int *", + "offset_bits": -1 + }, + { + "name": "times", + "cType": "int64 *", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int", + "offset_bits": -1 + } + ] + }, + { + "name": "SpaceSplit", + "file": "meos_geo.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": -1 + }, + { + "name": "bins", + "cType": "int **", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int", + "offset_bits": -1 + } + ] + }, + { + "name": "SpaceTimeSplit", + "file": "meos_geo.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": -1 + }, + { + "name": "space_bins", + "cType": "int **", + "offset_bits": -1 + }, + { + "name": "time_bins", + "cType": "TimestampTz *", + "offset_bits": -1 + }, + { + "name": "count", + "cType": "int", + "offset_bits": -1 + } + ] + }, + { + "name": "Cbuffer", + "file": "meos_cbuffer.h", + "fields": [] + }, + { + "name": "temptype_catalog_struct", + "file": "meos_catalog.h", + "fields": [ + { + "name": "temptype", + "cType": "MeosType", + "offset_bits": 0 + }, + { + "name": "basetype", + "cType": "MeosType", + "offset_bits": 32 + } + ] + }, + { + "name": "settype_catalog_struct", + "file": "meos_catalog.h", + "fields": [ + { + "name": "settype", + "cType": "MeosType", + "offset_bits": 0 + }, + { + "name": "basetype", + "cType": "MeosType", + "offset_bits": 32 + } + ] + }, + { + "name": "spantype_catalog_struct", + "file": "meos_catalog.h", + "fields": [ + { + "name": "spantype", + "cType": "MeosType", + "offset_bits": 0 + }, + { + "name": "basetype", + "cType": "MeosType", + "offset_bits": 32 + } + ] + }, + { + "name": "spansettype_catalog_struct", + "file": "meos_catalog.h", + "fields": [ + { + "name": "spansettype", + "cType": "MeosType", + "offset_bits": 0 + }, + { + "name": "spantype", + "cType": "MeosType", + "offset_bits": 32 + } + ] + }, + { + "name": "SkipListElem", + "file": "meos_internal.h", + "fields": [ + { + "name": "key", + "cType": "void *", + "offset_bits": 0 + }, + { + "name": "value", + "cType": "void *", + "offset_bits": 64 + }, + { + "name": "height", + "cType": "int", + "offset_bits": 128 + }, + { + "name": "next", + "cType": "int[32]", + "offset_bits": 160 + } + ] + }, + { + "name": "DatumSplit", + "file": "meos_internal.h", + "fields": [ + { + "name": "fragments", + "cType": "Temporal **", + "offset_bits": 0 + }, + { + "name": "bins", + "cType": "Datum *", + "offset_bits": 64 + }, + { + "name": "count", + "cType": "int", + "offset_bits": 128 + } + ] + }, + { + "name": "double2", + "file": "doublen.h", + "fields": [ + { + "name": "a", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "b", + "cType": "double", + "offset_bits": 64 + } + ] + }, + { + "name": "double3", + "file": "doublen.h", + "fields": [ + { + "name": "a", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "b", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "c", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "double4", + "file": "doublen.h", + "fields": [ + { + "name": "a", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "b", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "c", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "d", + "cType": "double", + "offset_bits": 192 + } + ] + }, + { + "name": "GeoAggregateState", + "file": "tgeo_aggfuncs.h", + "fields": [ + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 0 + }, + { + "name": "hasz", + "cType": "_Bool", + "offset_bits": 32 + } + ] + }, + { + "name": "BitMatrix", + "file": "tgeo_tile.h", + "fields": [ + { + "name": "ndims", + "cType": "int", + "offset_bits": 0 + }, + { + "name": "count", + "cType": "int[4]", + "offset_bits": 32 + }, + { + "name": "byte", + "cType": "uint8_t[1]", + "offset_bits": 160 + } + ] + }, + { + "name": "STboxGridState", + "file": "tgeo_tile.h", + "fields": [ + { + "name": "done", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "hasx", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "hasz", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "hast", + "cType": "_Bool", + "offset_bits": -1 + }, + { + "name": "i", + "cType": "int", + "offset_bits": -1 + }, + { + "name": "xsize", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ysize", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zsize", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "tunits", + "cType": "int64", + "offset_bits": -1 + }, + { + "name": "box", + "cType": "STBox", + "offset_bits": -1 + }, + { + "name": "temp", + "cType": "const Temporal *", + "offset_bits": -1 + }, + { + "name": "bm", + "cType": "BitMatrix *", + "offset_bits": -1 + }, + { + "name": "x", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "y", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "z", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "t", + "cType": "TimestampTz", + "offset_bits": -1 + }, + { + "name": "ntiles", + "cType": "int", + "offset_bits": -1 + }, + { + "name": "max_coords", + "cType": "int[4]", + "offset_bits": -1 + }, + { + "name": "coords", + "cType": "int[4]", + "offset_bits": -1 + } + ] + }, + { + "name": "Npoint", + "file": "meos_npoint.h", + "fields": [ + { + "name": "rid", + "cType": "int64", + "offset_bits": 0 + }, + { + "name": "pos", + "cType": "double", + "offset_bits": 64 + } + ] + }, + { + "name": "Nsegment", + "file": "meos_npoint.h", + "fields": [ + { + "name": "rid", + "cType": "int64", + "offset_bits": 0 + }, + { + "name": "pos1", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "pos2", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "Pcpoint", + "file": "meos_pointcloud.h", + "fields": [] + }, + { + "name": "Pcpatch", + "file": "meos_pointcloud.h", + "fields": [] + }, + { + "name": "PCSCHEMA", + "file": "meos_pointcloud.h", + "fields": [] + }, + { + "name": "TPCBox", + "file": "meos_pointcloud.h", + "fields": [ + { + "name": "period", + "cType": "Span", + "offset_bits": -1 + }, + { + "name": "xmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": -1 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": -1 + }, + { + "name": "pcid", + "cType": "uint32_t", + "offset_bits": -1 + }, + { + "name": "flags", + "cType": "int16", + "offset_bits": -1 + }, + { + "name": "padding", + "cType": "char[6]", + "offset_bits": -1 + } + ] + }, + { + "name": "Pose", + "file": "meos_pose.h", + "fields": [] + }, + { + "name": "PcpointInTpcboxArgs", + "file": "pcpatch_decompose.h", + "fields": [ + { + "name": "box", + "cType": "const TPCBox *", + "offset_bits": 0 + }, + { + "name": "border_inc", + "cType": "_Bool", + "offset_bits": 64 + } + ] + }, + { + "name": "SERIALIZED_POINT", + "file": "pgsql_compat.h", + "fields": [ + { + "name": "size", + "cType": "uint32_t", + "offset_bits": 0 + }, + { + "name": "pcid", + "cType": "uint32_t", + "offset_bits": 32 + }, + { + "name": "data", + "cType": "uint8_t[1]", + "offset_bits": 64 + } + ] + }, + { + "name": "SERIALIZED_PATCH", + "file": "pgsql_compat.h", + "fields": [ + { + "name": "size", + "cType": "uint32_t", + "offset_bits": -1 + }, + { + "name": "pcid", + "cType": "uint32_t", + "offset_bits": -1 + }, + { + "name": "compression", + "cType": "uint32_t", + "offset_bits": -1 + }, + { + "name": "npoints", + "cType": "uint32_t", + "offset_bits": -1 + }, + { + "name": "bounds", + "cType": "int", + "offset_bits": -1 + }, + { + "name": "data", + "cType": "uint8_t[1]", + "offset_bits": -1 + } + ] + }, + { + "name": "AFFINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "afac", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "bfac", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "cfac", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "dfac", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "efac", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "ffac", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "gfac", + "cType": "double", + "offset_bits": 384 + }, + { + "name": "hfac", + "cType": "double", + "offset_bits": 448 + }, + { + "name": "ifac", + "cType": "double", + "offset_bits": 512 + }, + { + "name": "xoff", + "cType": "double", + "offset_bits": 576 + }, + { + "name": "yoff", + "cType": "double", + "offset_bits": 640 + }, + { + "name": "zoff", + "cType": "double", + "offset_bits": 704 + } + ] + }, + { + "name": "BOX3D", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "xmin", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "ymin", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 384 + } + ] + }, + { + "name": "GBOX", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 0 + }, + { + "name": "xmin", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "xmax", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "ymin", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "ymax", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "zmin", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "zmax", + "cType": "double", + "offset_bits": 384 + }, + { + "name": "mmin", + "cType": "double", + "offset_bits": 448 + }, + { + "name": "mmax", + "cType": "double", + "offset_bits": 512 + } + ] + }, + { + "name": "SPHEROID", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "a", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "b", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "f", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "e", + "cType": "double", + "offset_bits": 192 + }, + { + "name": "e_sq", + "cType": "double", + "offset_bits": 256 + }, + { + "name": "radius", + "cType": "double", + "offset_bits": 320 + }, + { + "name": "name", + "cType": "char[20]", + "offset_bits": 384 + } + ] + }, + { + "name": "POINT2D", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "y", + "cType": "double", + "offset_bits": 64 + } + ] + }, + { + "name": "POINT3DZ", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "y", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "z", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "POINT3D", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "y", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "z", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "POINT3DM", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "y", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "m", + "cType": "double", + "offset_bits": 128 + } + ] + }, + { + "name": "POINT4D", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "x", + "cType": "double", + "offset_bits": 0 + }, + { + "name": "y", + "cType": "double", + "offset_bits": 64 + }, + { + "name": "z", + "cType": "double", + "offset_bits": 128 + }, + { + "name": "m", + "cType": "double", + "offset_bits": 192 + } + ] + }, + { + "name": "POINTARRAY", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "npoints", + "cType": "uint32_t", + "offset_bits": 0 + }, + { + "name": "maxpoints", + "cType": "uint32_t", + "offset_bits": 32 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 64 + }, + { + "name": "serialized_pointlist", + "cType": "uint8_t *", + "offset_bits": 128 + } + ] + }, + { + "name": "GSERIALIZED", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "size", + "cType": "uint32_t", + "offset_bits": 0 + }, + { + "name": "srid", + "cType": "uint8_t[3]", "offset_bits": 32 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": 40 + "name": "gflags", + "cType": "uint8_t", + "offset_bits": 56 + }, + { + "name": "data", + "cType": "uint8_t[1]", + "offset_bits": 64 + } + ] + }, + { + "name": "LWGEOM", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "data", + "cType": "void *", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWPOINT", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "point", + "cType": "POINTARRAY *", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWLINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "points", + "cType": "POINTARRAY *", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWTRIANGLE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "points", + "cType": "POINTARRAY *", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { "name": "flags", - "cType": "int16", - "offset_bits": 48 + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "count", - "cType": "int32", + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWCIRCSTRING", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "points", + "cType": "POINTARRAY *", "offset_bits": 64 }, { - "name": "maxcount", - "cType": "int32", - "offset_bits": 96 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + } + ] + }, + { + "name": "LWPOLY", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "rings", + "cType": "POINTARRAY **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "nrings", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxrings", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWMPOINT", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWPOINT **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWMLINE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWLINE **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWMPOLY", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWPOLY **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWCOLLECTION", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWCOMPOUND", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWCURVEPOLY", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "rings", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "nrings", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxrings", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWMCURVE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWMSURFACE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWGEOM **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 + } + ] + }, + { + "name": "LWPSURFACE", + "file": "postgis_ext_defs.in.h", + "fields": [ + { + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 + }, + { + "name": "geoms", + "cType": "LWPOLY **", + "offset_bits": 64 + }, + { + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 + }, + { + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 + }, + { + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 + }, + { + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 }, { - "name": "bboxsize", - "cType": "int16", - "offset_bits": 128 + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "Span", - "file": "meos.h", + "name": "LWTIN", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "spantype", - "cType": "uint8", - "offset_bits": -1 + "name": "bbox", + "cType": "GBOX *", + "offset_bits": 0 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": -1 + "name": "geoms", + "cType": "LWTRIANGLE **", + "offset_bits": 64 }, { - "name": "lower_inc", - "cType": "_Bool", - "offset_bits": -1 + "name": "srid", + "cType": "int32_t", + "offset_bits": 128 }, { - "name": "upper_inc", - "cType": "_Bool", - "offset_bits": -1 + "name": "flags", + "cType": "lwflags_t", + "offset_bits": 160 }, { - "name": "padding", - "cType": "char[4]", - "offset_bits": -1 + "name": "type", + "cType": "uint8_t", + "offset_bits": 176 }, { - "name": "lower", - "cType": "int", - "offset_bits": -1 + "name": "pad", + "cType": "char[1]", + "offset_bits": 184 }, { - "name": "upper", - "cType": "int", - "offset_bits": -1 + "name": "ngeoms", + "cType": "uint32_t", + "offset_bits": 192 + }, + { + "name": "maxgeoms", + "cType": "uint32_t", + "offset_bits": 224 } ] }, { - "name": "SpanSet", - "file": "meos.h", + "name": "PJconsts", + "file": "postgis_ext_defs.in.h", + "fields": [] + }, + { + "name": "LWPROJ", + "file": "postgis_ext_defs.in.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", - "offset_bits": -1 + "name": "pj", + "cType": "PJ *", + "offset_bits": 0 }, { - "name": "spansettype", - "cType": "uint8", - "offset_bits": -1 + "name": "pipeline_is_forward", + "cType": "_Bool", + "offset_bits": 64 }, { - "name": "spantype", - "cType": "uint8", - "offset_bits": -1 + "name": "source_is_latlong", + "cType": "uint8_t", + "offset_bits": 72 }, { - "name": "basetype", - "cType": "uint8", - "offset_bits": -1 + "name": "source_semi_major_metre", + "cType": "double", + "offset_bits": 128 }, { - "name": "padding", - "cType": "char", - "offset_bits": -1 - }, + "name": "source_semi_minor_metre", + "cType": "double", + "offset_bits": 192 + } + ] + }, + { + "name": "Interval", + "file": "postgres_ext_defs.in.h", + "fields": [ { - "name": "count", - "cType": "int32", - "offset_bits": -1 + "name": "time", + "cType": "TimeOffset", + "offset_bits": 0 }, { - "name": "maxcount", + "name": "day", "cType": "int32", - "offset_bits": -1 - }, - { - "name": "span", - "cType": "Span", - "offset_bits": -1 + "offset_bits": 64 }, { - "name": "elems", - "cType": "Span[1]", - "offset_bits": -1 + "name": "month", + "cType": "int32", + "offset_bits": 96 } ] }, { - "name": "TBox", - "file": "meos.h", + "name": "varlena", + "file": "postgres_ext_defs.in.h", "fields": [ { - "name": "period", - "cType": "Span", - "offset_bits": -1 - }, - { - "name": "span", - "cType": "Span", - "offset_bits": -1 + "name": "vl_len_", + "cType": "char[4]", + "offset_bits": 0 }, { - "name": "flags", - "cType": "int16", - "offset_bits": -1 + "name": "vl_dat", + "cType": "char[]", + "offset_bits": 32 } ] }, { - "name": "STBox", - "file": "meos.h", + "name": "cfp_elem", + "file": "trgeo_distance.h", "fields": [ { - "name": "period", - "cType": "Span", - "offset_bits": -1 + "name": "geom_1", + "cType": "LWGEOM *", + "offset_bits": 0 }, { - "name": "xmin", - "cType": "double", - "offset_bits": -1 + "name": "geom_2", + "cType": "LWGEOM *", + "offset_bits": 64 }, { - "name": "ymin", - "cType": "double", - "offset_bits": -1 + "name": "pose_1", + "cType": "Pose *", + "offset_bits": 128 }, { - "name": "zmin", - "cType": "double", - "offset_bits": -1 + "name": "pose_2", + "cType": "Pose *", + "offset_bits": 192 }, { - "name": "xmax", - "cType": "double", - "offset_bits": -1 + "name": "free_pose_1", + "cType": "_Bool", + "offset_bits": 256 }, { - "name": "ymax", - "cType": "double", - "offset_bits": -1 + "name": "free_pose_2", + "cType": "_Bool", + "offset_bits": 264 }, { - "name": "zmax", - "cType": "double", - "offset_bits": -1 + "name": "cf_1", + "cType": "uint32_t", + "offset_bits": 288 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": -1 + "name": "cf_2", + "cType": "uint32_t", + "offset_bits": 320 }, { - "name": "flags", - "cType": "int16", - "offset_bits": -1 + "name": "t", + "cType": "TimestampTz", + "offset_bits": 384 + }, + { + "name": "store", + "cType": "_Bool", + "offset_bits": 448 } ] }, { - "name": "Temporal", - "file": "meos.h", + "name": "cfp_array", + "file": "trgeo_distance.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "count", + "cType": "size_t", "offset_bits": 0 }, { - "name": "temptype", - "cType": "uint8", - "offset_bits": 32 - }, - { - "name": "subtype", - "cType": "uint8", - "offset_bits": 40 + "name": "size", + "cType": "size_t", + "offset_bits": 64 }, { - "name": "flags", - "cType": "int16", - "offset_bits": 48 + "name": "arr", + "cType": "cfp_elem *", + "offset_bits": 128 } ] }, { - "name": "TInstant", - "file": "meos.h", + "name": "tdist_elem", + "file": "trgeo_distance.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", - "offset_bits": -1 - }, - { - "name": "temptype", - "cType": "uint8", - "offset_bits": -1 + "name": "dist", + "cType": "double", + "offset_bits": 0 }, { - "name": "subtype", - "cType": "uint8", - "offset_bits": -1 - }, + "name": "t", + "cType": "TimestampTz", + "offset_bits": 64 + } + ] + }, + { + "name": "tdist_array", + "file": "trgeo_distance.h", + "fields": [ { - "name": "flags", - "cType": "int16", - "offset_bits": -1 + "name": "count", + "cType": "size_t", + "offset_bits": 0 }, { - "name": "t", - "cType": "TimestampTz", - "offset_bits": -1 + "name": "size", + "cType": "size_t", + "offset_bits": 64 }, { - "name": "value", - "cType": "int", - "offset_bits": -1 + "name": "arr", + "cType": "tdist_elem *", + "offset_bits": 128 } - ], - "meosType": "TPointInst" + ] }, { - "name": "TSequence", - "file": "meos.h", + "name": "SpanBound", + "file": "span.h", "fields": [ { - "name": "vl_len_", - "cType": "int32", + "name": "val", + "cType": "Datum", "offset_bits": -1 }, { - "name": "temptype", - "cType": "uint8", + "name": "inclusive", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "subtype", - "cType": "uint8", + "name": "lower", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "flags", - "cType": "int16", + "name": "spantype", + "cType": "uint8", "offset_bits": -1 }, { - "name": "count", - "cType": "int32", + "name": "basetype", + "cType": "uint8", "offset_bits": -1 - }, + } + ] + }, + { + "name": "LiftedFunctionInfo", + "file": "lifting.h", + "fields": [ { - "name": "maxcount", - "cType": "int32", + "name": "func", + "cType": "varfunc", "offset_bits": -1 }, { - "name": "bboxsize", - "cType": "int16", + "name": "numparam", + "cType": "int", "offset_bits": -1 }, { - "name": "padding", - "cType": "char[6]", + "name": "param", + "cType": "int", "offset_bits": -1 }, { - "name": "period", - "cType": "Span", - "offset_bits": -1 - } - ], - "meosType": "TPointSeq" - }, - { - "name": "TSequenceSet", - "file": "meos.h", - "fields": [ - { - "name": "vl_len_", - "cType": "int32", + "name": "argtype", + "cType": "MeosType[2]", "offset_bits": -1 }, { - "name": "temptype", - "cType": "uint8", + "name": "restype", + "cType": "MeosType", "offset_bits": -1 }, { - "name": "subtype", - "cType": "uint8", + "name": "reslinear", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "flags", - "cType": "int16", + "name": "invert", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "count", - "cType": "int32", + "name": "discont", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "totalcount", - "cType": "int32", + "name": "ever", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "maxcount", - "cType": "int32", + "name": "tpfn_unary", + "cType": "tpfunc_unary", "offset_bits": -1 }, { - "name": "bboxsize", - "cType": "int16", + "name": "cross_type", + "cType": "_Bool", "offset_bits": -1 }, { - "name": "padding", - "cType": "int16", + "name": "tpfn_base", + "cType": "tpfunc_base", "offset_bits": -1 }, { - "name": "period", - "cType": "Span", + "name": "tpfn_temp", + "cType": "tpfunc_temp", "offset_bits": -1 } ] }, { - "name": "Match", - "file": "meos.h", + "name": "SetUnnestState", + "file": "set.h", "fields": [ { - "name": "i", - "cType": "int", + "name": "done", + "cType": "_Bool", "offset_bits": 0 }, { - "name": "j", + "name": "i", "cType": "int", "offset_bits": 32 - } - ] - }, - { - "name": "SkipList", - "file": "meos.h", - "fields": [] - }, - { - "name": "MeosArray", - "file": "meos.h", - "fields": [] - }, - { - "name": "RTree", - "file": "meos.h", - "fields": [] - }, - { - "name": "Cbuffer", - "file": "meos_cbuffer.h", - "fields": [] - }, - { - "name": "SkipListElem", - "file": "meos_internal.h", - "fields": [ - { - "name": "key", - "cType": "void *", - "offset_bits": 0 }, { - "name": "value", - "cType": "void *", + "name": "count", + "cType": "int", "offset_bits": 64 }, { - "name": "height", - "cType": "int", + "name": "set", + "cType": "Set *", "offset_bits": 128 }, { - "name": "next", - "cType": "int[32]", - "offset_bits": 160 + "name": "values", + "cType": "Datum *", + "offset_bits": 192 } ] }, { - "name": "Npoint", - "file": "meos_npoint.h", + "name": "SimilarityPathState", + "file": "temporal_analytics.h", "fields": [ { - "name": "rid", - "cType": "int64", + "name": "done", + "cType": "_Bool", "offset_bits": 0 }, { - "name": "pos", - "cType": "double", - "offset_bits": 64 - } - ] - }, - { - "name": "Nsegment", - "file": "meos_npoint.h", - "fields": [ - { - "name": "rid", - "cType": "int64", - "offset_bits": 0 + "name": "i", + "cType": "int", + "offset_bits": 32 }, { - "name": "pos1", - "cType": "double", + "name": "size", + "cType": "int", "offset_bits": 64 }, { - "name": "pos2", - "cType": "double", + "name": "path", + "cType": "Match *", "offset_bits": 128 } ] }, { - "name": "Pose", - "file": "meos_pose.h", - "fields": [] - }, - { - "name": "AFFINE", - "file": "postgis_ext_defs.in.h", + "name": "RTreeNode", + "file": "temporal_rtree.h", "fields": [ { - "name": "afac", - "cType": "double", + "name": "bboxsize", + "cType": "size_t", "offset_bits": 0 }, { - "name": "bfac", - "cType": "double", + "name": "count", + "cType": "int", "offset_bits": 64 }, { - "name": "cfac", - "cType": "double", - "offset_bits": 128 - }, - { - "name": "dfac", - "cType": "double", - "offset_bits": 192 - }, - { - "name": "efac", - "cType": "double", - "offset_bits": 256 - }, - { - "name": "ffac", - "cType": "double", - "offset_bits": 320 - }, - { - "name": "gfac", - "cType": "double", - "offset_bits": 384 - }, - { - "name": "hfac", - "cType": "double", - "offset_bits": 448 - }, - { - "name": "ifac", - "cType": "double", - "offset_bits": 512 - }, - { - "name": "xoff", - "cType": "double", - "offset_bits": 576 - }, - { - "name": "yoff", - "cType": "double", - "offset_bits": 640 + "name": "node_type", + "cType": "RTreeNodeType", + "offset_bits": 96 }, { - "name": "zoff", - "cType": "double", - "offset_bits": 704 + "name": "boxes", + "cType": "char[]", + "offset_bits": 4224 } ] }, { - "name": "BOX3D", - "file": "postgis_ext_defs.in.h", + "name": "SpanBinState", + "file": "temporal_tile.h", "fields": [ { - "name": "xmin", - "cType": "double", - "offset_bits": 0 + "name": "done", + "cType": "_Bool", + "offset_bits": -1 }, { - "name": "ymin", - "cType": "double", - "offset_bits": 64 + "name": "basetype", + "cType": "uint8", + "offset_bits": -1 }, { - "name": "zmin", - "cType": "double", - "offset_bits": 128 + "name": "i", + "cType": "int", + "offset_bits": -1 }, { - "name": "xmax", - "cType": "double", - "offset_bits": 192 + "name": "size", + "cType": "Datum", + "offset_bits": -1 + }, + { + "name": "origin", + "cType": "Datum", + "offset_bits": -1 + }, + { + "name": "span", + "cType": "Span", + "offset_bits": -1 }, { - "name": "ymax", - "cType": "double", - "offset_bits": 256 + "name": "to_split", + "cType": "const void *", + "offset_bits": -1 }, { - "name": "zmax", - "cType": "double", - "offset_bits": 320 + "name": "value", + "cType": "Datum", + "offset_bits": -1 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 384 + "name": "nbins", + "cType": "int", + "offset_bits": -1 } ] }, { - "name": "GBOX", - "file": "postgis_ext_defs.in.h", + "name": "TboxGridState", + "file": "temporal_tile.h", "fields": [ { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 0 + "name": "done", + "cType": "_Bool", + "offset_bits": -1 }, { - "name": "xmin", - "cType": "double", - "offset_bits": 64 + "name": "i", + "cType": "int", + "offset_bits": -1 }, { - "name": "xmax", - "cType": "double", - "offset_bits": 128 + "name": "vsize", + "cType": "Datum", + "offset_bits": -1 }, { - "name": "ymin", - "cType": "double", - "offset_bits": 192 + "name": "tunits", + "cType": "int64", + "offset_bits": -1 }, { - "name": "ymax", - "cType": "double", - "offset_bits": 256 + "name": "box", + "cType": "TBox", + "offset_bits": -1 }, { - "name": "zmin", - "cType": "double", - "offset_bits": 320 + "name": "temp", + "cType": "const Temporal *", + "offset_bits": -1 }, { - "name": "zmax", - "cType": "double", - "offset_bits": 384 + "name": "value", + "cType": "Datum", + "offset_bits": -1 }, { - "name": "mmin", - "cType": "double", - "offset_bits": 448 + "name": "t", + "cType": "TimestampTz", + "offset_bits": -1 }, { - "name": "mmax", - "cType": "double", - "offset_bits": 512 - } - ] - }, - { - "name": "SPHEROID", - "file": "postgis_ext_defs.in.h", - "fields": [ - { - "name": "a", - "cType": "double", - "offset_bits": 0 + "name": "ntiles", + "cType": "int", + "offset_bits": -1 }, { - "name": "b", - "cType": "double", - "offset_bits": 64 + "name": "max_coords", + "cType": "int[2]", + "offset_bits": -1 }, { - "name": "f", - "cType": "double", - "offset_bits": 128 - }, + "name": "coords", + "cType": "int[2]", + "offset_bits": -1 + } + ] + } + ], + "enums": [ + { + "name": "tempSubtype", + "file": "meos.h", + "values": [ { - "name": "e", - "cType": "double", - "offset_bits": 192 + "name": "ANYTEMPSUBTYPE", + "value": 0 }, { - "name": "e_sq", - "cType": "double", - "offset_bits": 256 + "name": "TINSTANT", + "value": 1 }, { - "name": "radius", - "cType": "double", - "offset_bits": 320 + "name": "TSEQUENCE", + "value": 2 }, { - "name": "name", - "cType": "char[20]", - "offset_bits": 384 + "name": "TSEQUENCESET", + "value": 3 } ] }, { - "name": "POINT2D", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "interpType", + "file": "meos.h", + "values": [ { - "name": "x", - "cType": "double", - "offset_bits": 0 + "name": "INTERP_NONE", + "value": 0 }, { - "name": "y", - "cType": "double", - "offset_bits": 64 - } - ] - }, - { - "name": "POINT3DZ", - "file": "postgis_ext_defs.in.h", - "fields": [ - { - "name": "x", - "cType": "double", - "offset_bits": 0 + "name": "DISCRETE", + "value": 1 }, { - "name": "y", - "cType": "double", - "offset_bits": 64 + "name": "STEP", + "value": 2 }, { - "name": "z", - "cType": "double", - "offset_bits": 128 + "name": "LINEAR", + "value": 3 } ] }, { - "name": "POINT3D", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "RTreeSearchOp", + "file": "meos.h", + "values": [ { - "name": "x", - "cType": "double", - "offset_bits": 0 + "name": "RTREE_OVERLAPS", + "value": 0 }, { - "name": "y", - "cType": "double", - "offset_bits": 64 + "name": "RTREE_CONTAINS", + "value": 1 }, { - "name": "z", - "cType": "double", - "offset_bits": 128 + "name": "RTREE_CONTAINED_BY", + "value": 2 } ] }, { - "name": "POINT3DM", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "errorCode", + "file": "meos.h", + "values": [ { - "name": "x", - "cType": "double", - "offset_bits": 0 + "name": "MEOS_SUCCESS", + "value": 0 }, { - "name": "y", - "cType": "double", - "offset_bits": 64 + "name": "MEOS_ERR_INTERNAL_ERROR", + "value": 1 }, { - "name": "m", - "cType": "double", - "offset_bits": 128 - } - ] - }, - { - "name": "POINT4D", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "MEOS_ERR_INTERNAL_TYPE_ERROR", + "value": 2 + }, { - "name": "x", - "cType": "double", - "offset_bits": 0 + "name": "MEOS_ERR_VALUE_OUT_OF_RANGE", + "value": 3 }, { - "name": "y", - "cType": "double", - "offset_bits": 64 + "name": "MEOS_ERR_DIVISION_BY_ZERO", + "value": 4 }, { - "name": "z", - "cType": "double", - "offset_bits": 128 + "name": "MEOS_ERR_MEMORY_ALLOC_ERROR", + "value": 5 }, { - "name": "m", - "cType": "double", - "offset_bits": 192 - } - ] - }, - { - "name": "POINTARRAY", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "MEOS_ERR_AGGREGATION_ERROR", + "value": 6 + }, { - "name": "npoints", - "cType": "uint32_t", - "offset_bits": 0 + "name": "MEOS_ERR_DIRECTORY_ERROR", + "value": 7 }, { - "name": "maxpoints", - "cType": "uint32_t", - "offset_bits": 32 + "name": "MEOS_ERR_FILE_ERROR", + "value": 8 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 64 + "name": "MEOS_ERR_INVALID_ARG", + "value": 10 }, { - "name": "serialized_pointlist", - "cType": "uint8_t *", - "offset_bits": 128 - } - ] - }, - { - "name": "GSERIALIZED", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "MEOS_ERR_INVALID_ARG_TYPE", + "value": 11 + }, { - "name": "size", - "cType": "uint32_t", - "offset_bits": 0 + "name": "MEOS_ERR_INVALID_ARG_VALUE", + "value": 12 }, { - "name": "srid", - "cType": "uint8_t[3]", - "offset_bits": 32 + "name": "MEOS_ERR_FEATURE_NOT_SUPPORTED", + "value": 13 }, { - "name": "gflags", - "cType": "uint8_t", - "offset_bits": 56 + "name": "MEOS_ERR_MFJSON_INPUT", + "value": 20 }, { - "name": "data", - "cType": "uint8_t[1]", - "offset_bits": 64 - } - ] - }, - { - "name": "LWGEOM", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "MEOS_ERR_MFJSON_OUTPUT", + "value": 21 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "MEOS_ERR_TEXT_INPUT", + "value": 22 }, { - "name": "data", - "cType": "void *", - "offset_bits": 64 + "name": "MEOS_ERR_TEXT_OUTPUT", + "value": 23 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "MEOS_ERR_WKB_INPUT", + "value": 24 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "MEOS_ERR_WKB_OUTPUT", + "value": 25 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "MEOS_ERR_GEOJSON_INPUT", + "value": 26 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "MEOS_ERR_GEOJSON_OUTPUT", + "value": 27 } ] }, { - "name": "LWPOINT", - "file": "postgis_ext_defs.in.h", - "fields": [ - { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 - }, - { - "name": "point", - "cType": "POINTARRAY *", - "offset_bits": 64 - }, + "name": "spatialRel", + "file": "meos_geo.h", + "values": [ { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "INTERSECTS", + "value": 0 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "CONTAINS", + "value": 1 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "TOUCHES", + "value": 2 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "COVERS", + "value": 3 } ] }, { - "name": "LWLINE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "MeosType", + "file": "meos_catalog.h", + "values": [ { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_UNKNOWN", + "value": 0 }, { - "name": "points", - "cType": "POINTARRAY *", - "offset_bits": 64 + "name": "T_BOOL", + "value": 1 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_DATE", + "value": 2 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_DATEMULTIRANGE", + "value": 3 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_DATERANGE", + "value": 4 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 - } - ] - }, - { - "name": "LWTRIANGLE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_DATESET", + "value": 5 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_DATESPAN", + "value": 6 }, { - "name": "points", - "cType": "POINTARRAY *", - "offset_bits": 64 + "name": "T_DATESPANSET", + "value": 7 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_DOUBLE2", + "value": 8 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_DOUBLE3", + "value": 9 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_DOUBLE4", + "value": 10 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 - } - ] - }, - { - "name": "LWCIRCSTRING", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_FLOAT8", + "value": 11 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_FLOATSET", + "value": 12 }, { - "name": "points", - "cType": "POINTARRAY *", - "offset_bits": 64 + "name": "T_FLOATSPAN", + "value": 13 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_FLOATSPANSET", + "value": 14 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_INT4", + "value": 15 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_INT4MULTIRANGE", + "value": 16 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 - } - ] - }, - { - "name": "LWPOLY", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_INT4RANGE", + "value": 17 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_INTSET", + "value": 18 }, { - "name": "rings", - "cType": "POINTARRAY **", - "offset_bits": 64 + "name": "T_INTSPAN", + "value": 19 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_INTSPANSET", + "value": 20 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_INT8", + "value": 21 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_INT8MULTIRANGE", + "value": 52 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_INT8RANGE", + "value": 53 }, { - "name": "nrings", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_BIGINTSET", + "value": 22 }, { - "name": "maxrings", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWMPOINT", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_BIGINTSPAN", + "value": 23 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_BIGINTSPANSET", + "value": 24 }, { - "name": "geoms", - "cType": "LWPOINT **", - "offset_bits": 64 + "name": "T_STBOX", + "value": 25 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_TBOOL", + "value": 26 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_TBOX", + "value": 27 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_TDOUBLE2", + "value": 28 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_TDOUBLE3", + "value": 29 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_TDOUBLE4", + "value": 30 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWMLINE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_TEXT", + "value": 31 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_TEXTSET", + "value": 32 }, { - "name": "geoms", - "cType": "LWLINE **", - "offset_bits": 64 + "name": "T_TFLOAT", + "value": 33 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_TIMESTAMPTZ", + "value": 34 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_TINT", + "value": 35 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_TSTZMULTIRANGE", + "value": 36 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_TSTZRANGE", + "value": 37 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_TSTZSET", + "value": 38 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWMPOLY", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_TSTZSPAN", + "value": 39 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_TSTZSPANSET", + "value": 40 }, { - "name": "geoms", - "cType": "LWPOLY **", - "offset_bits": 64 + "name": "T_TTEXT", + "value": 41 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_GEOMETRY", + "value": 42 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_GEOMSET", + "value": 43 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_GEOGRAPHY", + "value": 44 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_GEOGSET", + "value": 45 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_TGEOMPOINT", + "value": 46 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWCOLLECTION", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_TGEOGPOINT", + "value": 47 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_NPOINT", + "value": 48 }, { - "name": "geoms", - "cType": "LWGEOM **", - "offset_bits": 64 + "name": "T_NPOINTSET", + "value": 49 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_NSEGMENT", + "value": 50 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_TNPOINT", + "value": 51 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_POSE", + "value": 54 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_POSESET", + "value": 55 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_TPOSE", + "value": 56 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWCOMPOUND", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_CBUFFER", + "value": 57 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_CBUFFERSET", + "value": 58 }, { - "name": "geoms", - "cType": "LWGEOM **", - "offset_bits": 64 + "name": "T_TCBUFFER", + "value": 59 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_TGEOMETRY", + "value": 60 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_TGEOGRAPHY", + "value": 61 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_TRGEOMETRY", + "value": 62 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_PCPOINT", + "value": 63 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_PCPOINTSET", + "value": 64 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWCURVEPOLY", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "T_TPCPOINT", + "value": 65 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "T_PCPATCH", + "value": 66 }, { - "name": "rings", - "cType": "LWGEOM **", - "offset_bits": 64 + "name": "T_PCPATCHSET", + "value": 67 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "T_TPCPATCH", + "value": 68 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "T_TPCBOX", + "value": 69 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "T_TBIGINT", + "value": 70 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "T_H3INDEX", + "value": 71 }, { - "name": "nrings", - "cType": "uint32_t", - "offset_bits": 192 + "name": "T_H3INDEXSET", + "value": 72 }, { - "name": "maxrings", - "cType": "uint32_t", - "offset_bits": 224 + "name": "T_TH3INDEX", + "value": 73 + }, + { + "name": "NUM_MEOS_TYPES", + "value": 74 } ] }, { - "name": "LWMCURVE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "meosOper", + "file": "meos_catalog.h", + "values": [ { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "UNKNOWN_OP", + "value": 0 }, { - "name": "geoms", - "cType": "LWGEOM **", - "offset_bits": 64 + "name": "EQ_OP", + "value": 1 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "NE_OP", + "value": 2 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "LT_OP", + "value": 3 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "LE_OP", + "value": 4 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "GT_OP", + "value": 5 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "GE_OP", + "value": 6 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWMSURFACE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "ADJACENT_OP", + "value": 7 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "UNION_OP", + "value": 8 }, { - "name": "geoms", - "cType": "LWGEOM **", - "offset_bits": 64 + "name": "MINUS_OP", + "value": 9 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "INTERSECT_OP", + "value": 10 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "OVERLAPS_OP", + "value": 11 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "CONTAINS_OP", + "value": 12 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "CONTAINED_OP", + "value": 13 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "SAME_OP", + "value": 14 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWPSURFACE", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "LEFT_OP", + "value": 15 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "OVERLEFT_OP", + "value": 16 }, { - "name": "geoms", - "cType": "LWPOLY **", - "offset_bits": 64 + "name": "RIGHT_OP", + "value": 17 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "OVERRIGHT_OP", + "value": 18 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "BELOW_OP", + "value": 19 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "OVERBELOW_OP", + "value": 20 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "ABOVE_OP", + "value": 21 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "OVERABOVE_OP", + "value": 22 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "LWTIN", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "FRONT_OP", + "value": 23 + }, { - "name": "bbox", - "cType": "GBOX *", - "offset_bits": 0 + "name": "OVERFRONT_OP", + "value": 24 }, { - "name": "geoms", - "cType": "LWTRIANGLE **", - "offset_bits": 64 + "name": "BACK_OP", + "value": 25 }, { - "name": "srid", - "cType": "int32_t", - "offset_bits": 128 + "name": "OVERBACK_OP", + "value": 26 }, { - "name": "flags", - "cType": "lwflags_t", - "offset_bits": 160 + "name": "BEFORE_OP", + "value": 27 }, { - "name": "type", - "cType": "uint8_t", - "offset_bits": 176 + "name": "OVERBEFORE_OP", + "value": 28 }, { - "name": "pad", - "cType": "char[1]", - "offset_bits": 184 + "name": "AFTER_OP", + "value": 29 }, { - "name": "ngeoms", - "cType": "uint32_t", - "offset_bits": 192 + "name": "OVERAFTER_OP", + "value": 30 }, { - "name": "maxgeoms", - "cType": "uint32_t", - "offset_bits": 224 - } - ] - }, - { - "name": "PJconsts", - "file": "postgis_ext_defs.in.h", - "fields": [] - }, - { - "name": "LWPROJ", - "file": "postgis_ext_defs.in.h", - "fields": [ + "name": "EVEREQ_OP", + "value": 31 + }, { - "name": "pj", - "cType": "PJ *", - "offset_bits": 0 + "name": "EVERNE_OP", + "value": 32 }, { - "name": "pipeline_is_forward", - "cType": "_Bool", - "offset_bits": 64 + "name": "EVERLT_OP", + "value": 33 }, { - "name": "source_is_latlong", - "cType": "uint8_t", - "offset_bits": 72 + "name": "EVERLE_OP", + "value": 34 }, { - "name": "source_semi_major_metre", - "cType": "double", - "offset_bits": 128 + "name": "EVERGT_OP", + "value": 35 }, { - "name": "source_semi_minor_metre", - "cType": "double", - "offset_bits": 192 - } - ] - }, - { - "name": "Interval", - "file": "postgres_ext_defs.in.h", - "fields": [ + "name": "EVERGE_OP", + "value": 36 + }, { - "name": "time", - "cType": "TimeOffset", - "offset_bits": 0 + "name": "ALWAYSEQ_OP", + "value": 37 }, { - "name": "day", - "cType": "int32", - "offset_bits": 64 + "name": "ALWAYSNE_OP", + "value": 38 }, { - "name": "month", - "cType": "int32", - "offset_bits": 96 + "name": "ALWAYSLT_OP", + "value": 39 + }, + { + "name": "ALWAYSLE_OP", + "value": 40 + }, + { + "name": "ALWAYSGT_OP", + "value": 41 + }, + { + "name": "ALWAYSGE_OP", + "value": 42 } ] }, { - "name": "varlena", - "file": "postgres_ext_defs.in.h", - "fields": [ + "name": "SkipListType", + "file": "meos_internal.h", + "values": [ { - "name": "vl_len_", - "cType": "char[4]", - "offset_bits": 0 + "name": "SKIPLIST_TEMPORAL", + "value": 0 }, { - "name": "vl_dat", - "cType": "char[]", - "offset_bits": 32 + "name": "SKIPLIST_KEYVALUE", + "value": 1 } ] - } - ], - "enums": [ + }, { - "name": "tempSubtype", - "file": "meos.h", + "name": "SyncMode", + "file": "temporal.h", "values": [ { - "name": "ANYTEMPSUBTYPE", + "name": "SYNCHRONIZE_NOCROSS", "value": 0 }, { - "name": "TINSTANT", + "name": "SYNCHRONIZE_CROSS", "value": 1 - }, - { - "name": "TSEQUENCE", - "value": 2 - }, - { - "name": "TSEQUENCESET", - "value": 3 } ] }, { - "name": "interpType", - "file": "meos.h", + "name": "TemporalFamily", + "file": "temporal.h", "values": [ { - "name": "INTERP_NONE", + "name": "TEMPORALTYPE", "value": 0 }, { - "name": "DISCRETE", + "name": "TNUMBERTYPE", "value": 1 }, { - "name": "STEP", + "name": "TSPATIALTYPE", "value": 2 - }, - { - "name": "LINEAR", - "value": 3 } ] }, { - "name": "RTreeSearchOp", - "file": "meos.h", + "name": "SetOper", + "file": "temporal.h", "values": [ { - "name": "RTREE_OVERLAPS", + "name": "UNION", "value": 0 }, { - "name": "RTREE_CONTAINS", + "name": "INTER", "value": 1 }, { - "name": "RTREE_CONTAINED_BY", + "name": "MINUS", "value": 2 } ] }, { - "name": "errorCode", - "file": "meos.h", + "name": "CompOper", + "file": "temporal.h", "values": [ { - "name": "MEOS_SUCCESS", + "name": "EQ", "value": 0 }, { - "name": "MEOS_ERR_INTERNAL_ERROR", + "name": "NE", "value": 1 }, { - "name": "MEOS_ERR_INTERNAL_TYPE_ERROR", + "name": "LT", "value": 2 }, { - "name": "MEOS_ERR_VALUE_OUT_OF_RANGE", + "name": "LE", "value": 3 }, { - "name": "MEOS_ERR_DIVISION_BY_ZERO", + "name": "GT", "value": 4 }, { - "name": "MEOS_ERR_MEMORY_ALLOC_ERROR", + "name": "GE", "value": 5 - }, - { - "name": "MEOS_ERR_AGGREGATION_ERROR", - "value": 6 - }, - { - "name": "MEOS_ERR_DIRECTORY_ERROR", - "value": 7 - }, - { - "name": "MEOS_ERR_FILE_ERROR", - "value": 8 - }, - { - "name": "MEOS_ERR_INVALID_ARG", - "value": 10 - }, - { - "name": "MEOS_ERR_INVALID_ARG_TYPE", - "value": 11 - }, - { - "name": "MEOS_ERR_INVALID_ARG_VALUE", - "value": 12 - }, - { - "name": "MEOS_ERR_FEATURE_NOT_SUPPORTED", - "value": 13 - }, - { - "name": "MEOS_ERR_MFJSON_INPUT", - "value": 20 - }, - { - "name": "MEOS_ERR_MFJSON_OUTPUT", - "value": 21 - }, - { - "name": "MEOS_ERR_TEXT_INPUT", - "value": 22 - }, - { - "name": "MEOS_ERR_TEXT_OUTPUT", - "value": 23 - }, - { - "name": "MEOS_ERR_WKB_INPUT", - "value": 24 - }, + } + ] + }, + { + "name": "MEOS_WKB_TSUBTYPE", + "file": "temporal.h", + "values": [ { - "name": "MEOS_ERR_WKB_OUTPUT", - "value": 25 + "name": "MEOS_WKB_TINSTANT", + "value": 1 }, { - "name": "MEOS_ERR_GEOJSON_INPUT", - "value": 26 + "name": "MEOS_WKB_TSEQUENCE", + "value": 2 }, { - "name": "MEOS_ERR_GEOJSON_OUTPUT", - "value": 27 + "name": "MEOS_WKB_TSEQUENCESET", + "value": 3 } ] }, @@ -60218,38 +64340,74 @@ ] }, { - "name": "spatialRel", - "file": "meos_geo.h", + "name": "GeoPoseClass", + "file": "pose_geopose.h", "values": [ { - "name": "INTERSECTS", + "name": "GEOPOSE_BASIC_QUATERNION", "value": 0 }, { - "name": "CONTAINS", + "name": "GEOPOSE_BASIC_YPR", "value": 1 + } + ] + }, + { + "name": "SimFunc", + "file": "temporal_analytics.h", + "values": [ + { + "name": "FRECHET", + "value": 0 }, { - "name": "TOUCHES", + "name": "DYNTIMEWARP", + "value": 1 + }, + { + "name": "HAUSDORFF", "value": 2 + } + ] + }, + { + "name": "RTreeNodeType", + "file": "temporal_rtree.h", + "values": [ + { + "name": "RTREE_LEAF", + "value": 0 }, { - "name": "COVERS", - "value": 3 + "name": "RTREE_INNER", + "value": 1 } ] }, { - "name": "SkipListType", - "file": "meos_internal.h", + "name": "TArithmetic", + "file": "tnumber_mathfuncs.h", "values": [ { - "name": "TEMPORAL", + "name": "ADD", "value": 0 }, { - "name": "KEYVALUE", + "name": "SUB", "value": 1 + }, + { + "name": "MUL", + "value": 2 + }, + { + "name": "DIV", + "value": 3 + }, + { + "name": "DIST", + "value": 4 } ] } From a639ea78389edf68707e238712b00e29a9ef727d Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Wed, 3 Jun 2026 09:23:49 +0200 Subject: [PATCH 05/14] Add the shared org.mobilitydb.meos MEOS facade and its generator Hoists the tier-aware MeosOps* facade (62 classes) into JMEOS so every JVM binding inherits the one canonical Java idiom from the shared jar instead of duplicating it per engine. The facade forwards to functions.GeneratedFunctions under a package-private MeosOpsRuntime probe gated by the canonical -Dmeos.enabled property; javadoc is engine-neutral. Relocates the maintained generator (regen_facade_from_jar + the gap / sql / tbigint / h3 emitters + parity_audit + meos-ref) under jmeos-core/tools so the facade stays regenerated, not hand-edited; regeneration is idempotent against the pin jar. --- .../org/mobilitydb/meos/MeosOpsBigintSet.java | 155 + .../mobilitydb/meos/MeosOpsBigintSpan.java | 169 + .../mobilitydb/meos/MeosOpsBigintSpanSet.java | 141 + .../mobilitydb/meos/MeosOpsCbufferSet.java | 141 + .../org/mobilitydb/meos/MeosOpsDateSet.java | 169 + .../org/mobilitydb/meos/MeosOpsDateSpan.java | 169 + .../mobilitydb/meos/MeosOpsDateSpanSet.java | 197 + .../org/mobilitydb/meos/MeosOpsFloatSet.java | 225 + .../org/mobilitydb/meos/MeosOpsFloatSpan.java | 253 + .../mobilitydb/meos/MeosOpsFloatSpanSet.java | 225 + .../mobilitydb/meos/MeosOpsFreeCbuffer.java | 1982 ++++ .../org/mobilitydb/meos/MeosOpsFreeCore.java | 9744 +++++++++++++++++ .../org/mobilitydb/meos/MeosOpsFreeGeo.java | 3438 ++++++ .../org/mobilitydb/meos/MeosOpsFreeH3.java | 265 + .../mobilitydb/meos/MeosOpsFreeNpoint.java | 1098 ++ .../org/mobilitydb/meos/MeosOpsFreePose.java | 1020 ++ .../org/mobilitydb/meos/MeosOpsFreeRgeo.java | 448 + .../org/mobilitydb/meos/MeosOpsGeogSet.java | 57 + .../org/mobilitydb/meos/MeosOpsGeomSet.java | 127 + .../org/mobilitydb/meos/MeosOpsIntSet.java | 169 + .../org/mobilitydb/meos/MeosOpsIntSpan.java | 183 + .../mobilitydb/meos/MeosOpsIntSpanSet.java | 155 + .../org/mobilitydb/meos/MeosOpsNpointSet.java | 155 + .../mobilitydb/meos/MeosOpsParityGaps.java | 1459 +++ .../org/mobilitydb/meos/MeosOpsPoseSet.java | 141 + .../org/mobilitydb/meos/MeosOpsRuntime.java | 54 + .../org/mobilitydb/meos/MeosOpsSTBox.java | 799 ++ .../java/org/mobilitydb/meos/MeosOpsSet.java | 393 + .../java/org/mobilitydb/meos/MeosOpsSpan.java | 323 + .../org/mobilitydb/meos/MeosOpsSpanSet.java | 463 + .../mobilitydb/meos/MeosOpsSqlSurface.java | 40 + .../org/mobilitydb/meos/MeosOpsTBigint.java | 535 + .../org/mobilitydb/meos/MeosOpsTBool.java | 253 + .../org/mobilitydb/meos/MeosOpsTBoolInst.java | 57 + .../java/org/mobilitydb/meos/MeosOpsTBox.java | 505 + .../org/mobilitydb/meos/MeosOpsTCbuffer.java | 239 + .../org/mobilitydb/meos/MeosOpsTFloat.java | 547 + .../mobilitydb/meos/MeosOpsTFloatInst.java | 57 + .../java/org/mobilitydb/meos/MeosOpsTGeo.java | 379 + .../mobilitydb/meos/MeosOpsTGeogPoint.java | 85 + .../mobilitydb/meos/MeosOpsTGeography.java | 99 + .../mobilitydb/meos/MeosOpsTGeomPoint.java | 99 + .../org/mobilitydb/meos/MeosOpsTGeometry.java | 113 + .../java/org/mobilitydb/meos/MeosOpsTInt.java | 449 + .../org/mobilitydb/meos/MeosOpsTIntInst.java | 57 + .../org/mobilitydb/meos/MeosOpsTNpoint.java | 337 + .../mobilitydb/meos/MeosOpsTNpointInst.java | 57 + .../org/mobilitydb/meos/MeosOpsTNumber.java | 365 + .../org/mobilitydb/meos/MeosOpsTPoint.java | 379 + .../org/mobilitydb/meos/MeosOpsTPose.java | 281 + .../mobilitydb/meos/MeosOpsTRGeometry.java | 547 + .../meos/MeosOpsTRGeometryInst.java | 57 + .../mobilitydb/meos/MeosOpsTSequenceSet.java | 57 + .../org/mobilitydb/meos/MeosOpsTSpatial.java | 169 + .../org/mobilitydb/meos/MeosOpsTText.java | 295 + .../org/mobilitydb/meos/MeosOpsTTextInst.java | 57 + .../org/mobilitydb/meos/MeosOpsTemporal.java | 1401 +++ .../org/mobilitydb/meos/MeosOpsTextSet.java | 183 + .../org/mobilitydb/meos/MeosOpsTh3index.java | 418 + .../org/mobilitydb/meos/MeosOpsTstzSet.java | 211 + .../org/mobilitydb/meos/MeosOpsTstzSpan.java | 225 + .../mobilitydb/meos/MeosOpsTstzSpanSet.java | 267 + jmeos-core/tools/codegen/README.md | 106 + jmeos-core/tools/codegen/emit_h3_facade.py | 107 + .../tools/codegen/emit_tbigint_facade.py | 97 + .../tools/codegen/regen_facade_from_jar.py | 78 + jmeos-core/tools/parity/emit_gap_methods.py | 122 + jmeos-core/tools/parity/emit_sql_surface.py | 143 + jmeos-core/tools/parity/meos-ref/PIN.txt | 1 + .../meos-ref/meos/include/cbuffer/cbuffer.h | 136 + .../include/cbuffer/doxygen_meos_cbuffer.h | 156 + .../cbuffer/doxygen_meos_internal_cbuffer.h | 132 + .../meos-ref/meos/include/cbuffer/tcbuffer.h | 74 + .../meos/include/cbuffer/tcbuffer_boxops.h | 59 + .../include/cbuffer/tcbuffer_spatialfuncs.h | 64 + .../include/cbuffer/tcbuffer_spatialrels.h | 107 + .../cbuffer/tcbuffer_tempspatialrels.h | 54 + .../meos/include/geo/doxygen_meos_geo.h | 252 + .../include/geo/doxygen_meos_internal_geo.h | 236 + .../meos/include/geo/meos_transform.h | 66 + .../meos-ref/meos/include/geo/postgis_funcs.h | 85 + .../parity/meos-ref/meos/include/geo/stbox.h | 64 + .../meos-ref/meos/include/geo/stbox_index.h | 54 + .../parity/meos-ref/meos/include/geo/tgeo.h | 65 + .../meos-ref/meos/include/geo/tgeo_aggfuncs.h | 71 + .../meos-ref/meos/include/geo/tgeo_distance.h | 64 + .../meos-ref/meos/include/geo/tgeo_restrict.h | 55 + .../meos/include/geo/tgeo_spatialfuncs.h | 208 + .../meos/include/geo/tgeo_spatialrels.h | 127 + .../meos/include/geo/tgeo_tempspatialrels.h | 79 + .../meos-ref/meos/include/geo/tgeo_tile.h | 112 + .../meos/include/geo/tpoint_datagen.h | 49 + .../meos-ref/meos/include/geo/tspatial.h | 58 + .../meos/include/geo/tspatial_boxops.h | 73 + .../meos/include/geo/tspatial_parser.h | 66 + .../tools/parity/meos-ref/meos/include/meos.h | 1963 ++++ .../meos-ref/meos/include/meos_cbuffer.h | 392 + .../parity/meos-ref/meos/include/meos_geo.h | 900 ++ .../parity/meos-ref/meos/include/meos_h3.h | 197 + .../meos-ref/meos/include/meos_internal.h | 1405 +++ .../meos-ref/meos/include/meos_internal_geo.h | 303 + .../meos-ref/meos/include/meos_npoint.h | 330 + .../parity/meos-ref/meos/include/meos_pose.h | 305 + .../parity/meos-ref/meos/include/meos_rgeo.h | 206 + .../parity/meos-ref/meos/include/meos_tls.h | 60 + .../npoint/doxygen_meos_internal_npoint.h | 116 + .../meos/include/npoint/doxygen_meos_npoint.h | 136 + .../meos-ref/meos/include/npoint/tnpoint.h | 153 + .../meos/include/npoint/tnpoint_boxops.h | 60 + .../meos/include/npoint/tnpoint_distance.h | 48 + .../meos/include/npoint/tnpoint_parser.h | 47 + .../meos/include/npoint/tnpoint_routeops.h | 79 + .../include/npoint/tnpoint_spatialfuncs.h | 61 + .../include/pose/doxygen_meos_internal_pose.h | 124 + .../meos/include/pose/doxygen_meos_pose.h | 136 + .../parity/meos-ref/meos/include/pose/pose.h | 118 + .../parity/meos-ref/meos/include/pose/tpose.h | 61 + .../meos-ref/meos/include/pose/tpose_boxops.h | 54 + .../meos/include/pose/tpose_spatialfuncs.h | 57 + .../meos/include/postgis_ext_defs.in.h | 420 + .../meos-ref/meos/include/postgres_int_defs.h | 3 + .../include/rgeo/doxygen_meos_internal_rgeo.h | 60 + .../meos/include/rgeo/doxygen_meos_rgeo.h | 64 + .../parity/meos-ref/meos/include/rgeo/trgeo.h | 88 + .../meos-ref/meos/include/rgeo/trgeo_all.h | 46 + .../meos-ref/meos/include/rgeo/trgeo_boxops.h | 60 + .../meos/include/rgeo/trgeo_distance.h | 106 + .../meos-ref/meos/include/rgeo/trgeo_inst.h | 64 + .../meos-ref/meos/include/rgeo/trgeo_parser.h | 49 + .../meos-ref/meos/include/rgeo/trgeo_seq.h | 77 + .../meos-ref/meos/include/rgeo/trgeo_seqset.h | 74 + .../meos/include/rgeo/trgeo_spatialrels.h | 59 + .../meos-ref/meos/include/rgeo/trgeo_utils.h | 52 + .../meos-ref/meos/include/rgeo/trgeo_vclip.h | 74 + .../meos-ref/meos/include/temporal/doublen.h | 109 + .../meos/include/temporal/doxygen_meos.h | 341 + .../include/temporal/doxygen_meos_internal.h | 217 + .../meos-ref/meos/include/temporal/lifting.h | 112 + .../meos/include/temporal/meos_catalog.h | 311 + .../meos/include/temporal/postgres_types.h | 114 + .../meos-ref/meos/include/temporal/set.h | 95 + .../meos-ref/meos/include/temporal/skiplist.h | 62 + .../meos-ref/meos/include/temporal/span.h | 117 + .../meos/include/temporal/span_index.h | 56 + .../meos-ref/meos/include/temporal/spanset.h | 58 + .../meos-ref/meos/include/temporal/stratnum.h | 105 + .../meos/include/temporal/tbool_ops.h | 55 + .../meos-ref/meos/include/temporal/tbox.h | 67 + .../meos/include/temporal/tbox_index.h | 54 + .../meos-ref/meos/include/temporal/temporal.h | 444 + .../meos/include/temporal/temporal_aggfuncs.h | 102 + .../include/temporal/temporal_analytics.h | 67 + .../meos/include/temporal/temporal_boxops.h | 82 + .../meos/include/temporal/temporal_compops.h | 64 + .../meos/include/temporal/temporal_restrict.h | 121 + .../meos/include/temporal/temporal_rtree.h | 106 + .../meos/include/temporal/temporal_tile.h | 110 + .../include/temporal/temporal_waggfuncs.h | 57 + .../meos-ref/meos/include/temporal/tinstant.h | 75 + .../meos/include/temporal/tnumber_mathfuncs.h | 72 + .../meos/include/temporal/tsequence.h | 152 + .../meos/include/temporal/tsequenceset.h | 87 + .../meos/include/temporal/ttext_funcs.h | 59 + .../meos/include/temporal/type_inout.h | 75 + .../meos/include/temporal/type_parser.h | 77 + .../meos/include/temporal/type_util.h | 120 + .../meos-ref/mobilitydb/sql/CMakeLists.txt | 101 + .../mobilitydb/sql/cbuffer/150_cbuffer.in.sql | 313 + .../sql/cbuffer/151_cbufferset.in.sql | 514 + .../sql/cbuffer/152_tcbuffer.in.sql | 715 ++ .../sql/cbuffer/154_tcbuffer_compops.in.sql | 248 + .../cbuffer/155_tcbuffer_spatialfuncs.in.sql | 104 + .../sql/cbuffer/158_tcbuffer_topops.in.sql | 379 + .../sql/cbuffer/159_tcbuffer_posops.in.sql | 487 + .../sql/cbuffer/160_tcbuffer_distance.in.sql | 279 + .../sql/cbuffer/161_tcbuffer_aggfuncs.in.sql | 155 + .../cbuffer/162_tcbuffer_spatialrels.in.sql | 364 + .../164_tcbuffer_tempspatialrels.in.sql | 186 + .../sql/cbuffer/166_tcbuffer_indexes.in.sql | 266 + .../mobilitydb/sql/cbuffer/CMakeLists.txt | 23 + .../mobilitydb/sql/geo/050_geoset.in.sql | 944 ++ .../mobilitydb/sql/geo/051_stbox.in.sql | 763 ++ .../mobilitydb/sql/geo/052_tgeo.in.sql | 1081 ++ .../mobilitydb/sql/geo/052_tpoint.in.sql | 1082 ++ .../mobilitydb/sql/geo/053_tgeo_inout.in.sql | 172 + .../sql/geo/053_tpoint_inout.in.sql | 190 + .../sql/geo/054_tgeo_compops.in.sql | 457 + .../sql/geo/054_tpoint_compops.in.sql | 448 + .../sql/geo/056_tgeo_spatialfuncs.in.sql | 182 + .../sql/geo/056_tpoint_spatialfuncs.in.sql | 354 + .../mobilitydb/sql/geo/058_tgeo_tile.in.sql | 141 + .../mobilitydb/sql/geo/058_tpoint_tile.in.sql | 280 + .../mobilitydb/sql/geo/060_tgeo_boxops.in.sql | 710 ++ .../sql/geo/060_tpoint_boxops.in.sql | 746 ++ .../mobilitydb/sql/geo/062_tgeo_posops.in.sql | 821 ++ .../sql/geo/062_tpoint_posops.in.sql | 821 ++ .../sql/geo/064_tgeo_distance.in.sql | 330 + .../sql/geo/064_tpoint_distance.in.sql | 294 + .../sql/geo/066_tpoint_similarity.in.sql | 88 + .../sql/geo/068_tgeo_aggfuncs.in.sql | 273 + .../sql/geo/068_tpoint_aggfuncs.in.sql | 297 + .../sql/geo/070_tgeo_spatialrels.in.sql | 411 + .../sql/geo/070_tpoint_spatialrels.in.sql | 341 + .../sql/geo/072_tgeo_tempspatialrels.in.sql | 148 + .../sql/geo/072_tpoint_tempspatialrels.in.sql | 118 + .../mobilitydb/sql/geo/073_tgeo_gist.in.sql | 211 + .../mobilitydb/sql/geo/073_tpoint_gist.in.sql | 276 + .../mobilitydb/sql/geo/074_tgeo_spgist.in.sql | 352 + .../sql/geo/074_tpoint_spgist.in.sql | 476 + .../sql/geo/076_tgeo_analytics.in.sql | 149 + .../sql/geo/076_tpoint_analytics.in.sql | 208 + .../sql/geo/078_tpoint_datagen.in.sql | 40 + .../mobilitydb/sql/geo/CMakeLists.txt | 47 + .../mobilitydb/sql/mobilitydb.in.control | 5 + .../mobilitydb/sql/npoint/081_npoint.in.sql | 424 + .../sql/npoint/082_npointset.in.sql | 507 + .../mobilitydb/sql/npoint/083_tnpoint.in.sql | 664 ++ .../sql/npoint/085_tnpoint_compops.in.sql | 233 + .../npoint/087_tnpoint_spatialfuncs.in.sql | 148 + .../sql/npoint/089_tnpoint_topops.in.sql | 385 + .../sql/npoint/090_tnpoint_posops.in.sql | 487 + .../sql/npoint/091_tnpoint_routeops.in.sql | 267 + .../sql/npoint/092_tnpoint_gin.in.sql | 80 + .../sql/npoint/093_tnpoint_distance.in.sql | 187 + .../sql/npoint/095_tnpoint_aggfuncs.in.sql | 171 + .../sql/npoint/098_tnpoint_indexes.in.sql | 267 + .../mobilitydb/sql/npoint/CMakeLists.txt | 24 + .../mobilitydb/sql/pose/100_pose.in.sql | 346 + .../mobilitydb/sql/pose/101_poseset.in.sql | 529 + .../mobilitydb/sql/pose/102_tpose.in.sql | 703 ++ .../sql/pose/104_tpose_compops.in.sql | 248 + .../sql/pose/105_tpose_spatialfuncs.in.sql | 84 + .../sql/pose/108_tpose_topops.in.sql | 379 + .../sql/pose/109_tpose_posops.in.sql | 601 + .../sql/pose/111_tpose_aggfuncs.in.sql | 155 + .../sql/pose/113_tpose_distance.in.sql | 218 + .../sql/pose/114_tpose_indexes.in.sql | 266 + .../mobilitydb/sql/pose/CMakeLists.txt | 20 + .../mobilitydb/sql/rgeo/122_trgeo.in.sql | 704 ++ .../sql/rgeo/124_trgeo_compops.in.sql | 247 + .../sql/rgeo/125_trgeo_spatialfuncs.in.sql | 84 + .../sql/rgeo/128_trgeo_topops.in.sql | 345 + .../sql/rgeo/129_trgeo_posops.in.sql | 487 + .../sql/rgeo/131_trgeo_aggfuncs.in.sql | 155 + .../sql/rgeo/133_trgeo_distance.in.sql | 200 + .../sql/rgeo/133_trgeo_vclip.in.sql | 69 + .../sql/rgeo/134_trgeo_indexes.in.sql | 266 + .../mobilitydb/sql/rgeo/CMakeLists.txt | 20 + .../mobilitydb/sql/temporal/001_set.in.sql | 1446 +++ .../sql/temporal/002_set_ops.in.sql | 1720 +++ .../mobilitydb/sql/temporal/003_span.in.sql | 1233 +++ .../sql/temporal/005_span_ops.in.sql | 1694 +++ .../sql/temporal/007_spanset.in.sql | 1364 +++ .../sql/temporal/009_spanset_ops.in.sql | 2829 +++++ .../sql/temporal/011_span_indexes.in.sql | 889 ++ .../sql/temporal/012_spanset_indexes.in.sql | 789 ++ .../sql/temporal/013_set_indexes.in.sql | 774 ++ .../sql/temporal/015_span_aggfuncs.in.sql | 438 + .../sql/temporal/019_geo_constructors.in.sql | 70 + .../mobilitydb/sql/temporal/021_tbox.in.sql | 625 ++ .../sql/temporal/022_temporal.in.sql | 2188 ++++ .../sql/temporal/023_temporal_inout.in.sql | 190 + .../sql/temporal/025_temporal_tile.in.sql | 316 + .../sql/temporal/026_tnumber_mathfuncs.in.sql | 424 + .../sql/temporal/028_tbool_boolops.in.sql | 124 + .../sql/temporal/029_ttext_textfuncs.in.sql | 84 + .../sql/temporal/030_temporal_compops.in.sql | 2026 ++++ .../sql/temporal/032_temporal_boxops.in.sql | 1246 +++ .../sql/temporal/034_temporal_posops.in.sql | 1248 +++ .../sql/temporal/036_tnumber_distance.in.sql | 242 + .../temporal/038_temporal_similarity.in.sql | 89 + .../sql/temporal/040_temporal_aggfuncs.in.sql | 730 ++ .../temporal/042_temporal_waggfuncs.in.sql | 173 + .../sql/temporal/043_temporal_gist.in.sql | 392 + .../sql/temporal/044_temporal_spgist.in.sql | 654 ++ .../temporal/046_temporal_analytics.in.sql | 57 + .../sql/temporal/999_oid_cache.in.sql | 50 + .../mobilitydb/sql/temporal/CMakeLists.txt | 39 + jmeos-core/tools/parity/parity_audit.py | 234 + 279 files changed, 100444 insertions(+) create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpanSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsCbufferSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpanSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpanSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCbuffer.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCore.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeGeo.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeH3.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeNpoint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreePose.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeRgeo.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeogSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeomSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpanSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsNpointSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsParityGaps.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsPoseSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsRuntime.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSTBox.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpanSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSqlSurface.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBigint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBool.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBoolInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBox.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTCbuffer.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloat.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloatInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeo.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeogPoint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeography.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeomPoint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeometry.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTInt.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTIntInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpoint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpointInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNumber.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPoint.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPose.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometry.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometryInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSequenceSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSpatial.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTText.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTTextInst.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTemporal.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTextSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTh3index.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSet.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpan.java create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpanSet.java create mode 100644 jmeos-core/tools/codegen/README.md create mode 100644 jmeos-core/tools/codegen/emit_h3_facade.py create mode 100644 jmeos-core/tools/codegen/emit_tbigint_facade.py create mode 100644 jmeos-core/tools/codegen/regen_facade_from_jar.py create mode 100644 jmeos-core/tools/parity/emit_gap_methods.py create mode 100644 jmeos-core/tools/parity/emit_sql_surface.py create mode 100644 jmeos-core/tools/parity/meos-ref/PIN.txt create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/cbuffer.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_cbuffer.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_internal_cbuffer.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialrels.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_tempspatialrels.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_geo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_internal_geo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/meos_transform.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/postgis_funcs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox_index.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_aggfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_distance.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_restrict.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialrels.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tempspatialrels.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tile.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tpoint_datagen.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_parser.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_cbuffer.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_geo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_h3.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_internal.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_internal_geo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_npoint.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_pose.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_rgeo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/meos_tls.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_internal_npoint.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_npoint.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_distance.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_parser.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_routeops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_spatialfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_internal_pose.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_pose.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/pose.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_spatialfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/postgis_ext_defs.in.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/postgres_int_defs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_internal_rgeo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_rgeo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_all.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_distance.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_inst.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_parser.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seq.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seqset.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_spatialrels.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_utils.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_vclip.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/doublen.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos_internal.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/lifting.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/meos_catalog.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/postgres_types.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/set.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/skiplist.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/span.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/span_index.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/spanset.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/stratnum.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbool_ops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox_index.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_aggfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_analytics.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_boxops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_compops.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_restrict.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_rtree.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_tile.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_waggfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tinstant.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tnumber_mathfuncs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequence.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequenceset.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/ttext_funcs.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_inout.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_parser.h create mode 100644 jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_util.h create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/150_cbuffer.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/151_cbufferset.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/152_tcbuffer.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/154_tcbuffer_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/155_tcbuffer_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/158_tcbuffer_topops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/159_tcbuffer_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/160_tcbuffer_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/161_tcbuffer_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/162_tcbuffer_spatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/164_tcbuffer_tempspatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/166_tcbuffer_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/050_geoset.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/051_stbox.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tgeo.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tpoint.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tgeo_inout.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tpoint_inout.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tgeo_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tpoint_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tgeo_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tpoint_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tgeo_tile.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tpoint_tile.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tgeo_boxops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tpoint_boxops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tgeo_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tpoint_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tgeo_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tpoint_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/066_tpoint_similarity.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tgeo_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tpoint_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tgeo_spatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tpoint_spatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tgeo_tempspatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tpoint_tempspatialrels.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tgeo_gist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tpoint_gist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tgeo_spgist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tpoint_spgist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tgeo_analytics.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tpoint_analytics.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/078_tpoint_datagen.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/mobilitydb.in.control create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/081_npoint.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/082_npointset.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/083_tnpoint.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/085_tnpoint_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/087_tnpoint_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/089_tnpoint_topops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/090_tnpoint_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/091_tnpoint_routeops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/092_tnpoint_gin.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/093_tnpoint_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/095_tnpoint_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/098_tnpoint_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/100_pose.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/101_poseset.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/102_tpose.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/104_tpose_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/105_tpose_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/108_tpose_topops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/109_tpose_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/111_tpose_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/113_tpose_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/114_tpose_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/122_trgeo.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/124_trgeo_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/125_trgeo_spatialfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/128_trgeo_topops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/129_trgeo_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/131_trgeo_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_vclip.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/134_trgeo_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/001_set.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/002_set_ops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/003_span.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/005_span_ops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/007_spanset.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/009_spanset_ops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/011_span_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/012_spanset_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/013_set_indexes.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/015_span_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/019_geo_constructors.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/021_tbox.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/022_temporal.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/023_temporal_inout.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/025_temporal_tile.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/026_tnumber_mathfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/028_tbool_boolops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/029_ttext_textfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/030_temporal_compops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/032_temporal_boxops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/034_temporal_posops.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/036_tnumber_distance.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/038_temporal_similarity.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/040_temporal_aggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/042_temporal_waggfuncs.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/043_temporal_gist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/044_temporal_spgist.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/046_temporal_analytics.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/999_oid_cache.in.sql create mode 100644 jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/CMakeLists.txt create mode 100644 jmeos-core/tools/parity/parity_audit.py diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSet.java new file mode 100644 index 00000000..8bdb193d --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSet.java @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: BigintSet + * Methods emitted: 8 (bounded-state=5 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsBigintSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsBigintSet() { /* utility */ } + + /** + * MEOS {@code bigintset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer bigintset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_make(arg0, arg1); + } + + /** + * MEOS {@code bigintset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_end_value(arg0); + } + + /** + * MEOS {@code bigintset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintset_shift_scale(jnr.ffi.Pointer arg0, long arg1, long arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code bigintset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_start_value(arg0); + } + + /** + * MEOS {@code bigintset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_value_n(arg0, arg1); + } + + /** + * MEOS {@code bigintset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_values(arg0, arg1); + } + + /** + * MEOS {@code bigintset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer bigintset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_in(arg0); + } + + /** + * MEOS {@code bigintset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String bigintset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpan.java new file mode 100644 index 00000000..3f60c1d0 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpan.java @@ -0,0 +1,169 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: BigintSpan + * Methods emitted: 9 (bounded-state=6 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsBigintSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsBigintSpan() { /* utility */ } + + /** + * MEOS {@code bigintspan_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer bigintspan_make(long arg0, long arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_make(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code bigintspan_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintspan_bins(jnr.ffi.Pointer arg0, long arg1, long arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code bigintspan_expand} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintspan_expand(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_expand(arg0, arg1); + } + + /** + * MEOS {@code bigintspan_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspan_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_lower(arg0); + } + + /** + * MEOS {@code bigintspan_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintspan_shift_scale(jnr.ffi.Pointer arg0, long arg1, long arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code bigintspan_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspan_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_upper(arg0); + } + + /** + * MEOS {@code bigintspan_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspan_width(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_width(arg0); + } + + /** + * MEOS {@code bigintspan_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer bigintspan_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_in(arg0); + } + + /** + * MEOS {@code bigintspan_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String bigintspan_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspan_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspan_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpanSet.java new file mode 100644 index 00000000..828632a4 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsBigintSpanSet.java @@ -0,0 +1,141 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: BigintSpanSet + * Methods emitted: 7 (bounded-state=5 · io-meta=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsBigintSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsBigintSpanSet() { /* utility */ } + + /** + * MEOS {@code bigintspanset_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintspanset_bins(jnr.ffi.Pointer arg0, long arg1, long arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code bigintspanset_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspanset_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_lower(arg0); + } + + /** + * MEOS {@code bigintspanset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer bigintspanset_shift_scale(jnr.ffi.Pointer arg0, long arg1, long arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code bigintspanset_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspanset_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_upper(arg0); + } + + /** + * MEOS {@code bigintspanset_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long bigintspanset_width(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_width(arg0, arg1); + } + + /** + * MEOS {@code bigintspanset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer bigintspanset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_in(arg0); + } + + /** + * MEOS {@code bigintspanset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String bigintspanset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigintspanset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigintspanset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsCbufferSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsCbufferSet.java new file mode 100644 index 00000000..32175615 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsCbufferSet.java @@ -0,0 +1,141 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: CbufferSet + * Methods emitted: 7 (bounded-state=4 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsCbufferSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsCbufferSet() { /* utility */ } + + /** + * MEOS {@code cbufferset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer cbufferset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_make(arg0, arg1); + } + + /** + * MEOS {@code cbufferset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer cbufferset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_end_value(arg0); + } + + /** + * MEOS {@code cbufferset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer cbufferset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_start_value(arg0); + } + + /** + * MEOS {@code cbufferset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer cbufferset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_value_n(arg0, arg1); + } + + /** + * MEOS {@code cbufferset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer cbufferset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_values(arg0, arg1); + } + + /** + * MEOS {@code cbufferset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer cbufferset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_in(arg0); + } + + /** + * MEOS {@code cbufferset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String cbufferset_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferset_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSet.java new file mode 100644 index 00000000..1a6cf3af --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSet.java @@ -0,0 +1,169 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: DateSet + * Methods emitted: 9 (bounded-state=5 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsDateSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsDateSet() { /* utility */ } + + /** + * MEOS {@code dateset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer dateset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_make(arg0, arg1); + } + + /** + * MEOS {@code dateset_to_tstzset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer dateset_to_tstzset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_to_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_to_tstzset(arg0); + } + + /** + * MEOS {@code dateset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int dateset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_end_value(arg0); + } + + /** + * MEOS {@code dateset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer dateset_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code dateset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int dateset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_start_value(arg0); + } + + /** + * MEOS {@code dateset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer dateset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_value_n(arg0, arg1); + } + + /** + * MEOS {@code dateset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer dateset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_values(arg0, arg1); + } + + /** + * MEOS {@code dateset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer dateset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_in(arg0); + } + + /** + * MEOS {@code dateset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String dateset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dateset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dateset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpan.java new file mode 100644 index 00000000..8cd9e402 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpan.java @@ -0,0 +1,169 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: DateSpan + * Methods emitted: 9 (bounded-state=5 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsDateSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsDateSpan() { /* utility */ } + + /** + * MEOS {@code datespan_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer datespan_make(int arg0, int arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_make(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code datespan_to_tstzspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer datespan_to_tstzspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_to_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_to_tstzspan(arg0); + } + + /** + * MEOS {@code datespan_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespan_bins(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code datespan_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespan_duration(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_duration(arg0); + } + + /** + * MEOS {@code datespan_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int datespan_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_lower(arg0); + } + + /** + * MEOS {@code datespan_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespan_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code datespan_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int datespan_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_upper(arg0); + } + + /** + * MEOS {@code datespan_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer datespan_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_in(arg0); + } + + /** + * MEOS {@code datespan_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String datespan_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespan_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespan_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpanSet.java new file mode 100644 index 00000000..d8196a9b --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsDateSpanSet.java @@ -0,0 +1,197 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: DateSpanSet + * Methods emitted: 11 (bounded-state=8 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsDateSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsDateSpanSet() { /* utility */ } + + /** + * MEOS {@code datespanset_to_tstzspanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer datespanset_to_tstzspanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_to_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_to_tstzspanset(arg0); + } + + /** + * MEOS {@code datespanset_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespanset_bins(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code datespanset_date_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespanset_date_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_date_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_date_n(arg0, arg1); + } + + /** + * MEOS {@code datespanset_dates} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespanset_dates(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_dates requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_dates(arg0); + } + + /** + * MEOS {@code datespanset_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespanset_duration(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_duration(arg0, arg1); + } + + /** + * MEOS {@code datespanset_end_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int datespanset_end_date(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_end_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_end_date(arg0); + } + + /** + * MEOS {@code datespanset_num_dates} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int datespanset_num_dates(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_num_dates requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_num_dates(arg0); + } + + /** + * MEOS {@code datespanset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer datespanset_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code datespanset_start_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int datespanset_start_date(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_start_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_start_date(arg0); + } + + /** + * MEOS {@code datespanset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer datespanset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_in(arg0); + } + + /** + * MEOS {@code datespanset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String datespanset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "datespanset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.datespanset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSet.java new file mode 100644 index 00000000..242269b0 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSet.java @@ -0,0 +1,225 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: FloatSet + * Methods emitted: 13 (bounded-state=9 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFloatSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFloatSet() { /* utility */ } + + /** + * MEOS {@code floatset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer floatset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_make(arg0, arg1); + } + + /** + * MEOS {@code floatset_to_intset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer floatset_to_intset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_to_intset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_to_intset(arg0); + } + + /** + * MEOS {@code floatset_ceil} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_ceil(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_ceil requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_ceil(arg0); + } + + /** + * MEOS {@code floatset_degrees} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_degrees(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_degrees requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_degrees(arg0, arg1); + } + + /** + * MEOS {@code floatset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_end_value(arg0); + } + + /** + * MEOS {@code floatset_floor} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_floor(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_floor requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_floor(arg0); + } + + /** + * MEOS {@code floatset_radians} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_radians(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_radians requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_radians(arg0); + } + + /** + * MEOS {@code floatset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_shift_scale(jnr.ffi.Pointer arg0, double arg1, double arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code floatset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_start_value(arg0); + } + + /** + * MEOS {@code floatset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_value_n(arg0, arg1); + } + + /** + * MEOS {@code floatset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_values(arg0, arg1); + } + + /** + * MEOS {@code floatset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer floatset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_in(arg0); + } + + /** + * MEOS {@code floatset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String floatset_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatset_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpan.java new file mode 100644 index 00000000..2e761842 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpan.java @@ -0,0 +1,253 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: FloatSpan + * Methods emitted: 15 (bounded-state=11 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFloatSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFloatSpan() { /* utility */ } + + /** + * MEOS {@code floatspan_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer floatspan_make(double arg0, double arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_make(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code floatspan_to_intspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer floatspan_to_intspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_to_intspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_to_intspan(arg0); + } + + /** + * MEOS {@code floatspan_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_bins(jnr.ffi.Pointer arg0, double arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code floatspan_ceil} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_ceil(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_ceil requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_ceil(arg0); + } + + /** + * MEOS {@code floatspan_degrees} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_degrees(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_degrees requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_degrees(arg0, arg1); + } + + /** + * MEOS {@code floatspan_expand} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_expand(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_expand(arg0, arg1); + } + + /** + * MEOS {@code floatspan_floor} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_floor(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_floor requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_floor(arg0); + } + + /** + * MEOS {@code floatspan_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspan_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_lower(arg0); + } + + /** + * MEOS {@code floatspan_radians} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_radians(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_radians requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_radians(arg0); + } + + /** + * MEOS {@code floatspan_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_round(arg0, arg1); + } + + /** + * MEOS {@code floatspan_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspan_shift_scale(jnr.ffi.Pointer arg0, double arg1, double arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code floatspan_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspan_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_upper(arg0); + } + + /** + * MEOS {@code floatspan_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspan_width(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_width(arg0); + } + + /** + * MEOS {@code floatspan_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer floatspan_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_in(arg0); + } + + /** + * MEOS {@code floatspan_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String floatspan_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspan_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspan_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpanSet.java new file mode 100644 index 00000000..29091cf7 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFloatSpanSet.java @@ -0,0 +1,225 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: FloatSpanSet + * Methods emitted: 13 (bounded-state=10 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFloatSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFloatSpanSet() { /* utility */ } + + /** + * MEOS {@code floatspanset_to_intspanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer floatspanset_to_intspanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_to_intspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_to_intspanset(arg0); + } + + /** + * MEOS {@code floatspanset_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_bins(jnr.ffi.Pointer arg0, double arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code floatspanset_ceil} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_ceil(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_ceil requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_ceil(arg0); + } + + /** + * MEOS {@code floatspanset_degrees} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_degrees(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_degrees requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_degrees(arg0, arg1); + } + + /** + * MEOS {@code floatspanset_floor} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_floor(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_floor requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_floor(arg0); + } + + /** + * MEOS {@code floatspanset_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspanset_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_lower(arg0); + } + + /** + * MEOS {@code floatspanset_radians} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_radians(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_radians requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_radians(arg0); + } + + /** + * MEOS {@code floatspanset_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_round(arg0, arg1); + } + + /** + * MEOS {@code floatspanset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer floatspanset_shift_scale(jnr.ffi.Pointer arg0, double arg1, double arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code floatspanset_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspanset_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_upper(arg0); + } + + /** + * MEOS {@code floatspanset_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double floatspanset_width(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_width(arg0, arg1); + } + + /** + * MEOS {@code floatspanset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer floatspanset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_in(arg0); + } + + /** + * MEOS {@code floatspanset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String floatspanset_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "floatspanset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.floatspanset_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCbuffer.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCbuffer.java new file mode 100644 index 00000000..f967f7e2 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCbuffer.java @@ -0,0 +1,1982 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos_cbuffer.h + * Methods emitted: 149 (bounded-state=68 · stateless=43 · cross-stream=22 · io-meta=8 · windowed=8) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeCbuffer { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeCbuffer() { /* utility */ } + + /** + * MEOS {@code cbuffer_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int cbuffer_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_cmp(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer cbuffer_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_copy(arg0); + } + + /** + * MEOS {@code cbuffer_eq} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_eq(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_ge} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_ge(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_gt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_gt(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_hash} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int cbuffer_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_hash(arg0); + } + + /** + * MEOS {@code cbuffer_hash_extended} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static long cbuffer_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_le} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_le(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_lt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_lt(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer cbuffer_make(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_make(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_ne} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean cbuffer_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_ne(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_nsame} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean cbuffer_nsame(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_nsame requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_nsame(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_point} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer cbuffer_point(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_point requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_point(arg0); + } + + /** + * MEOS {@code cbuffer_radius} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double cbuffer_radius(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_radius requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_radius(arg0); + } + + /** + * MEOS {@code cbuffer_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer cbuffer_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_round(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_same} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean cbuffer_same(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_same requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_same(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_set_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static void cbuffer_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_set_srid requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.cbuffer_set_srid(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int cbuffer_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_srid(arg0); + } + + /** + * MEOS {@code cbuffer_timestamptz_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbuffer_timestamptz_to_stbox(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_timestamptz_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_timestamptz_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_to_geom} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbuffer_to_geom(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_to_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_to_geom(arg0); + } + + /** + * MEOS {@code cbuffer_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbuffer_to_set(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_to_set(arg0); + } + + /** + * MEOS {@code cbuffer_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbuffer_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_to_stbox(arg0); + } + + /** + * MEOS {@code cbuffer_transform} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer cbuffer_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_transform requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_transform(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_transform_pipeline} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer cbuffer_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code cbuffer_tstzspan_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbuffer_tstzspan_to_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_tstzspan_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_tstzspan_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer cbuffer_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code cbufferarr_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer cbufferarr_round(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferarr_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferarr_round(arg0, arg1, arg2); + } + + /** + * MEOS {@code cbufferarr_to_geom} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer cbufferarr_to_geom(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbufferarr_to_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbufferarr_to_geom(arg0, arg1); + } + + /** + * MEOS {@code contained_cbuffer_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 scalars (box/span algebra)

+ */ + public static boolean contained_cbuffer_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_cbuffer_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_cbuffer_set(arg0, arg1); + } + + /** + * MEOS {@code contains_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 scalars (box/span algebra)

+ */ + public static int contains_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code contains_set_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code covers_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int covers_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "covers_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.covers_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code disjoint_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int disjoint_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "disjoint_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.disjoint_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code dwithin_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int dwithin_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "dwithin_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.dwithin_cbuffer_cbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code geom_to_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_to_cbuffer(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_to_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_to_cbuffer(arg0); + } + + /** + * MEOS {@code intersection_set_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code intersects_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int intersects_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersects_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersects_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code teq_cbuffer_tcbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code teq_tcbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tne_cbuffer_tcbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tne_tcbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code touches_cbuffer_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int touches_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "touches_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.touches_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code union_set_cbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code acontains_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code acontains_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code acontains_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code acontains_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code acovers_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acovers_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acovers_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acovers_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code acovers_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acovers_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acovers_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acovers_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code acovers_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acovers_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acovers_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acovers_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code acovers_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acovers_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acovers_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acovers_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code adisjoint_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adisjoint_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adisjoint_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adisjoint_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code adisjoint_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adisjoint_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adisjoint_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adisjoint_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code adwithin_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adwithin_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adwithin_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adwithin_tcbuffer_cbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code adwithin_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adwithin_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adwithin_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adwithin_tcbuffer_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code aintersects_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int aintersects_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "aintersects_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.aintersects_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code aintersects_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int aintersects_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "aintersects_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.aintersects_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code atouches_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int atouches_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code atouches_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int atouches_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code distance_cbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_cbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_cbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_cbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code distance_cbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_cbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_cbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_cbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code distance_cbuffer_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_cbuffer_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_cbuffer_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_cbuffer_stbox(arg0, arg1); + } + + /** + * MEOS {@code econtains_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int econtains_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code econtains_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int econtains_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code econtains_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int econtains_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code ecovers_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int ecovers_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ecovers_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int ecovers_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code ecovers_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int ecovers_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code edisjoint_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edisjoint_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edisjoint_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edisjoint_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code edisjoint_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edisjoint_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edisjoint_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edisjoint_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code edwithin_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edwithin_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edwithin_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edwithin_tcbuffer_cbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code edwithin_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edwithin_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edwithin_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edwithin_tcbuffer_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code eintersects_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int eintersects_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "eintersects_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.eintersects_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code eintersects_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int eintersects_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "eintersects_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.eintersects_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code etouches_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int etouches_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code etouches_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int etouches_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code minus_cbuffer_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_cbuffer_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_cbuffer_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_cbuffer_set(arg0, arg1); + } + + /** + * MEOS {@code minus_set_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code nad_cbuffer_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_cbuffer_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_cbuffer_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_cbuffer_stbox(arg0, arg1); + } + + /** + * MEOS {@code nad_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code nad_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_tcbuffer_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tcbuffer_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tcbuffer_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tcbuffer_stbox(arg0, arg1); + } + + /** + * MEOS {@code nai_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code nai_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code tcontains_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcontains_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcontains_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcontains_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code tcovers_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcovers_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcovers_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcovers_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code tdwithin_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdwithin_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_geo_tcbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code tdwithin_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdwithin_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_tcbuffer_cbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code tdwithin_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdwithin_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_tcbuffer_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code tintersects_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tintersects_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tintersects_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tintersects_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code ttouches_cbuffer_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ttouches_geo_tcbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_geo_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ttouches_tcbuffer_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code ttouches_tcbuffer_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_tcbuffer_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_tcbuffer_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_tcbuffer_geo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_cbuffer_tcbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tcbuffer_cbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code always_ne_cbuffer_tcbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tcbuffer_cbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_cbuffer_tcbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tcbuffer_cbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_cbuffer_tcbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_cbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_cbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_cbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tcbuffer_cbuffer} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tcbuffer_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tcbuffer_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tcbuffer_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code adisjoint_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int adisjoint_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adisjoint_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adisjoint_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code adwithin_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int adwithin_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adwithin_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adwithin_tcbuffer_tcbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code aintersects_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int aintersects_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "aintersects_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.aintersects_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code atouches_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int atouches_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ecovers_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int ecovers_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code edwithin_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int edwithin_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edwithin_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edwithin_tcbuffer_tcbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code eintersects_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int eintersects_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "eintersects_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.eintersects_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code etouches_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int etouches_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code nad_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code nai_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcontains_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tcontains_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcovers_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tcovers_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tdisjoint_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code tdwithin_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tdwithin_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_tcbuffer_tcbuffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code tintersects_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tintersects_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code ttouches_tcbuffer_tcbuffer} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer ttouches_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_tcbuffer_tcbuffer(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String cbuffer_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String cbuffer_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_as_hexwkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code cbuffer_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String cbuffer_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_as_text(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer cbuffer_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer cbuffer_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_from_hexwkb(arg0); + } + + /** + * MEOS {@code cbuffer_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer cbuffer_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_from_wkb(arg0, arg1); + } + + /** + * MEOS {@code cbuffer_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer cbuffer_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_in(arg0); + } + + /** + * MEOS {@code cbuffer_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String cbuffer_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cbuffer_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cbuffer_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCore.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCore.java new file mode 100644 index 00000000..37df9a02 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeCore.java @@ -0,0 +1,9744 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos.h + * Methods emitted: 746 (stateless=448 · bounded-state=128 · windowed=80 · io-meta=53 · cross-stream=37) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import functions.error_handler_fn; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeCore { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeCore() { /* utility */ } + + /** + * MEOS {@code add_date_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar arithmetic

+ */ + public static int add_date_int(int arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_date_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_date_int(arg0, arg1); + } + + /** + * MEOS {@code add_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code add_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_int_tint(arg0, arg1); + } + + /** + * MEOS {@code add_interval_interval} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_interval_interval(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_interval_interval requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_interval_interval(arg0, arg1); + } + + /** + * MEOS {@code add_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code add_timestamptz_interval} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar arithmetic

+ */ + public static java.time.OffsetDateTime add_timestamptz_interval(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_timestamptz_interval requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_timestamptz_interval(arg0, arg1); + } + + /** + * MEOS {@code add_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_tint_int(arg0, arg1); + } + + /** + * MEOS {@code add_tnumber_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer add_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_date(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_float(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_int(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_span(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code adjacent_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code adjacent_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code after_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_date_set(arg0, arg1); + } + + /** + * MEOS {@code after_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_date_span(arg0, arg1); + } + + /** + * MEOS {@code after_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code after_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_set_date(arg0, arg1); + } + + /** + * MEOS {@code after_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code after_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_span_date(arg0, arg1); + } + + /** + * MEOS {@code after_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code after_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code after_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code after_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code after_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code after_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code after_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code after_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code before_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_date_set(arg0, arg1); + } + + /** + * MEOS {@code before_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_date_span(arg0, arg1); + } + + /** + * MEOS {@code before_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code before_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_set_date(arg0, arg1); + } + + /** + * MEOS {@code before_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code before_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_span_date(arg0, arg1); + } + + /** + * MEOS {@code before_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code before_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code before_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code before_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code before_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code before_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code before_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code before_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code bigint_extent_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer bigint_extent_transfn(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code bigint_get_bin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static long bigint_get_bin(long arg0, long arg1, long arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_get_bin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_get_bin(arg0, arg1, arg2); + } + + /** + * MEOS {@code bigint_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer bigint_to_set(long arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_to_set(arg0); + } + + /** + * MEOS {@code bigint_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer bigint_to_span(long arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_to_span(arg0); + } + + /** + * MEOS {@code bigint_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer bigint_to_spanset(long arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_to_spanset(arg0); + } + + /** + * MEOS {@code bigint_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer bigint_union_transfn(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bigint_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bigint_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code contained_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code contained_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code contained_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_date_set(arg0, arg1); + } + + /** + * MEOS {@code contained_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_date_span(arg0, arg1); + } + + /** + * MEOS {@code contained_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_float_set(arg0, arg1); + } + + /** + * MEOS {@code contained_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_float_span(arg0, arg1); + } + + /** + * MEOS {@code contained_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_int_set(arg0, arg1); + } + + /** + * MEOS {@code contained_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_int_span(arg0, arg1); + } + + /** + * MEOS {@code contained_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_set_set(arg0, arg1); + } + + /** + * MEOS {@code contained_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_span_span(arg0, arg1); + } + + /** + * MEOS {@code contained_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code contained_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code contained_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code contained_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code contained_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_text_set(arg0, arg1); + } + + /** + * MEOS {@code contained_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code contained_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code contained_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code contains_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code contains_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_date(arg0, arg1); + } + + /** + * MEOS {@code contains_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_float(arg0, arg1); + } + + /** + * MEOS {@code contains_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_int(arg0, arg1); + } + + /** + * MEOS {@code contains_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_set(arg0, arg1); + } + + /** + * MEOS {@code contains_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_text(arg0, arg1); + } + + /** + * MEOS {@code contains_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code contains_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code contains_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_date(arg0, arg1); + } + + /** + * MEOS {@code contains_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_float(arg0, arg1); + } + + /** + * MEOS {@code contains_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_int(arg0, arg1); + } + + /** + * MEOS {@code contains_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_span(arg0, arg1); + } + + /** + * MEOS {@code contains_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code contains_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code contains_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code contains_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code contains_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code date_extent_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer date_extent_transfn(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code date_get_bin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int date_get_bin(int arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_get_bin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_get_bin(arg0, arg1, arg2); + } + + /** + * MEOS {@code date_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer date_to_set(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_to_set(arg0); + } + + /** + * MEOS {@code date_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer date_to_span(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_to_span(arg0); + } + + /** + * MEOS {@code date_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer date_to_spanset(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_to_spanset(arg0); + } + + /** + * MEOS {@code date_to_timestamp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static java.time.LocalDateTime date_to_timestamp(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_to_timestamp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_to_timestamp(arg0); + } + + /** + * MEOS {@code date_to_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static java.time.OffsetDateTime date_to_timestamptz(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_to_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_to_timestamptz(arg0); + } + + /** + * MEOS {@code date_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer date_union_transfn(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "date_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.date_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code div_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer div_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code div_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer div_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_int_tint(arg0, arg1); + } + + /** + * MEOS {@code div_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer div_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code div_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer div_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_tint_int(arg0, arg1); + } + + /** + * MEOS {@code div_tnumber_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer div_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code float_angular_difference} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double float_angular_difference(double arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_angular_difference requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_angular_difference(arg0, arg1); + } + + /** + * MEOS {@code float_degrees} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double float_degrees(double arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_degrees requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_degrees(arg0, arg1); + } + + /** + * MEOS {@code float_exp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double float_exp(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_exp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_exp(arg0); + } + + /** + * MEOS {@code float_extent_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer float_extent_transfn(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code float_get_bin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static double float_get_bin(double arg0, double arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_get_bin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_get_bin(arg0, arg1, arg2); + } + + /** + * MEOS {@code float_ln} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double float_ln(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_ln requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_ln(arg0); + } + + /** + * MEOS {@code float_log10} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double float_log10(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_log10 requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_log10(arg0); + } + + /** + * MEOS {@code float_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static double float_round(double arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_round(arg0, arg1); + } + + /** + * MEOS {@code float_timestamptz_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer float_timestamptz_to_tbox(double arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_timestamptz_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_timestamptz_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code float_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer float_to_set(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_to_set(arg0); + } + + /** + * MEOS {@code float_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer float_to_span(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_to_span(arg0); + } + + /** + * MEOS {@code float_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer float_to_spanset(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_to_spanset(arg0); + } + + /** + * MEOS {@code float_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer float_to_tbox(double arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_to_tbox(arg0); + } + + /** + * MEOS {@code float_tstzspan_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer float_tstzspan_to_tbox(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_tstzspan_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_tstzspan_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code float_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer float_union_transfn(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code int32_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison with width suffix

+ */ + public static int int32_cmp(int arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int32_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int32_cmp(arg0, arg1); + } + + /** + * MEOS {@code int64_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison with width suffix

+ */ + public static int int64_cmp(long arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int64_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int64_cmp(arg0, arg1); + } + + /** + * MEOS {@code int_extent_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer int_extent_transfn(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code int_get_bin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int int_get_bin(int arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_get_bin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_get_bin(arg0, arg1, arg2); + } + + /** + * MEOS {@code int_timestamptz_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer int_timestamptz_to_tbox(int arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_timestamptz_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_timestamptz_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code int_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer int_to_set(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_to_set(arg0); + } + + /** + * MEOS {@code int_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer int_to_span(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_to_span(arg0); + } + + /** + * MEOS {@code int_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer int_to_spanset(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_to_spanset(arg0); + } + + /** + * MEOS {@code int_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer int_to_tbox(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_to_tbox(arg0); + } + + /** + * MEOS {@code int_tstzspan_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer int_tstzspan_to_tbox(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_tstzspan_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_tstzspan_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code int_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer int_union_transfn(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "int_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.int_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code intersection_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_date_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_float_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_int_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_date(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_float(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_int(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_text(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_date(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_float(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_int(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_span(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code intersection_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code intersection_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code intersection_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code intersection_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_text_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code interval_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer interval_make(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, double arg6) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "interval_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.interval_make(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** + * MEOS {@code left_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code left_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code left_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code left_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_float_set(arg0, arg1); + } + + /** + * MEOS {@code left_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_float_span(arg0, arg1); + } + + /** + * MEOS {@code left_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code left_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_int_set(arg0, arg1); + } + + /** + * MEOS {@code left_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_int_span(arg0, arg1); + } + + /** + * MEOS {@code left_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code left_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code left_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_set_float(arg0, arg1); + } + + /** + * MEOS {@code left_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_set_int(arg0, arg1); + } + + /** + * MEOS {@code left_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_set_set(arg0, arg1); + } + + /** + * MEOS {@code left_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_set_text(arg0, arg1); + } + + /** + * MEOS {@code left_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code left_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_span_float(arg0, arg1); + } + + /** + * MEOS {@code left_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_span_int(arg0, arg1); + } + + /** + * MEOS {@code left_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_span_span(arg0, arg1); + } + + /** + * MEOS {@code left_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code left_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code left_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code left_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code left_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code left_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code left_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code left_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code left_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_text_set(arg0, arg1); + } + + /** + * MEOS {@code mul_interval_double} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer mul_interval_double(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "mul_interval_double requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.mul_interval_double(arg0, arg1); + } + + /** + * MEOS {@code numspan_timestamptz_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer numspan_timestamptz_to_tbox(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "numspan_timestamptz_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.numspan_timestamptz_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code numspan_tstzspan_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer numspan_tstzspan_to_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "numspan_tstzspan_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.numspan_tstzspan_to_tbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_date_set(arg0, arg1); + } + + /** + * MEOS {@code overafter_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_date_span(arg0, arg1); + } + + /** + * MEOS {@code overafter_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code overafter_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_set_date(arg0, arg1); + } + + /** + * MEOS {@code overafter_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overafter_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_span_date(arg0, arg1); + } + + /** + * MEOS {@code overafter_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overafter_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code overafter_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overafter_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overafter_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code overafter_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code overafter_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code overbefore_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_date_set(arg0, arg1); + } + + /** + * MEOS {@code overbefore_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_date_span(arg0, arg1); + } + + /** + * MEOS {@code overbefore_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code overbefore_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_set_date(arg0, arg1); + } + + /** + * MEOS {@code overbefore_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overbefore_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_span_date(arg0, arg1); + } + + /** + * MEOS {@code overbefore_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overbefore_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code overbefore_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overbefore_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code overbefore_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code overbefore_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code overlaps_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_set_set(arg0, arg1); + } + + /** + * MEOS {@code overlaps_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_span_span(arg0, arg1); + } + + /** + * MEOS {@code overlaps_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code overlaps_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code overlaps_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overleft_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code overleft_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code overleft_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code overleft_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_float_set(arg0, arg1); + } + + /** + * MEOS {@code overleft_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_float_span(arg0, arg1); + } + + /** + * MEOS {@code overleft_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code overleft_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_int_set(arg0, arg1); + } + + /** + * MEOS {@code overleft_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_int_span(arg0, arg1); + } + + /** + * MEOS {@code overleft_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code overleft_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code overleft_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_set_float(arg0, arg1); + } + + /** + * MEOS {@code overleft_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_set_int(arg0, arg1); + } + + /** + * MEOS {@code overleft_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_set_set(arg0, arg1); + } + + /** + * MEOS {@code overleft_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_set_text(arg0, arg1); + } + + /** + * MEOS {@code overleft_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code overleft_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_span_float(arg0, arg1); + } + + /** + * MEOS {@code overleft_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_span_int(arg0, arg1); + } + + /** + * MEOS {@code overleft_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_span_span(arg0, arg1); + } + + /** + * MEOS {@code overleft_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code overleft_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code overleft_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code overleft_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code overleft_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code overleft_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code overleft_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code overleft_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overleft_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_text_set(arg0, arg1); + } + + /** + * MEOS {@code overright_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code overright_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code overright_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code overright_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_float_set(arg0, arg1); + } + + /** + * MEOS {@code overright_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_float_span(arg0, arg1); + } + + /** + * MEOS {@code overright_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code overright_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_int_set(arg0, arg1); + } + + /** + * MEOS {@code overright_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_int_span(arg0, arg1); + } + + /** + * MEOS {@code overright_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code overright_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code overright_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_set_float(arg0, arg1); + } + + /** + * MEOS {@code overright_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_set_int(arg0, arg1); + } + + /** + * MEOS {@code overright_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_set_set(arg0, arg1); + } + + /** + * MEOS {@code overright_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_set_text(arg0, arg1); + } + + /** + * MEOS {@code overright_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code overright_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_span_float(arg0, arg1); + } + + /** + * MEOS {@code overright_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_span_int(arg0, arg1); + } + + /** + * MEOS {@code overright_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_span_span(arg0, arg1); + } + + /** + * MEOS {@code overright_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code overright_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code overright_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code overright_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code overright_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code overright_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code overright_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code overright_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overright_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_text_set(arg0, arg1); + } + + /** + * MEOS {@code right_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code right_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code right_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code right_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_float_set(arg0, arg1); + } + + /** + * MEOS {@code right_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_float_span(arg0, arg1); + } + + /** + * MEOS {@code right_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code right_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_int_set(arg0, arg1); + } + + /** + * MEOS {@code right_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_int_span(arg0, arg1); + } + + /** + * MEOS {@code right_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code right_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code right_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_set_float(arg0, arg1); + } + + /** + * MEOS {@code right_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_set_int(arg0, arg1); + } + + /** + * MEOS {@code right_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_set_set(arg0, arg1); + } + + /** + * MEOS {@code right_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_set_text(arg0, arg1); + } + + /** + * MEOS {@code right_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code right_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_span_float(arg0, arg1); + } + + /** + * MEOS {@code right_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_span_int(arg0, arg1); + } + + /** + * MEOS {@code right_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_span_span(arg0, arg1); + } + + /** + * MEOS {@code right_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code right_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code right_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code right_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code right_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code right_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code right_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code right_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code right_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_text_set(arg0, arg1); + } + + /** + * MEOS {@code same_numspan_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code same_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tbox_tbox(arg0, arg1); + } + + /** + * MEOS {@code same_tbox_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tbox_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tbox_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tbox_tnumber(arg0, arg1); + } + + /** + * MEOS {@code same_temporal_tstzspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code same_tnumber_numspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code same_tnumber_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code same_tstzspan_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code sub_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer sub_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code sub_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer sub_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_int_tint(arg0, arg1); + } + + /** + * MEOS {@code sub_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer sub_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code sub_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer sub_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_tint_int(arg0, arg1); + } + + /** + * MEOS {@code sub_tnumber_tnumber} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: arithmetic op on temporal number (per-instant)

+ */ + public static jnr.ffi.Pointer sub_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code tboxfloat_xmax} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static jnr.ffi.Pointer tboxfloat_xmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tboxfloat_xmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tboxfloat_xmax(arg0); + } + + /** + * MEOS {@code tboxfloat_xmin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static jnr.ffi.Pointer tboxfloat_xmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tboxfloat_xmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tboxfloat_xmin(arg0); + } + + /** + * MEOS {@code tboxint_xmax} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static jnr.ffi.Pointer tboxint_xmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tboxint_xmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tboxint_xmax(arg0); + } + + /** + * MEOS {@code tboxint_xmin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static jnr.ffi.Pointer tboxint_xmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tboxint_xmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tboxint_xmin(arg0); + } + + /** + * MEOS {@code temparr_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer temparr_round(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temparr_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temparr_round(arg0, arg1, arg2); + } + + /** + * MEOS {@code teq_bool_tbool} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code teq_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code teq_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_int_tint(arg0, arg1); + } + + /** + * MEOS {@code teq_tbool_bool} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code teq_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code teq_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code teq_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code teq_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tint_int(arg0, arg1); + } + + /** + * MEOS {@code teq_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code text_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int text_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_cmp(arg0, arg1); + } + + /** + * MEOS {@code text_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer text_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_copy(arg0); + } + + /** + * MEOS {@code text_initcap} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer text_initcap(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_initcap requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_initcap(arg0); + } + + /** + * MEOS {@code text_lower} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer text_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_lower(arg0); + } + + /** + * MEOS {@code text_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer text_to_set(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_to_set(arg0); + } + + /** + * MEOS {@code text_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer text_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code text_upper} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer text_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_upper(arg0); + } + + /** + * MEOS {@code textcat_text_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_text_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_text_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_text_text(arg0, arg1); + } + + /** + * MEOS {@code textcat_text_textset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_text_textset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_text_textset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_text_textset(arg0, arg1); + } + + /** + * MEOS {@code textcat_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code textcat_textset_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_textset_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_textset_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_textset_text(arg0, arg1); + } + + /** + * MEOS {@code textcat_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code textcat_ttext_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: text concatenation (per-instant)

+ */ + public static jnr.ffi.Pointer textcat_ttext_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textcat_ttext_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textcat_ttext_ttext(arg0, arg1); + } + + /** + * MEOS {@code tfloatbox_expand} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer tfloatbox_expand(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloatbox_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloatbox_expand(arg0, arg1); + } + + /** + * MEOS {@code tfloatbox_shift_scale} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer tfloatbox_shift_scale(jnr.ffi.Pointer arg0, double arg1, double arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloatbox_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloatbox_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code tge_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code tge_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_int_tint(arg0, arg1); + } + + /** + * MEOS {@code tge_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code tge_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code tge_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tge_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_tint_int(arg0, arg1); + } + + /** + * MEOS {@code tge_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tge_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tge_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tge_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code tgt_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code tgt_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code tgt_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code tgt_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code tgt_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tgt_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code tgt_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tgt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code timestamp_to_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static int timestamp_to_date(java.time.LocalDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamp_to_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamp_to_date(arg0); + } + + /** + * MEOS {@code timestamptz_extent_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer timestamptz_extent_transfn(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code timestamptz_get_bin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static java.time.OffsetDateTime timestamptz_get_bin(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_get_bin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_get_bin(arg0, arg1, arg2); + } + + /** + * MEOS {@code timestamptz_shift} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static java.time.OffsetDateTime timestamptz_shift(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_shift requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_shift(arg0, arg1); + } + + /** + * MEOS {@code timestamptz_tcount_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer timestamptz_tcount_transfn(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_tcount_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_tcount_transfn(arg0, arg1); + } + + /** + * MEOS {@code timestamptz_to_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static int timestamptz_to_date(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_date(arg0); + } + + /** + * MEOS {@code timestamptz_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer timestamptz_to_set(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_set(arg0); + } + + /** + * MEOS {@code timestamptz_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer timestamptz_to_span(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_span(arg0); + } + + /** + * MEOS {@code timestamptz_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer timestamptz_to_spanset(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_spanset(arg0); + } + + /** + * MEOS {@code timestamptz_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer timestamptz_to_tbox(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_tbox(arg0); + } + + /** + * MEOS {@code timestamptz_tprecision} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static java.time.OffsetDateTime timestamptz_tprecision(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_tprecision requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_tprecision(arg0, arg1, arg2); + } + + /** + * MEOS {@code timestamptz_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer timestamptz_union_transfn(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code tintbox_expand} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer tintbox_expand(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintbox_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintbox_expand(arg0, arg1); + } + + /** + * MEOS {@code tintbox_shift_scale} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer tintbox_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintbox_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintbox_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code tle_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code tle_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_int_tint(arg0, arg1); + } + + /** + * MEOS {@code tle_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code tle_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code tle_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tle_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_tint_int(arg0, arg1); + } + + /** + * MEOS {@code tle_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tle_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tle_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tle_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code tlt_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code tlt_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code tlt_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code tlt_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code tlt_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tlt_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code tlt_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tlt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tlt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tlt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code tne_bool_tbool} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code tne_float_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code tne_int_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_int_tint(arg0, arg1); + } + + /** + * MEOS {@code tne_tbool_bool} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code tne_temporal_temporal} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code tne_text_ttext} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code tne_tfloat_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tne_tint_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tint_int(arg0, arg1); + } + + /** + * MEOS {@code tne_ttext_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code union_bigint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code union_bigint_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_bigint_span(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code union_bigint_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_date_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_date_set(arg0, arg1); + } + + /** + * MEOS {@code union_date_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_date_span(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_date_span(arg0, arg1); + } + + /** + * MEOS {@code union_date_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_float_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_float_set(arg0, arg1); + } + + /** + * MEOS {@code union_float_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_float_span(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_float_span(arg0, arg1); + } + + /** + * MEOS {@code union_float_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_int_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_int_set(arg0, arg1); + } + + /** + * MEOS {@code union_int_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_int_span(arg0, arg1); + } + + /** + * MEOS {@code union_int_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_set_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code union_set_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_date(arg0, arg1); + } + + /** + * MEOS {@code union_set_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_float(arg0, arg1); + } + + /** + * MEOS {@code union_set_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_int(arg0, arg1); + } + + /** + * MEOS {@code union_set_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_set(arg0, arg1); + } + + /** + * MEOS {@code union_set_text} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_text(arg0, arg1); + } + + /** + * MEOS {@code union_set_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code union_span_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code union_span_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_date(arg0, arg1); + } + + /** + * MEOS {@code union_span_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_float(arg0, arg1); + } + + /** + * MEOS {@code union_span_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_int(arg0, arg1); + } + + /** + * MEOS {@code union_span_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_span(arg0, arg1); + } + + /** + * MEOS {@code union_span_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_span_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_bigint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_date} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_float} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_int} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code union_spanset_timestamptz} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code union_tbox_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_tbox_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_tbox_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_tbox_tbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code union_text_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_text_set(arg0, arg1); + } + + /** + * MEOS {@code union_timestamptz_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code union_timestamptz_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code union_timestamptz_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code adjacent_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code adjacent_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code after_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean after_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code after_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean after_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code after_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean after_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code before_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean before_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code before_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean before_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code before_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean before_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code contained_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code contained_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code contained_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code contained_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code contained_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code contains_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code contains_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code contains_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code contains_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code contains_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code distance_bigintset_bigintset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_bigintset_bigintset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_bigintset_bigintset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_bigintset_bigintset(arg0, arg1); + } + + /** + * MEOS {@code distance_bigintspan_bigintspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_bigintspan_bigintspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_bigintspan_bigintspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_bigintspan_bigintspan(arg0, arg1); + } + + /** + * MEOS {@code distance_bigintspanset_bigintspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_bigintspanset_bigintspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_bigintspanset_bigintspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_bigintspanset_bigintspan(arg0, arg1); + } + + /** + * MEOS {@code distance_bigintspanset_bigintspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_bigintspanset_bigintspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_bigintspanset_bigintspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_bigintspanset_bigintspanset(arg0, arg1); + } + + /** + * MEOS {@code distance_dateset_dateset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_dateset_dateset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_dateset_dateset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_dateset_dateset(arg0, arg1); + } + + /** + * MEOS {@code distance_datespan_datespan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_datespan_datespan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_datespan_datespan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_datespan_datespan(arg0, arg1); + } + + /** + * MEOS {@code distance_datespanset_datespan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_datespanset_datespan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_datespanset_datespan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_datespanset_datespan(arg0, arg1); + } + + /** + * MEOS {@code distance_datespanset_datespanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_datespanset_datespanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_datespanset_datespanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_datespanset_datespanset(arg0, arg1); + } + + /** + * MEOS {@code distance_floatset_floatset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_floatset_floatset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_floatset_floatset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_floatset_floatset(arg0, arg1); + } + + /** + * MEOS {@code distance_floatspan_floatspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_floatspan_floatspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_floatspan_floatspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_floatspan_floatspan(arg0, arg1); + } + + /** + * MEOS {@code distance_floatspanset_floatspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_floatspanset_floatspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_floatspanset_floatspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_floatspanset_floatspan(arg0, arg1); + } + + /** + * MEOS {@code distance_floatspanset_floatspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_floatspanset_floatspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_floatspanset_floatspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_floatspanset_floatspanset(arg0, arg1); + } + + /** + * MEOS {@code distance_intset_intset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_intset_intset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_intset_intset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_intset_intset(arg0, arg1); + } + + /** + * MEOS {@code distance_intspan_intspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_intspan_intspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_intspan_intspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_intspan_intspan(arg0, arg1); + } + + /** + * MEOS {@code distance_intspanset_intspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_intspanset_intspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_intspanset_intspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_intspanset_intspan(arg0, arg1); + } + + /** + * MEOS {@code distance_intspanset_intspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_intspanset_intspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_intspanset_intspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_intspanset_intspanset(arg0, arg1); + } + + /** + * MEOS {@code distance_set_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code distance_set_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_set_date(arg0, arg1); + } + + /** + * MEOS {@code distance_set_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_set_float(arg0, arg1); + } + + /** + * MEOS {@code distance_set_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_set_int(arg0, arg1); + } + + /** + * MEOS {@code distance_set_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code distance_span_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code distance_span_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_span_date(arg0, arg1); + } + + /** + * MEOS {@code distance_span_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_span_float(arg0, arg1); + } + + /** + * MEOS {@code distance_span_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_span_int(arg0, arg1); + } + + /** + * MEOS {@code distance_span_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code distance_spanset_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static long distance_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code distance_spanset_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code distance_spanset_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code distance_spanset_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int distance_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code distance_spanset_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code distance_tstzset_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_tstzset_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_tstzset_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_tstzset_tstzset(arg0, arg1); + } + + /** + * MEOS {@code distance_tstzspan_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_tstzspan_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_tstzspan_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_tstzspan_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code distance_tstzspanset_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_tstzspanset_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_tstzspanset_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_tstzspanset_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code distance_tstzspanset_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_tstzspanset_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_tstzspanset_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_tstzspanset_tstzspanset(arg0, arg1); + } + + /** + * MEOS {@code left_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean left_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code left_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean left_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code left_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean left_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code minus_bigint_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_bigint_set(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_bigint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_bigint_set(arg0, arg1); + } + + /** + * MEOS {@code minus_bigint_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_bigint_span(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_bigint_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_bigint_span(arg0, arg1); + } + + /** + * MEOS {@code minus_bigint_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_bigint_spanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_bigint_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_bigint_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_date_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static int minus_date_date(int arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_date_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_date_date(arg0, arg1); + } + + /** + * MEOS {@code minus_date_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static int minus_date_int(int arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_date_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_date_int(arg0, arg1); + } + + /** + * MEOS {@code minus_date_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_date_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_date_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_date_set(arg0, arg1); + } + + /** + * MEOS {@code minus_date_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_date_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_date_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_date_span(arg0, arg1); + } + + /** + * MEOS {@code minus_date_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_date_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_date_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_date_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_float_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_float_set(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_float_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_float_set(arg0, arg1); + } + + /** + * MEOS {@code minus_float_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_float_span(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_float_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_float_span(arg0, arg1); + } + + /** + * MEOS {@code minus_float_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_float_spanset(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_float_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_float_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_int_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_int_set(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_int_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_int_set(arg0, arg1); + } + + /** + * MEOS {@code minus_int_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_int_span(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_int_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_int_span(arg0, arg1); + } + + /** + * MEOS {@code minus_int_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_int_spanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_int_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_int_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_set_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_bigint(arg0, arg1); + } + + /** + * MEOS {@code minus_set_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_date(arg0, arg1); + } + + /** + * MEOS {@code minus_set_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_float(arg0, arg1); + } + + /** + * MEOS {@code minus_set_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_int(arg0, arg1); + } + + /** + * MEOS {@code minus_set_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_set(arg0, arg1); + } + + /** + * MEOS {@code minus_set_text} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_text(arg0, arg1); + } + + /** + * MEOS {@code minus_set_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code minus_span_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_bigint(arg0, arg1); + } + + /** + * MEOS {@code minus_span_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_date(arg0, arg1); + } + + /** + * MEOS {@code minus_span_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_float(arg0, arg1); + } + + /** + * MEOS {@code minus_span_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_int(arg0, arg1); + } + + /** + * MEOS {@code minus_span_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_span(arg0, arg1); + } + + /** + * MEOS {@code minus_span_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_span_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_span_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_span_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_span_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_bigint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_bigint(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_date} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_date(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_date requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_date(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_float(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_int(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_span(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_spanset_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_spanset_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_spanset_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_spanset_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code minus_text_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_text_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_text_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_text_set(arg0, arg1); + } + + /** + * MEOS {@code minus_timestamptz_interval} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static java.time.OffsetDateTime minus_timestamptz_interval(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_timestamptz_interval requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_timestamptz_interval(arg0, arg1); + } + + /** + * MEOS {@code minus_timestamptz_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_timestamptz_set(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_timestamptz_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_timestamptz_set(arg0, arg1); + } + + /** + * MEOS {@code minus_timestamptz_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_timestamptz_span(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_timestamptz_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_timestamptz_span(arg0, arg1); + } + + /** + * MEOS {@code minus_timestamptz_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_timestamptz_spanset(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_timestamptz_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_timestamptz_spanset(arg0, arg1); + } + + /** + * MEOS {@code minus_timestamptz_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_timestamptz_timestamptz(java.time.OffsetDateTime arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_timestamptz_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_timestamptz_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code nad_tboxfloat_tboxfloat} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tboxfloat_tboxfloat(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tboxfloat_tboxfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tboxfloat_tboxfloat(arg0, arg1); + } + + /** + * MEOS {@code nad_tboxint_tboxint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int nad_tboxint_tboxint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tboxint_tboxint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tboxint_tboxint(arg0, arg1); + } + + /** + * MEOS {@code nad_tfloat_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code nad_tfloat_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tfloat_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tfloat_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tfloat_tbox(arg0, arg1); + } + + /** + * MEOS {@code nad_tint_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int nad_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tint_int(arg0, arg1); + } + + /** + * MEOS {@code nad_tint_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static int nad_tint_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tint_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tint_tbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overafter_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code overafter_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overafter_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overafter_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code overbefore_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overbefore_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overbefore_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overbefore_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code overlaps_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overlaps_temporal_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_temporal_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_temporal_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_temporal_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tstzspan_temporal} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_tstzspan_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tstzspan_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tstzspan_temporal(arg0, arg1); + } + + /** + * MEOS {@code overleft_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overleft_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overleft_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overleft_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code overleft_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overleft_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code overright_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overright_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overright_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overright_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code overright_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overright_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code right_numspan_tnumber} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean right_numspan_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_numspan_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_numspan_tnumber(arg0, arg1); + } + + /** + * MEOS {@code right_tnumber_numspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean right_tnumber_numspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tnumber_numspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tnumber_numspan(arg0, arg1); + } + + /** + * MEOS {@code right_tnumber_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean right_tnumber_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tnumber_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tnumber_tbox(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tfloat_float} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tint_int} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_eq_bool_tbool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code always_eq_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_eq_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tbool_bool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code always_eq_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_eq_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code always_ge_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_ge_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_ge_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_ge_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_ge_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_ge_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ge_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code always_gt_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_gt_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_gt_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_gt_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_gt_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_gt_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_gt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code always_le_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_le_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_le_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_le_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_le_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_le_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_le_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code always_lt_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_lt_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_lt_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_lt_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_lt_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_lt_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_lt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code always_ne_bool_tbool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code always_ne_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code always_ne_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_int_tint(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tbool_bool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code always_ne_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tint_int(arg0, arg1); + } + + /** + * MEOS {@code always_ne_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_bool_tbool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tbool_bool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ge_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_gt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_le_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_le_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_le_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_le_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_le_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_le_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_le_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_lt_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_bool_tbool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_bool_tbool(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_float_tfloat} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_float_tfloat(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_int_tint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_int_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_int_tint(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tbool_bool} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tbool_bool(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_text_ttext} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_text_ttext(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_text_ttext requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_text_ttext(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tfloat_float} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tfloat_float(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tint_int} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tint_int requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tint_int(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_ttext_text} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_ttext_text(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_ttext_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_ttext_text(arg0, arg1); + } + + /** + * MEOS {@code adjacent_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean adjacent_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean adjacent_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code after_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean after_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code after_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean after_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code always_eq_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code always_ge_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ge_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code always_gt_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_gt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code always_le_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_le_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code always_lt_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_lt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code always_ne_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code before_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean before_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code before_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean before_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code contained_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contained_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code contained_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contained_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code contains_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contains_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code contains_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contains_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code ever_ge_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ge_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code ever_gt_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_gt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code ever_le_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_le_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code ever_lt_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_lt_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code left_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean left_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code nad_tfloat_tfloat} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_tfloat_tfloat(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tfloat_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tfloat_tfloat(arg0, arg1); + } + + /** + * MEOS {@code nad_tint_tint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static int nad_tint_tint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tint_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tint_tint(arg0, arg1); + } + + /** + * MEOS {@code overafter_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overafter_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code overafter_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overafter_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overbefore_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overbefore_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overbefore_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overlaps_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overlaps_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overlaps_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overleft_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overleft_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code overright_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overright_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code right_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean right_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code same_temporal_temporal} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: same predicate on 2 temporals

+ */ + public static boolean same_temporal_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_temporal_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_temporal_temporal(arg0, arg1); + } + + /** + * MEOS {@code same_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: same predicate on 2 temporals

+ */ + public static boolean same_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tnumber_tnumber} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tnumber_tnumber(arg0, arg1); + } + + /** + * MEOS {@code bool_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static boolean bool_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bool_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bool_in(arg0); + } + + /** + * MEOS {@code bool_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String bool_out(boolean arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bool_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bool_out(arg0); + } + + /** + * MEOS {@code cstring2text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: string/CString conversion (low-level)

+ */ + public static jnr.ffi.Pointer cstring2text(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "cstring2text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.cstring2text(arg0); + } + + /** + * MEOS {@code float8_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String float8_out(double arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "float8_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.float8_out(arg0, arg1); + } + + /** + * MEOS {@code meos_array_add} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_array_add(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_add requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_array_add(arg0, arg1); + } + + /** + * MEOS {@code meos_array_count} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int meos_array_count(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_count requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_array_count(arg0); + } + + /** + * MEOS {@code meos_array_create} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer meos_array_create(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_create requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_array_create(arg0); + } + + /** + * MEOS {@code meos_array_destroy} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_array_destroy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_destroy requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_array_destroy(arg0); + } + + /** + * MEOS {@code meos_array_destroy_free} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_array_destroy_free(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_destroy_free requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_array_destroy_free(arg0); + } + + /** + * MEOS {@code meos_array_get} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer meos_array_get(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_get requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_array_get(arg0, arg1); + } + + /** + * MEOS {@code meos_array_reset} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_array_reset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_reset requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_array_reset(arg0); + } + + /** + * MEOS {@code meos_array_reset_free} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_array_reset_free(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_array_reset_free requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_array_reset_free(arg0); + } + + /** + * MEOS {@code meos_errno} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int meos_errno() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_errno requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_errno(); + } + + /** + * MEOS {@code meos_errno_reset} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int meos_errno_reset() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_errno_reset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_errno_reset(); + } + + /** + * MEOS {@code meos_errno_restore} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int meos_errno_restore(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_errno_restore requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_errno_restore(arg0); + } + + /** + * MEOS {@code meos_errno_set} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int meos_errno_set(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_errno_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_errno_set(arg0); + } + + /** + * MEOS {@code meos_error} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_error(int arg0, int arg1, java.lang.String arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_error requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_error(arg0, arg1, arg2); + } + + /** + * MEOS {@code meos_finalize} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_finalize() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_finalize requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_finalize(); + } + + /** + * MEOS {@code meos_finalize_projsrs} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_finalize_projsrs() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_finalize_projsrs requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_finalize_projsrs(); + } + + /** + * MEOS {@code meos_finalize_timezone} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_finalize_timezone() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_finalize_timezone requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_finalize_timezone(); + } + + /** + * MEOS {@code meos_finalize_ways} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_finalize_ways() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_finalize_ways requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_finalize_ways(); + } + + /** + * MEOS {@code meos_get_datestyle} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static java.lang.String meos_get_datestyle() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_get_datestyle requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_get_datestyle(); + } + + /** + * MEOS {@code meos_get_intervalstyle} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static java.lang.String meos_get_intervalstyle() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_get_intervalstyle requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_get_intervalstyle(); + } + + /** + * MEOS {@code meos_initialize} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_initialize() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_initialize requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_initialize(); + } + + /** + * MEOS {@code meos_initialize_error_handler} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_initialize_error_handler(functions.error_handler_fn arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_initialize_error_handler requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_initialize_error_handler(arg0); + } + + /** + * MEOS {@code meos_initialize_timezone} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_initialize_timezone(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_initialize_timezone requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_initialize_timezone(arg0); + } + + /** + * MEOS {@code meos_set_datestyle} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static boolean meos_set_datestyle(java.lang.String arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_set_datestyle requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_set_datestyle(arg0, arg1); + } + + /** + * MEOS {@code meos_set_intervalstyle} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static boolean meos_set_intervalstyle(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_set_intervalstyle requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.meos_set_intervalstyle(arg0, arg1); + } + + /** + * MEOS {@code meos_set_spatial_ref_sys_csv} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void meos_set_spatial_ref_sys_csv(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "meos_set_spatial_ref_sys_csv requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.meos_set_spatial_ref_sys_csv(arg0); + } + + /** + * MEOS {@code pg_date_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static int pg_date_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_date_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_date_in(arg0); + } + + /** + * MEOS {@code pg_date_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pg_date_out(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_date_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_date_out(arg0); + } + + /** + * MEOS {@code pg_interval_cmp} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: string/CString conversion (low-level)

+ */ + public static int pg_interval_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_interval_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_interval_cmp(arg0, arg1); + } + + /** + * MEOS {@code pg_interval_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer pg_interval_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_interval_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_interval_in(arg0, arg1); + } + + /** + * MEOS {@code pg_interval_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pg_interval_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_interval_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_interval_out(arg0); + } + + /** + * MEOS {@code pg_timestamp_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.time.LocalDateTime pg_timestamp_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_timestamp_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_timestamp_in(arg0, arg1); + } + + /** + * MEOS {@code pg_timestamp_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pg_timestamp_out(java.time.LocalDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_timestamp_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_timestamp_out(arg0); + } + + /** + * MEOS {@code pg_timestamptz_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.time.OffsetDateTime pg_timestamptz_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_timestamptz_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_timestamptz_in(arg0, arg1); + } + + /** + * MEOS {@code pg_timestamptz_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pg_timestamptz_out(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pg_timestamptz_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pg_timestamptz_out(arg0); + } + + /** + * MEOS {@code rtree_create_bigintspan} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_bigintspan() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_bigintspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_bigintspan(); + } + + /** + * MEOS {@code rtree_create_datespan} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_datespan() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_datespan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_datespan(); + } + + /** + * MEOS {@code rtree_create_floatspan} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_floatspan() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_floatspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_floatspan(); + } + + /** + * MEOS {@code rtree_create_intspan} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_intspan() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_intspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_intspan(); + } + + /** + * MEOS {@code rtree_create_stbox} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_stbox() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_stbox(); + } + + /** + * MEOS {@code rtree_create_tbox} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_tbox() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_tbox(); + } + + /** + * MEOS {@code rtree_create_tstzspan} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static jnr.ffi.Pointer rtree_create_tstzspan() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_create_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_create_tstzspan(); + } + + /** + * MEOS {@code rtree_free} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void rtree_free(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_free requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.rtree_free(arg0); + } + + /** + * MEOS {@code rtree_insert} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void rtree_insert(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_insert requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.rtree_insert(arg0, arg1, arg2); + } + + /** + * MEOS {@code rtree_insert_temporal} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static void rtree_insert_temporal(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_insert_temporal requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.rtree_insert_temporal(arg0, arg1, arg2); + } + + /** + * MEOS {@code rtree_search} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int rtree_search(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_search requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_search(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code rtree_search_temporal} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: MEOS infra / catalog / utility

+ */ + public static int rtree_search_temporal(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "rtree_search_temporal requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.rtree_search_temporal(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code text2cstring} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: string/CString conversion (low-level)

+ */ + public static java.lang.String text2cstring(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text2cstring requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text2cstring(arg0); + } + + /** + * MEOS {@code text_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer text_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_in(arg0); + } + + /** + * MEOS {@code text_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String text_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "text_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.text_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeGeo.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeGeo.java new file mode 100644 index 00000000..fd60c650 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeGeo.java @@ -0,0 +1,3438 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos_geo.h + * Methods emitted: 262 (stateless=134 · bounded-state=57 · cross-stream=46 · io-meta=17 · windowed=8) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeGeo { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeGeo() { /* utility */ } + + /** + * MEOS {@code above_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean above_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "above_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.above_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code above_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean above_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "above_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.above_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code adjacent_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code adjacent_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean adjacent_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code after_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code after_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean after_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code back_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean back_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "back_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.back_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code back_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean back_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "back_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.back_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code bearing_point_point} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static jnr.ffi.Pointer bearing_point_point(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "bearing_point_point requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.bearing_point_point(arg0, arg1); + } + + /** + * MEOS {@code before_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code before_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean before_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code below_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean below_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "below_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.below_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code below_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean below_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "below_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.below_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code box3d_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer box3d_make(double arg0, double arg1, double arg2, double arg3, double arg4, double arg5, int arg6) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "box3d_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.box3d_make(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** + * MEOS {@code box3d_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer box3d_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "box3d_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.box3d_to_stbox(arg0); + } + + /** + * MEOS {@code contained_geo_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_geo_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_geo_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_geo_set(arg0, arg1); + } + + /** + * MEOS {@code contained_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code contained_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contained_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code contains_set_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_geo(arg0, arg1); + } + + /** + * MEOS {@code contains_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code contains_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code front_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean front_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "front_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.front_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code front_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean front_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "front_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.front_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code gbox_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer gbox_make(boolean arg0, double arg1, double arg2, double arg3, double arg4, double arg5, double arg6) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "gbox_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.gbox_make(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** + * MEOS {@code gbox_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer gbox_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "gbox_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.gbox_to_stbox(arg0); + } + + /** + * MEOS {@code geo_cluster_dbscan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_cluster_dbscan(jnr.ffi.Pointer arg0, int arg1, double arg2, int arg3, jnr.ffi.Pointer arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_cluster_dbscan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_cluster_dbscan(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code geo_cluster_intersecting} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_cluster_intersecting(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_cluster_intersecting requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_cluster_intersecting(arg0, arg1, arg2); + } + + /** + * MEOS {@code geo_cluster_kmeans} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_cluster_kmeans(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_cluster_kmeans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_cluster_kmeans(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code geo_cluster_within} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_cluster_within(jnr.ffi.Pointer arg0, int arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_cluster_within requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_cluster_within(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code geo_collect_garray} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_collect_garray(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_collect_garray requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_collect_garray(arg0, arg1); + } + + /** + * MEOS {@code geo_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_copy(arg0); + } + + /** + * MEOS {@code geo_equals} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int geo_equals(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_equals requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_equals(arg0, arg1); + } + + /** + * MEOS {@code geo_geo_n} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static jnr.ffi.Pointer geo_geo_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_geo_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_geo_n(arg0, arg1); + } + + /** + * MEOS {@code geo_is_empty} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geo_is_empty(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_is_empty requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_is_empty(arg0); + } + + /** + * MEOS {@code geo_is_unitary} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geo_is_unitary(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_is_unitary requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_is_unitary(arg0); + } + + /** + * MEOS {@code geo_makeline_garray} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer geo_makeline_garray(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_makeline_garray requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_makeline_garray(arg0, arg1); + } + + /** + * MEOS {@code geo_num_geos} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int geo_num_geos(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_num_geos requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_num_geos(arg0); + } + + /** + * MEOS {@code geo_num_points} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int geo_num_points(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_num_points requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_num_points(arg0); + } + + /** + * MEOS {@code geo_pointarr} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_pointarr(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_pointarr requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_pointarr(arg0, arg1); + } + + /** + * MEOS {@code geo_points} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_points(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_points requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_points(arg0); + } + + /** + * MEOS {@code geo_reverse} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_reverse(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_reverse requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_reverse(arg0); + } + + /** + * MEOS {@code geo_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer geo_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_round(arg0, arg1); + } + + /** + * MEOS {@code geo_same} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geo_same(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_same requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_same(arg0, arg1); + } + + /** + * MEOS {@code geo_set_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_set_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_set_srid(arg0, arg1); + } + + /** + * MEOS {@code geo_split_each_n_stboxes} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_split_each_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_split_each_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_split_each_n_stboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code geo_split_n_stboxes} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_split_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_split_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_split_n_stboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code geo_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int geo_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_srid(arg0); + } + + /** + * MEOS {@code geo_stboxes} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_stboxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_stboxes(arg0, arg1); + } + + /** + * MEOS {@code geo_timestamptz_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geo_timestamptz_to_stbox(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_timestamptz_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_timestamptz_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code geo_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geo_to_set(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_to_set(arg0); + } + + /** + * MEOS {@code geo_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geo_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_to_stbox(arg0); + } + + /** + * MEOS {@code geo_transform} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_transform requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_transform(arg0, arg1); + } + + /** + * MEOS {@code geo_transform_pipeline} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code geo_tstzspan_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geo_tstzspan_to_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_tstzspan_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_tstzspan_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code geo_typename} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static java.lang.String geo_typename(int arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_typename requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_typename(arg0); + } + + /** + * MEOS {@code geo_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code geog_area} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geog_area(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_area requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_area(arg0, arg1); + } + + /** + * MEOS {@code geog_centroid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geog_centroid(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_centroid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_centroid(arg0, arg1); + } + + /** + * MEOS {@code geog_distance} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geog_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_distance(arg0, arg1); + } + + /** + * MEOS {@code geog_dwithin} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geog_dwithin(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_dwithin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_dwithin(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code geog_intersects} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geog_intersects(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_intersects requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_intersects(arg0, arg1, arg2); + } + + /** + * MEOS {@code geog_length} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static double geog_length(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_length(arg0, arg1); + } + + /** + * MEOS {@code geog_perimeter} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geog_perimeter(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_perimeter requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_perimeter(arg0, arg1); + } + + /** + * MEOS {@code geog_to_geom} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geog_to_geom(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_to_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_to_geom(arg0); + } + + /** + * MEOS {@code geom_array_union} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_array_union(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_array_union requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_array_union(arg0, arg1); + } + + /** + * MEOS {@code geom_azimuth} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_azimuth(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_azimuth requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_azimuth(arg0, arg1); + } + + /** + * MEOS {@code geom_boundary} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_boundary(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_boundary requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_boundary(arg0); + } + + /** + * MEOS {@code geom_buffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_buffer(jnr.ffi.Pointer arg0, double arg1, java.lang.String arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_buffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_buffer(arg0, arg1, arg2); + } + + /** + * MEOS {@code geom_centroid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_centroid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_centroid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_centroid(arg0); + } + + /** + * MEOS {@code geom_contains} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_contains(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_contains requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_contains(arg0, arg1); + } + + /** + * MEOS {@code geom_convex_hull} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_convex_hull(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_convex_hull requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_convex_hull(arg0); + } + + /** + * MEOS {@code geom_covers} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_covers(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_covers requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_covers(arg0, arg1); + } + + /** + * MEOS {@code geom_difference2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_difference2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_difference2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_difference2d(arg0, arg1); + } + + /** + * MEOS {@code geom_disjoint2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_disjoint2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_disjoint2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_disjoint2d(arg0, arg1); + } + + /** + * MEOS {@code geom_distance2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geom_distance2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_distance2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_distance2d(arg0, arg1); + } + + /** + * MEOS {@code geom_distance3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geom_distance3d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_distance3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_distance3d(arg0, arg1); + } + + /** + * MEOS {@code geom_dwithin2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_dwithin2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_dwithin2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_dwithin2d(arg0, arg1, arg2); + } + + /** + * MEOS {@code geom_dwithin3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_dwithin3d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_dwithin3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_dwithin3d(arg0, arg1, arg2); + } + + /** + * MEOS {@code geom_intersection2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_intersection2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_intersection2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_intersection2d(arg0, arg1); + } + + /** + * MEOS {@code geom_intersection2d_coll} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_intersection2d_coll(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_intersection2d_coll requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_intersection2d_coll(arg0, arg1); + } + + /** + * MEOS {@code geom_intersects2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_intersects2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_intersects2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_intersects2d(arg0, arg1); + } + + /** + * MEOS {@code geom_intersects3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_intersects3d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_intersects3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_intersects3d(arg0, arg1); + } + + /** + * MEOS {@code geom_length} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static double geom_length(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_length(arg0); + } + + /** + * MEOS {@code geom_min_bounding_radius} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_min_bounding_radius(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_min_bounding_radius requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_min_bounding_radius(arg0); + } + + /** + * MEOS {@code geom_perimeter} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double geom_perimeter(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_perimeter requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_perimeter(arg0); + } + + /** + * MEOS {@code geom_relate_pattern} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_relate_pattern(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.lang.String arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_relate_pattern requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_relate_pattern(arg0, arg1, arg2); + } + + /** + * MEOS {@code geom_shortestline2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_shortestline2d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_shortestline2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_shortestline2d(arg0, arg1); + } + + /** + * MEOS {@code geom_shortestline3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_shortestline3d(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_shortestline3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_shortestline3d(arg0, arg1); + } + + /** + * MEOS {@code geom_to_geog} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer geom_to_geog(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_to_geog requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_to_geog(arg0); + } + + /** + * MEOS {@code geom_touches} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean geom_touches(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_touches requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_touches(arg0, arg1); + } + + /** + * MEOS {@code geom_unary_union} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_unary_union(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_unary_union requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_unary_union(arg0, arg1); + } + + /** + * MEOS {@code intersection_geo_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_geo_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_geo_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_geo_set(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_geo(arg0, arg1); + } + + /** + * MEOS {@code intersection_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code left_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code left_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean left_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code line_numpoints} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int line_numpoints(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "line_numpoints requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.line_numpoints(arg0); + } + + /** + * MEOS {@code overabove_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overabove_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overabove_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overabove_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overabove_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overabove_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overabove_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overabove_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overafter_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overafter_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overback_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overback_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overback_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overback_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overback_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overback_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overback_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overback_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overbefore_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overbefore_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbefore_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overbelow_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbelow_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbelow_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbelow_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overbelow_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overbelow_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbelow_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbelow_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overfront_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overfront_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overfront_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overfront_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overfront_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overfront_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overfront_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overfront_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overlaps_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overlaps_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overlaps_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overleft_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overleft_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overleft_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overright_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code overright_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean overright_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code right_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code right_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean right_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code same_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code same_stbox_tspatial} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_stbox_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_stbox_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_stbox_tspatial(arg0, arg1); + } + + /** + * MEOS {@code same_tspatial_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: same predicate (pure box equality)

+ */ + public static boolean same_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code spatialset_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int spatialset_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spatialset_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spatialset_srid(arg0); + } + + /** + * MEOS {@code spatialset_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer spatialset_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spatialset_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spatialset_to_stbox(arg0); + } + + /** + * MEOS {@code stboxarr_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer stboxarr_round(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stboxarr_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stboxarr_round(arg0, arg1, arg2); + } + + /** + * MEOS {@code teq_geo_tgeo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code teq_tgeo_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tgeoinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer tgeoinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeoinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeoinst_make(arg0, arg1); + } + + /** + * MEOS {@code timestamptz_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer timestamptz_to_stbox(java.time.OffsetDateTime arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "timestamptz_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.timestamptz_to_stbox(arg0); + } + + /** + * MEOS {@code tne_geo_tgeo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tne_tgeo_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tpointinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer tpointinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpointinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpointinst_make(arg0, arg1); + } + + /** + * MEOS {@code union_geo_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_geo_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_geo_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_geo_set(arg0, arg1); + } + + /** + * MEOS {@code union_set_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_geo(arg0, arg1); + } + + /** + * MEOS {@code union_stbox_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_stbox_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code above_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean above_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "above_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.above_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code acontains_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code acontains_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int acontains_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code adisjoint_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adisjoint_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adisjoint_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adisjoint_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean adjacent_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code adwithin_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int adwithin_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adwithin_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adwithin_tgeo_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code after_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean after_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code aintersects_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int aintersects_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "aintersects_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.aintersects_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code atouches_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int atouches_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code atouches_tpoint_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int atouches_tpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tpoint_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tpoint_geo(arg0, arg1); + } + + /** + * MEOS {@code back_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean back_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "back_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.back_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code before_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean before_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code below_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean below_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "below_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.below_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code contained_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contained_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code contains_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean contains_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code econtains_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int econtains_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code econtains_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int econtains_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code ecovers_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int ecovers_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ecovers_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int ecovers_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code edisjoint_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edisjoint_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edisjoint_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edisjoint_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code edwithin_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int edwithin_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edwithin_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edwithin_tgeo_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code eintersects_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int eintersects_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "eintersects_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.eintersects_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code etouches_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int etouches_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code etouches_tpoint_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 1 temporal

+ */ + public static int etouches_tpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tpoint_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tpoint_geo(arg0, arg1); + } + + /** + * MEOS {@code front_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean front_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "front_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.front_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code left_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean left_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code minus_geo_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_geo_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_geo_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_geo_set(arg0, arg1); + } + + /** + * MEOS {@code minus_set_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_stbox_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_stbox_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_stbox_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_stbox_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_stbox_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_stbox_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_stbox_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_stbox_stbox(arg0, arg1); + } + + /** + * MEOS {@code nad_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_tgeo_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tgeo_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tgeo_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tgeo_stbox(arg0, arg1); + } + + /** + * MEOS {@code nai_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code overabove_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overabove_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overabove_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overabove_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overafter_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overafter_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overback_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overback_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overback_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overback_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overbefore_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overbelow_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overbelow_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbelow_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbelow_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overfront_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overfront_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overfront_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overfront_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overlaps_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overleft_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overleft_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code overright_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean overright_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code right_tspatial_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: topology/position rel on 1 temporal + scalar

+ */ + public static boolean right_tspatial_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tspatial_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tspatial_stbox(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tcontains_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tcontains_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcontains_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tcovers_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tcovers_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tcovers_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdisjoint_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code tdwithin_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdwithin_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_geo_tgeo(arg0, arg1, arg2); + } + + /** + * MEOS {@code tdwithin_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tdwithin_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_tgeo_geo(arg0, arg1, arg2); + } + + /** + * MEOS {@code tintersects_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tintersects_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer tintersects_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code ttouches_geo_tgeo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ttouches_tgeo_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 1 temporal

+ */ + public static jnr.ffi.Pointer ttouches_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_geo_tgeo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tgeo_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code always_ne_geo_tgeo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tgeo_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_geo_tgeo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tgeo_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_geo_tgeo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_geo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tgeo_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tgeo_geo(arg0, arg1); + } + + /** + * MEOS {@code above_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean above_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "above_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.above_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code acontains_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int acontains_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "acontains_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.acontains_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code adisjoint_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int adisjoint_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adisjoint_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adisjoint_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code adjacent_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean adjacent_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adjacent_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adjacent_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code adwithin_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int adwithin_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "adwithin_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.adwithin_tgeo_tgeo(arg0, arg1, arg2); + } + + /** + * MEOS {@code after_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean after_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "after_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.after_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code aintersects_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int aintersects_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "aintersects_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.aintersects_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code atouches_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int atouches_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "atouches_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.atouches_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code back_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean back_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "back_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.back_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code before_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean before_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "before_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.before_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code below_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean below_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "below_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.below_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code contained_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contained_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code contains_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean contains_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code econtains_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int econtains_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "econtains_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.econtains_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ecovers_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int ecovers_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ecovers_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ecovers_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code edisjoint_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int edisjoint_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edisjoint_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edisjoint_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code edwithin_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int edwithin_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "edwithin_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.edwithin_tgeo_tgeo(arg0, arg1, arg2); + } + + /** + * MEOS {@code eintersects_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int eintersects_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "eintersects_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.eintersects_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code etouches_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always spatial-rel on 2 temporals

+ */ + public static int etouches_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "etouches_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.etouches_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code front_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean front_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "front_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.front_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code left_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean left_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "left_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.left_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code nad_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code nai_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code overabove_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overabove_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overabove_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overabove_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overafter_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overafter_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overafter_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overafter_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overback_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overback_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overback_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overback_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overbefore_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overbefore_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbefore_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbefore_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overbelow_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overbelow_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overbelow_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overbelow_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overfront_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overfront_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overfront_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overfront_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overlaps_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overlaps_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overlaps_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overlaps_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overleft_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overleft_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overleft_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overleft_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code overright_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean overright_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "overright_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.overright_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code right_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 temporals

+ */ + public static boolean right_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "right_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.right_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code same_tspatial_tspatial} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: same predicate on 2 temporals

+ */ + public static boolean same_tspatial_tspatial(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "same_tspatial_tspatial requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.same_tspatial_tspatial(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tcontains_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tcontains_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcontains_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcontains_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tcovers_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tcovers_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcovers_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcovers_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tdisjoint_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tdisjoint_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdisjoint_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdisjoint_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code tdwithin_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tdwithin_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdwithin_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdwithin_tgeo_tgeo(arg0, arg1, arg2); + } + + /** + * MEOS {@code tintersects_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer tintersects_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintersects_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintersects_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code ttouches_tgeo_tgeo} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: temporal spatial-rel lift on 2 temporals

+ */ + public static jnr.ffi.Pointer ttouches_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttouches_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttouches_tgeo_tgeo(arg0, arg1); + } + + /** + * MEOS {@code box3d_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String box3d_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "box3d_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.box3d_out(arg0, arg1); + } + + /** + * MEOS {@code gbox_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String gbox_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "gbox_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.gbox_out(arg0, arg1); + } + + /** + * MEOS {@code geo_as_ewkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: name has IO token

+ */ + public static jnr.ffi.Pointer geo_as_ewkb(jnr.ffi.Pointer arg0, java.lang.String arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_as_ewkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_as_ewkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code geo_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String geo_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code geo_as_geojson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String geo_as_geojson(jnr.ffi.Pointer arg0, int arg1, int arg2, java.lang.String arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_as_geojson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_as_geojson(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code geo_as_hexewkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: name has IO token

+ */ + public static java.lang.String geo_as_hexewkb(jnr.ffi.Pointer arg0, java.lang.String arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_as_hexewkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_as_hexewkb(arg0, arg1); + } + + /** + * MEOS {@code geo_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String geo_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_as_text(arg0, arg1); + } + + /** + * MEOS {@code geo_from_ewkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: name has IO token

+ */ + public static jnr.ffi.Pointer geo_from_ewkb(jnr.ffi.Pointer arg0, long arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_from_ewkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_from_ewkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code geo_from_geojson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer geo_from_geojson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_from_geojson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_from_geojson(arg0); + } + + /** + * MEOS {@code geo_from_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer geo_from_text(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_from_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_from_text(arg0, arg1); + } + + /** + * MEOS {@code geo_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String geo_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_out(arg0); + } + + /** + * MEOS {@code geog_from_hexewkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: name has IO token

+ */ + public static jnr.ffi.Pointer geog_from_hexewkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_from_hexewkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_from_hexewkb(arg0); + } + + /** + * MEOS {@code geog_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer geog_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geog_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geog_in(arg0, arg1); + } + + /** + * MEOS {@code geom_from_hexewkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: name has IO token

+ */ + public static jnr.ffi.Pointer geom_from_hexewkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_from_hexewkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_from_hexewkb(arg0); + } + + /** + * MEOS {@code geom_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer geom_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_in(arg0, arg1); + } + + /** + * MEOS {@code spatialset_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String spatialset_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spatialset_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spatialset_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code spatialset_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String spatialset_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spatialset_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spatialset_as_text(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeH3.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeH3.java new file mode 100644 index 00000000..02cddec3 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeH3.java @@ -0,0 +1,265 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by tools/codegen/emit_h3_facade.py — do not edit by hand. + * H3 / th3index family facade over functions.GeneratedFunctions. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeH3 { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeH3() { /* utility */ } + + /** MEOS {@code always_eq_h3index_th3index} — H3 / th3index family. */ + public static int always_eq_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code always_eq_th3index_h3index} — H3 / th3index family. */ + public static int always_eq_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code always_eq_th3index_th3index} — H3 / th3index family. */ + public static int always_eq_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_th3index_th3index(arg0, arg1); + } + + /** MEOS {@code always_ne_h3index_th3index} — H3 / th3index family. */ + public static int always_ne_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code always_ne_th3index_h3index} — H3 / th3index family. */ + public static int always_ne_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code always_ne_th3index_th3index} — H3 / th3index family. */ + public static int always_ne_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_th3index_th3index(arg0, arg1); + } + + /** MEOS {@code ever_eq_h3index_th3index} — H3 / th3index family. */ + public static int ever_eq_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code ever_eq_h3indexset_th3index} — H3 / th3index family. */ + public static int ever_eq_h3indexset_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_h3indexset_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_h3indexset_th3index(arg0, arg1); + } + + /** MEOS {@code ever_eq_th3index_h3index} — H3 / th3index family. */ + public static int ever_eq_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code ever_eq_th3index_th3index} — H3 / th3index family. */ + public static int ever_eq_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_th3index_th3index(arg0, arg1); + } + + /** MEOS {@code ever_ne_h3index_th3index} — H3 / th3index family. */ + public static int ever_ne_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code ever_ne_th3index_h3index} — H3 / th3index family. */ + public static int ever_ne_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code ever_ne_th3index_th3index} — H3 / th3index family. */ + public static int ever_ne_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_th3index_th3index(arg0, arg1); + } + + /** MEOS {@code geo_to_h3index_set} — H3 / th3index family. */ + public static jnr.ffi.Pointer geo_to_h3index_set(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_to_h3index_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_to_h3index_set(arg0, arg1); + } + + /** MEOS {@code h3_gs_point_to_cell} — H3 / th3index family. */ + public static long h3_gs_point_to_cell(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "h3_gs_point_to_cell requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.h3_gs_point_to_cell(arg0, arg1); + } + + /** MEOS {@code tbigint_to_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tbigint_to_th3index(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_to_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_to_th3index(arg0); + } + + /** MEOS {@code teq_h3index_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer teq_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code teq_th3index_h3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer teq_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code teq_th3index_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer teq_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_th3index_th3index(arg0, arg1); + } + + /** MEOS {@code tgeogpoint_great_circle_distance} — H3 / th3index family. */ + public static jnr.ffi.Pointer tgeogpoint_great_circle_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.lang.String arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeogpoint_great_circle_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeogpoint_great_circle_distance(arg0, arg1, arg2); + } + + /** MEOS {@code tgeogpoint_to_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tgeogpoint_to_th3index(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeogpoint_to_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeogpoint_to_th3index(arg0, arg1); + } + + /** MEOS {@code tgeompoint_to_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tgeompoint_to_th3index(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeompoint_to_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeompoint_to_th3index(arg0, arg1); + } + + /** MEOS {@code tne_h3index_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tne_h3index_th3index(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_h3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_h3index_th3index(arg0, arg1); + } + + /** MEOS {@code tne_th3index_h3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tne_th3index_h3index(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_th3index_h3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_th3index_h3index(arg0, arg1); + } + + /** MEOS {@code tne_th3index_th3index} — H3 / th3index family. */ + public static jnr.ffi.Pointer tne_th3index_th3index(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_th3index_th3index requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_th3index_th3index(arg0, arg1); + } +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeNpoint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeNpoint.java new file mode 100644 index 00000000..097a5676 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeNpoint.java @@ -0,0 +1,1098 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos_npoint.h + * Methods emitted: 82 (stateless=44 · bounded-state=11 · io-meta=10 · windowed=9 · cross-stream=8) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeNpoint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeNpoint() { /* utility */ } + + /** + * MEOS {@code contained_npoint_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 scalars (box/span algebra)

+ */ + public static boolean contained_npoint_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_npoint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_npoint_set(arg0, arg1); + } + + /** + * MEOS {@code contains_set_npoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_npoint(arg0, arg1); + } + + /** + * MEOS {@code geom_to_nsegment} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geom_to_nsegment(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geom_to_nsegment requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geom_to_nsegment(arg0); + } + + /** + * MEOS {@code get_srid_ways} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int get_srid_ways() { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "get_srid_ways requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.get_srid_ways(); + } + + /** + * MEOS {@code intersection_set_npoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_npoint(arg0, arg1); + } + + /** + * MEOS {@code npoint_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int npoint_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_cmp(arg0, arg1); + } + + /** + * MEOS {@code npoint_eq} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_eq(arg0, arg1); + } + + /** + * MEOS {@code npoint_ge} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_ge(arg0, arg1); + } + + /** + * MEOS {@code npoint_gt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_gt(arg0, arg1); + } + + /** + * MEOS {@code npoint_hash} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int npoint_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_hash(arg0); + } + + /** + * MEOS {@code npoint_hash_extended} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static long npoint_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code npoint_le} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_le(arg0, arg1); + } + + /** + * MEOS {@code npoint_lt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_lt(arg0, arg1); + } + + /** + * MEOS {@code npoint_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer npoint_make(long arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_make(arg0, arg1); + } + + /** + * MEOS {@code npoint_ne} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean npoint_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_ne(arg0, arg1); + } + + /** + * MEOS {@code npoint_position} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double npoint_position(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_position requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_position(arg0); + } + + /** + * MEOS {@code npoint_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer npoint_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_round(arg0, arg1); + } + + /** + * MEOS {@code npoint_route} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static long npoint_route(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_route requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_route(arg0); + } + + /** + * MEOS {@code npoint_same} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean npoint_same(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_same requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_same(arg0, arg1); + } + + /** + * MEOS {@code npoint_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int npoint_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_srid(arg0); + } + + /** + * MEOS {@code npoint_timestamptz_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer npoint_timestamptz_to_stbox(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_timestamptz_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_timestamptz_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code npoint_to_geompoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer npoint_to_geompoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_to_geompoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_to_geompoint(arg0); + } + + /** + * MEOS {@code npoint_to_nsegment} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer npoint_to_nsegment(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_to_nsegment requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_to_nsegment(arg0); + } + + /** + * MEOS {@code npoint_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer npoint_to_set(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_to_set(arg0); + } + + /** + * MEOS {@code npoint_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer npoint_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_to_stbox(arg0); + } + + /** + * MEOS {@code npoint_tstzspan_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer npoint_tstzspan_to_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_tstzspan_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_tstzspan_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code npoint_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer npoint_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code nsegment_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int nsegment_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_cmp(arg0, arg1); + } + + /** + * MEOS {@code nsegment_eq} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_eq(arg0, arg1); + } + + /** + * MEOS {@code nsegment_ge} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_ge(arg0, arg1); + } + + /** + * MEOS {@code nsegment_gt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_gt(arg0, arg1); + } + + /** + * MEOS {@code nsegment_le} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_le(arg0, arg1); + } + + /** + * MEOS {@code nsegment_lt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_lt(arg0, arg1); + } + + /** + * MEOS {@code nsegment_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: make/from_base of instant/scalar

+ */ + public static jnr.ffi.Pointer nsegment_make(long arg0, double arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_make(arg0, arg1, arg2); + } + + /** + * MEOS {@code nsegment_ne} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean nsegment_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_ne(arg0, arg1); + } + + /** + * MEOS {@code nsegment_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer nsegment_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_round(arg0, arg1); + } + + /** + * MEOS {@code nsegment_route} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static long nsegment_route(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_route requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_route(arg0); + } + + /** + * MEOS {@code nsegment_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static int nsegment_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_srid(arg0); + } + + /** + * MEOS {@code nsegment_to_geom} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer nsegment_to_geom(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_to_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_to_geom(arg0); + } + + /** + * MEOS {@code nsegment_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer nsegment_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_to_stbox(arg0); + } + + /** + * MEOS {@code route_exists} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar in/out (default-stateless catch-all)

+ */ + public static boolean route_exists(long arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "route_exists requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.route_exists(arg0); + } + + /** + * MEOS {@code teq_tnpoint_npoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code tne_tnpoint_npoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code union_set_npoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_npoint(arg0, arg1); + } + + /** + * MEOS {@code minus_npoint_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_npoint_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_npoint_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_npoint_set(arg0, arg1); + } + + /** + * MEOS {@code minus_set_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_npoint(arg0, arg1); + } + + /** + * MEOS {@code nad_tnpoint_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tnpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tnpoint_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tnpoint_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_tnpoint_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code nad_tnpoint_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tnpoint_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tnpoint_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tnpoint_stbox(arg0, arg1); + } + + /** + * MEOS {@code nai_tnpoint_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tnpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tnpoint_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tnpoint_geo(arg0, arg1); + } + + /** + * MEOS {@code nai_tnpoint_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tnpoint_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tnpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tnpoint_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tnpoint_geo(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tnpoint_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tnpoint_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code always_eq_npoint_tnpoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_npoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_npoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_npoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tnpoint_npoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code always_ne_npoint_tnpoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_npoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_npoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_npoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tnpoint_npoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_npoint_tnpoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_npoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_npoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_npoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tnpoint_npoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_npoint_tnpoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_npoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_npoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_npoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tnpoint_npoint} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tnpoint_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tnpoint_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tnpoint_npoint(arg0, arg1); + } + + /** + * MEOS {@code route_length} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: sequence-derived metric

+ */ + public static double route_length(long arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "route_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.route_length(arg0); + } + + /** + * MEOS {@code always_eq_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code nad_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code nai_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tnpoint_tnpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_tnpoint_tnpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tnpoint_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tnpoint_tnpoint(arg0, arg1); + } + + /** + * MEOS {@code npoint_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String npoint_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code npoint_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String npoint_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_as_hexwkb(arg0, arg1); + } + + /** + * MEOS {@code npoint_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String npoint_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_as_text(arg0, arg1); + } + + /** + * MEOS {@code npoint_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer npoint_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code npoint_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer npoint_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_from_hexwkb(arg0); + } + + /** + * MEOS {@code npoint_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer npoint_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_from_wkb(arg0, arg1); + } + + /** + * MEOS {@code npoint_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer npoint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_in(arg0); + } + + /** + * MEOS {@code npoint_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String npoint_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npoint_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npoint_out(arg0, arg1); + } + + /** + * MEOS {@code nsegment_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer nsegment_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_in(arg0); + } + + /** + * MEOS {@code nsegment_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String nsegment_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nsegment_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nsegment_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreePose.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreePose.java new file mode 100644 index 00000000..62c54715 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreePose.java @@ -0,0 +1,1020 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos_pose.h + * Methods emitted: 76 (stateless=38 · bounded-state=14 · io-meta=8 · cross-stream=8 · windowed=8) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreePose { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreePose() { /* utility */ } + + /** + * MEOS {@code contained_pose_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: topology/position rel on 2 scalars (box/span algebra)

+ */ + public static boolean contained_pose_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contained_pose_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contained_pose_set(arg0, arg1); + } + + /** + * MEOS {@code contains_set_pose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static boolean contains_set_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "contains_set_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.contains_set_pose(arg0, arg1); + } + + /** + * MEOS {@code intersection_set_pose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer intersection_set_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intersection_set_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intersection_set_pose(arg0, arg1); + } + + /** + * MEOS {@code pose_cmp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int pose_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_cmp(arg0, arg1); + } + + /** + * MEOS {@code pose_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_copy(arg0); + } + + /** + * MEOS {@code pose_eq} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_eq(arg0, arg1); + } + + /** + * MEOS {@code pose_ge} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_ge(arg0, arg1); + } + + /** + * MEOS {@code pose_gt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_gt(arg0, arg1); + } + + /** + * MEOS {@code pose_hash} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static int pose_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_hash(arg0); + } + + /** + * MEOS {@code pose_hash_extended} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static long pose_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code pose_le} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_le(arg0, arg1); + } + + /** + * MEOS {@code pose_lt} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_lt(arg0, arg1); + } + + /** + * MEOS {@code pose_make_2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_make_2d(double arg0, double arg1, double arg2, int arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_make_2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_make_2d(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code pose_make_3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_make_3d(double arg0, double arg1, double arg2, double arg3, double arg4, double arg5, double arg6, int arg7) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_make_3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_make_3d(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); + } + + /** + * MEOS {@code pose_make_point2d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_make_point2d(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_make_point2d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_make_point2d(arg0, arg1); + } + + /** + * MEOS {@code pose_make_point3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_make_point3d(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, double arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_make_point3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_make_point3d(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code pose_ne} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: scalar comparison/hash

+ */ + public static boolean pose_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_ne(arg0, arg1); + } + + /** + * MEOS {@code pose_nsame} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean pose_nsame(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_nsame requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_nsame(arg0, arg1); + } + + /** + * MEOS {@code pose_orientation} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_orientation(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_orientation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_orientation(arg0, arg1); + } + + /** + * MEOS {@code pose_rotation} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static double pose_rotation(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_rotation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_rotation(arg0); + } + + /** + * MEOS {@code pose_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer pose_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_round(arg0, arg1); + } + + /** + * MEOS {@code pose_same} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static boolean pose_same(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_same requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_same(arg0, arg1); + } + + /** + * MEOS {@code pose_set_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static void pose_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_set_srid requires libmeos — set -Dmeos.enabled=true"); + } + GeneratedFunctions.pose_set_srid(arg0, arg1); + } + + /** + * MEOS {@code pose_srid} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static int pose_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_srid(arg0); + } + + /** + * MEOS {@code pose_timestamptz_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer pose_timestamptz_to_stbox(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_timestamptz_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_timestamptz_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code pose_to_point} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_to_point(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_to_point requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_to_point(arg0); + } + + /** + * MEOS {@code pose_to_set} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer pose_to_set(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_to_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_to_set(arg0); + } + + /** + * MEOS {@code pose_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer pose_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_to_stbox(arg0); + } + + /** + * MEOS {@code pose_transform} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_transform requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_transform(arg0, arg1); + } + + /** + * MEOS {@code pose_transform_pipeline} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code pose_tstzspan_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: name pattern is _to_

+ */ + public static jnr.ffi.Pointer pose_tstzspan_to_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_tstzspan_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_tstzspan_to_stbox(arg0, arg1); + } + + /** + * MEOS {@code pose_union_transfn} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer pose_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code posearr_round} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: transform/normalize (pure)

+ */ + public static jnr.ffi.Pointer posearr_round(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "posearr_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.posearr_round(arg0, arg1, arg2); + } + + /** + * MEOS {@code teq_pose_tpose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code teq_tpose_pose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code tne_pose_tpose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code tne_tpose_pose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code union_set_pose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: set/span/box algebra (pure)

+ */ + public static jnr.ffi.Pointer union_set_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "union_set_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.union_set_pose(arg0, arg1); + } + + /** + * MEOS {@code distance_pose_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_pose_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_pose_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_pose_geo(arg0, arg1); + } + + /** + * MEOS {@code distance_pose_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_pose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_pose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_pose_pose(arg0, arg1); + } + + /** + * MEOS {@code distance_pose_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double distance_pose_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "distance_pose_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.distance_pose_stbox(arg0, arg1); + } + + /** + * MEOS {@code minus_pose_set} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_pose_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_pose_set requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_pose_set(arg0, arg1); + } + + /** + * MEOS {@code minus_set_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: restriction name pattern

+ */ + public static jnr.ffi.Pointer minus_set_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "minus_set_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.minus_set_pose(arg0, arg1); + } + + /** + * MEOS {@code nad_tpose_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tpose_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tpose_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tpose_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_tpose_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code nad_tpose_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_tpose_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tpose_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tpose_stbox(arg0, arg1); + } + + /** + * MEOS {@code nai_tpose_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tpose_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tpose_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tpose_geo(arg0, arg1); + } + + /** + * MEOS {@code nai_tpose_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tpose_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tpose_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tpose_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tpose_geo(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tpose_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tpose_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code always_eq_pose_tpose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tpose_pose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code always_ne_pose_tpose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tpose_pose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_pose_tpose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tpose_pose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_pose_tpose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_pose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_pose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_pose_tpose(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tpose_pose} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_tpose_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tpose_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tpose_pose(arg0, arg1); + } + + /** + * MEOS {@code always_eq_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code always_ne_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code nad_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code nai_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code shortestline_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code tdistance_tpose_tpose} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_tpose_tpose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_tpose_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_tpose_tpose(arg0, arg1); + } + + /** + * MEOS {@code pose_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pose_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code pose_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pose_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_as_hexwkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code pose_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pose_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_as_text(arg0, arg1); + } + + /** + * MEOS {@code pose_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer pose_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code pose_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer pose_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_from_hexwkb(arg0); + } + + /** + * MEOS {@code pose_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer pose_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_from_wkb(arg0, arg1); + } + + /** + * MEOS {@code pose_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static jnr.ffi.Pointer pose_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_in(arg0); + } + + /** + * MEOS {@code pose_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Free function (not class-classified). Classification rule: IO/serialization

+ */ + public static java.lang.String pose_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "pose_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.pose_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeRgeo.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeRgeo.java new file mode 100644 index 00000000..6248e1ff --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsFreeRgeo.java @@ -0,0 +1,448 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_free.py — do not edit by hand. + * Source header: meos_rgeo.h + * Methods emitted: 31 (cross-stream=12 · windowed=8 · bounded-state=6 · stateless=5) + * Scope: MEOS public functions NOT classified into any object-model class + * (free functions, not methods on a class). + * Source: JMEOS PR #19 (functions.GeneratedFunctions) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsFreeRgeo { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsFreeRgeo() { /* utility */ } + + /** + * MEOS {@code geo_tpose_to_trgeometry} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: base-type fn, default pure

+ */ + public static jnr.ffi.Pointer geo_tpose_to_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geo_tpose_to_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geo_tpose_to_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code teq_geo_trgeometry} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code teq_trgeometry_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer teq_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "teq_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.teq_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code tne_geo_trgeometry} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code tne_trgeometry_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Free function (not class-classified). Classification rule: temporal comparison (per-instant)

+ */ + public static jnr.ffi.Pointer tne_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tne_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tne_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_stbox_trgeometry} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_stbox_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_stbox_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_stbox_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code nad_trgeometry_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code nad_trgeometry_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static double nad_trgeometry_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_trgeometry_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_trgeometry_stbox(arg0, arg1); + } + + /** + * MEOS {@code nai_trgeometry_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer nai_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code shortestline_trgeometry_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer shortestline_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code tdistance_trgeometry_geo} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Free function (not class-classified). Classification rule: distance op

+ */ + public static jnr.ffi.Pointer tdistance_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_geo_trgeometry} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code always_eq_trgeometry_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_eq_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code always_ne_geo_trgeometry} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code always_ne_trgeometry_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int always_ne_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_geo_trgeometry} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_trgeometry_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_eq_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_geo_trgeometry} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_geo_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_geo_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_geo_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_trgeometry_geo} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Free function (not class-classified). Classification rule: ever/always over 1 temporal

+ */ + public static int ever_ne_trgeometry_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_trgeometry_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_trgeometry_geo(arg0, arg1); + } + + /** + * MEOS {@code always_eq_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_eq_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code always_ne_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int always_ne_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code ever_eq_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_eq_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code ever_ne_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: ever/always over 2 temporals

+ */ + public static int ever_ne_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code nad_trgeometry_tpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_trgeometry_tpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_trgeometry_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_trgeometry_tpoint(arg0, arg1); + } + + /** + * MEOS {@code nad_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static double nad_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nad_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nad_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code nai_trgeometry_tpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_trgeometry_tpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_trgeometry_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_trgeometry_tpoint(arg0, arg1); + } + + /** + * MEOS {@code nai_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer nai_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "nai_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.nai_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code shortestline_trgeometry_tpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_trgeometry_tpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_trgeometry_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_trgeometry_tpoint(arg0, arg1); + } + + /** + * MEOS {@code shortestline_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer shortestline_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "shortestline_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.shortestline_trgeometry_trgeometry(arg0, arg1); + } + + /** + * MEOS {@code tdistance_trgeometry_tpoint} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_trgeometry_tpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_trgeometry_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_trgeometry_tpoint(arg0, arg1); + } + + /** + * MEOS {@code tdistance_trgeometry_trgeometry} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Free function (not class-classified). Classification rule: distance on 2 temporals

+ */ + public static jnr.ffi.Pointer tdistance_trgeometry_trgeometry(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tdistance_trgeometry_trgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tdistance_trgeometry_trgeometry(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeogSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeogSet.java new file mode 100644 index 00000000..b12da2bb --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeogSet.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: GeogSet + * Methods emitted: 1 (io-meta=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsGeogSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsGeogSet() { /* utility */ } + + /** + * MEOS {@code geogset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer geogset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geogset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geogset_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeomSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeomSet.java new file mode 100644 index 00000000..2cd26704 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsGeomSet.java @@ -0,0 +1,127 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: GeomSet + * Methods emitted: 6 (bounded-state=4 · io-meta=1 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsGeomSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsGeomSet() { /* utility */ } + + /** + * MEOS {@code geoset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer geoset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geoset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geoset_make(arg0, arg1); + } + + /** + * MEOS {@code geoset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer geoset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geoset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geoset_end_value(arg0); + } + + /** + * MEOS {@code geoset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer geoset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geoset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geoset_start_value(arg0); + } + + /** + * MEOS {@code geoset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer geoset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geoset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geoset_value_n(arg0, arg1); + } + + /** + * MEOS {@code geoset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer geoset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geoset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geoset_values(arg0, arg1); + } + + /** + * MEOS {@code geomset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer geomset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "geomset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.geomset_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSet.java new file mode 100644 index 00000000..1cb1e232 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSet.java @@ -0,0 +1,169 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: IntSet + * Methods emitted: 9 (bounded-state=5 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsIntSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsIntSet() { /* utility */ } + + /** + * MEOS {@code intset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer intset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_make(arg0, arg1); + } + + /** + * MEOS {@code intset_to_floatset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer intset_to_floatset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_to_floatset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_to_floatset(arg0); + } + + /** + * MEOS {@code intset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_end_value(arg0); + } + + /** + * MEOS {@code intset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intset_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code intset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_start_value(arg0); + } + + /** + * MEOS {@code intset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_value_n(arg0, arg1); + } + + /** + * MEOS {@code intset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_values(arg0, arg1); + } + + /** + * MEOS {@code intset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer intset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_in(arg0); + } + + /** + * MEOS {@code intset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String intset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpan.java new file mode 100644 index 00000000..a63eacf1 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpan.java @@ -0,0 +1,183 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: IntSpan + * Methods emitted: 10 (bounded-state=6 · io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsIntSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsIntSpan() { /* utility */ } + + /** + * MEOS {@code intspan_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer intspan_make(int arg0, int arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_make(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code intspan_to_floatspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer intspan_to_floatspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_to_floatspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_to_floatspan(arg0); + } + + /** + * MEOS {@code intspan_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intspan_bins(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code intspan_expand} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intspan_expand(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_expand(arg0, arg1); + } + + /** + * MEOS {@code intspan_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspan_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_lower(arg0); + } + + /** + * MEOS {@code intspan_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intspan_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code intspan_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspan_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_upper(arg0); + } + + /** + * MEOS {@code intspan_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspan_width(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_width(arg0); + } + + /** + * MEOS {@code intspan_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer intspan_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_in(arg0); + } + + /** + * MEOS {@code intspan_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String intspan_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspan_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspan_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpanSet.java new file mode 100644 index 00000000..1690b1ef --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsIntSpanSet.java @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: IntSpanSet + * Methods emitted: 8 (bounded-state=5 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsIntSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsIntSpanSet() { /* utility */ } + + /** + * MEOS {@code intspanset_to_floatspanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer intspanset_to_floatspanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_to_floatspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_to_floatspanset(arg0); + } + + /** + * MEOS {@code intspanset_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intspanset_bins(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code intspanset_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspanset_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_lower(arg0); + } + + /** + * MEOS {@code intspanset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer intspanset_shift_scale(jnr.ffi.Pointer arg0, int arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code intspanset_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspanset_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_upper(arg0); + } + + /** + * MEOS {@code intspanset_width} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int intspanset_width(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_width requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_width(arg0, arg1); + } + + /** + * MEOS {@code intspanset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer intspanset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_in(arg0); + } + + /** + * MEOS {@code intspanset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String intspanset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "intspanset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.intspanset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsNpointSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsNpointSet.java new file mode 100644 index 00000000..248da15b --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsNpointSet.java @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: NpointSet + * Methods emitted: 8 (bounded-state=5 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsNpointSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsNpointSet() { /* utility */ } + + /** + * MEOS {@code npointset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer npointset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_make(arg0, arg1); + } + + /** + * MEOS {@code npointset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer npointset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_end_value(arg0); + } + + /** + * MEOS {@code npointset_routes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer npointset_routes(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_routes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_routes(arg0); + } + + /** + * MEOS {@code npointset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer npointset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_start_value(arg0); + } + + /** + * MEOS {@code npointset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer npointset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_value_n(arg0, arg1); + } + + /** + * MEOS {@code npointset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer npointset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_values(arg0, arg1); + } + + /** + * MEOS {@code npointset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer npointset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_in(arg0); + } + + /** + * MEOS {@code npointset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String npointset_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "npointset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.npointset_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsParityGaps.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsParityGaps.java new file mode 100644 index 00000000..f74c2bb1 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsParityGaps.java @@ -0,0 +1,1459 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/** + * Forwarding facade methods for MEOS public-surface functions not emitted + * by the tier-aware code generator. Each method delegates to its JMEOS + * {@code functions.GeneratedFunctions} export under the shared + * {@link MeosOpsRuntime#MEOS_AVAILABLE} guard. + */ +public final class MeosOpsParityGaps { + + private MeosOpsParityGaps() { /* utility */ } + + /** MEOS {@code acontains_geo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int acontains_geo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acontains_geo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acontains_geo_trgeo(arg0, arg1); + } + + /** MEOS {@code acovers_geo_tgeo} — meos_geo.h · scalar / stateless. */ + public static int acovers_geo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_geo_tgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_geo_tgeo(arg0, arg1); + } + + /** MEOS {@code acovers_geo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int acovers_geo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_geo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_geo_trgeo(arg0, arg1); + } + + /** MEOS {@code acovers_tcbuffer_tcbuffer} — meos_cbuffer.h · scalar / stateless. */ + public static int acovers_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_tcbuffer_tcbuffer(arg0, arg1); + } + + /** MEOS {@code acovers_tgeo_geo} — meos_geo.h · scalar / stateless. */ + public static int acovers_tgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_tgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_tgeo_geo(arg0, arg1); + } + + /** MEOS {@code acovers_tgeo_tgeo} — meos_geo.h · scalar / stateless. */ + public static int acovers_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_tgeo_tgeo(arg0, arg1); + } + + /** MEOS {@code acovers_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int acovers_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("acovers_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.acovers_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code adisjoint_tgeoarr_tgeoarr} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer adisjoint_tgeoarr_tgeoarr(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, jnr.ffi.Pointer arg4) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("adisjoint_tgeoarr_tgeoarr requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.adisjoint_tgeoarr_tgeoarr(arg0, arg1, arg2, arg3, arg4); + } + + /** MEOS {@code adisjoint_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int adisjoint_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("adisjoint_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.adisjoint_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code adisjoint_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int adisjoint_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("adisjoint_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.adisjoint_trgeo_trgeo(arg0, arg1); + } + + /** MEOS {@code adwithin_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int adwithin_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("adwithin_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.adwithin_trgeo_geo(arg0, arg1, arg2); + } + + /** MEOS {@code adwithin_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int adwithin_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("adwithin_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.adwithin_trgeo_trgeo(arg0, arg1, arg2); + } + + /** MEOS {@code aintersects_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int aintersects_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("aintersects_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.aintersects_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code aintersects_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int aintersects_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("aintersects_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.aintersects_trgeo_trgeo(arg0, arg1); + } + + /** MEOS {@code atouches_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int atouches_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("atouches_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.atouches_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code bearing_tpoint_point} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer bearing_tpoint_point(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("bearing_tpoint_point requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.bearing_tpoint_point(arg0, arg1, arg2); + } + + /** MEOS {@code bearing_tpoint_tpoint} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer bearing_tpoint_tpoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("bearing_tpoint_tpoint requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.bearing_tpoint_tpoint(arg0, arg1); + } + + /** MEOS {@code bigintspan_to_floatspan} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer bigintspan_to_floatspan(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("bigintspan_to_floatspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.bigintspan_to_floatspan(arg0); + } + + /** MEOS {@code bigintspan_to_intspan} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer bigintspan_to_intspan(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("bigintspan_to_intspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.bigintspan_to_intspan(arg0); + } + + /** MEOS {@code econtains_geo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int econtains_geo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("econtains_geo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.econtains_geo_trgeo(arg0, arg1); + } + + /** MEOS {@code ecovers_geo_tcbuffer} — meos_cbuffer.h · scalar / stateless. */ + public static int ecovers_geo_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ecovers_geo_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ecovers_geo_tcbuffer(arg0, arg1); + } + + /** MEOS {@code ecovers_geo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int ecovers_geo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ecovers_geo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ecovers_geo_trgeo(arg0, arg1); + } + + /** MEOS {@code ecovers_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int ecovers_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ecovers_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ecovers_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code edisjoint_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int edisjoint_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("edisjoint_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.edisjoint_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code edisjoint_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int edisjoint_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("edisjoint_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.edisjoint_trgeo_trgeo(arg0, arg1); + } + + /** MEOS {@code edwithin_tgeoarr_tgeoarr} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer edwithin_tgeoarr_tgeoarr(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, double arg4, jnr.ffi.Pointer arg5) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("edwithin_tgeoarr_tgeoarr requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.edwithin_tgeoarr_tgeoarr(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** MEOS {@code edwithin_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int edwithin_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("edwithin_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.edwithin_trgeo_geo(arg0, arg1, arg2); + } + + /** MEOS {@code edwithin_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int edwithin_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("edwithin_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.edwithin_trgeo_trgeo(arg0, arg1, arg2); + } + + /** MEOS {@code eintersects_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int eintersects_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("eintersects_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.eintersects_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code eintersects_trgeo_trgeo} — meos_rgeo.h · scalar / stateless. */ + public static int eintersects_trgeo_trgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("eintersects_trgeo_trgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.eintersects_trgeo_trgeo(arg0, arg1); + } + + /** MEOS {@code etouches_trgeo_geo} — meos_rgeo.h · scalar / stateless. */ + public static int etouches_trgeo_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("etouches_trgeo_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.etouches_trgeo_geo(arg0, arg1); + } + + /** MEOS {@code floatspan_to_bigintspan} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer floatspan_to_bigintspan(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("floatspan_to_bigintspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.floatspan_to_bigintspan(arg0); + } + + /** MEOS {@code geogpoint_make2d} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer geogpoint_make2d(int arg0, double arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geogpoint_make2d requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geogpoint_make2d(arg0, arg1, arg2); + } + + /** MEOS {@code geogpoint_make3dz} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer geogpoint_make3dz(int arg0, double arg1, double arg2, double arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geogpoint_make3dz requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geogpoint_make3dz(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code geomeas_to_tpoint} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer geomeas_to_tpoint(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geomeas_to_tpoint requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geomeas_to_tpoint(arg0); + } + + /** MEOS {@code geompoint_make2d} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer geompoint_make2d(int arg0, double arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geompoint_make2d requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geompoint_make2d(arg0, arg1, arg2); + } + + /** MEOS {@code geompoint_make3dz} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer geompoint_make3dz(int arg0, double arg1, double arg2, double arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geompoint_make3dz requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geompoint_make3dz(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code geompoint_to_npoint} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer geompoint_to_npoint(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("geompoint_to_npoint requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.geompoint_to_npoint(arg0); + } + + /** MEOS {@code intersection_cbuffer_set} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer intersection_cbuffer_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("intersection_cbuffer_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.intersection_cbuffer_set(arg0, arg1); + } + + /** MEOS {@code intersection_npoint_set} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer intersection_npoint_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("intersection_npoint_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.intersection_npoint_set(arg0, arg1); + } + + /** MEOS {@code intersection_pose_set} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer intersection_pose_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("intersection_pose_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.intersection_pose_set(arg0, arg1); + } + + /** MEOS {@code intspan_to_bigintspan} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer intspan_to_bigintspan(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("intspan_to_bigintspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.intspan_to_bigintspan(arg0); + } + + /** MEOS {@code line_interpolate_point} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer line_interpolate_point(jnr.ffi.Pointer arg0, double arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("line_interpolate_point requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.line_interpolate_point(arg0, arg1, arg2); + } + + /** MEOS {@code line_locate_point} — meos_geo.h · scalar / stateless. */ + public static double line_locate_point(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("line_locate_point requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.line_locate_point(arg0, arg1); + } + + /** MEOS {@code line_point_n} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer line_point_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("line_point_n requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.line_point_n(arg0, arg1); + } + + /** MEOS {@code line_substring} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer line_substring(jnr.ffi.Pointer arg0, double arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("line_substring requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.line_substring(arg0, arg1, arg2); + } + + /** MEOS {@code meos_initialize_noexit_error_handler} — meos.h · scalar / stateless. */ + public static void meos_initialize_noexit_error_handler() { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_initialize_noexit_error_handler requires libmeos — set -Dmeos.enabled=true"); + functions.GeneratedFunctions.meos_initialize_noexit_error_handler(); + } + + /** MEOS {@code meos_initialize_pointcloud} — meos.h · scalar / stateless. */ + public static void meos_initialize_pointcloud() { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_initialize_pointcloud requires libmeos — set -Dmeos.enabled=true"); + functions.GeneratedFunctions.meos_initialize_pointcloud(); + } + + /** MEOS {@code meos_set_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_set_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_set_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_set_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_set_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_set_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_set_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_set_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_set_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_set_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_set_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_set_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code meos_set_ways_csv} — meos.h · scalar / stateless. */ + public static void meos_set_ways_csv(java.lang.String arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_set_ways_csv requires libmeos — set -Dmeos.enabled=true"); + functions.GeneratedFunctions.meos_set_ways_csv(arg0); + } + + /** MEOS {@code meos_span_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_span_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_span_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_span_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_span_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_span_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_span_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_span_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_span_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_span_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_span_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_span_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code meos_spanset_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_spanset_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_spanset_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_spanset_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_spanset_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_spanset_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_spanset_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_spanset_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_spanset_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_spanset_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_spanset_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_spanset_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code meos_stbox_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_stbox_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_stbox_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_stbox_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_stbox_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_stbox_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_stbox_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_stbox_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_stbox_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_stbox_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_stbox_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_stbox_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code meos_tbox_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_tbox_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_tbox_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_tbox_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_tbox_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_tbox_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_tbox_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_tbox_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_tbox_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_tbox_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_tbox_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_tbox_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code meos_temporal_arrow_roundtrip} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_temporal_arrow_roundtrip(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_temporal_arrow_roundtrip requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_temporal_arrow_roundtrip(arg0); + } + + /** MEOS {@code meos_temporal_from_arrow} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer meos_temporal_from_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_temporal_from_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_temporal_from_arrow(arg0, arg1); + } + + /** MEOS {@code meos_temporal_to_arrow} — meos.h · scalar / stateless. */ + public static boolean meos_temporal_to_arrow(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("meos_temporal_to_arrow requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.meos_temporal_to_arrow(arg0, arg1, arg2); + } + + /** MEOS {@code mindistance_tcbuffer_tcbuffer} — meos_cbuffer.h · scalar / stateless. */ + public static double mindistance_tcbuffer_tcbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mindistance_tcbuffer_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mindistance_tcbuffer_tcbuffer(arg0, arg1, arg2); + } + + /** MEOS {@code mindistance_tgeo_tgeo} — meos_geo.h · scalar / stateless. */ + public static double mindistance_tgeo_tgeo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, double arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mindistance_tgeo_tgeo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mindistance_tgeo_tgeo(arg0, arg1, arg2); + } + + /** MEOS {@code mindistance_tgeoarr_tgeoarr} — meos_geo.h · scalar / stateless. */ + public static double mindistance_tgeoarr_tgeoarr(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mindistance_tgeoarr_tgeoarr requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mindistance_tgeoarr_tgeoarr(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code mul_float_tfloat} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer mul_float_tfloat(double arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mul_float_tfloat requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mul_float_tfloat(arg0, arg1); + } + + /** MEOS {@code mul_int_tint} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer mul_int_tint(int arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mul_int_tint requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mul_int_tint(arg0, arg1); + } + + /** MEOS {@code mul_tfloat_float} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer mul_tfloat_float(jnr.ffi.Pointer arg0, double arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mul_tfloat_float requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mul_tfloat_float(arg0, arg1); + } + + /** MEOS {@code mul_tint_int} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer mul_tint_int(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mul_tint_int requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mul_tint_int(arg0, arg1); + } + + /** MEOS {@code mul_tnumber_tnumber} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer mul_tnumber_tnumber(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("mul_tnumber_tnumber requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.mul_tnumber_tnumber(arg0, arg1); + } + + /** MEOS {@code nsegment_end_position} — meos_npoint.h · scalar / stateless. */ + public static double nsegment_end_position(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("nsegment_end_position requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.nsegment_end_position(arg0); + } + + /** MEOS {@code nsegment_start_position} — meos_npoint.h · scalar / stateless. */ + public static double nsegment_start_position(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("nsegment_start_position requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.nsegment_start_position(arg0); + } + + /** MEOS {@code pose_angular_distance} — meos_pose.h · scalar / stateless. */ + public static double pose_angular_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_angular_distance requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_angular_distance(arg0, arg1); + } + + /** MEOS {@code pose_apply_geo} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer pose_apply_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_apply_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_apply_geo(arg0, arg1); + } + + /** MEOS {@code pose_as_geopose} — meos_pose.h · scalar / stateless. */ + public static java.lang.String pose_as_geopose(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_as_geopose requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_as_geopose(arg0, arg1, arg2); + } + + /** MEOS {@code pose_from_geopose} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer pose_from_geopose(java.lang.String arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_from_geopose requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_from_geopose(arg0); + } + + /** MEOS {@code pose_normalise} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer pose_normalise(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_normalise requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_normalise(arg0); + } + + /** MEOS {@code pose_pitch} — meos_pose.h · scalar / stateless. */ + public static double pose_pitch(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_pitch requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_pitch(arg0); + } + + /** MEOS {@code pose_roll} — meos_pose.h · scalar / stateless. */ + public static double pose_roll(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_roll requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_roll(arg0); + } + + /** MEOS {@code pose_yaw} — meos_pose.h · scalar / stateless. */ + public static double pose_yaw(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("pose_yaw requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.pose_yaw(arg0); + } + + /** MEOS {@code route_geom} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer route_geom(long arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("route_geom requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.route_geom(arg0); + } + + /** MEOS {@code rtree_insert_temporal_split} — meos.h · scalar / stateless. */ + public static void rtree_insert_temporal_split(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, int arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("rtree_insert_temporal_split requires libmeos — set -Dmeos.enabled=true"); + functions.GeneratedFunctions.rtree_insert_temporal_split(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code rtree_search_temporal_dedup} — meos.h · scalar / stateless. */ + public static int rtree_search_temporal_dedup(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, jnr.ffi.Pointer arg4) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("rtree_search_temporal_dedup requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.rtree_search_temporal_dedup(arg0, arg1, arg2, arg3, arg4); + } + + /** MEOS {@code spatialset_set_srid} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer spatialset_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("spatialset_set_srid requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.spatialset_set_srid(arg0, arg1); + } + + /** MEOS {@code spatialset_transform} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer spatialset_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("spatialset_transform requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.spatialset_transform(arg0, arg1); + } + + /** MEOS {@code spatialset_transform_pipeline} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer spatialset_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("spatialset_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.spatialset_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code super_union_span_span} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer super_union_span_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("super_union_span_span requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.super_union_span_span(arg0, arg1, arg2); + } + + /** MEOS {@code tand_bool_tbool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tand_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tand_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tand_bool_tbool(arg0, arg1); + } + + /** MEOS {@code tand_tbool_bool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tand_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tand_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tand_tbool_bool(arg0, arg1); + } + + /** MEOS {@code tand_tbool_tbool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tand_tbool_tbool(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tand_tbool_tbool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tand_tbool_tbool(arg0, arg1); + } + + /** MEOS {@code tbool_tand_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tbool_tand_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tbool_tand_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tbool_tand_combinefn(arg0, arg1); + } + + /** MEOS {@code tbool_tor_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tbool_tor_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tbool_tor_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tbool_tor_combinefn(arg0, arg1); + } + + /** MEOS {@code tboolseq_from_base_tstzset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tboolseq_from_base_tstzset(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tboolseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tboolseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tboolseq_from_base_tstzspan} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tboolseq_from_base_tstzspan(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tboolseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tboolseq_from_base_tstzspan(arg0, arg1); + } + + /** MEOS {@code tboolseqset_from_base_tstzspanset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tboolseqset_from_base_tstzspanset(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tboolseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tboolseqset_from_base_tstzspanset(arg0, arg1); + } + + /** MEOS {@code tbox_to_bigintspan} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tbox_to_bigintspan(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tbox_to_bigintspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tbox_to_bigintspan(arg0); + } + + /** MEOS {@code tcbuffer_convex_hull} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_convex_hull(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_convex_hull requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_convex_hull(arg0); + } + + /** MEOS {@code tcbuffer_end_value} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_end_value(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_end_value requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_end_value(arg0); + } + + /** MEOS {@code tcbuffer_from_base_temp} — meos_cbuffer.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tcbuffer_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_from_base_temp(arg0, arg1); + } + + /** MEOS {@code tcbuffer_start_value} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_start_value(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_start_value requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_start_value(arg0); + } + + /** MEOS {@code tcbuffer_traversed_area} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_traversed_area(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_traversed_area requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_traversed_area(arg0, arg1); + } + + /** MEOS {@code tcbuffer_value_at_timestamptz} — meos_cbuffer.h · scalar / stateless. */ + public static boolean tcbuffer_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_value_at_timestamptz(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tcbuffer_value_n} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_value_n requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_value_n(arg0, arg1); + } + + /** MEOS {@code tcbuffer_values} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer tcbuffer_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbuffer_values requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbuffer_values(arg0, arg1); + } + + /** MEOS {@code tcbufferinst_make} — meos_cbuffer.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tcbufferinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbufferinst_make requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbufferinst_make(arg0, arg1); + } + + /** MEOS {@code tcbufferseq_from_base_tstzset} — meos_cbuffer.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tcbufferseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbufferseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbufferseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tcbufferseq_from_base_tstzspan} — meos_cbuffer.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tcbufferseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbufferseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbufferseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tcbufferseqset_from_base_tstzspanset} — meos_cbuffer.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tcbufferseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tcbufferseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tcbufferseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code tdistance_tnpoint_geo} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer tdistance_tnpoint_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tdistance_tnpoint_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tdistance_tnpoint_geo(arg0, arg1); + } + + /** MEOS {@code tdistance_tpose_geo} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tdistance_tpose_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tdistance_tpose_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tdistance_tpose_geo(arg0, arg1); + } + + /** MEOS {@code tdwithin_tgeoarr_tgeoarr} — meos_geo.h · scalar / stateless. */ + public static jnr.ffi.Pointer tdwithin_tgeoarr_tgeoarr(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, double arg4, jnr.ffi.Pointer arg5, jnr.ffi.Pointer arg6) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tdwithin_tgeoarr_tgeoarr requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tdwithin_tgeoarr_tgeoarr(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** MEOS {@code temporal_basetype_name} — meos.h · scalar / stateless. */ + public static java.lang.String temporal_basetype_name(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("temporal_basetype_name requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.temporal_basetype_name(arg0); + } + + /** MEOS {@code temporal_tcount_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer temporal_tcount_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("temporal_tcount_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.temporal_tcount_combinefn(arg0, arg1); + } + + /** MEOS {@code tfloat_tmax_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tfloat_tmax_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloat_tmax_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloat_tmax_combinefn(arg0, arg1); + } + + /** MEOS {@code tfloat_tmin_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tfloat_tmin_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloat_tmin_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloat_tmin_combinefn(arg0, arg1); + } + + /** MEOS {@code tfloat_tsum_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tfloat_tsum_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloat_tsum_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloat_tsum_combinefn(arg0, arg1); + } + + /** MEOS {@code tfloatbox_time_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tfloatbox_time_tiles(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatbox_time_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatbox_time_tiles(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tfloatbox_value_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tfloatbox_value_tiles(jnr.ffi.Pointer arg0, double arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatbox_value_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatbox_value_tiles(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tfloatbox_value_time_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tfloatbox_value_time_tiles(jnr.ffi.Pointer arg0, double arg1, jnr.ffi.Pointer arg2, double arg3, java.time.OffsetDateTime arg4, jnr.ffi.Pointer arg5) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatbox_value_time_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatbox_value_time_tiles(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** MEOS {@code tfloatseq_from_base_tstzset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tfloatseq_from_base_tstzset(double arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tfloatseq_from_base_tstzspan} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tfloatseq_from_base_tstzspan(double arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tfloatseqset_from_base_tstzspanset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tfloatseqset_from_base_tstzspanset(double arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tfloatseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tfloatseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code tgeoseq_from_base_tstzset} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tgeoseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tgeoseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tgeoseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tgeoseq_from_base_tstzspan} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tgeoseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tgeoseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tgeoseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tgeoseqset_from_base_tstzspanset} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tgeoseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tgeoseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tgeoseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code tint_tmax_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tint_tmax_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tint_tmax_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tint_tmax_combinefn(arg0, arg1); + } + + /** MEOS {@code tint_tmin_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tint_tmin_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tint_tmin_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tint_tmin_combinefn(arg0, arg1); + } + + /** MEOS {@code tint_tsum_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tint_tsum_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tint_tsum_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tint_tsum_combinefn(arg0, arg1); + } + + /** MEOS {@code tintbox_time_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tintbox_time_tiles(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintbox_time_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintbox_time_tiles(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tintbox_value_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tintbox_value_tiles(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintbox_value_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintbox_value_tiles(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tintbox_value_time_tiles} — meos.h · multidimensional tiling (windowed). */ + public static jnr.ffi.Pointer tintbox_value_time_tiles(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, java.time.OffsetDateTime arg4, jnr.ffi.Pointer arg5) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintbox_value_time_tiles requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintbox_value_time_tiles(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** MEOS {@code tintseq_from_base_tstzset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tintseq_from_base_tstzset(int arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tintseq_from_base_tstzspan} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tintseq_from_base_tstzspan(int arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintseq_from_base_tstzspan(arg0, arg1); + } + + /** MEOS {@code tintseqset_from_base_tstzspanset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tintseqset_from_base_tstzspanset(int arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tintseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tintseqset_from_base_tstzspanset(arg0, arg1); + } + + /** MEOS {@code tnot_tbool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnot_tbool(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnot_tbool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnot_tbool(arg0); + } + + /** MEOS {@code tnpoint_end_value} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnpoint_end_value(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_end_value requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_end_value(arg0); + } + + /** MEOS {@code tnpoint_from_base_temp} — meos_npoint.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tnpoint_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_from_base_temp(arg0, arg1); + } + + /** MEOS {@code tnpoint_start_value} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnpoint_start_value(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_start_value requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_start_value(arg0); + } + + /** MEOS {@code tnpoint_value_at_timestamptz} — meos_npoint.h · scalar / stateless. */ + public static boolean tnpoint_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2, jnr.ffi.Pointer arg3) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_value_at_timestamptz(arg0, arg1, arg2, arg3); + } + + /** MEOS {@code tnpoint_value_n} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnpoint_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_value_n requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_value_n(arg0, arg1); + } + + /** MEOS {@code tnpoint_values} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnpoint_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpoint_values requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpoint_values(arg0, arg1); + } + + /** MEOS {@code tnpointseq_from_base_tstzset} — meos_npoint.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tnpointseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpointseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpointseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tnpointseq_from_base_tstzspan} — meos_npoint.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tnpointseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpointseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpointseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tnpointseqset_from_base_tstzspanset} — meos_npoint.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tnpointseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnpointseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnpointseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code tnumber_tavg_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tnumber_tavg_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tnumber_tavg_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tnumber_tavg_combinefn(arg0, arg1); + } + + /** MEOS {@code tor_bool_tbool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tor_bool_tbool(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tor_bool_tbool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tor_bool_tbool(arg0, arg1); + } + + /** MEOS {@code tor_tbool_bool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tor_tbool_bool(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tor_tbool_bool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tor_tbool_bool(arg0, arg1); + } + + /** MEOS {@code tor_tbool_tbool} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer tor_tbool_tbool(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tor_tbool_tbool requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tor_tbool_tbool(arg0, arg1); + } + + /** MEOS {@code tpointseq_from_base_tstzset} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tpointseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpointseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpointseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tpointseq_from_base_tstzspan} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tpointseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpointseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpointseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tpointseq_make_coords} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tpointseq_make_coords(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2, jnr.ffi.Pointer arg3, int arg4, int arg5, boolean arg6, boolean arg7, boolean arg8, int arg9, boolean arg10) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpointseq_make_coords requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpointseq_make_coords(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); + } + + /** MEOS {@code tpointseqset_from_base_tstzspanset} — meos_geo.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tpointseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpointseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpointseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code tpose_angular_speed} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_angular_speed(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_angular_speed requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_angular_speed(arg0); + } + + /** MEOS {@code tpose_apply_geo} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_apply_geo(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_apply_geo requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_apply_geo(arg0, arg1); + } + + /** MEOS {@code tpose_as_geopose} — meos_pose.h · scalar / stateless. */ + public static java.lang.String tpose_as_geopose(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_as_geopose requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_as_geopose(arg0, arg1, arg2); + } + + /** MEOS {@code tpose_from_base_temp} — meos_pose.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tpose_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_from_base_temp(arg0, arg1); + } + + /** MEOS {@code tpose_from_geopose} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_from_geopose(java.lang.String arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_from_geopose requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_from_geopose(arg0); + } + + /** MEOS {@code tpose_from_mfjson} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_from_mfjson(java.lang.String arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_from_mfjson(arg0); + } + + /** MEOS {@code tpose_pitch} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_pitch(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_pitch requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_pitch(arg0); + } + + /** MEOS {@code tpose_roll} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_roll(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_roll requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_roll(arg0); + } + + /** MEOS {@code tpose_speed} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_speed(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_speed requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_speed(arg0); + } + + /** MEOS {@code tpose_yaw} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer tpose_yaw(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tpose_yaw requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tpose_yaw(arg0); + } + + /** MEOS {@code tposeinst_make} — meos_pose.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tposeinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tposeinst_make requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tposeinst_make(arg0, arg1); + } + + /** MEOS {@code tposeseq_from_base_tstzset} — meos_pose.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tposeseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tposeseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tposeseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tposeseq_from_base_tstzspan} — meos_pose.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tposeseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tposeseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tposeseq_from_base_tstzspan(arg0, arg1, arg2); + } + + /** MEOS {@code tposeseqset_from_base_tstzspanset} — meos_pose.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tposeseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tposeseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tposeseqset_from_base_tstzspanset(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_at_geom} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_at_geom requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_at_geom(arg0, arg1); + } + + /** MEOS {@code trgeometry_at_stbox} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_at_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_at_stbox requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_at_stbox(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_body_point_trajectory} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_body_point_trajectory(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_body_point_trajectory requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_body_point_trajectory(arg0, arg1); + } + + /** MEOS {@code trgeometry_centroid} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_centroid(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_centroid requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_centroid(arg0); + } + + /** MEOS {@code trgeometry_convex_hull} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_convex_hull(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_convex_hull requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_convex_hull(arg0); + } + + /** MEOS {@code trgeometry_cumulative_length} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_cumulative_length(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_cumulative_length requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_cumulative_length(arg0); + } + + /** MEOS {@code trgeometry_dyntimewarp_distance} — meos_rgeo.h · scalar / stateless. */ + public static double trgeometry_dyntimewarp_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_dyntimewarp_distance requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_dyntimewarp_distance(arg0, arg1); + } + + /** MEOS {@code trgeometry_dyntimewarp_path} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_dyntimewarp_path(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_dyntimewarp_path requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_dyntimewarp_path(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_frechet_distance} — meos_rgeo.h · scalar / stateless. */ + public static double trgeometry_frechet_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_frechet_distance requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_frechet_distance(arg0, arg1); + } + + /** MEOS {@code trgeometry_frechet_path} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_frechet_path(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_frechet_path requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_frechet_path(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_hausdorff_distance} — meos_rgeo.h · scalar / stateless. */ + public static double trgeometry_hausdorff_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_hausdorff_distance requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_hausdorff_distance(arg0, arg1); + } + + /** MEOS {@code trgeometry_length} — meos_rgeo.h · scalar / stateless. */ + public static double trgeometry_length(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_length requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_length(arg0); + } + + /** MEOS {@code trgeometry_minus_geom} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_minus_geom requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_minus_geom(arg0, arg1); + } + + /** MEOS {@code trgeometry_minus_stbox} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_minus_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_minus_stbox requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_minus_stbox(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_space_boxes} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_space_boxes(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5, boolean arg6, jnr.ffi.Pointer arg7) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_space_boxes requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_space_boxes(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); + } + + /** MEOS {@code trgeometry_space_time_boxes} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_space_time_boxes(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, jnr.ffi.Pointer arg5, java.time.OffsetDateTime arg6, boolean arg7, boolean arg8, jnr.ffi.Pointer arg9) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_space_time_boxes requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_space_time_boxes(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); + } + + /** MEOS {@code trgeometry_speed} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_speed(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_speed requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_speed(arg0); + } + + /** MEOS {@code trgeometry_split_each_n_stboxes} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_split_each_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_split_each_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_split_each_n_stboxes(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_split_n_stboxes} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_split_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_split_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_split_n_stboxes(arg0, arg1, arg2); + } + + /** MEOS {@code trgeometry_stboxes} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_stboxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_stboxes requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_stboxes(arg0, arg1); + } + + /** MEOS {@code trgeometry_to_tgeometry} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_to_tgeometry(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_to_tgeometry requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_to_tgeometry(arg0); + } + + /** MEOS {@code trgeometry_twcentroid} — meos_rgeo.h · scalar / stateless. */ + public static jnr.ffi.Pointer trgeometry_twcentroid(jnr.ffi.Pointer arg0) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("trgeometry_twcentroid requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.trgeometry_twcentroid(arg0); + } + + /** MEOS {@code tsequence_make} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tsequence_make(jnr.ffi.Pointer arg0, int arg1, boolean arg2, boolean arg3, int arg4, boolean arg5) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tsequence_make requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tsequence_make(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** MEOS {@code tsequenceset_make} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer tsequenceset_make(jnr.ffi.Pointer arg0, int arg1, boolean arg2) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("tsequenceset_make requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.tsequenceset_make(arg0, arg1, arg2); + } + + /** MEOS {@code ttext_tmax_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer ttext_tmax_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ttext_tmax_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ttext_tmax_combinefn(arg0, arg1); + } + + /** MEOS {@code ttext_tmin_combinefn} — meos.h · scalar / stateless. */ + public static jnr.ffi.Pointer ttext_tmin_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ttext_tmin_combinefn requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ttext_tmin_combinefn(arg0, arg1); + } + + /** MEOS {@code ttextseq_from_base_tstzset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer ttextseq_from_base_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ttextseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ttextseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code ttextseq_from_base_tstzspan} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer ttextseq_from_base_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ttextseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ttextseq_from_base_tstzspan(arg0, arg1); + } + + /** MEOS {@code ttextseqset_from_base_tstzspanset} — meos.h · whole-sequence constructor — not a per-event op. */ + public static jnr.ffi.Pointer ttextseqset_from_base_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("ttextseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.ttextseqset_from_base_tstzspanset(arg0, arg1); + } + + /** MEOS {@code union_cbuffer_set} — meos_cbuffer.h · scalar / stateless. */ + public static jnr.ffi.Pointer union_cbuffer_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("union_cbuffer_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.union_cbuffer_set(arg0, arg1); + } + + /** MEOS {@code union_npoint_set} — meos_npoint.h · scalar / stateless. */ + public static jnr.ffi.Pointer union_npoint_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("union_npoint_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.union_npoint_set(arg0, arg1); + } + + /** MEOS {@code union_pose_set} — meos_pose.h · scalar / stateless. */ + public static jnr.ffi.Pointer union_pose_set(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MeosOpsRuntime.MEOS_AVAILABLE) + throw new UnsupportedOperationException("union_pose_set requires libmeos — set -Dmeos.enabled=true"); + return functions.GeneratedFunctions.union_pose_set(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsPoseSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsPoseSet.java new file mode 100644 index 00000000..dfd4078f --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsPoseSet.java @@ -0,0 +1,141 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: PoseSet + * Methods emitted: 7 (bounded-state=4 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsPoseSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsPoseSet() { /* utility */ } + + /** + * MEOS {@code poseset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer poseset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_make(arg0, arg1); + } + + /** + * MEOS {@code poseset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer poseset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_end_value(arg0); + } + + /** + * MEOS {@code poseset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer poseset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_start_value(arg0); + } + + /** + * MEOS {@code poseset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer poseset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_value_n(arg0, arg1); + } + + /** + * MEOS {@code poseset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer poseset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_values(arg0, arg1); + } + + /** + * MEOS {@code poseset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer poseset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_in(arg0); + } + + /** + * MEOS {@code poseset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String poseset_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "poseset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.poseset_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsRuntime.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsRuntime.java new file mode 100644 index 00000000..395a336d --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsRuntime.java @@ -0,0 +1,54 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +import functions.GeneratedFunctions; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * Shared runtime helper: owns the single MEOS_AVAILABLE static-init across + * all generated MeosOps* facades, so libmeos is probed exactly once per + * JVM rather than 82 times. */ +final class MeosOpsRuntime { + + static final boolean MEOS_AVAILABLE; + + static { + boolean enabled = Boolean.parseBoolean( + System.getProperty("meos.enabled", "true")); + boolean ok = false; + if (enabled) { + try { + GeneratedFunctions.meos_initialize(); + ok = true; + } catch (Throwable t) { + ok = false; + } + } + MEOS_AVAILABLE = ok; + } + + private MeosOpsRuntime() { /* utility */ } +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSTBox.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSTBox.java new file mode 100644 index 00000000..4d9ac323 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSTBox.java @@ -0,0 +1,799 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: STBox + * Methods emitted: 54 (bounded-state=42 · io-meta=6 · stateless=6) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsSTBox { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsSTBox() { /* utility */ } + + /** + * MEOS {@code stbox_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer stbox_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_copy(arg0); + } + + /** + * MEOS {@code stbox_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer stbox_make(boolean arg0, boolean arg1, boolean arg2, int arg3, double arg4, double arg5, double arg6, double arg7, double arg8, double arg9, jnr.ffi.Pointer arg10) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_make(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); + } + + /** + * MEOS {@code stbox_to_box3d} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer stbox_to_box3d(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_to_box3d requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_to_box3d(arg0); + } + + /** + * MEOS {@code stbox_to_gbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer stbox_to_gbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_to_gbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_to_gbox(arg0); + } + + /** + * MEOS {@code stbox_to_geo} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer stbox_to_geo(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_to_geo requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_to_geo(arg0); + } + + /** + * MEOS {@code stbox_to_tstzspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer stbox_to_tstzspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_to_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_to_tstzspan(arg0); + } + + /** + * MEOS {@code stbox_area} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double stbox_area(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_area requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_area(arg0, arg1); + } + + /** + * MEOS {@code stbox_cmp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static int stbox_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_cmp(arg0, arg1); + } + + /** + * MEOS {@code stbox_eq} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_eq(arg0, arg1); + } + + /** + * MEOS {@code stbox_expand_space} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_expand_space(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_expand_space requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_expand_space(arg0, arg1); + } + + /** + * MEOS {@code stbox_expand_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_expand_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_expand_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_expand_time(arg0, arg1); + } + + /** + * MEOS {@code stbox_ge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_ge(arg0, arg1); + } + + /** + * MEOS {@code stbox_get_space} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_get_space(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_get_space requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_get_space(arg0); + } + + /** + * MEOS {@code stbox_get_space_tile} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_get_space_tile(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_get_space_tile requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_get_space_tile(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code stbox_get_space_time_tile} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_get_space_time_tile(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, double arg2, double arg3, double arg4, jnr.ffi.Pointer arg5, jnr.ffi.Pointer arg6, java.time.OffsetDateTime arg7) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_get_space_time_tile requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_get_space_time_tile(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); + } + + /** + * MEOS {@code stbox_get_time_tile} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_get_time_tile(java.time.OffsetDateTime arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_get_time_tile requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_get_time_tile(arg0, arg1, arg2); + } + + /** + * MEOS {@code stbox_gt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_gt(arg0, arg1); + } + + /** + * MEOS {@code stbox_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int stbox_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_hash(arg0); + } + + /** + * MEOS {@code stbox_hash_extended} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long stbox_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code stbox_hast} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean stbox_hast(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_hast requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_hast(arg0); + } + + /** + * MEOS {@code stbox_hasx} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean stbox_hasx(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_hasx requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_hasx(arg0); + } + + /** + * MEOS {@code stbox_hasz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean stbox_hasz(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_hasz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_hasz(arg0); + } + + /** + * MEOS {@code stbox_isgeodetic} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean stbox_isgeodetic(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_isgeodetic requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_isgeodetic(arg0); + } + + /** + * MEOS {@code stbox_le} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_le(arg0, arg1); + } + + /** + * MEOS {@code stbox_lt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_lt(arg0, arg1); + } + + /** + * MEOS {@code stbox_ne} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean stbox_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_ne(arg0, arg1); + } + + /** + * MEOS {@code stbox_perimeter} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double stbox_perimeter(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_perimeter requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_perimeter(arg0, arg1); + } + + /** + * MEOS {@code stbox_quad_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_quad_split(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_quad_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_quad_split(arg0, arg1); + } + + /** + * MEOS {@code stbox_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_round(arg0, arg1); + } + + /** + * MEOS {@code stbox_set_srid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_set_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_set_srid(arg0, arg1); + } + + /** + * MEOS {@code stbox_shift_scale_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_shift_scale_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_shift_scale_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_shift_scale_time(arg0, arg1, arg2); + } + + /** + * MEOS {@code stbox_space_tiles} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_space_tiles(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5, jnr.ffi.Pointer arg6) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_space_tiles requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_space_tiles(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** + * MEOS {@code stbox_space_time_tiles} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_space_time_tiles(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, jnr.ffi.Pointer arg5, java.time.OffsetDateTime arg6, boolean arg7, jnr.ffi.Pointer arg8) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_space_time_tiles requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_space_time_tiles(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); + } + + /** + * MEOS {@code stbox_srid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int stbox_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_srid(arg0); + } + + /** + * MEOS {@code stbox_time_tiles} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_time_tiles(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, boolean arg3, jnr.ffi.Pointer arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_time_tiles requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_time_tiles(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code stbox_tmax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_tmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_tmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_tmax(arg0); + } + + /** + * MEOS {@code stbox_tmax_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_tmax_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_tmax_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_tmax_inc(arg0); + } + + /** + * MEOS {@code stbox_tmin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_tmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_tmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_tmin(arg0); + } + + /** + * MEOS {@code stbox_tmin_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_tmin_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_tmin_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_tmin_inc(arg0); + } + + /** + * MEOS {@code stbox_transform} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_transform requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_transform(arg0, arg1); + } + + /** + * MEOS {@code stbox_transform_pipeline} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code stbox_volume} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double stbox_volume(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_volume requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_volume(arg0); + } + + /** + * MEOS {@code stbox_xmax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_xmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_xmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_xmax(arg0); + } + + /** + * MEOS {@code stbox_xmin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_xmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_xmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_xmin(arg0); + } + + /** + * MEOS {@code stbox_ymax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_ymax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_ymax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_ymax(arg0); + } + + /** + * MEOS {@code stbox_ymin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_ymin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_ymin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_ymin(arg0); + } + + /** + * MEOS {@code stbox_zmax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_zmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_zmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_zmax(arg0); + } + + /** + * MEOS {@code stbox_zmin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer stbox_zmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_zmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_zmin(arg0); + } + + /** + * MEOS {@code stbox_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String stbox_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_as_hexwkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code stbox_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer stbox_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code stbox_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer stbox_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_from_hexwkb(arg0); + } + + /** + * MEOS {@code stbox_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer stbox_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_from_wkb(arg0, arg1); + } + + /** + * MEOS {@code stbox_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer stbox_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_in(arg0); + } + + /** + * MEOS {@code stbox_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String stbox_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "stbox_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.stbox_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSet.java new file mode 100644 index 00000000..2e778fd7 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSet.java @@ -0,0 +1,393 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: Set + * Methods emitted: 25 (bounded-state=14 · io-meta=4 · stateless=4 · windowed=3) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsSet() { /* utility */ } + + /** + * MEOS {@code set_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer set_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_copy(arg0); + } + + /** + * MEOS {@code set_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer set_to_span(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_to_span(arg0); + } + + /** + * MEOS {@code set_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer set_to_spanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_to_spanset(arg0); + } + + /** + * MEOS {@code set_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer set_to_tbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_to_tbox(arg0); + } + + /** + * MEOS {@code set_cmp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static int set_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_cmp(arg0, arg1); + } + + /** + * MEOS {@code set_eq} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_eq(arg0, arg1); + } + + /** + * MEOS {@code set_ge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_ge(arg0, arg1); + } + + /** + * MEOS {@code set_gt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_gt(arg0, arg1); + } + + /** + * MEOS {@code set_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int set_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_hash(arg0); + } + + /** + * MEOS {@code set_hash_extended} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long set_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code set_le} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_le(arg0, arg1); + } + + /** + * MEOS {@code set_lt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_lt(arg0, arg1); + } + + /** + * MEOS {@code set_ne} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean set_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_ne(arg0, arg1); + } + + /** + * MEOS {@code set_num_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int set_num_values(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_num_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_num_values(arg0); + } + + /** + * MEOS {@code set_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer set_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_round(arg0, arg1); + } + + /** + * MEOS {@code set_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer set_spans(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_spans(arg0, arg1); + } + + /** + * MEOS {@code set_split_each_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer set_split_each_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_split_each_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_split_each_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code set_split_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer set_split_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_split_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_split_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code set_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer set_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code set_union_finalfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer set_union_finalfn(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_union_finalfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_union_finalfn(arg0); + } + + /** + * MEOS {@code set_union_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer set_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code set_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String set_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_as_hexwkb(arg0, arg1); + } + + /** + * MEOS {@code set_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer set_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code set_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer set_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_from_hexwkb(arg0); + } + + /** + * MEOS {@code set_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer set_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "set_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.set_from_wkb(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpan.java new file mode 100644 index 00000000..1092c840 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpan.java @@ -0,0 +1,323 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: Span + * Methods emitted: 20 (bounded-state=11 · io-meta=4 · stateless=3 · windowed=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsSpan() { /* utility */ } + + /** + * MEOS {@code span_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer span_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_copy(arg0); + } + + /** + * MEOS {@code span_to_spanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer span_to_spanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_to_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_to_spanset(arg0); + } + + /** + * MEOS {@code span_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer span_to_tbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_to_tbox(arg0); + } + + /** + * MEOS {@code span_cmp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static int span_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_cmp(arg0, arg1); + } + + /** + * MEOS {@code span_eq} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_eq(arg0, arg1); + } + + /** + * MEOS {@code span_ge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_ge(arg0, arg1); + } + + /** + * MEOS {@code span_gt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_gt(arg0, arg1); + } + + /** + * MEOS {@code span_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int span_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_hash(arg0); + } + + /** + * MEOS {@code span_hash_extended} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long span_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code span_le} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_le(arg0, arg1); + } + + /** + * MEOS {@code span_lower_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean span_lower_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_lower_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_lower_inc(arg0); + } + + /** + * MEOS {@code span_lt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_lt(arg0, arg1); + } + + /** + * MEOS {@code span_ne} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean span_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_ne(arg0, arg1); + } + + /** + * MEOS {@code span_upper_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean span_upper_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_upper_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_upper_inc(arg0); + } + + /** + * MEOS {@code span_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer span_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code span_union_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer span_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code span_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String span_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_as_hexwkb(arg0, arg1); + } + + /** + * MEOS {@code span_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer span_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code span_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer span_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_from_hexwkb(arg0); + } + + /** + * MEOS {@code span_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer span_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "span_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.span_from_wkb(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpanSet.java new file mode 100644 index 00000000..8c0c661c --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSpanSet.java @@ -0,0 +1,463 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: SpanSet + * Methods emitted: 30 (bounded-state=20 · io-meta=4 · stateless=3 · windowed=3) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsSpanSet() { /* utility */ } + + /** + * MEOS {@code spanset_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer spanset_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_copy(arg0); + } + + /** + * MEOS {@code spanset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer spanset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_make(arg0, arg1); + } + + /** + * MEOS {@code spanset_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer spanset_to_tbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_to_tbox(arg0); + } + + /** + * MEOS {@code spanset_cmp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static int spanset_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_cmp(arg0, arg1); + } + + /** + * MEOS {@code spanset_end_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_end_span(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_end_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_end_span(arg0); + } + + /** + * MEOS {@code spanset_eq} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_eq(arg0, arg1); + } + + /** + * MEOS {@code spanset_ge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_ge(arg0, arg1); + } + + /** + * MEOS {@code spanset_gt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_gt(arg0, arg1); + } + + /** + * MEOS {@code spanset_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int spanset_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_hash(arg0); + } + + /** + * MEOS {@code spanset_hash_extended} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long spanset_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code spanset_le} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_le(arg0, arg1); + } + + /** + * MEOS {@code spanset_lower_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean spanset_lower_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_lower_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_lower_inc(arg0); + } + + /** + * MEOS {@code spanset_lt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_lt(arg0, arg1); + } + + /** + * MEOS {@code spanset_ne} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean spanset_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_ne(arg0, arg1); + } + + /** + * MEOS {@code spanset_num_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int spanset_num_spans(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_num_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_num_spans(arg0); + } + + /** + * MEOS {@code spanset_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_span(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_span(arg0); + } + + /** + * MEOS {@code spanset_span_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_span_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_span_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_span_n(arg0, arg1); + } + + /** + * MEOS {@code spanset_spanarr} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_spanarr(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_spanarr requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_spanarr(arg0, arg1); + } + + /** + * MEOS {@code spanset_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_spans(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_spans(arg0, arg1); + } + + /** + * MEOS {@code spanset_split_each_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_split_each_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_split_each_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_split_each_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code spanset_split_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_split_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_split_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_split_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code spanset_start_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer spanset_start_span(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_start_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_start_span(arg0); + } + + /** + * MEOS {@code spanset_upper_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean spanset_upper_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_upper_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_upper_inc(arg0); + } + + /** + * MEOS {@code spanset_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer spanset_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code spanset_union_finalfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer spanset_union_finalfn(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_union_finalfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_union_finalfn(arg0); + } + + /** + * MEOS {@code spanset_union_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer spanset_union_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_union_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_union_transfn(arg0, arg1); + } + + /** + * MEOS {@code spanset_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String spanset_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_as_hexwkb(arg0, arg1); + } + + /** + * MEOS {@code spanset_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer spanset_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code spanset_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer spanset_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_from_hexwkb(arg0); + } + + /** + * MEOS {@code spanset_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer spanset_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "spanset_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.spanset_from_wkb(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSqlSurface.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSqlSurface.java new file mode 100644 index 00000000..f883c015 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsSqlSurface.java @@ -0,0 +1,40 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/** + * Forwarding facade methods for MEOS functions that the MobilityDB SQL layer + * exposes as user functions but whose implementation lives in the internal headers + * ({@code meos_internal*.h}). JMEOS binds them; they are exposed here so the facade + * matches the SQL user surface as well as the public MEOS API. Each method delegates + * to its {@code functions.GeneratedFunctions} export under the + * {@link MeosOpsRuntime#MEOS_AVAILABLE} guard. + */ +public final class MeosOpsSqlSurface { + + private MeosOpsSqlSurface() { /* utility */ } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBigint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBigint.java new file mode 100644 index 00000000..f84235e4 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBigint.java @@ -0,0 +1,535 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by tools/codegen/emit_tbigint_facade.py — do not edit by hand. + * tbigint temporal-type family facade over functions.GeneratedFunctions. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTBigint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTBigint() { /* utility */ } + + /** MEOS {@code add_bigint_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer add_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code add_tbigint_bigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer add_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "add_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.add_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_eq_bigint_tbigint} — tbigint temporal family. */ + public static int always_eq_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_eq_tbigint_bigint} — tbigint temporal family. */ + public static int always_eq_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_eq_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_eq_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_ge_bigint_tbigint} — tbigint temporal family. */ + public static int always_ge_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_ge_tbigint_bigint} — tbigint temporal family. */ + public static int always_ge_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ge_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ge_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_gt_bigint_tbigint} — tbigint temporal family. */ + public static int always_gt_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_gt_tbigint_bigint} — tbigint temporal family. */ + public static int always_gt_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_gt_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_gt_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_le_bigint_tbigint} — tbigint temporal family. */ + public static int always_le_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_le_tbigint_bigint} — tbigint temporal family. */ + public static int always_le_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_le_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_le_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_lt_bigint_tbigint} — tbigint temporal family. */ + public static int always_lt_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_lt_tbigint_bigint} — tbigint temporal family. */ + public static int always_lt_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_lt_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_lt_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code always_ne_bigint_tbigint} — tbigint temporal family. */ + public static int always_ne_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code always_ne_tbigint_bigint} — tbigint temporal family. */ + public static int always_ne_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "always_ne_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.always_ne_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code div_bigint_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer div_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code div_tbigint_bigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer div_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "div_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.div_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_eq_bigint_tbigint} — tbigint temporal family. */ + public static int ever_eq_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_eq_tbigint_bigint} — tbigint temporal family. */ + public static int ever_eq_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_eq_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_eq_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_ge_bigint_tbigint} — tbigint temporal family. */ + public static int ever_ge_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_ge_tbigint_bigint} — tbigint temporal family. */ + public static int ever_ge_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ge_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ge_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_gt_bigint_tbigint} — tbigint temporal family. */ + public static int ever_gt_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_gt_tbigint_bigint} — tbigint temporal family. */ + public static int ever_gt_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_gt_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_gt_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_le_bigint_tbigint} — tbigint temporal family. */ + public static int ever_le_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_le_tbigint_bigint} — tbigint temporal family. */ + public static int ever_le_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_le_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_le_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_lt_bigint_tbigint} — tbigint temporal family. */ + public static int ever_lt_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_lt_tbigint_bigint} — tbigint temporal family. */ + public static int ever_lt_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_lt_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_lt_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code ever_ne_bigint_tbigint} — tbigint temporal family. */ + public static int ever_ne_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code ever_ne_tbigint_bigint} — tbigint temporal family. */ + public static int ever_ne_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ever_ne_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ever_ne_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code mul_bigint_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer mul_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "mul_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.mul_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code mul_tbigint_bigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer mul_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "mul_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.mul_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code sub_bigint_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer sub_bigint_tbigint(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_bigint_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_bigint_tbigint(arg0, arg1); + } + + /** MEOS {@code sub_tbigint_bigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer sub_tbigint_bigint(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "sub_tbigint_bigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.sub_tbigint_bigint(arg0, arg1); + } + + /** MEOS {@code tbigint_end_value} — tbigint temporal family. */ + public static long tbigint_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_end_value(arg0); + } + + /** MEOS {@code tbigint_from_base_temp} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_from_base_temp(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_from_base_temp(arg0, arg1); + } + + /** MEOS {@code tbigint_from_mfjson} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_from_mfjson(arg0); + } + + /** MEOS {@code tbigint_in} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_in(arg0); + } + + /** MEOS {@code tbigint_max_value} — tbigint temporal family. */ + public static long tbigint_max_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_max_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_max_value(arg0); + } + + /** MEOS {@code tbigint_min_value} — tbigint temporal family. */ + public static long tbigint_min_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_min_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_min_value(arg0); + } + + /** MEOS {@code tbigint_out} — tbigint temporal family. */ + public static java.lang.String tbigint_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_out(arg0); + } + + /** MEOS {@code tbigint_scale_value} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_scale_value(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_scale_value(arg0, arg1); + } + + /** MEOS {@code tbigint_shift_scale_value} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_shift_scale_value(jnr.ffi.Pointer arg0, long arg1, long arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_shift_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_shift_scale_value(arg0, arg1, arg2); + } + + /** MEOS {@code tbigint_shift_value} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_shift_value(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_shift_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_shift_value(arg0, arg1); + } + + /** MEOS {@code tbigint_start_value} — tbigint temporal family. */ + public static long tbigint_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_start_value(arg0); + } + + /** MEOS {@code tbigint_to_tfloat} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_to_tfloat(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_to_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_to_tfloat(arg0); + } + + /** MEOS {@code tbigint_to_tint} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_to_tint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_to_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_to_tint(arg0); + } + + /** MEOS {@code tbigint_value_n} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_value_n(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_value_n(arg0, arg1); + } + + /** MEOS {@code tbigint_values} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigint_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigint_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigint_values(arg0, arg1); + } + + /** MEOS {@code tbigintbox_expand} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintbox_expand(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintbox_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintbox_expand(arg0, arg1); + } + + /** MEOS {@code tbigintbox_shift_scale} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintbox_shift_scale(jnr.ffi.Pointer arg0, long arg1, long arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintbox_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintbox_shift_scale(arg0, arg1, arg2, arg3, arg4); + } + + /** MEOS {@code tbigintinst_make} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintinst_make(long arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintinst_make(arg0, arg1); + } + + /** MEOS {@code tbigintseq_from_base_tstzset} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintseq_from_base_tstzset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintseq_from_base_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintseq_from_base_tstzset(arg0, arg1); + } + + /** MEOS {@code tbigintseq_from_base_tstzspan} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintseq_from_base_tstzspan(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintseq_from_base_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintseq_from_base_tstzspan(arg0, arg1); + } + + /** MEOS {@code tbigintseqset_from_base_tstzspanset} — tbigint temporal family. */ + public static jnr.ffi.Pointer tbigintseqset_from_base_tstzspanset(long arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbigintseqset_from_base_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbigintseqset_from_base_tstzspanset(arg0, arg1); + } + + /** MEOS {@code tfloat_to_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer tfloat_to_tbigint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_to_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_to_tbigint(arg0); + } + + /** MEOS {@code tint_to_tbigint} — tbigint temporal family. */ + public static jnr.ffi.Pointer tint_to_tbigint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_to_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_to_tbigint(arg0); + } +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBool.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBool.java new file mode 100644 index 00000000..97b369ba --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBool.java @@ -0,0 +1,253 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TBool + * Methods emitted: 15 (bounded-state=8 · io-meta=3 · stateless=2 · windowed=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTBool { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTBool() { /* utility */ } + + /** + * MEOS {@code tbool_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tbool_from_base_temp(boolean arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code tbool_to_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tbool_to_tint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_to_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_to_tint(arg0); + } + + /** + * MEOS {@code tbool_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tbool_at_value(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_at_value(arg0, arg1); + } + + /** + * MEOS {@code tbool_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean tbool_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_end_value(arg0); + } + + /** + * MEOS {@code tbool_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tbool_minus_value(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_minus_value(arg0, arg1); + } + + /** + * MEOS {@code tbool_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean tbool_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_start_value(arg0); + } + + /** + * MEOS {@code tbool_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tbool_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code tbool_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbool_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_value_n(arg0, arg1); + } + + /** + * MEOS {@code tbool_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbool_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_values(arg0, arg1); + } + + /** + * MEOS {@code tbool_when_true} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbool_when_true(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_when_true requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_when_true(arg0); + } + + /** + * MEOS {@code tbool_tand_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tbool_tand_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_tand_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_tand_transfn(arg0, arg1); + } + + /** + * MEOS {@code tbool_tor_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tbool_tor_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_tor_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_tor_transfn(arg0, arg1); + } + + /** + * MEOS {@code tbool_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbool_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_from_mfjson(arg0); + } + + /** + * MEOS {@code tbool_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbool_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_in(arg0); + } + + /** + * MEOS {@code tbool_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tbool_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbool_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbool_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBoolInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBoolInst.java new file mode 100644 index 00000000..5e923e0f --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBoolInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TBoolInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTBoolInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTBoolInst() { /* utility */ } + + /** + * MEOS {@code tboolinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tboolinst_make(boolean arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tboolinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tboolinst_make(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBox.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBox.java new file mode 100644 index 00000000..4408c72f --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTBox.java @@ -0,0 +1,505 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TBox + * Methods emitted: 33 (bounded-state=22 · io-meta=6 · stateless=5) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTBox { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTBox() { /* utility */ } + + /** + * MEOS {@code tbox_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tbox_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_copy(arg0); + } + + /** + * MEOS {@code tbox_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tbox_make(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_make(arg0, arg1); + } + + /** + * MEOS {@code tbox_to_floatspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tbox_to_floatspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_to_floatspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_to_floatspan(arg0); + } + + /** + * MEOS {@code tbox_to_intspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tbox_to_intspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_to_intspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_to_intspan(arg0); + } + + /** + * MEOS {@code tbox_to_tstzspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tbox_to_tstzspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_to_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_to_tstzspan(arg0); + } + + /** + * MEOS {@code tbox_cmp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static int tbox_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_cmp(arg0, arg1); + } + + /** + * MEOS {@code tbox_eq} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_eq(arg0, arg1); + } + + /** + * MEOS {@code tbox_expand_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_expand_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_expand_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_expand_time(arg0, arg1); + } + + /** + * MEOS {@code tbox_ge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_ge(arg0, arg1); + } + + /** + * MEOS {@code tbox_gt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_gt(arg0, arg1); + } + + /** + * MEOS {@code tbox_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tbox_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_hash(arg0); + } + + /** + * MEOS {@code tbox_hash_extended} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long tbox_hash_extended(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_hash_extended requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_hash_extended(arg0, arg1); + } + + /** + * MEOS {@code tbox_hast} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean tbox_hast(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_hast requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_hast(arg0); + } + + /** + * MEOS {@code tbox_hasx} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean tbox_hasx(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_hasx requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_hasx(arg0); + } + + /** + * MEOS {@code tbox_le} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_le(arg0, arg1); + } + + /** + * MEOS {@code tbox_lt} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_lt(arg0, arg1); + } + + /** + * MEOS {@code tbox_ne} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 1 temporal

+ */ + public static boolean tbox_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_ne(arg0, arg1); + } + + /** + * MEOS {@code tbox_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_round(arg0, arg1); + } + + /** + * MEOS {@code tbox_shift_scale_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_shift_scale_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_shift_scale_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_shift_scale_time(arg0, arg1, arg2); + } + + /** + * MEOS {@code tbox_tmax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_tmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_tmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_tmax(arg0); + } + + /** + * MEOS {@code tbox_tmax_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_tmax_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_tmax_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_tmax_inc(arg0); + } + + /** + * MEOS {@code tbox_tmin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_tmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_tmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_tmin(arg0); + } + + /** + * MEOS {@code tbox_tmin_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_tmin_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_tmin_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_tmin_inc(arg0); + } + + /** + * MEOS {@code tbox_xmax} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_xmax(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_xmax requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_xmax(arg0); + } + + /** + * MEOS {@code tbox_xmax_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_xmax_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_xmax_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_xmax_inc(arg0); + } + + /** + * MEOS {@code tbox_xmin} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_xmin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_xmin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_xmin(arg0); + } + + /** + * MEOS {@code tbox_xmin_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tbox_xmin_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_xmin_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_xmin_inc(arg0); + } + + /** + * MEOS {@code tbox_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tbox_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_as_hexwkb(arg0, arg1, arg2); + } + + /** + * MEOS {@code tbox_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbox_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code tbox_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbox_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_from_hexwkb(arg0); + } + + /** + * MEOS {@code tbox_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbox_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_from_wkb(arg0, arg1); + } + + /** + * MEOS {@code tbox_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tbox_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_in(arg0); + } + + /** + * MEOS {@code tbox_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tbox_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tbox_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tbox_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTCbuffer.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTCbuffer.java new file mode 100644 index 00000000..285490b0 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTCbuffer.java @@ -0,0 +1,239 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TCbuffer + * Methods emitted: 15 (bounded-state=10 · stateless=3 · io-meta=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTCbuffer { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTCbuffer() { /* utility */ } + + /** + * MEOS {@code tcbuffer_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tcbuffer_make(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_make(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_to_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tcbuffer_to_tfloat(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_to_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_to_tfloat(arg0); + } + + /** + * MEOS {@code tcbuffer_to_tgeompoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tcbuffer_to_tgeompoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_to_tgeompoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_to_tgeompoint(arg0); + } + + /** + * MEOS {@code tcbuffer_at_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_at_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_at_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_at_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_at_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_at_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_at_geom(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_at_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_at_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_at_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_at_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tcbuffer_expand} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tcbuffer_expand(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_expand(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_minus_cbuffer} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_minus_cbuffer(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_minus_cbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_minus_cbuffer(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_minus_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_minus_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_minus_geom(arg0, arg1); + } + + /** + * MEOS {@code tcbuffer_minus_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tcbuffer_minus_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_minus_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_minus_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tcbuffer_points} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tcbuffer_points(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_points requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_points(arg0); + } + + /** + * MEOS {@code tcbuffer_radius} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tcbuffer_radius(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_radius requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_radius(arg0); + } + + /** + * MEOS {@code tcbuffer_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tcbuffer_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_from_mfjson(arg0); + } + + /** + * MEOS {@code tcbuffer_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tcbuffer_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tcbuffer_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tcbuffer_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloat.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloat.java new file mode 100644 index 00000000..838bf00f --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloat.java @@ -0,0 +1,547 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TFloat + * Methods emitted: 37 (bounded-state=26 · windowed=6 · io-meta=3 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTFloat { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTFloat() { /* utility */ } + + /** + * MEOS {@code tfloat_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tfloat_from_base_temp(double arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code tfloat_to_tint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tfloat_to_tint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_to_tint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_to_tint(arg0); + } + + /** + * MEOS {@code tfloat_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tfloat_at_value(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_at_value(arg0, arg1); + } + + /** + * MEOS {@code tfloat_ceil} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_ceil(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_ceil requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_ceil(arg0); + } + + /** + * MEOS {@code tfloat_degrees} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_degrees(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_degrees requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_degrees(arg0, arg1); + } + + /** + * MEOS {@code tfloat_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tfloat_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_end_value(arg0); + } + + /** + * MEOS {@code tfloat_exp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_exp(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_exp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_exp(arg0); + } + + /** + * MEOS {@code tfloat_floor} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_floor(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_floor requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_floor(arg0); + } + + /** + * MEOS {@code tfloat_ln} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_ln(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_ln requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_ln(arg0); + } + + /** + * MEOS {@code tfloat_log10} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_log10(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_log10 requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_log10(arg0); + } + + /** + * MEOS {@code tfloat_max_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tfloat_max_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_max_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_max_value(arg0); + } + + /** + * MEOS {@code tfloat_min_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tfloat_min_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_min_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_min_value(arg0); + } + + /** + * MEOS {@code tfloat_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tfloat_minus_value(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_minus_value(arg0, arg1); + } + + /** + * MEOS {@code tfloat_radians} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_radians(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_radians requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_radians(arg0); + } + + /** + * MEOS {@code tfloat_scale_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_scale_value(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_scale_value(arg0, arg1); + } + + /** + * MEOS {@code tfloat_shift_scale_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_shift_scale_value(jnr.ffi.Pointer arg0, double arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_shift_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_shift_scale_value(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_shift_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_shift_value(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_shift_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_shift_value(arg0, arg1); + } + + /** + * MEOS {@code tfloat_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tfloat_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_start_value(arg0); + } + + /** + * MEOS {@code tfloat_time_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_time_boxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_time_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_time_boxes(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tfloat_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tfloat_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_value_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_bins(jnr.ffi.Pointer arg0, double arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tfloat_value_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_boxes(jnr.ffi.Pointer arg0, double arg1, double arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_boxes(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tfloat_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_n(arg0, arg1); + } + + /** + * MEOS {@code tfloat_value_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_split(jnr.ffi.Pointer arg0, double arg1, double arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_split(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_value_time_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_time_boxes(jnr.ffi.Pointer arg0, double arg1, jnr.ffi.Pointer arg2, double arg3, java.time.OffsetDateTime arg4, jnr.ffi.Pointer arg5) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_time_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_time_boxes(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** + * MEOS {@code tfloat_value_time_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_value_time_split(jnr.ffi.Pointer arg0, double arg1, jnr.ffi.Pointer arg2, double arg3, java.time.OffsetDateTime arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_value_time_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_value_time_split(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code tfloat_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tfloat_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_values(arg0, arg1); + } + + /** + * MEOS {@code tfloat_tmax_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_tmax_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_tmax_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_tmax_transfn(arg0, arg1); + } + + /** + * MEOS {@code tfloat_tmin_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_tmin_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_tmin_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_tmin_transfn(arg0, arg1); + } + + /** + * MEOS {@code tfloat_tsum_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_tsum_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_tsum_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_tsum_transfn(arg0, arg1); + } + + /** + * MEOS {@code tfloat_wmax_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_wmax_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_wmax_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_wmax_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_wmin_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_wmin_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_wmin_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_wmin_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_wsum_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tfloat_wsum_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_wsum_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_wsum_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tfloat_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tfloat_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_from_mfjson(arg0); + } + + /** + * MEOS {@code tfloat_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tfloat_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_in(arg0); + } + + /** + * MEOS {@code tfloat_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tfloat_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloat_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloat_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloatInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloatInst.java new file mode 100644 index 00000000..a7bcc476 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTFloatInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TFloatInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTFloatInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTFloatInst() { /* utility */ } + + /** + * MEOS {@code tfloatinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tfloatinst_make(double arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tfloatinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tfloatinst_make(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeo.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeo.java new file mode 100644 index 00000000..b110e322 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeo.java @@ -0,0 +1,379 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TGeo + * Methods emitted: 24 (bounded-state=23 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTGeo { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTGeo() { /* utility */ } + + /** + * MEOS {@code tgeo_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tgeo_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code tgeo_affine} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_affine(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_affine requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_affine(arg0, arg1); + } + + /** + * MEOS {@code tgeo_at_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_at_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_at_geom(arg0, arg1); + } + + /** + * MEOS {@code tgeo_at_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_at_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_at_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_at_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_at_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_at_value(arg0, arg1); + } + + /** + * MEOS {@code tgeo_centroid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_centroid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_centroid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_centroid(arg0); + } + + /** + * MEOS {@code tgeo_convex_hull} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_convex_hull(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_convex_hull requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_convex_hull(arg0); + } + + /** + * MEOS {@code tgeo_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_end_value(arg0); + } + + /** + * MEOS {@code tgeo_minus_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_minus_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_minus_geom(arg0, arg1); + } + + /** + * MEOS {@code tgeo_minus_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_minus_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_minus_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_minus_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_minus_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_minus_value(arg0, arg1); + } + + /** + * MEOS {@code tgeo_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_scale(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_scale(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_space_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_space_boxes(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5, boolean arg6, jnr.ffi.Pointer arg7) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_space_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_space_boxes(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); + } + + /** + * MEOS {@code tgeo_space_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_space_split(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5, boolean arg6) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_space_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_space_split(arg0, arg1, arg2, arg3, arg4, arg5, arg6); + } + + /** + * MEOS {@code tgeo_space_time_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_space_time_boxes(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, jnr.ffi.Pointer arg5, java.time.OffsetDateTime arg6, boolean arg7, boolean arg8, jnr.ffi.Pointer arg9) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_space_time_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_space_time_boxes(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); + } + + /** + * MEOS {@code tgeo_space_time_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_space_time_split(jnr.ffi.Pointer arg0, double arg1, double arg2, double arg3, jnr.ffi.Pointer arg4, jnr.ffi.Pointer arg5, java.time.OffsetDateTime arg6, boolean arg7, boolean arg8) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_space_time_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_space_time_split(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); + } + + /** + * MEOS {@code tgeo_split_each_n_stboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_split_each_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_split_each_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_split_each_n_stboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_split_n_stboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_split_n_stboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_split_n_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_split_n_stboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_start_value(arg0); + } + + /** + * MEOS {@code tgeo_stboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_stboxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_stboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_stboxes(arg0, arg1); + } + + /** + * MEOS {@code tgeo_traversed_area} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_traversed_area(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_traversed_area requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_traversed_area(arg0, arg1); + } + + /** + * MEOS {@code tgeo_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tgeo_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code tgeo_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_value_n(arg0, arg1); + } + + /** + * MEOS {@code tgeo_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tgeo_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeo_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeo_values(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeogPoint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeogPoint.java new file mode 100644 index 00000000..49ef573e --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeogPoint.java @@ -0,0 +1,85 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TGeogPoint + * Methods emitted: 3 (io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTGeogPoint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTGeogPoint() { /* utility */ } + + /** + * MEOS {@code tgeogpoint_to_tgeography} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeogpoint_to_tgeography(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeogpoint_to_tgeography requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeogpoint_to_tgeography(arg0); + } + + /** + * MEOS {@code tgeogpoint_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeogpoint_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeogpoint_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeogpoint_from_mfjson(arg0); + } + + /** + * MEOS {@code tgeogpoint_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeogpoint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeogpoint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeogpoint_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeography.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeography.java new file mode 100644 index 00000000..d34333ee --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeography.java @@ -0,0 +1,99 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TGeography + * Methods emitted: 4 (io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTGeography { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTGeography() { /* utility */ } + + /** + * MEOS {@code tgeography_to_tgeogpoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeography_to_tgeogpoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeography_to_tgeogpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeography_to_tgeogpoint(arg0); + } + + /** + * MEOS {@code tgeography_to_tgeometry} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeography_to_tgeometry(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeography_to_tgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeography_to_tgeometry(arg0); + } + + /** + * MEOS {@code tgeography_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeography_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeography_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeography_from_mfjson(arg0); + } + + /** + * MEOS {@code tgeography_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeography_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeography_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeography_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeomPoint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeomPoint.java new file mode 100644 index 00000000..2352507b --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeomPoint.java @@ -0,0 +1,99 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TGeomPoint + * Methods emitted: 4 (io-meta=2 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTGeomPoint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTGeomPoint() { /* utility */ } + + /** + * MEOS {@code tgeompoint_to_tgeometry} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeompoint_to_tgeometry(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeompoint_to_tgeometry requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeompoint_to_tgeometry(arg0); + } + + /** + * MEOS {@code tgeompoint_to_tnpoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeompoint_to_tnpoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeompoint_to_tnpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeompoint_to_tnpoint(arg0); + } + + /** + * MEOS {@code tgeompoint_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeompoint_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeompoint_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeompoint_from_mfjson(arg0); + } + + /** + * MEOS {@code tgeompoint_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeompoint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeompoint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeompoint_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeometry.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeometry.java new file mode 100644 index 00000000..f6bf8d57 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTGeometry.java @@ -0,0 +1,113 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TGeometry + * Methods emitted: 5 (stateless=3 · io-meta=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTGeometry { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTGeometry() { /* utility */ } + + /** + * MEOS {@code tgeometry_to_tcbuffer} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeometry_to_tcbuffer(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeometry_to_tcbuffer requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeometry_to_tcbuffer(arg0); + } + + /** + * MEOS {@code tgeometry_to_tgeography} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeometry_to_tgeography(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeometry_to_tgeography requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeometry_to_tgeography(arg0); + } + + /** + * MEOS {@code tgeometry_to_tgeompoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tgeometry_to_tgeompoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeometry_to_tgeompoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeometry_to_tgeompoint(arg0); + } + + /** + * MEOS {@code tgeometry_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeometry_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeometry_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeometry_from_mfjson(arg0); + } + + /** + * MEOS {@code tgeometry_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tgeometry_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tgeometry_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tgeometry_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTInt.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTInt.java new file mode 100644 index 00000000..ad843cb1 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTInt.java @@ -0,0 +1,449 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TInt + * Methods emitted: 29 (bounded-state=18 · windowed=6 · io-meta=3 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTInt { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTInt() { /* utility */ } + + /** + * MEOS {@code tint_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tint_from_base_temp(int arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code tint_to_tfloat} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tint_to_tfloat(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_to_tfloat requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_to_tfloat(arg0); + } + + /** + * MEOS {@code tint_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tint_at_value(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_at_value(arg0, arg1); + } + + /** + * MEOS {@code tint_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tint_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_end_value(arg0); + } + + /** + * MEOS {@code tint_max_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tint_max_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_max_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_max_value(arg0); + } + + /** + * MEOS {@code tint_min_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tint_min_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_min_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_min_value(arg0); + } + + /** + * MEOS {@code tint_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tint_minus_value(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_minus_value(arg0, arg1); + } + + /** + * MEOS {@code tint_scale_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_scale_value(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_scale_value(arg0, arg1); + } + + /** + * MEOS {@code tint_shift_scale_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_shift_scale_value(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_shift_scale_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_shift_scale_value(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_shift_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_shift_value(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_shift_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_shift_value(arg0, arg1); + } + + /** + * MEOS {@code tint_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tint_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_start_value(arg0); + } + + /** + * MEOS {@code tint_time_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_time_boxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_time_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_time_boxes(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tint_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tint_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_value_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_bins(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tint_value_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_boxes(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_boxes(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tint_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_n(arg0, arg1); + } + + /** + * MEOS {@code tint_value_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_split(jnr.ffi.Pointer arg0, int arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_split(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_value_time_boxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_time_boxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2, int arg3, java.time.OffsetDateTime arg4, jnr.ffi.Pointer arg5) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_time_boxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_time_boxes(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** + * MEOS {@code tint_value_time_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_value_time_split(jnr.ffi.Pointer arg0, long arg1, jnr.ffi.Pointer arg2, int arg3, java.time.OffsetDateTime arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_value_time_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_value_time_split(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code tint_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tint_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_values(arg0, arg1); + } + + /** + * MEOS {@code tint_tmax_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_tmax_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_tmax_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_tmax_transfn(arg0, arg1); + } + + /** + * MEOS {@code tint_tmin_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_tmin_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_tmin_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_tmin_transfn(arg0, arg1); + } + + /** + * MEOS {@code tint_tsum_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_tsum_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_tsum_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_tsum_transfn(arg0, arg1); + } + + /** + * MEOS {@code tint_wmax_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_wmax_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_wmax_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_wmax_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_wmin_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_wmin_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_wmin_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_wmin_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_wsum_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tint_wsum_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_wsum_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_wsum_transfn(arg0, arg1, arg2); + } + + /** + * MEOS {@code tint_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tint_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_from_mfjson(arg0); + } + + /** + * MEOS {@code tint_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_in(arg0); + } + + /** + * MEOS {@code tint_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tint_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tint_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tint_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTIntInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTIntInst.java new file mode 100644 index 00000000..02b96600 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTIntInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TIntInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTIntInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTIntInst() { /* utility */ } + + /** + * MEOS {@code tintinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tintinst_make(int arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tintinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tintinst_make(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpoint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpoint.java new file mode 100644 index 00000000..f20f405e --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpoint.java @@ -0,0 +1,337 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TNpoint + * Methods emitted: 21 (bounded-state=16 · io-meta=3 · stateless=1 · windowed=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTNpoint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTNpoint() { /* utility */ } + + /** + * MEOS {@code tnpoint_to_tgeompoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tnpoint_to_tgeompoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_to_tgeompoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_to_tgeompoint(arg0); + } + + /** + * MEOS {@code tnpoint_at_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_at_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_at_geom(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_at_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_at_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_at_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_at_npoint(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_at_npointset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_at_npointset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_at_npointset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_at_npointset(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_at_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_at_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_at_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_at_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tnpoint_cumulative_length} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_cumulative_length(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_cumulative_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_cumulative_length(arg0); + } + + /** + * MEOS {@code tnpoint_length} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tnpoint_length(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_length(arg0); + } + + /** + * MEOS {@code tnpoint_minus_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_minus_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_minus_geom(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_minus_npoint} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_minus_npoint(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_minus_npoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_minus_npoint(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_minus_npointset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_minus_npointset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_minus_npointset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_minus_npointset(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_minus_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnpoint_minus_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_minus_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_minus_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tnpoint_positions} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_positions(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_positions requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_positions(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_route} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static long tnpoint_route(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_route requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_route(arg0); + } + + /** + * MEOS {@code tnpoint_routes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_routes(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_routes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_routes(arg0); + } + + /** + * MEOS {@code tnpoint_speed} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_speed(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_speed requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_speed(arg0); + } + + /** + * MEOS {@code tnpoint_trajectory} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_trajectory(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_trajectory requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_trajectory(arg0); + } + + /** + * MEOS {@code tnpoint_twcentroid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnpoint_twcentroid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_twcentroid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_twcentroid(arg0); + } + + /** + * MEOS {@code tnpoint_tcentroid_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tnpoint_tcentroid_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_tcentroid_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_tcentroid_transfn(arg0, arg1); + } + + /** + * MEOS {@code tnpoint_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tnpoint_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_from_mfjson(arg0); + } + + /** + * MEOS {@code tnpoint_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tnpoint_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_in(arg0); + } + + /** + * MEOS {@code tnpoint_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tnpoint_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpoint_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpoint_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpointInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpointInst.java new file mode 100644 index 00000000..225ca517 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNpointInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TNpointInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTNpointInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTNpointInst() { /* utility */ } + + /** + * MEOS {@code tnpointinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tnpointinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnpointinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnpointinst_make(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNumber.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNumber.java new file mode 100644 index 00000000..dd627915 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTNumber.java @@ -0,0 +1,365 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TNumber + * Methods emitted: 23 (bounded-state=17 · windowed=4 · stateless=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTNumber { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTNumber() { /* utility */ } + + /** + * MEOS {@code tnumber_to_span} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tnumber_to_span(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_to_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_to_span(arg0); + } + + /** + * MEOS {@code tnumber_to_tbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tnumber_to_tbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_to_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_to_tbox(arg0); + } + + /** + * MEOS {@code tnumber_abs} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_abs(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_abs requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_abs(arg0); + } + + /** + * MEOS {@code tnumber_angular_difference} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_angular_difference(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_angular_difference requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_angular_difference(arg0); + } + + /** + * MEOS {@code tnumber_at_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_at_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_at_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_at_span(arg0, arg1); + } + + /** + * MEOS {@code tnumber_at_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_at_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_at_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_at_spanset(arg0, arg1); + } + + /** + * MEOS {@code tnumber_at_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_at_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_at_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_at_tbox(arg0, arg1); + } + + /** + * MEOS {@code tnumber_avg_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tnumber_avg_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_avg_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_avg_value(arg0); + } + + /** + * MEOS {@code tnumber_delta_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_delta_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_delta_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_delta_value(arg0); + } + + /** + * MEOS {@code tnumber_integral} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tnumber_integral(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_integral requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_integral(arg0); + } + + /** + * MEOS {@code tnumber_minus_span} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_minus_span(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_minus_span requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_minus_span(arg0, arg1); + } + + /** + * MEOS {@code tnumber_minus_spanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_minus_spanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_minus_spanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_minus_spanset(arg0, arg1); + } + + /** + * MEOS {@code tnumber_minus_tbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tnumber_minus_tbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_minus_tbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_minus_tbox(arg0, arg1); + } + + /** + * MEOS {@code tnumber_split_each_n_tboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_split_each_n_tboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_split_each_n_tboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_split_each_n_tboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code tnumber_split_n_tboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_split_n_tboxes(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_split_n_tboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_split_n_tboxes(arg0, arg1, arg2); + } + + /** + * MEOS {@code tnumber_tboxes} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_tboxes(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_tboxes requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_tboxes(arg0, arg1); + } + + /** + * MEOS {@code tnumber_trend} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_trend(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_trend requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_trend(arg0); + } + + /** + * MEOS {@code tnumber_twavg} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tnumber_twavg(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_twavg requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_twavg(arg0); + } + + /** + * MEOS {@code tnumber_valuespans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tnumber_valuespans(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_valuespans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_valuespans(arg0); + } + + /** + * MEOS {@code tnumber_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tnumber_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code tnumber_tavg_finalfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tnumber_tavg_finalfn(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_tavg_finalfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_tavg_finalfn(arg0); + } + + /** + * MEOS {@code tnumber_tavg_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tnumber_tavg_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_tavg_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_tavg_transfn(arg0, arg1); + } + + /** + * MEOS {@code tnumber_wavg_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tnumber_wavg_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tnumber_wavg_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tnumber_wavg_transfn(arg0, arg1, arg2); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPoint.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPoint.java new file mode 100644 index 00000000..fdacd7ea --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPoint.java @@ -0,0 +1,379 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TPoint + * Methods emitted: 24 (bounded-state=20 · stateless=2 · windowed=2) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTPoint { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTPoint() { /* utility */ } + + /** + * MEOS {@code tpoint_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tpoint_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code tpoint_tfloat_to_geomeas} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tpoint_tfloat_to_geomeas(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_tfloat_to_geomeas requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_tfloat_to_geomeas(arg0, arg1, arg2); + } + + /** + * MEOS {@code tpoint_angular_difference} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_angular_difference(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_angular_difference requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_angular_difference(arg0); + } + + /** + * MEOS {@code tpoint_as_mvtgeom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_as_mvtgeom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, int arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_as_mvtgeom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_as_mvtgeom(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code tpoint_at_elevation} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_at_elevation(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_at_elevation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_at_elevation(arg0, arg1); + } + + /** + * MEOS {@code tpoint_at_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_at_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_at_geom(arg0, arg1); + } + + /** + * MEOS {@code tpoint_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_at_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_at_value(arg0, arg1); + } + + /** + * MEOS {@code tpoint_azimuth} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_azimuth(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_azimuth requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_azimuth(arg0); + } + + /** + * MEOS {@code tpoint_cumulative_length} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_cumulative_length(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_cumulative_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_cumulative_length(arg0); + } + + /** + * MEOS {@code tpoint_direction} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_direction(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_direction requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_direction(arg0); + } + + /** + * MEOS {@code tpoint_get_x} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_get_x(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_get_x requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_get_x(arg0); + } + + /** + * MEOS {@code tpoint_get_y} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_get_y(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_get_y requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_get_y(arg0); + } + + /** + * MEOS {@code tpoint_get_z} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_get_z(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_get_z requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_get_z(arg0); + } + + /** + * MEOS {@code tpoint_is_simple} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean tpoint_is_simple(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_is_simple requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_is_simple(arg0); + } + + /** + * MEOS {@code tpoint_length} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double tpoint_length(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_length(arg0); + } + + /** + * MEOS {@code tpoint_make_simple} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_make_simple(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_make_simple requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_make_simple(arg0, arg1); + } + + /** + * MEOS {@code tpoint_minus_elevation} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_minus_elevation(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_minus_elevation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_minus_elevation(arg0, arg1); + } + + /** + * MEOS {@code tpoint_minus_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_minus_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_minus_geom(arg0, arg1); + } + + /** + * MEOS {@code tpoint_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpoint_minus_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_minus_value(arg0, arg1); + } + + /** + * MEOS {@code tpoint_speed} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_speed(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_speed requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_speed(arg0); + } + + /** + * MEOS {@code tpoint_trajectory} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_trajectory(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_trajectory requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_trajectory(arg0, arg1); + } + + /** + * MEOS {@code tpoint_twcentroid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpoint_twcentroid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_twcentroid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_twcentroid(arg0); + } + + /** + * MEOS {@code tpoint_tcentroid_finalfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tpoint_tcentroid_finalfn(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_tcentroid_finalfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_tcentroid_finalfn(arg0); + } + + /** + * MEOS {@code tpoint_tcentroid_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tpoint_tcentroid_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpoint_tcentroid_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpoint_tcentroid_transfn(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPose.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPose.java new file mode 100644 index 00000000..b3309ec8 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTPose.java @@ -0,0 +1,281 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TPose + * Methods emitted: 17 (bounded-state=14 · stateless=2 · io-meta=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTPose { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTPose() { /* utility */ } + + /** + * MEOS {@code tpose_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tpose_make(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_make(arg0, arg1); + } + + /** + * MEOS {@code tpose_to_tpoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tpose_to_tpoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_to_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_to_tpoint(arg0); + } + + /** + * MEOS {@code tpose_at_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_at_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_at_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_at_geom(arg0, arg1); + } + + /** + * MEOS {@code tpose_at_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_at_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_at_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_at_pose(arg0, arg1); + } + + /** + * MEOS {@code tpose_at_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_at_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_at_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_at_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tpose_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_end_value(arg0); + } + + /** + * MEOS {@code tpose_minus_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_minus_geom(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_minus_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_minus_geom(arg0, arg1); + } + + /** + * MEOS {@code tpose_minus_pose} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_minus_pose(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_minus_pose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_minus_pose(arg0, arg1); + } + + /** + * MEOS {@code tpose_minus_stbox} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_minus_stbox(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_minus_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_minus_stbox(arg0, arg1, arg2); + } + + /** + * MEOS {@code tpose_points} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_points(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_points requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_points(arg0); + } + + /** + * MEOS {@code tpose_rotation} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_rotation(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_rotation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_rotation(arg0); + } + + /** + * MEOS {@code tpose_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_start_value(arg0); + } + + /** + * MEOS {@code tpose_trajectory} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_trajectory(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_trajectory requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_trajectory(arg0); + } + + /** + * MEOS {@code tpose_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer tpose_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code tpose_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_value_n(arg0, arg1); + } + + /** + * MEOS {@code tpose_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tpose_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_values(arg0, arg1); + } + + /** + * MEOS {@code tpose_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tpose_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tpose_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tpose_in(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometry.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometry.java new file mode 100644 index 00000000..6ef8543f --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometry.java @@ -0,0 +1,547 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TRGeometry + * Methods emitted: 36 (bounded-state=32 · stateless=3 · io-meta=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTRGeometry { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTRGeometry() { /* utility */ } + + /** + * MEOS {@code trgeometry_to_tinstant} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer trgeometry_to_tinstant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_to_tinstant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_to_tinstant(arg0); + } + + /** + * MEOS {@code trgeometry_to_tpoint} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer trgeometry_to_tpoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_to_tpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_to_tpoint(arg0); + } + + /** + * MEOS {@code trgeometry_to_tpose} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer trgeometry_to_tpose(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_to_tpose requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_to_tpose(arg0); + } + + /** + * MEOS {@code trgeometry_after_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_after_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_after_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_after_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_append_tinstant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_append_tinstant(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_append_tinstant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_append_tinstant(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** + * MEOS {@code trgeometry_append_tsequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_append_tsequence(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_append_tsequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_append_tsequence(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_before_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_before_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_before_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_before_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_delete_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_delete_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_delete_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_delete_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_delete_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_delete_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_delete_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_delete_tstzset(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_delete_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_delete_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_delete_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_delete_tstzspan(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_delete_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_delete_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_delete_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_delete_tstzspanset(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_end_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_end_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_end_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_end_instant(arg0); + } + + /** + * MEOS {@code trgeometry_end_sequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_end_sequence(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_end_sequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_end_sequence(arg0); + } + + /** + * MEOS {@code trgeometry_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_end_value(arg0); + } + + /** + * MEOS {@code trgeometry_geom} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_geom(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_geom requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_geom(arg0); + } + + /** + * MEOS {@code trgeometry_instant_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_instant_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_instant_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_instant_n(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_instants} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_instants(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_instants requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_instants(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_points} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_points(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_points requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_points(arg0); + } + + /** + * MEOS {@code trgeometry_restrict_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_restrict_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_tstzset(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_restrict_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_tstzspan(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_restrict_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_tstzspanset(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_restrict_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_value(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_restrict_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_restrict_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_restrict_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_restrict_values(arg0, arg1, arg2); + } + + /** + * MEOS {@code trgeometry_rotation} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_rotation(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_rotation requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_rotation(arg0); + } + + /** + * MEOS {@code trgeometry_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_round(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_segments} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_segments(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_segments requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_segments(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_sequence_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_sequence_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_sequence_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_sequence_n(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_sequences} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_sequences(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_sequences requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_sequences(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_set_interp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_set_interp(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_set_interp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_set_interp(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_start_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_start_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_start_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_start_instant(arg0); + } + + /** + * MEOS {@code trgeometry_start_sequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_start_sequence(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_start_sequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_start_sequence(arg0); + } + + /** + * MEOS {@code trgeometry_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_start_value(arg0); + } + + /** + * MEOS {@code trgeometry_traversed_area} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_traversed_area(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_traversed_area requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_traversed_area(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer trgeometry_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_value_n(arg0, arg1); + } + + /** + * MEOS {@code trgeometry_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String trgeometry_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeometry_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeometry_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometryInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometryInst.java new file mode 100644 index 00000000..d2a2654c --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTRGeometryInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TRGeometryInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTRGeometryInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTRGeometryInst() { /* utility */ } + + /** + * MEOS {@code trgeoinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer trgeoinst_make(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "trgeoinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.trgeoinst_make(arg0, arg1, arg2); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSequenceSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSequenceSet.java new file mode 100644 index 00000000..34cf32a9 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSequenceSet.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TSequenceSet + * Methods emitted: 1 (bounded-state=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTSequenceSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTSequenceSet() { /* utility */ } + + /** + * MEOS {@code tsequenceset_make_gaps} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tsequenceset_make_gaps(jnr.ffi.Pointer arg0, int arg1, int arg2, jnr.ffi.Pointer arg3, double arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tsequenceset_make_gaps requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tsequenceset_make_gaps(arg0, arg1, arg2, arg3, arg4); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSpatial.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSpatial.java new file mode 100644 index 00000000..c2813ff1 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTSpatial.java @@ -0,0 +1,169 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TSpatial + * Methods emitted: 9 (bounded-state=4 · io-meta=3 · stateless=1 · windowed=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTSpatial { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTSpatial() { /* utility */ } + + /** + * MEOS {@code tspatial_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tspatial_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_to_stbox(arg0); + } + + /** + * MEOS {@code tspatial_set_srid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tspatial_set_srid(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_set_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_set_srid(arg0, arg1); + } + + /** + * MEOS {@code tspatial_srid} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tspatial_srid(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_srid requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_srid(arg0); + } + + /** + * MEOS {@code tspatial_transform} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tspatial_transform(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_transform requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_transform(arg0, arg1); + } + + /** + * MEOS {@code tspatial_transform_pipeline} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tspatial_transform_pipeline(jnr.ffi.Pointer arg0, java.lang.String arg1, int arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_transform_pipeline requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_transform_pipeline(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tspatial_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tspatial_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code tspatial_as_ewkt} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tspatial_as_ewkt(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_as_ewkt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_as_ewkt(arg0, arg1); + } + + /** + * MEOS {@code tspatial_as_text} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tspatial_as_text(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_as_text requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_as_text(arg0, arg1); + } + + /** + * MEOS {@code tspatial_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tspatial_out(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tspatial_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tspatial_out(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTText.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTText.java new file mode 100644 index 00000000..1e124a1d --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTText.java @@ -0,0 +1,295 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TText + * Methods emitted: 18 (bounded-state=12 · io-meta=3 · windowed=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTText { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTText() { /* utility */ } + + /** + * MEOS {@code ttext_from_base_temp} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer ttext_from_base_temp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_from_base_temp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_from_base_temp(arg0, arg1); + } + + /** + * MEOS {@code ttext_at_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer ttext_at_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_at_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_at_value(arg0, arg1); + } + + /** + * MEOS {@code ttext_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_end_value(arg0); + } + + /** + * MEOS {@code ttext_initcap} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_initcap(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_initcap requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_initcap(arg0); + } + + /** + * MEOS {@code ttext_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_lower(arg0); + } + + /** + * MEOS {@code ttext_max_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_max_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_max_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_max_value(arg0); + } + + /** + * MEOS {@code ttext_min_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_min_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_min_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_min_value(arg0); + } + + /** + * MEOS {@code ttext_minus_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer ttext_minus_value(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_minus_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_minus_value(arg0, arg1); + } + + /** + * MEOS {@code ttext_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_start_value(arg0); + } + + /** + * MEOS {@code ttext_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_upper(arg0); + } + + /** + * MEOS {@code ttext_value_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer ttext_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_value_at_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code ttext_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_value_n(arg0, arg1); + } + + /** + * MEOS {@code ttext_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer ttext_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_values(arg0, arg1); + } + + /** + * MEOS {@code ttext_tmax_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer ttext_tmax_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_tmax_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_tmax_transfn(arg0, arg1); + } + + /** + * MEOS {@code ttext_tmin_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer ttext_tmin_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_tmin_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_tmin_transfn(arg0, arg1); + } + + /** + * MEOS {@code ttext_from_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer ttext_from_mfjson(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_from_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_from_mfjson(arg0); + } + + /** + * MEOS {@code ttext_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer ttext_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_in(arg0); + } + + /** + * MEOS {@code ttext_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String ttext_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttext_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttext_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTTextInst.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTTextInst.java new file mode 100644 index 00000000..c7efb517 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTTextInst.java @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TTextInst + * Methods emitted: 1 (stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTTextInst { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTTextInst() { /* utility */ } + + /** + * MEOS {@code ttextinst_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer ttextinst_make(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "ttextinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.ttextinst_make(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTemporal.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTemporal.java new file mode 100644 index 00000000..7e3c0185 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTemporal.java @@ -0,0 +1,1401 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: Temporal + * Methods emitted: 97 (bounded-state=75 · cross-stream=7 · io-meta=5 · stateless=5 · windowed=5) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTemporal { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTemporal() { /* utility */ } + + /** + * MEOS {@code temporal_copy} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer temporal_copy(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_copy requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_copy(arg0); + } + + /** + * MEOS {@code temporal_to_tinstant} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer temporal_to_tinstant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_to_tinstant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_to_tinstant(arg0); + } + + /** + * MEOS {@code temporal_to_tsequence} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer temporal_to_tsequence(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_to_tsequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_to_tsequence(arg0, arg1); + } + + /** + * MEOS {@code temporal_to_tsequenceset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer temporal_to_tsequenceset(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_to_tsequenceset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_to_tsequenceset(arg0, arg1); + } + + /** + * MEOS {@code temporal_to_tstzspan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer temporal_to_tstzspan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_to_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_to_tstzspan(arg0); + } + + /** + * MEOS {@code temporal_after_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_after_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_after_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_after_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_append_tinstant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_append_tinstant(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, double arg3, jnr.ffi.Pointer arg4, boolean arg5) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_append_tinstant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_append_tinstant(arg0, arg1, arg2, arg3, arg4, arg5); + } + + /** + * MEOS {@code temporal_append_tsequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_append_tsequence(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_append_tsequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_append_tsequence(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_at_max} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_max(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_max requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_max(arg0); + } + + /** + * MEOS {@code temporal_at_min} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_min(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_min requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_min(arg0); + } + + /** + * MEOS {@code temporal_at_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code temporal_at_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_tstzset(arg0, arg1); + } + + /** + * MEOS {@code temporal_at_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code temporal_at_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_tstzspanset(arg0, arg1); + } + + /** + * MEOS {@code temporal_at_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_at_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_at_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_at_values(arg0, arg1); + } + + /** + * MEOS {@code temporal_before_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_before_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_before_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_before_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_delete_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_delete_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_delete_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_delete_timestamptz(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_delete_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_delete_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_delete_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_delete_tstzset(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_delete_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_delete_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_delete_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_delete_tstzspan(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_delete_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_delete_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_delete_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_delete_tstzspanset(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_derivative} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_derivative(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_derivative requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_derivative(arg0); + } + + /** + * MEOS {@code temporal_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_duration(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_duration(arg0, arg1); + } + + /** + * MEOS {@code temporal_dyntimewarp_distance} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double temporal_dyntimewarp_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_dyntimewarp_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_dyntimewarp_distance(arg0, arg1); + } + + /** + * MEOS {@code temporal_dyntimewarp_path} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_dyntimewarp_path(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_dyntimewarp_path requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_dyntimewarp_path(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_end_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_end_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_end_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_end_instant(arg0); + } + + /** + * MEOS {@code temporal_end_sequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_end_sequence(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_end_sequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_end_sequence(arg0); + } + + /** + * MEOS {@code temporal_end_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime temporal_end_timestamptz(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_end_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_end_timestamptz(arg0); + } + + /** + * MEOS {@code temporal_frechet_distance} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double temporal_frechet_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_frechet_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_frechet_distance(arg0, arg1); + } + + /** + * MEOS {@code temporal_frechet_path} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_frechet_path(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_frechet_path requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_frechet_path(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_hash} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int temporal_hash(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_hash requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_hash(arg0); + } + + /** + * MEOS {@code temporal_hausdorff_distance} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static double temporal_hausdorff_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_hausdorff_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_hausdorff_distance(arg0, arg1); + } + + /** + * MEOS {@code temporal_insert} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_insert(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_insert requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_insert(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_instant_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_instant_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_instant_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_instant_n(arg0, arg1); + } + + /** + * MEOS {@code temporal_instants} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_instants(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_instants requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_instants(arg0, arg1); + } + + /** + * MEOS {@code temporal_interp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.lang.String temporal_interp(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_interp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_interp(arg0); + } + + /** + * MEOS {@code temporal_lower_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean temporal_lower_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_lower_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_lower_inc(arg0); + } + + /** + * MEOS {@code temporal_max_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_max_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_max_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_max_instant(arg0); + } + + /** + * MEOS {@code temporal_merge} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_merge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_merge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_merge(arg0, arg1); + } + + /** + * MEOS {@code temporal_merge_array} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_merge_array(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_merge_array requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_merge_array(arg0, arg1); + } + + /** + * MEOS {@code temporal_min_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_min_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_min_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_min_instant(arg0); + } + + /** + * MEOS {@code temporal_minus_max} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_max(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_max requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_max(arg0); + } + + /** + * MEOS {@code temporal_minus_min} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_min(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_min requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_min(arg0); + } + + /** + * MEOS {@code temporal_minus_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_timestamptz(arg0, arg1); + } + + /** + * MEOS {@code temporal_minus_tstzset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_tstzset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_tstzset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_tstzset(arg0, arg1); + } + + /** + * MEOS {@code temporal_minus_tstzspan} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_tstzspan(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_tstzspan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_tstzspan(arg0, arg1); + } + + /** + * MEOS {@code temporal_minus_tstzspanset} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_tstzspanset(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_tstzspanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_tstzspanset(arg0, arg1); + } + + /** + * MEOS {@code temporal_minus_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code restriction}.

+ *

Classification: role=restriction

+ */ + public static jnr.ffi.Pointer temporal_minus_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_minus_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_minus_values(arg0, arg1); + } + + /** + * MEOS {@code temporal_num_instants} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int temporal_num_instants(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_num_instants requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_num_instants(arg0); + } + + /** + * MEOS {@code temporal_num_sequences} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int temporal_num_sequences(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_num_sequences requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_num_sequences(arg0); + } + + /** + * MEOS {@code temporal_num_timestamps} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int temporal_num_timestamps(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_num_timestamps requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_num_timestamps(arg0); + } + + /** + * MEOS {@code temporal_round} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_round(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_round requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_round(arg0, arg1); + } + + /** + * MEOS {@code temporal_scale_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_scale_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_scale_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_scale_time(arg0, arg1); + } + + /** + * MEOS {@code temporal_segm_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_segm_duration(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_segm_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_segm_duration(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code temporal_segments} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_segments(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_segments requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_segments(arg0, arg1); + } + + /** + * MEOS {@code temporal_sequence_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_sequence_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_sequence_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_sequence_n(arg0, arg1); + } + + /** + * MEOS {@code temporal_sequences} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_sequences(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_sequences requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_sequences(arg0, arg1); + } + + /** + * MEOS {@code temporal_set_interp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_set_interp(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_set_interp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_set_interp(arg0, arg1); + } + + /** + * MEOS {@code temporal_shift_scale_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_shift_scale_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_shift_scale_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_shift_scale_time(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_shift_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_shift_time(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_shift_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_shift_time(arg0, arg1); + } + + /** + * MEOS {@code temporal_simplify_dp} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_simplify_dp(jnr.ffi.Pointer arg0, double arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_simplify_dp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_simplify_dp(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_simplify_max_dist} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_simplify_max_dist(jnr.ffi.Pointer arg0, double arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_simplify_max_dist requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_simplify_max_dist(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_simplify_min_dist} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_simplify_min_dist(jnr.ffi.Pointer arg0, double arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_simplify_min_dist requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_simplify_min_dist(arg0, arg1); + } + + /** + * MEOS {@code temporal_simplify_min_tdelta} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_simplify_min_tdelta(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_simplify_min_tdelta requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_simplify_min_tdelta(arg0, arg1); + } + + /** + * MEOS {@code temporal_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_spans(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_spans(arg0, arg1); + } + + /** + * MEOS {@code temporal_split_each_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_split_each_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_split_each_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_split_each_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_split_n_spans} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_split_n_spans(jnr.ffi.Pointer arg0, int arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_split_n_spans requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_split_n_spans(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_start_instant} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_start_instant(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_start_instant requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_start_instant(arg0); + } + + /** + * MEOS {@code temporal_start_sequence} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_start_sequence(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_start_sequence requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_start_sequence(arg0); + } + + /** + * MEOS {@code temporal_start_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime temporal_start_timestamptz(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_start_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_start_timestamptz(arg0); + } + + /** + * MEOS {@code temporal_stops} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_stops(jnr.ffi.Pointer arg0, double arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_stops requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_stops(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_subtype} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.lang.String temporal_subtype(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_subtype requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_subtype(arg0); + } + + /** + * MEOS {@code temporal_time} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_time(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_time requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_time(arg0); + } + + /** + * MEOS {@code temporal_time_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_time_bins(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_time_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_time_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code temporal_time_split} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_time_split(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_time_split requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_time_split(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_timestamps} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_timestamps(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_timestamps requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_timestamps(arg0, arg1); + } + + /** + * MEOS {@code temporal_timestamptz_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_timestamptz_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_timestamptz_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_timestamptz_n(arg0, arg1); + } + + /** + * MEOS {@code temporal_tprecision} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_tprecision(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_tprecision requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_tprecision(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_tsample} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_tsample(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, int arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_tsample requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_tsample(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code temporal_update} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer temporal_update(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_update requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_update(arg0, arg1, arg2); + } + + /** + * MEOS {@code temporal_upper_inc} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static boolean temporal_upper_inc(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_upper_inc requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_upper_inc(arg0); + } + + /** + * MEOS {@code temporal_extent_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer temporal_extent_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_extent_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_extent_transfn(arg0, arg1); + } + + /** + * MEOS {@code temporal_merge_combinefn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer temporal_merge_combinefn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_merge_combinefn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_merge_combinefn(arg0, arg1); + } + + /** + * MEOS {@code temporal_merge_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer temporal_merge_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_merge_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_merge_transfn(arg0, arg1); + } + + /** + * MEOS {@code temporal_tagg_finalfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer temporal_tagg_finalfn(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_tagg_finalfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_tagg_finalfn(arg0); + } + + /** + * MEOS {@code temporal_tcount_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer temporal_tcount_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_tcount_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_tcount_transfn(arg0, arg1); + } + + /** + * MEOS {@code temporal_cmp} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static int temporal_cmp(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_cmp requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_cmp(arg0, arg1); + } + + /** + * MEOS {@code temporal_eq} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_eq(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_eq requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_eq(arg0, arg1); + } + + /** + * MEOS {@code temporal_ge} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_ge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_ge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_ge(arg0, arg1); + } + + /** + * MEOS {@code temporal_gt} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_gt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_gt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_gt(arg0, arg1); + } + + /** + * MEOS {@code temporal_le} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_le(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_le requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_le(arg0, arg1); + } + + /** + * MEOS {@code temporal_lt} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_lt(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_lt requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_lt(arg0, arg1); + } + + /** + * MEOS {@code temporal_ne} — tier cross-stream. + *

Pairwise across streams — caller wraps in a join.

+ *

Object-model role: {@code predicate}.

+ *

Classification: predicate on 2 temporals

+ */ + public static boolean temporal_ne(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_ne requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_ne(arg0, arg1); + } + + /** + * MEOS {@code temporal_as_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String temporal_as_hexwkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_as_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_as_hexwkb(arg0, arg1); + } + + /** + * MEOS {@code temporal_as_mfjson} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String temporal_as_mfjson(jnr.ffi.Pointer arg0, boolean arg1, int arg2, int arg3, java.lang.String arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_as_mfjson requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_as_mfjson(arg0, arg1, arg2, arg3, arg4); + } + + /** + * MEOS {@code temporal_as_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer temporal_as_wkb(jnr.ffi.Pointer arg0, byte arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_as_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_as_wkb(arg0, arg1); + } + + /** + * MEOS {@code temporal_from_hexwkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer temporal_from_hexwkb(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_from_hexwkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_from_hexwkb(arg0); + } + + /** + * MEOS {@code temporal_from_wkb} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer temporal_from_wkb(jnr.ffi.Pointer arg0, long arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "temporal_from_wkb requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.temporal_from_wkb(arg0, arg1); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTextSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTextSet.java new file mode 100644 index 00000000..9e6843c5 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTextSet.java @@ -0,0 +1,183 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TextSet + * Methods emitted: 10 (bounded-state=7 · io-meta=2 · stateless=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTextSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTextSet() { /* utility */ } + + /** + * MEOS {@code textset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer textset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_make(arg0, arg1); + } + + /** + * MEOS {@code textset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_end_value(arg0); + } + + /** + * MEOS {@code textset_initcap} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_initcap(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_initcap requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_initcap(arg0); + } + + /** + * MEOS {@code textset_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_lower(arg0); + } + + /** + * MEOS {@code textset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_start_value(arg0); + } + + /** + * MEOS {@code textset_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_upper(arg0); + } + + /** + * MEOS {@code textset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_value_n(arg0, arg1); + } + + /** + * MEOS {@code textset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer textset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_values(arg0, arg1); + } + + /** + * MEOS {@code textset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer textset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_in(arg0); + } + + /** + * MEOS {@code textset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String textset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "textset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.textset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTh3index.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTh3index.java new file mode 100644 index 00000000..508b2397 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTh3index.java @@ -0,0 +1,418 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by tools/codegen/emit_h3_facade.py — do not edit by hand. + * H3 / th3index family facade over functions.GeneratedFunctions. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTh3index { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTh3index() { /* utility */ } + + /** MEOS {@code th3index_are_neighbor_cells} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_are_neighbor_cells(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_are_neighbor_cells requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_are_neighbor_cells(arg0, arg1); + } + + /** MEOS {@code th3index_cell_area} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_area(jnr.ffi.Pointer arg0, java.lang.String arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_area requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_area(arg0, arg1); + } + + /** MEOS {@code th3index_cell_to_boundary} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_boundary(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_boundary requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_boundary(arg0); + } + + /** MEOS {@code th3index_cell_to_center_child} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_center_child(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_center_child requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_center_child(arg0, arg1); + } + + /** MEOS {@code th3index_cell_to_center_child_next} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_center_child_next(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_center_child_next requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_center_child_next(arg0); + } + + /** MEOS {@code th3index_cell_to_child_pos} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_child_pos(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_child_pos requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_child_pos(arg0, arg1); + } + + /** MEOS {@code th3index_cell_to_local_ij} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_local_ij(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_local_ij requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_local_ij(arg0, arg1); + } + + /** MEOS {@code th3index_cell_to_parent} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_parent(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_parent requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_parent(arg0, arg1); + } + + /** MEOS {@code th3index_cell_to_parent_next} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_parent_next(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_parent_next requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_parent_next(arg0); + } + + /** MEOS {@code th3index_cell_to_vertex} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cell_to_vertex(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cell_to_vertex requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cell_to_vertex(arg0, arg1); + } + + /** MEOS {@code th3index_cells_to_directed_edge} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_cells_to_directed_edge(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_cells_to_directed_edge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_cells_to_directed_edge(arg0, arg1); + } + + /** MEOS {@code th3index_child_pos_to_cell} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_child_pos_to_cell(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_child_pos_to_cell requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_child_pos_to_cell(arg0, arg1, arg2); + } + + /** MEOS {@code th3index_directed_edge_to_boundary} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_directed_edge_to_boundary(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_directed_edge_to_boundary requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_directed_edge_to_boundary(arg0); + } + + /** MEOS {@code th3index_edge_length} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_edge_length(jnr.ffi.Pointer arg0, java.lang.String arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_edge_length requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_edge_length(arg0, arg1); + } + + /** MEOS {@code th3index_end_value} — H3 / th3index family. */ + public static long th3index_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_end_value(arg0); + } + + /** MEOS {@code th3index_get_base_cell_number} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_get_base_cell_number(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_get_base_cell_number requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_get_base_cell_number(arg0); + } + + /** MEOS {@code th3index_get_directed_edge_destination} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_get_directed_edge_destination(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_get_directed_edge_destination requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_get_directed_edge_destination(arg0); + } + + /** MEOS {@code th3index_get_directed_edge_origin} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_get_directed_edge_origin(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_get_directed_edge_origin requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_get_directed_edge_origin(arg0); + } + + /** MEOS {@code th3index_get_resolution} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_get_resolution(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_get_resolution requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_get_resolution(arg0); + } + + /** MEOS {@code th3index_grid_distance} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_grid_distance(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_grid_distance requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_grid_distance(arg0, arg1); + } + + /** MEOS {@code th3index_in} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_in(arg0); + } + + /** MEOS {@code th3index_is_pentagon} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_is_pentagon(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_is_pentagon requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_is_pentagon(arg0); + } + + /** MEOS {@code th3index_is_res_class_iii} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_is_res_class_iii(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_is_res_class_iii requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_is_res_class_iii(arg0); + } + + /** MEOS {@code th3index_is_valid_cell} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_is_valid_cell(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_is_valid_cell requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_is_valid_cell(arg0); + } + + /** MEOS {@code th3index_is_valid_directed_edge} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_is_valid_directed_edge(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_is_valid_directed_edge requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_is_valid_directed_edge(arg0); + } + + /** MEOS {@code th3index_is_valid_vertex} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_is_valid_vertex(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_is_valid_vertex requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_is_valid_vertex(arg0); + } + + /** MEOS {@code th3index_local_ij_to_cell} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_local_ij_to_cell(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_local_ij_to_cell requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_local_ij_to_cell(arg0, arg1); + } + + /** MEOS {@code th3index_make} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_make(long arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_make(arg0, arg1); + } + + /** MEOS {@code th3index_start_value} — H3 / th3index family. */ + public static long th3index_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_start_value(arg0); + } + + /** MEOS {@code th3index_to_tbigint} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_to_tbigint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_to_tbigint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_to_tbigint(arg0); + } + + /** MEOS {@code th3index_to_tgeogpoint} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_to_tgeogpoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_to_tgeogpoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_to_tgeogpoint(arg0); + } + + /** MEOS {@code th3index_to_tgeompoint} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_to_tgeompoint(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_to_tgeompoint requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_to_tgeompoint(arg0); + } + + /** MEOS {@code th3index_value_at_timestamptz} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_value_at_timestamptz(jnr.ffi.Pointer arg0, java.time.OffsetDateTime arg1, boolean arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_value_at_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_value_at_timestamptz(arg0, arg1, arg2); + } + + /** MEOS {@code th3index_value_n} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_value_n(arg0, arg1); + } + + /** MEOS {@code th3index_values} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_values(arg0, arg1); + } + + /** MEOS {@code th3index_vertex_to_latlng} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3index_vertex_to_latlng(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3index_vertex_to_latlng requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3index_vertex_to_latlng(arg0); + } + + /** MEOS {@code th3indexinst_in} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexinst_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexinst_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexinst_in(arg0); + } + + /** MEOS {@code th3indexinst_make} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexinst_make(long arg0, java.time.OffsetDateTime arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexinst_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexinst_make(arg0, arg1); + } + + /** MEOS {@code th3indexseq_in} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexseq_in(java.lang.String arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexseq_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexseq_in(arg0, arg1); + } + + /** MEOS {@code th3indexseq_make} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexseq_make(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, int arg2, boolean arg3, boolean arg4) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexseq_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexseq_make(arg0, arg1, arg2, arg3, arg4); + } + + /** MEOS {@code th3indexseqset_in} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexseqset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexseqset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexseqset_in(arg0); + } + + /** MEOS {@code th3indexseqset_make} — H3 / th3index family. */ + public static jnr.ffi.Pointer th3indexseqset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "th3indexseqset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.th3indexseqset_make(arg0, arg1); + } +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSet.java new file mode 100644 index 00000000..810c275b --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSet.java @@ -0,0 +1,211 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TstzSet + * Methods emitted: 12 (bounded-state=6 · stateless=3 · io-meta=2 · windowed=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTstzSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTstzSet() { /* utility */ } + + /** + * MEOS {@code tstzset_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tstzset_make(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_make(arg0, arg1); + } + + /** + * MEOS {@code tstzset_to_dateset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzset_to_dateset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_to_dateset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_to_dateset(arg0); + } + + /** + * MEOS {@code tstzset_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzset_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_to_stbox(arg0); + } + + /** + * MEOS {@code tstzset_end_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzset_end_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_end_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_end_value(arg0); + } + + /** + * MEOS {@code tstzset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzset_shift_scale(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_shift_scale(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzset_start_value} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzset_start_value(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_start_value requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_start_value(arg0); + } + + /** + * MEOS {@code tstzset_tprecision} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzset_tprecision(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_tprecision requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_tprecision(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzset_value_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzset_value_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_value_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_value_n(arg0, arg1); + } + + /** + * MEOS {@code tstzset_values} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzset_values(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_values requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_values(arg0, arg1); + } + + /** + * MEOS {@code tstzset_tcount_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tstzset_tcount_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_tcount_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_tcount_transfn(arg0, arg1); + } + + /** + * MEOS {@code tstzset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tstzset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_in(arg0); + } + + /** + * MEOS {@code tstzset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tstzset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzset_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpan.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpan.java new file mode 100644 index 00000000..c264e12c --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpan.java @@ -0,0 +1,225 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TstzSpan + * Methods emitted: 13 (bounded-state=7 · stateless=3 · io-meta=2 · windowed=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTstzSpan { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTstzSpan() { /* utility */ } + + /** + * MEOS {@code tstzspan_make} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code constructor}.

+ *

Classification: constructor of instant/scalar

+ */ + public static jnr.ffi.Pointer tstzspan_make(java.time.OffsetDateTime arg0, java.time.OffsetDateTime arg1, boolean arg2, boolean arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_make requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_make(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tstzspan_to_datespan} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzspan_to_datespan(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_to_datespan requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_to_datespan(arg0); + } + + /** + * MEOS {@code tstzspan_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzspan_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_to_stbox(arg0); + } + + /** + * MEOS {@code tstzspan_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspan_bins(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tstzspan_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspan_duration(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_duration(arg0); + } + + /** + * MEOS {@code tstzspan_expand} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspan_expand(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_expand requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_expand(arg0, arg1); + } + + /** + * MEOS {@code tstzspan_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspan_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_lower(arg0); + } + + /** + * MEOS {@code tstzspan_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspan_shift_scale(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_shift_scale(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzspan_tprecision} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspan_tprecision(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_tprecision requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_tprecision(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzspan_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspan_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_upper(arg0); + } + + /** + * MEOS {@code tstzspan_tcount_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tstzspan_tcount_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_tcount_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_tcount_transfn(arg0, arg1); + } + + /** + * MEOS {@code tstzspan_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tstzspan_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_in(arg0); + } + + /** + * MEOS {@code tstzspan_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tstzspan_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspan_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspan_out(arg0); + } + +} diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpanSet.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpanSet.java new file mode 100644 index 00000000..36501f00 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosOpsTstzSpanSet.java @@ -0,0 +1,267 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +package org.mobilitydb.meos; + +/* AUTO-GENERATED by codegen_flink_v3.py — do not edit by hand. + * MEOS object-model class: TstzSpanSet + * Methods emitted: 16 (bounded-state=11 · io-meta=2 · stateless=2 · windowed=1) + * Source: JMEOS jar (PR #15 / regen-against-meos-1.4) ∩ streaming-relevance baseline v4. + */ + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; + +public final class MeosOpsTstzSpanSet { + + public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE; + + private MeosOpsTstzSpanSet() { /* utility */ } + + /** + * MEOS {@code tstzspanset_to_datespanset} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzspanset_to_datespanset(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_to_datespanset requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_to_datespanset(arg0); + } + + /** + * MEOS {@code tstzspanset_to_stbox} — tier stateless. + *

Pure per-event; safe in any scalar position.

+ *

Object-model role: {@code conversion}.

+ *

Classification: role=conversion

+ */ + public static jnr.ffi.Pointer tstzspanset_to_stbox(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_to_stbox requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_to_stbox(arg0); + } + + /** + * MEOS {@code tstzspanset_bins} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_bins(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2, jnr.ffi.Pointer arg3) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_bins requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_bins(arg0, arg1, arg2, arg3); + } + + /** + * MEOS {@code tstzspanset_duration} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_duration(jnr.ffi.Pointer arg0, boolean arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_duration requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_duration(arg0, arg1); + } + + /** + * MEOS {@code tstzspanset_end_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspanset_end_timestamptz(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_end_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_end_timestamptz(arg0); + } + + /** + * MEOS {@code tstzspanset_lower} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspanset_lower(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_lower requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_lower(arg0); + } + + /** + * MEOS {@code tstzspanset_num_timestamps} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static int tstzspanset_num_timestamps(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_num_timestamps requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_num_timestamps(arg0); + } + + /** + * MEOS {@code tstzspanset_shift_scale} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_shift_scale(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, jnr.ffi.Pointer arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_shift_scale requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_shift_scale(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzspanset_start_timestamptz} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspanset_start_timestamptz(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_start_timestamptz requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_start_timestamptz(arg0); + } + + /** + * MEOS {@code tstzspanset_timestamps} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_timestamps(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_timestamps requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_timestamps(arg0); + } + + /** + * MEOS {@code tstzspanset_timestamptz_n} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_timestamptz_n(jnr.ffi.Pointer arg0, int arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_timestamptz_n requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_timestamptz_n(arg0, arg1); + } + + /** + * MEOS {@code tstzspanset_tprecision} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static jnr.ffi.Pointer tstzspanset_tprecision(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1, java.time.OffsetDateTime arg2) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_tprecision requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_tprecision(arg0, arg1, arg2); + } + + /** + * MEOS {@code tstzspanset_upper} — tier bounded-state. + *

Per-event with bounded per-key state (MEOS handle).

+ *

Object-model role: {@code accessor}.

+ *

Classification: role=accessor

+ */ + public static java.time.OffsetDateTime tstzspanset_upper(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_upper requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_upper(arg0); + } + + /** + * MEOS {@code tstzspanset_tcount_transfn} — tier windowed. + *

Requires window operator — caller wraps in AggregateFunction.

+ *

Object-model role: {@code aggregate}.

+ *

Classification: role=aggregate

+ */ + public static jnr.ffi.Pointer tstzspanset_tcount_transfn(jnr.ffi.Pointer arg0, jnr.ffi.Pointer arg1) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_tcount_transfn requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_tcount_transfn(arg0, arg1); + } + + /** + * MEOS {@code tstzspanset_in} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code constructor}.

+ *

Classification: IO/serialization

+ */ + public static jnr.ffi.Pointer tstzspanset_in(java.lang.String arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_in requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_in(arg0); + } + + /** + * MEOS {@code tstzspanset_out} — tier io-meta. + *

I/O / catalog / lifecycle helper.

+ *

Object-model role: {@code output}.

+ *

Classification: IO/serialization

+ */ + public static java.lang.String tstzspanset_out(jnr.ffi.Pointer arg0) { + if (!MEOS_AVAILABLE) { + throw new UnsupportedOperationException( + "tstzspanset_out requires libmeos — set -Dmeos.enabled=true"); + } + return GeneratedFunctions.tstzspanset_out(arg0); + } + +} diff --git a/jmeos-core/tools/codegen/README.md b/jmeos-core/tools/codegen/README.md new file mode 100644 index 00000000..94ec1cd2 --- /dev/null +++ b/jmeos-core/tools/codegen/README.md @@ -0,0 +1,106 @@ +# MEOS-API → MobilityFlink codegen + +`org.mobilitydb.flink.meos.MeosOps*` is a generated, tier-aware Java +facade over the MEOS public API. Two siblings of classes: + +- `MeosOps` — one per MEOS object-model class (50 classes, 751 + methods). Source: `codegen-oo.py`. +- `MeosOpsFree
` — one per public MEOS header for functions + *not* assigned to any OO class (6 headers, 1,346 methods). Source: + `codegen-free.py`. + +Both generators share the same per-method discipline: read JMEOS' actual +exported surface via `javap -p functions.GeneratedFunctions`, +inner-join with the streaming-relevance baseline v4 (tier +classification of every MEOS public function), emit one static method +per matched function whose body forwards to the JMEOS native binding +after probing the shared `MeosOpsRuntime.MEOS_AVAILABLE` flag. + +## What is generated + +For every MEOS public function `f` that + +1. lives in one of the five public-API streaming tiers + (`stateless`, `bounded-state`, `windowed`, `cross-stream`, + `io-meta`), and +2. is exposed by JMEOS as a static method on + `functions.GeneratedFunctions`, + +the generator emits `MeosOps.f(...)` or +`MeosOpsFree
.f(...)` whose body delegates to +`GeneratedFunctions.f(...)` after probing +`MeosOpsRuntime.MEOS_AVAILABLE`. Each method carries a Javadoc tier +marker so consumers know the per-method wiring shape (scalar UDF for +`stateless`/`bounded-state`, windowed aggregate for `windowed`, etc.). + +## Why generated rather than hand-written + +- **One source of truth.** Method signatures, classification, and tier + semantics come from the MEOS-API catalog + the streaming-relevance + baseline; no hand-written facade can drift from MEOS' actual surface. +- **Audit by regeneration.** Reviewing the diff is reviewing the + catalog change; each generator is ~250 lines, the runtime is ~30, + the rest is mechanical. +- **Bump-safe.** When the JMEOS jar regenerates against a new MEOS + release, re-running the generators absorbs the new surface with zero + hand edits. + +## How to regenerate + +```bash +# 1. Regenerate the MEOS-API catalog from MobilityDB headers +git clone --branch feat/object-model https://github.com/MobilityDB/MEOS-API.git +cd MEOS-API && pip install -r requirements.txt +python run.py /path/to/MobilityDB/meos/include /path/to/MobilityDB/mobilitydb/src +# → output/meos-idl.json + +# 2. Produce the streaming-relevance baseline (v4 classifier) +# → streaming-relevance-baseline.json + +# 3. Extract JMEOS PR #19 method signatures +jar xf flink-processor/jar/JMEOS.jar functions/GeneratedFunctions.class +javap -p functions.GeneratedFunctions > jmeos_signatures.txt + +# 4. Run both generators +python flink-processor/tools/codegen/codegen-oo.py # → MeosOps.java +python flink-processor/tools/codegen/codegen-free.py # → MeosOpsFree
.java +``` + +## Manifests + +`meos-ops-manifest.json` (OO-classified) and +`meos-ops-free-manifest.json` (free fns) record the regeneration +provenance: total JMEOS method count, baseline target count, emit +count, per-tier breakdown, per-class/per-header method count, sample +of functions absent from JMEOS. + +## Tier vocabulary + +| Tier | Meaning | Flink wiring shape | +|---|---|---| +| `stateless` | Pure per-event, no state | `ScalarFunction` (Table API) or direct call in `MapFunction` | +| `bounded-state` | Per-event with bounded per-key state | `ScalarFunction` (state lives in the MEOS handle) | +| `windowed` | Output cardinality changes; needs a window | `AggregateFunction` over `TUMBLE`/`HOP` | +| `cross-stream` | Pairwise across streams; needs interval-overlap join | `CoProcessFunction` or `IntervalJoin` | +| `io-meta` | I/O, catalog, lifecycle helpers | Helper / `format` clause | + +The current emission excludes `sequence-only` (functions requiring the +full sequence offline; ~14 fns) and `ambiguous` corner cases (~59 fns +where the mechanical classifier couldn't decide). Both are surfaced +separately for design decisions before emit. + +## Coexistence with `MEOSBridge.java` + +`berlinmod.MEOSBridge` is the hand-written, BerlinMOD-scoped bridge +introduced on `feat/jmeos-bridge-swap`. The generated `MeosOps*` +facades are the catalog-driven equivalent for the *whole* MEOS +surface; they coexist without redesigning `MEOSBridge`: + +- `MEOSBridge` keeps the per-BerlinMOD-query intent (Haversine + fallback, `dwithinSegmentMetres`, etc.) — high-level, query-shaped. +- `MeosOps*` exposes the raw MEOS surface tier-by-tier — low-level, + catalog-shaped. + +Both share the same `MEOS_AVAILABLE` discipline (via +`MeosOpsRuntime`) and the same `functions.GeneratedFunctions` +delegation. diff --git a/jmeos-core/tools/codegen/emit_h3_facade.py b/jmeos-core/tools/codegen/emit_h3_facade.py new file mode 100644 index 00000000..152542c6 --- /dev/null +++ b/jmeos-core/tools/codegen/emit_h3_facade.py @@ -0,0 +1,107 @@ +#!/usr/bin/env python3 +"""Emit the H3 / th3index family facade (MeosOpsTh3index + MeosOpsFreeH3). + +The unified functions.GeneratedFunctions jar carries the H3 temporal-index +family. This emits its user-facing surface as MeosOps* forwarders, mirroring the +other per-family facade classes: the numerator is the public meos_h3.h externs +intersected with the jar (Datum-bearing dispatchers and internal h3 helpers are +excluded by construction — they are not declared in meos_h3.h). th3index_* go to +the temporal-type class MeosOpsTh3index; the remaining H3 free functions (geo↔H3 +walkers, set ops, ever/always comparisons) go to MeosOpsFreeH3. + +Run from : + MEOS_INCLUDE= python3 tools/codegen/emit_h3_facade.py jar/JMEOS.jar +""" + +# Canonical MobilityDB PostgreSQL-License header, emitted on every generated file. +MEOS_LICENSE_BANNER = ( + '/*****************************************************************************\n' + ' *\n' + ' * This MobilityDB code is provided under The PostgreSQL License.\n' + ' * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB\n' + ' * contributors\n' + ' *\n' + ' * Permission to use, copy, modify, and distribute this software and its\n' + ' * documentation for any purpose, without fee, and without a written\n' + ' * agreement is hereby granted, provided that the above copyright notice and\n' + ' * this paragraph and the following two paragraphs appear in all copies.\n' + ' *\n' + ' * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR\n' + ' * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING\n' + ' * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION,\n' + ' * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY\n' + ' * OF SUCH DAMAGE.\n' + ' *\n' + ' * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES,\n' + ' * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY\n' + ' * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON\n' + ' * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO\n' + ' * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.\n' + ' *\n' + ' *****************************************************************************/' +) +import re, os, sys, subprocess + +HERE = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +FACADE = os.path.join(HERE, "src/main/java/org/mobilitydb/meos") +INC = os.environ.get("MEOS_INCLUDE", "/home/esteban/src/MobilityDB/meos/include") +_SIG = re.compile(r'public static (\S+) ([a-z_][A-Za-z0-9_]*)\(([^)]*)\)') +_DECL = re.compile(r'^\s*extern\s+.+?\b([a-z][A-Za-z0-9_]*)\s*\(', re.M) + + +def jar_sigs(jar): + out = subprocess.run(["javap", "-classpath", jar, "-p", "functions.GeneratedFunctions"], + capture_output=True, text=True).stdout + sigs = {} + for line in out.splitlines(): + m = _SIG.search(line) + if m: + sigs[m.group(2)] = (m.group(1), + [a.strip() for a in m.group(3).strip().split(",")] if m.group(3).strip() else []) + return sigs + + +def method(name, sigs): + ret, types = sigs[name] + decl = ", ".join(f"{t} arg{i}" for i, t in enumerate(types)) + call = ", ".join(f"arg{i}" for i in range(len(types))) + retkw = "" if ret == "void" else "return " + return (f"\n /** MEOS {{@code {name}}} — H3 / th3index family. */\n" + f" public static {ret} {name}({decl}) {{\n" + f" if (!MEOS_AVAILABLE) {{\n" + f" throw new UnsupportedOperationException(\n" + f' "{name} requires libmeos — set -Dmeos.enabled=true");\n' + f" }}\n" + f" {retkw}GeneratedFunctions.{name}({call});\n" + f" }}\n") + + +def emit_class(cls, names, sigs): + body = "".join(method(n, sigs) for n in names) + txt = (MEOS_LICENSE_BANNER + "\n\n" + f"package org.mobilitydb.meos;\n\n" + f"/* AUTO-GENERATED by tools/codegen/emit_h3_facade.py — do not edit by hand.\n" + f" * H3 / th3index family facade over functions.GeneratedFunctions.\n */\n\n" + f"import functions.GeneratedFunctions;\n" + f"import jnr.ffi.Pointer;\n\n" + f"public final class {cls} {{\n\n" + f" public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE;\n\n" + f" private {cls}() {{ /* utility */ }}\n" + f"{body}}}\n") + open(os.path.join(FACADE, f"{cls}.java"), "w").write(txt) + return len(names) + + +def main(): + jar = sys.argv[1] if len(sys.argv) > 1 else os.path.join(HERE, "jar/JMEOS.jar") + sigs = jar_sigs(jar) + public = set(_DECL.findall(open(os.path.join(INC, "meos_h3.h")).read())) + facade = sorted(public & set(sigs)) + th3 = [n for n in facade if n.startswith("th3index")] + free = [n for n in facade if not n.startswith("th3index")] + a = emit_class("MeosOpsTh3index", th3, sigs) + b = emit_class("MeosOpsFreeH3", free, sigs) + print(f"MeosOpsTh3index: {a} methods; MeosOpsFreeH3: {b} methods") + + +if __name__ == "__main__": + main() diff --git a/jmeos-core/tools/codegen/emit_tbigint_facade.py b/jmeos-core/tools/codegen/emit_tbigint_facade.py new file mode 100644 index 00000000..d4cbe6d8 --- /dev/null +++ b/jmeos-core/tools/codegen/emit_tbigint_facade.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 +"""Emit the tbigint temporal-type family facade (MeosOpsTBigint). + +The consolidated functions.GeneratedFunctions jar carries the tbigint temporal +type (MobilityDB #1044). The static bigint set/span types already have facade +classes (MeosOpsBigintSet/Span/SpanSet); this emits the temporal type's surface +— the numerator is the public meos.h externs whose name contains 'tbigint' +intersected with the jar (Datum-bearing dispatchers are excluded, not being +extern-declared in the public header). Mirrors the per-family facade classes +(MeosOpsTInt/TFloat/…) and the th3index family-port. + +Run from : + MEOS_INCLUDE= python3 tools/codegen/emit_tbigint_facade.py jar/JMEOS.jar +""" + +# Canonical MobilityDB PostgreSQL-License header, emitted on every generated file. +MEOS_LICENSE_BANNER = ( + '/*****************************************************************************\n' + ' *\n' + ' * This MobilityDB code is provided under The PostgreSQL License.\n' + ' * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB\n' + ' * contributors\n' + ' *\n' + ' * Permission to use, copy, modify, and distribute this software and its\n' + ' * documentation for any purpose, without fee, and without a written\n' + ' * agreement is hereby granted, provided that the above copyright notice and\n' + ' * this paragraph and the following two paragraphs appear in all copies.\n' + ' *\n' + ' * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR\n' + ' * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING\n' + ' * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION,\n' + ' * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY\n' + ' * OF SUCH DAMAGE.\n' + ' *\n' + ' * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES,\n' + ' * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY\n' + ' * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON\n' + ' * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO\n' + ' * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.\n' + ' *\n' + ' *****************************************************************************/' +) +import re, os, sys, subprocess + +HERE = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +FACADE = os.path.join(HERE, "src/main/java/org/mobilitydb/meos") +INC = os.environ.get("MEOS_INCLUDE", "/home/esteban/src/MobilityDB/meos/include") +_SIG = re.compile(r'public static (\S+) ([a-z_][A-Za-z0-9_]*)\(([^)]*)\)') +_DECL = re.compile(r'^\s*extern\s+.+?\b([a-z][A-Za-z0-9_]*)\s*\(', re.M) + + +def jar_sigs(jar): + out = subprocess.run(["javap", "-classpath", jar, "-p", "functions.GeneratedFunctions"], + capture_output=True, text=True).stdout + sigs = {} + for line in out.splitlines(): + m = _SIG.search(line) + if m: + sigs[m.group(2)] = (m.group(1), + [a.strip() for a in m.group(3).strip().split(",")] if m.group(3).strip() else []) + return sigs + + +def main(): + jar = sys.argv[1] if len(sys.argv) > 1 else os.path.join(HERE, "jar/JMEOS.jar") + sigs = jar_sigs(jar) + public = set(_DECL.findall(open(os.path.join(INC, "meos.h")).read())) + names = sorted(n for n in public if "tbigint" in n and n in sigs) + body = "" + for name in names: + ret, types = sigs[name] + decl = ", ".join(f"{t} arg{i}" for i, t in enumerate(types)) + call = ", ".join(f"arg{i}" for i in range(len(types))) + retkw = "" if ret == "void" else "return " + body += (f"\n /** MEOS {{@code {name}}} — tbigint temporal family. */\n" + f" public static {ret} {name}({decl}) {{\n" + f" if (!MEOS_AVAILABLE) {{\n" + f" throw new UnsupportedOperationException(\n" + f' "{name} requires libmeos — set -Dmeos.enabled=true");\n' + f" }}\n" + f" {retkw}GeneratedFunctions.{name}({call});\n" + f" }}\n") + txt = (MEOS_LICENSE_BANNER + "\n\n" + "package org.mobilitydb.meos;\n\n" + "/* AUTO-GENERATED by tools/codegen/emit_tbigint_facade.py — do not edit by hand.\n" + " * tbigint temporal-type family facade over functions.GeneratedFunctions.\n */\n\n" + "import functions.GeneratedFunctions;\n" + "import jnr.ffi.Pointer;\n\n" + "public final class MeosOpsTBigint {\n\n" + " public static final boolean MEOS_AVAILABLE = MeosOpsRuntime.MEOS_AVAILABLE;\n\n" + " private MeosOpsTBigint() { /* utility */ }\n" + f"{body}}}\n") + open(os.path.join(FACADE, "MeosOpsTBigint.java"), "w").write(txt) + print(f"MeosOpsTBigint: {len(names)} methods") + + +if __name__ == "__main__": + main() diff --git a/jmeos-core/tools/codegen/regen_facade_from_jar.py b/jmeos-core/tools/codegen/regen_facade_from_jar.py new file mode 100644 index 00000000..0e00ed5e --- /dev/null +++ b/jmeos-core/tools/codegen/regen_facade_from_jar.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Re-derive the MeosOps* facade signatures from a JMEOS jar. + +The tier-aware generators (codegen-oo.py / codegen-free.py) emit the facade +from the MEOS-API streaming-relevance baseline. When only the binding jar is +available (e.g. bumping to a newly generated functions.GeneratedFunctions whose +type lowering changed), this tool re-emits each existing facade method with the +jar's current signature — preserving the per-class tier classification and the +Javadoc, changing only the parameter / return types to match the jar. It is the +signature-migration complement to the baseline generators, not a replacement. + +Run from : + python3 tools/codegen/regen_facade_from_jar.py \\ + src/main/java/org/mobilitydb/meos jar/JMEOS.jar + +Forwarder facades emitted by their own scripts are left untouched here +(MeosOpsParityGaps via emit_gap_methods.py, MeosOpsSqlSurface via +emit_sql_surface.py, MeosOpsRuntime hand-maintained); re-run those against the +same jar afterwards. +""" +import re, glob, os, sys, subprocess + +EXCLUDE = {"MeosOpsParityGaps.java", "MeosOpsSqlSurface.java", "MeosOpsRuntime.java"} +_SIG = re.compile(r'public static (\S+) ([a-z_][A-Za-z0-9_]*)\(([^)]*)\)') +# method block: optional Javadoc + `public static (...) {` ... 4-space `}` +_BLOCK = re.compile( + r'(?P(?:[ ]{4}/\*\*.*?\*/\n)?)' + r'[ ]{4}public static [^\n;{]*?\b(?P[a-z_][A-Za-z0-9_]*)\([^)]*\)\s*\{' + r'.*?\n[ ]{4}\}\n', + re.S) + + +def jar_signatures(jar): + out = subprocess.run(["javap", "-classpath", jar, "-p", + "functions.GeneratedFunctions"], + capture_output=True, text=True).stdout + sigs = {} + for line in out.splitlines(): + m = _SIG.search(line) + if m: + ret, name, args = m.group(1), m.group(2), m.group(3).strip() + sigs[name] = (ret, [a.strip() for a in args.split(",")] if args else []) + return sigs + + +def emit(jd, name, sigs): + if name not in sigs: + return None + ret, types = sigs[name] + decl = ", ".join(f"{t} arg{i}" for i, t in enumerate(types)) + call = ", ".join(f"arg{i}" for i in range(len(types))) + retkw = "" if ret == "void" else "return " + return (f'{jd} public static {ret} {name}({decl}) {{\n' + f' if (!MEOS_AVAILABLE) {{\n' + f' throw new UnsupportedOperationException(\n' + f' "{name} requires libmeos — set -Dmeos.enabled=true");\n' + f' }}\n' + f' {retkw}GeneratedFunctions.{name}({call});\n' + f' }}\n') + + +def main(): + facade_dir, jar = sys.argv[1], sys.argv[2] + sigs = jar_signatures(jar) + changed = 0 + for f in sorted(glob.glob(os.path.join(facade_dir, "MeosOps*.java"))): + if os.path.basename(f) in EXCLUDE: + continue + txt = open(f).read() + new = _BLOCK.sub(lambda m: emit(m.group("jd"), m.group("name"), sigs) or m.group(0), txt) + if new != txt: + open(f, "w").write(new) + changed += 1 + print(f"jar signatures: {len(sigs)}; facade files rewritten: {changed}") + + +if __name__ == "__main__": + main() diff --git a/jmeos-core/tools/parity/emit_gap_methods.py b/jmeos-core/tools/parity/emit_gap_methods.py new file mode 100644 index 00000000..6553f158 --- /dev/null +++ b/jmeos-core/tools/parity/emit_gap_methods.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 +"""Emit forwarding facade methods for MEOS public-surface functions that the +generated MeosOps* facade does not yet expose. + +Each method forwards to its `functions.GeneratedFunctions` export using the +exact JMEOS signature (captured via `javap`), so the output compiles by +construction. Family and nature (scalar / sequence-constructor / tiling) are +recorded in the Javadoc; the wiring tier is governed by the wirings layer, not +by the presence of the forwarder. + +Run from : + javap -classpath jar/JMEOS.jar -p functions.GeneratedFunctions > /tmp/gen_sigs.txt + python3 tools/parity/emit_gap_methods.py /tmp/gen_sigs.txt +""" + +# Canonical MobilityDB PostgreSQL-License header, emitted on every generated file. +MEOS_LICENSE_BANNER = ( + '/*****************************************************************************\n' + ' *\n' + ' * This MobilityDB code is provided under The PostgreSQL License.\n' + ' * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB\n' + ' * contributors\n' + ' *\n' + ' * Permission to use, copy, modify, and distribute this software and its\n' + ' * documentation for any purpose, without fee, and without a written\n' + ' * agreement is hereby granted, provided that the above copyright notice and\n' + ' * this paragraph and the following two paragraphs appear in all copies.\n' + ' *\n' + ' * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR\n' + ' * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING\n' + ' * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION,\n' + ' * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY\n' + ' * OF SUCH DAMAGE.\n' + ' *\n' + ' * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES,\n' + ' * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY\n' + ' * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON\n' + ' * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO\n' + ' * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.\n' + ' *\n' + ' *****************************************************************************/' +) +import re, os, sys, glob + +HERE = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +INC = os.environ.get("MEOS_INCLUDE", "/home/esteban/src/MobilityDB/meos/include") +PUBLIC_HEADERS = ["meos.h", "meos_geo.h", "meos_cbuffer.h", "meos_npoint.h", "meos_pose.h", "meos_rgeo.h", "meos_h3.h"] +FACADE = os.path.join(HERE, "src/main/java/org/mobilitydb/meos") +OUT = os.path.join(FACADE, "MeosOpsParityGaps.java") +# Forwarder facades are themselves derived; the "already covered" baseline is the +# tier-aware generated OO classes only, so the generator reproduces idempotently. +DERIVED = {"MeosOpsParityGaps.java", "MeosOpsSqlSurface.java"} + +_DECL = re.compile(r'^\s*extern\s+.+?\b([a-z][A-Za-z0-9_]*)\s*\(', re.M) +_PUBSTATIC = re.compile(r'public static [A-Za-z0-9_.<>\[\]]+ ([a-z0-9_]+)\(') +_SIG = re.compile(r'public static (\S+) (\w+)\(([^)]*)\);') + + +def family(name, fam): + return fam.get(name, "meos.h") + + +def nature(name): + if name.endswith("_make") or "_from_base_" in name or name.endswith("make_coords"): + return "whole-sequence constructor — not a per-event op" + if name.endswith("_tiles"): + return "multidimensional tiling (windowed)" + return "scalar / stateless" + + +def main(): + sigfile = sys.argv[1] if len(sys.argv) > 1 else "/tmp/parity/gen_sigs.txt" + fam, pub = {}, set() + for h in PUBLIC_HEADERS: + for n in set(_DECL.findall(open(os.path.join(INC, h)).read())): + pub.add(n); fam.setdefault(n, h) + facade = set() + for f in glob.glob(os.path.join(FACADE, "MeosOps*.java")): + if os.path.basename(f) in DERIVED: + continue + facade |= set(_PUBSTATIC.findall(open(f).read())) + # all JMEOS signatures, grouped by name + sigs = {} + for line in open(sigfile): + m = _SIG.search(line) + if m: + ret, name, args = m.group(1), m.group(2), m.group(3).strip() + sigs.setdefault(name, []).append((ret, args)) + missing = sorted(n for n in (pub & set(sigs)) - facade) + + L = [MEOS_LICENSE_BANNER, "", "package org.mobilitydb.meos;", "", + "/**", " * Forwarding facade methods for MEOS public-surface functions not emitted", + " * by the tier-aware code generator. Each method delegates to its JMEOS", + " * {@code functions.GeneratedFunctions} export under the shared", + " * {@link MeosOpsRuntime#MEOS_AVAILABLE} guard.", + " */", + "public final class MeosOpsParityGaps {", "", + " private MeosOpsParityGaps() { /* utility */ }", ""] + count = 0 + for name in missing: + for ret, args in sigs[name]: + params = [a.strip() for a in args.split(",")] if args else [] + decl = ", ".join(f"{t} arg{i}" for i, t in enumerate(params)) + call = ", ".join(f"arg{i}" for i in range(len(params))) + ret_kw = "" if ret == "void" else "return " + L += [f" /** MEOS {{@code {name}}} — {family(name, fam)} · {nature(name)}. */", + f" public static {ret} {name}({decl}) {{", + f" if (!MeosOpsRuntime.MEOS_AVAILABLE)", + f' throw new UnsupportedOperationException("{name} requires libmeos' + f' — set -Dmeos.enabled=true");', + f" {ret_kw}functions.GeneratedFunctions.{name}({call});", + " }", ""] + count += 1 + L.append("}") + open(OUT, "w").write("\n".join(L) + "\n") + print(f"missing public-surface functions: {len(missing)}") + print(f"forwarding methods emitted: {count}") + print(f"wrote {OUT}") + + +if __name__ == "__main__": + main() diff --git a/jmeos-core/tools/parity/emit_sql_surface.py b/jmeos-core/tools/parity/emit_sql_surface.py new file mode 100644 index 00000000..b785d3c2 --- /dev/null +++ b/jmeos-core/tools/parity/emit_sql_surface.py @@ -0,0 +1,143 @@ +#!/usr/bin/env python3 +"""Emit forwarding facade methods for MEOS functions that the MobilityDB SQL +layer exposes as user functions but whose implementation lives in the internal +headers (`meos_internal*.h`). JMEOS binds them; exposing them here makes the +Flink facade match the SQL user surface as well as the public MEOS API. + +Each method forwards to its `functions.GeneratedFunctions` export using the +exact JMEOS signature, so the output compiles by construction. + +Run from : + javap -classpath jar/JMEOS.jar -p functions.GeneratedFunctions > /tmp/gen_sigs.txt + python3 tools/parity/emit_sql_surface.py /tmp/gen_sigs.txt +""" + +# Canonical MobilityDB PostgreSQL-License header, emitted on every generated file. +MEOS_LICENSE_BANNER = ( + '/*****************************************************************************\n' + ' *\n' + ' * This MobilityDB code is provided under The PostgreSQL License.\n' + ' * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB\n' + ' * contributors\n' + ' *\n' + ' * Permission to use, copy, modify, and distribute this software and its\n' + ' * documentation for any purpose, without fee, and without a written\n' + ' * agreement is hereby granted, provided that the above copyright notice and\n' + ' * this paragraph and the following two paragraphs appear in all copies.\n' + ' *\n' + ' * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR\n' + ' * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING\n' + ' * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION,\n' + ' * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY\n' + ' * OF SUCH DAMAGE.\n' + ' *\n' + ' * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES,\n' + ' * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY\n' + ' * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON\n' + ' * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO\n' + ' * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.\n' + ' *\n' + ' *****************************************************************************/' +) +import re, os, sys, glob + +HERE = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +INC = os.environ.get("MEOS_INCLUDE", "/home/esteban/src/MobilityDB/meos/include") +MDB_SQL = os.environ.get("MDB_SQL", "/home/esteban/src/MobilityDB/mobilitydb/sql") +FACADE = os.path.join(HERE, "src/main/java/org/mobilitydb/meos") +OUT = os.path.join(FACADE, "MeosOpsSqlSurface.java") + +_PUBSTATIC = re.compile(r'public static [A-Za-z0-9_.<>\[\]]+ ([a-z0-9_]+)\(') +_SIG = re.compile(r'public static (\S+) (\w+)\(([^)]*)\);') +_CREATE = re.compile(r'CREATE\s+(?:OR\s+REPLACE\s+)?FUNCTION\s+([A-Za-z0-9_]+)\s*\(', re.I) +_CSYM = re.compile(r"AS\s+'[^']*'\s*,\s*'([A-Za-z0-9_]+)'", re.I) + +OOS_SECTIONS = { + "temporal/011_span_indexes.in.sql", "temporal/012_spanset_indexes.in.sql", + "temporal/013_set_indexes.in.sql", "temporal/019_geo_constructors.in.sql", + "temporal/043_temporal_gist.in.sql", "temporal/044_temporal_spgist.in.sql", + "temporal/999_oid_cache.in.sql", "geo/073_tgeo_gist.in.sql", + "geo/073_tpoint_gist.in.sql", "geo/074_tgeo_spgist.in.sql", + "geo/074_tpoint_spgist.in.sql", "cbuffer/166_tcbuffer_indexes.in.sql", + "npoint/092_tnpoint_gin.in.sql", "npoint/098_tnpoint_indexes.in.sql", + "pose/114_tpose_indexes.in.sql", "rgeo/134_trgeo_indexes.in.sql", +} +OOS_SUFFIXES = ("_in", "_out", "_recv", "_send", "_typmod_in", "_typmod_out", + "_transfn", "_combinefn", "_finalfn", "_serialize", "_deserialize", + "_sel", "_joinsel", "_supportfn", "_analyze", + "_cmp", "_eq", "_ne", "_lt", "_le", "_gt", "_ge", "_hash", "_hash_extended") +OOS_NAMES = {"range", "multirange", "create_trip", "transform_gk"} + + +def header_names(*headers): + names = set() + for h in headers: + names |= set(re.findall(r'^\s*extern\s+.+?\b([a-z][A-Za-z0-9_]*)\s*\(', open(os.path.join(INC, h)).read(), re.M)) + return names + + +def sql_addressable(): + addr = set() + for path in glob.glob(os.path.join(MDB_SQL, "**", "*.in.sql"), recursive=True): + section = os.path.relpath(path, MDB_SQL).replace(os.sep, "/") + txt = open(path, encoding="utf-8", errors="replace").read() + for m in _CREATE.finditer(txt): + name = m.group(1); tail = txt[m.end():m.end() + 1200].split(';')[0] + cm = _CSYM.search(tail); sym = cm.group(1) if cm else None + key = (sym or name).lower() + if section in OOS_SECTIONS or key in OOS_NAMES or key.endswith(OOS_SUFFIXES): + continue + if sym is not None: + addr.add(key) + return addr + + +def main(): + sigfile = sys.argv[1] if len(sys.argv) > 1 else "/tmp/parity/gen_sigs.txt" + sigs = {} + for line in open(sigfile): + m = _SIG.search(line) + if m: + sigs.setdefault(m.group(2), []).append((m.group(1), m.group(3).strip())) + facade = set() + for f in glob.glob(os.path.join(FACADE, "MeosOps*.java")): + facade |= set(_PUBSTATIC.findall(open(f).read())) + pub = header_names("meos.h", "meos_geo.h", "meos_cbuffer.h", "meos_npoint.h", "meos_pose.h", "meos_rgeo.h") + addr = sql_addressable() + # SQL-addressable, bound by JMEOS, not in the public-surface facade, not already exposed + targets = sorted((addr & set(sigs)) - facade - pub) + + L = [MEOS_LICENSE_BANNER, "", "package org.mobilitydb.meos;", "", + "/**", " * Forwarding facade methods for MEOS functions that the MobilityDB SQL layer", + " * exposes as user functions but whose implementation lives in the internal headers", + " * ({@code meos_internal*.h}). JMEOS binds them; they are exposed here so the facade", + " * matches the SQL user surface as well as the public MEOS API. Each method delegates", + " * to its {@code functions.GeneratedFunctions} export under the", + " * {@link MeosOpsRuntime#MEOS_AVAILABLE} guard.", + " */", + "public final class MeosOpsSqlSurface {", "", + " private MeosOpsSqlSurface() { /* utility */ }", ""] + count = 0 + for name in targets: + for ret, args in sigs[name]: + params = [a.strip() for a in args.split(",")] if args else [] + decl = ", ".join(f"{t} arg{i}" for i, t in enumerate(params)) + call = ", ".join(f"arg{i}" for i in range(len(params))) + ret_kw = "" if ret == "void" else "return " + L += [f" /** MEOS {{@code {name}}} — SQL-surface function (meos_internal). */", + f" public static {ret} {name}({decl}) {{", + f" if (!MeosOpsRuntime.MEOS_AVAILABLE)", + f' throw new UnsupportedOperationException("{name} requires libmeos' + f' — set -Dmeos.enabled=true");', + f" {ret_kw}functions.GeneratedFunctions.{name}({call});", + " }", ""] + count += 1 + L.append("}") + open(OUT, "w").write("\n".join(L) + "\n") + print(f"SQL-surface (internal-backed) functions to expose: {len(targets)}") + print(f"forwarding methods emitted: {count}") + print(f"wrote {OUT}") + + +if __name__ == "__main__": + main() diff --git a/jmeos-core/tools/parity/meos-ref/PIN.txt b/jmeos-core/tools/parity/meos-ref/PIN.txt new file mode 100644 index 00000000..00f32345 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/PIN.txt @@ -0,0 +1 @@ +PIN=2c4243a265 diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/cbuffer.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/cbuffer.h new file mode 100644 index 00000000..205e3403 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/cbuffer.h @@ -0,0 +1,136 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for temporal buffers. + */ + +#ifndef __CBUFFER_H__ +#define __CBUFFER_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include + +/***************************************************************************** + * Type definitions + *****************************************************************************/ + +/* Structure to represent circular buffers */ + +struct Cbuffer +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + double radius; /**< radius */ + Datum point; /**< First 8 bytes of the point which is passed by + reference. The extra bytes needed are added upon + creation. */ + /* variable-length data follows */ +}; + +/***************************************************************************** + * fmgr macros + *****************************************************************************/ + +#define DatumGetCbufferP(X) ((Cbuffer *) DatumGetPointer(X)) +#define CbufferPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_CBUFFER_P(X) DatumGetCbufferP(PG_GETARG_DATUM(X)) +#define PG_RETURN_CBUFFER_P(X) PG_RETURN_POINTER(X) + +/*****************************************************************************/ + +/* Validity functions */ + +extern bool ensure_valid_cbuffer_cbuffer(const Cbuffer *cb1, + const Cbuffer *cb2); +extern bool ensure_valid_cbuffer_geo(const Cbuffer *cb, + const GSERIALIZED *gs); +extern bool ensure_valid_cbuffer_stbox(const Cbuffer *cb, const STBox *box); +extern bool ensure_valid_cbufferset_cbuffer(const Set *s, const Cbuffer *cb); + +/* Collinear and interpolation functions */ + +extern bool cbuffer_collinear(const Cbuffer *cb1, const Cbuffer *cb2, + const Cbuffer *cbuf3, double ratio); +extern Cbuffer *cbuffersegm_interpolate(const Cbuffer *start, + const Cbuffer *end, long double ratio); +extern long double cbuffersegm_locate(const Cbuffer *start, const Cbuffer *end, + const Cbuffer *value); + +/* Input/output functions */ + +extern Cbuffer *cbuffer_parse(const char **str, bool end); +extern char *cbuffer_wkt_out(Datum value, int maxdd, bool extended); + +/* Accessor functions */ + +extern const GSERIALIZED *cbuffer_point_p(const Cbuffer *cb); + +extern Datum datum_cbuffer_round(Datum buffer, Datum size); + +/* Transformation functions */ + +extern Cbuffer *cbuffer_transf_pj(const Cbuffer *cb, int32_t srid_to, const LWPROJ *pj); + +/* Distance function */ + +extern double cbuffer_distance(const Cbuffer *cb1, const Cbuffer *cb2); +extern Datum datum_cbuffer_distance(Datum cb1, Datum cb2); +extern int cbuffersegm_distance_turnpt(const Cbuffer *start1, + const Cbuffer *end1, const Cbuffer *start2, const Cbuffer *end2, + TimestampTz lower, TimestampTz upper, TimestampTz *t1, TimestampTz *t2); + +/* Spatial relationship functions */ + +extern int cbuffer_contains(const Cbuffer *cb1, const Cbuffer *cb2); +extern int cbuffer_covers(const Cbuffer *cb1, const Cbuffer *cb2); +extern int cbuffer_disjoint(const Cbuffer *cb1, const Cbuffer *cb2); +extern int cbuffer_intersects(const Cbuffer *cb1, const Cbuffer *cb2); +extern int cbuffer_dwithin(const Cbuffer *cb1, const Cbuffer *cb2, double dist); +extern int cbuffer_touches(const Cbuffer *cb1, const Cbuffer *cb2); + +extern int contains_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int covers_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int disjoint_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int intersects_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int dwithin_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2, double dist); +extern int touches_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); + +extern Datum datum_cbuffer_contains(Datum cb1, Datum cb2); +extern Datum datum_cbuffer_covers(Datum cb1, Datum cb2); +extern Datum datum_cbuffer_disjoint(Datum cb1, Datum cb2); +extern Datum datum_cbuffer_intersects(Datum cb1, Datum cb2); +extern Datum datum_cbuffer_dwithin(Datum cb1, Datum cb2, Datum dist); +extern Datum datum_cbuffer_touches(Datum cb1, Datum cb2); + +/*****************************************************************************/ + +#endif /* __CBUFFER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_cbuffer.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_cbuffer.h new file mode 100644 index 00000000..adc2b62c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_cbuffer.h @@ -0,0 +1,156 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_cbuffer_base Functions for static circular buffers + * @ingroup meos_cbuffer + * @brief Functions for static circular buffers + * + * @defgroup meos_cbuffer_set Functions for circular buffer sets + * @ingroup meos_cbuffer + * @brief Functions for circular buffer sets + * + * @defgroup meos_cbuffer_inout Input and output functions + * @ingroup meos_cbuffer + * @brief Input and output functions for temporal circular buffers + * + * @defgroup meos_cbuffer_constructor Constructor functions + * @ingroup meos_cbuffer + * @brief Constructor functions for temporal circular buffers + * + * @defgroup meos_cbuffer_conversion Conversion functions + * @ingroup meos_cbuffer + * @brief Conversion functions for temporal circular buffers + * + * @defgroup meos_cbuffer_accessor Accessor functions + * @ingroup meos_cbuffer + * @brief Accessor functions for temporal circular buffers + * + * @defgroup meos_cbuffer_transf Transformation functions + * @ingroup meos_cbuffer + * @brief Transformation functions for temporal circular buffers + * + * @defgroup meos_cbuffer_restrict Restriction functions + * @ingroup meos_cbuffer + * @brief Restriction functions for temporal circular buffers + * + * @defgroup meos_cbuffer_dist Distance functions + * @ingroup meos_cbuffer + * @brief Distance functions for temporal circular buffers + * + * @defgroup meos_cbuffer_comp Comparison functions + * @ingroup meos_cbuffer + * @brief Comparison functions for temporal circular buffers + * + * @defgroup meos_cbuffer_comp_ever Ever and always comparison functions + * @ingroup meos_cbuffer_comp + * @brief Ever and always comparison functions for temporal circular buffers + * + * @defgroup meos_cbuffer_comp_temp Temporal comparison functions + * @ingroup meos_cbuffer_comp + * @brief Temporal comparison functions for temporal circular buffers + * + * @defgroup meos_cbuffer_rel Spatial relationship functions + * @ingroup meos_cbuffer + * @brief Spatial relationship functions for temporal circular buffers + * + * @defgroup meos_cbuffer_rel_ever Ever/always relationship functions + * @ingroup meos_cbuffer_rel + * @brief Ever/always relationship functions for temporal circular buffers + * + * @defgroup meos_cbuffer_rel_temp Temporal relationship functions + * @ingroup meos_cbuffer_rel + * @brief Temporal relationship functions for temporal circular buffers + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_cbuffer_base_inout Input and output functions + * @ingroup meos_cbuffer_base + * @brief Input and output functions for static circular buffers + * + * @defgroup meos_cbuffer_base_constructor Constructor functions + * @ingroup meos_cbuffer_base + * @brief Constructor functions for static circular buffers + * + * @defgroup meos_cbuffer_base_conversion Conversion functions + * @ingroup meos_cbuffer_base + * @brief Conversion functions for static circular buffers + * + * @defgroup meos_cbuffer_base_accessor Accessor functions + * @ingroup meos_cbuffer_base + * @brief Accessor functions for static circular buffers + * + * @defgroup meos_cbuffer_base_transf Transformation functions + * @ingroup meos_cbuffer_base + * @brief Transformation functions for static circular buffers + * + * @defgroup meos_cbuffer_base_srid Spatial reference system functions + * @ingroup meos_cbuffer_base + * @brief Spatial reference system functions for static circular buffers + * + * @defgroup meos_cbuffer_base_rel Spatial relationship functions + * @ingroup meos_cbuffer_base + * @brief Spatial relationship functions for static circular buffers + * + * @defgroup meos_cbuffer_base_dist Distance functions + * @ingroup meos_cbuffer_base + * @brief Distance functions for static circular buffers + * + * @defgroup meos_cbuffer_base_comp Comparison functions + * @ingroup meos_cbuffer_base + * @brief Comparison functions for static circular buffers + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_cbuffer_set_inout Input and output functions + * @ingroup meos_cbuffer_set + * @brief Input and output functions for circular buffer sets + * + * @defgroup meos_cbuffer_set_constructor Constructor functions + * @ingroup meos_cbuffer_set + * @brief Constructor functions for circular buffer sets + * + * @defgroup meos_cbuffer_set_conversion Conversion functions + * @ingroup meos_cbuffer_set + * @brief Conversion functions for circular buffer sets + * + * @defgroup meos_cbuffer_set_accessor Accessor functions + * @ingroup meos_cbuffer_set + * @brief Accessor functions for circular buffer sets + * + * @defgroup meos_cbuffer_set_setops Set operations + * @ingroup meos_cbuffer_set + * @brief Set operations for circular buffer sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_internal_cbuffer.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_internal_cbuffer.h new file mode 100644 index 00000000..65fdb3d7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/doxygen_meos_internal_cbuffer.h @@ -0,0 +1,132 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_internal_cbuffer_base Functions for static circular buffers + * @ingroup meos_internal_cbuffer + * @brief Functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_set Functions for circular buffer sets + * @ingroup meos_internal_cbuffer + * @brief Functions for circular buffer sets + * + * @defgroup meos_internal_cbuffer_inout Input and output functions + * @ingroup meos_internal_cbuffer + * @brief Input and output functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_constructor Constructor functions + * @ingroup meos_internal_cbuffer + * @brief Constructor functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_conversion Conversion functions + * @ingroup meos_internal_cbuffer + * @brief Conversion functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_accessor Accessor functions + * @ingroup meos_internal_cbuffer + * @brief Accessor functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_restrict Restriction functions + * @ingroup meos_internal_cbuffer + * @brief Restriction functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_comp Comparison functions + * @ingroup meos_internal_cbuffer + * @brief Comparison functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_comp_ever Ever and always comparison functions + * @ingroup meos_internal_cbuffer_comp + * @brief Ever and always comparison functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_comp_temp Temporal comparison functions + * @ingroup meos_internal_cbuffer_comp + * @brief Temporal comparison functions for temporal circular buffers + * + * @defgroup meos_internal_cbuffer_dist Distance functions + * @ingroup meos_internal_cbuffer + * @brief Distance functions for temporal circular buffers + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_cbuffer_base_inout Input and output functions + * @ingroup meos_internal_cbuffer_base + * @brief Input and output functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_constructor Constructor functions + * @ingroup meos_internal_cbuffer_base + * @brief Constructor functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_conversion Conversion functions + * @ingroup meos_internal_cbuffer_base + * @brief Conversion functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_accessor Accessor functions + * @ingroup meos_internal_cbuffer_base + * @brief Accessor functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_transf Transformation functions + * @ingroup meos_internal_cbuffer_base + * @brief Transformation functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_srid Spatial reference system functions + * @ingroup meos_internal_cbuffer_base + * @brief Spatial reference system functions for static circular buffers + * + * @defgroup meos_internal_cbuffer_base_comp Comparison functions + * @ingroup meos_internal_cbuffer_base + * @brief Comparison functions for static circular buffers + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_cbuffer_set_inout Input and output functions + * @ingroup meos_internal_cbuffer_set + * @brief Input and output functions for circular buffer sets + * + * @defgroup meos_internal_cbuffer_set_constructor Constructor functions + * @ingroup meos_internal_cbuffer_set + * @brief Constructor functions for circular buffer sets + * + * @defgroup meos_internal_cbuffer_set_conversion Conversion functions + * @ingroup meos_internal_cbuffer_set + * @brief Conversion functions for circular buffer sets + * + * @defgroup meos_internal_cbuffer_set_accessor Accessor functions + * @ingroup meos_internal_cbuffer_set + * @brief Accessor functions for circular buffer sets + * + * @defgroup meos_internal_cbuffer_set_setops Set operations + * @ingroup meos_internal_cbuffer_set + * @brief Set operations for circular buffer sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer.h new file mode 100644 index 00000000..c68e9a0b --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer.h @@ -0,0 +1,74 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal distance for temporal network points. + */ + +#ifndef __TCBUFFER_H__ +#define __TCBUFFER_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "cbuffer/cbuffer.h" + +/*****************************************************************************/ + +/* Validity functions */ + +extern bool ensure_valid_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb); +extern bool ensure_valid_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_valid_tcbuffer_stbox(const Temporal *temp, + const STBox *box); +extern bool ensure_valid_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2); + +/* Interpolation functions */ + +extern int tcbuffersegm_intersection_value(Datum start, Datum end, + Datum value, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); +extern int tcbuffersegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); + +extern int tcbuffersegm_dwithin_turnpt(Datum start1, Datum end1, Datum start2, + Datum end2, Datum dist, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); +extern int tcbuffersegm_distance_turnpt(Datum start1, Datum end1, Datum start2, + Datum end2, Datum dist UNUSED, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); + +/*****************************************************************************/ + +#endif /* __TCBUFFER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_boxops.h new file mode 100644 index 00000000..72d60104 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_boxops.h @@ -0,0 +1,59 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Bounding box operators for temporal circular buffers. + */ + +#ifndef __TCBUFFER_BOXOPS_H__ +#define __TCBUFFER_BOXOPS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "cbuffer/cbuffer.h" + +/*****************************************************************************/ + +extern bool cbuffer_set_stbox(const Cbuffer *cb, STBox *box); +extern void cbufferarr_set_stbox(const Datum *values, int count, STBox *box); +extern bool cbuffer_timestamptz_set_stbox(const Cbuffer *cb, TimestampTz t, + STBox *box); +extern bool cbuffer_tstzspan_set_stbox(const Cbuffer *cb, const Span *s, + STBox *box); + +extern void tcbufferinst_set_stbox(const TInstant *inst, STBox *box); +extern void tcbufferinstarr_set_stbox(TInstant **instants, int count, + STBox *box); +extern void tcbufferseq_expand_stbox(const TSequence *seq, const TInstant *inst); + +/*****************************************************************************/ + +#endif /* __TCBUFFER_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialfuncs.h new file mode 100644 index 00000000..3f431716 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialfuncs.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal distance for temporal network points. + */ + +#ifndef __TCBUFFER_SPATIALFUNCS_H__ +#define __TCBUFFER_SPATIALFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "cbuffer/cbuffer.h" + +/*****************************************************************************/ + +/* Traversed area functions */ + +extern GSERIALIZED *tcbufferinst_trav_area(const TInstant *inst); +extern GSERIALIZED *tcbufferseq_trav_area(const TSequence *seq); +extern GSERIALIZED *tcbufferseqset_trav_area(const TSequenceSet *ss); +extern GSERIALIZED *tcbuffersegm_trav_area(const TInstant *inst1, + const TInstant *inst2); + +/* Restriction functions */ + +extern Temporal *tcbuffer_restrict_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool atfunc); +extern Temporal *tcbuffer_restrict_stbox(const Temporal *temp, + const STBox *box, bool border_inc, bool atfunc); +extern Temporal *tcbuffer_restrict_geom(const Temporal *temp, + const GSERIALIZED *gs, bool atfunc); + +/*****************************************************************************/ + +#endif /* __TCBUFFER_SPATIALFUNCS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialrels.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialrels.h new file mode 100644 index 00000000..d4dfc6db --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_spatialrels.h @@ -0,0 +1,107 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatial relationships for temporal points. + */ + +#ifndef __TCBUFFER_SPATIALRELS_H__ +#define __TCBUFFER_SPATIALRELS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "cbuffer/cbuffer.h" + +/*****************************************************************************/ + +extern int ea_contains_geo_tcbuffer(const GSERIALIZED *gs, + const Temporal *temp, bool ever); +extern int ea_contains_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool ever); +extern int ea_contains_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool ever); +extern int ea_contains_cbuffer_tcbuffer(const Cbuffer *cb, + const Temporal *temp, bool ever); +// extern int ea_contains_tcbuffer_tcbuffer(const Temporal *temp1, +// const Temporal *temp2, bool ever); + +extern int ea_covers_geo_tcbuffer(const GSERIALIZED *gs, + const Temporal *temp, bool ever); +extern int ea_covers_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool ever); +extern int ea_covers_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool ever); +extern int ea_covers_cbuffer_tcbuffer(const Cbuffer *cb, + const Temporal *temp, bool ever); +extern int ea_covers_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, bool ever); + +extern int ea_disjoint_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool ever); +extern int ea_disjoint_geo_tcbuffer(const GSERIALIZED *gs, + const Temporal *temp, bool ever); +extern int ea_disjoint_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool ever); +extern int ea_disjoint_cbuffer_tcbuffer(const Cbuffer *cb, + const Temporal *temp, bool ever); +extern int ea_disjoint_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, bool ever); + +extern int ea_intersects_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool ever); +extern int ea_intersects_geo_tcbuffer(const GSERIALIZED *gs, + const Temporal *temp, bool ever); +extern int ea_intersects_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool ever); +extern int ea_intersects_cbuffer_tcbuffer(const Cbuffer *cb, + const Temporal *temp, bool ever); +extern int ea_intersects_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, bool ever); + +extern int ea_touches_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool ever); +extern int ea_touches_geo_tcbuffer(const GSERIALIZED *gs, + const Temporal *temp, bool ever); +extern int ea_touches_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool ever); +extern int ea_touches_cbuffer_tcbuffer(const Cbuffer *cb, + const Temporal *temp, bool ever); +extern int ea_touches_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, bool ever); + +extern int edwithin_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, double dist); +extern int adwithin_tcbuffer_tcbuffer(const Temporal *temp1, + const Temporal *temp2, double dist); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_tempspatialrels.h b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_tempspatialrels.h new file mode 100644 index 00000000..7c6d0be7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/cbuffer/tcbuffer_tempspatialrels.h @@ -0,0 +1,54 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatiotemporal relationships for temporal points. + */ + +#ifndef __TCBUFFER_TEMPSPATIALRELS_H__ +#define __TCBUFFER_TEMPSPATIALRELS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "cbuffer/cbuffer.h" + +/*****************************************************************************/ + +extern Temporal *tinterrel_tcbuffer_cbuffer(const Temporal *temp, + const Cbuffer *cb, bool tinter); +extern Temporal *tinterrel_tcbuffer_geo(const Temporal *temp, + const GSERIALIZED *gs, bool tinter); +// extern Temporal *tinterrel_tcbuffer_tcbuffer(const Temporal *temp1, +// const Temporal *temp2, bool tinter); + +/*****************************************************************************/ + +#endif /* __TCBUFFER_TEMPSPATIALRELS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_geo.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_geo.h new file mode 100644 index 00000000..8f590fb1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_geo.h @@ -0,0 +1,252 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_geo_base Functions for static geometries + * @ingroup meos_geo + * @brief Functions for static geometries + * + * @defgroup meos_geo_set Functions for spatial sets + * @ingroup meos_geo + * @brief Functions for spatial sets + * + * @defgroup meos_geo_box Functions for spatiotemporal boxes + * @ingroup meos_geo + * @brief Functions for spatiotemporal boxes + * + * @defgroup meos_geo_inout Input and output functions + * @ingroup meos_geo + * @brief Input and output functions for temporal geometries + * + * @defgroup meos_geo_constructor Constructor functions + * @ingroup meos_geo + * @brief Constructor functions for temporal geometries + * + * @defgroup meos_geo_conversion Conversion functions + * @ingroup meos_geo + * @brief Conversion functions for temporal geometries + * + * @defgroup meos_geo_accessor Accessor functions + * @ingroup meos_geo + * @brief Accessor functions for temporal geometries + * + * @defgroup meos_geo_transf Transformation functions + * @ingroup meos_geo + * @brief Transformation functions for temporal geometries + * + * @defgroup meos_geo_restrict Restriction functions + * @ingroup meos_geo + * @brief Restriction functions for temporal geometries + * + * @defgroup meos_geo_comp Comparison functions + * @ingroup meos_geo + * @brief Comparison functions for temporal geometries + * + * @defgroup meos_geo_comp_ever Ever and always comparison functions + * @ingroup meos_geo_comp + * @brief Ever and always comparison functions for temporal geometries + * + * @defgroup meos_geo_comp_temp Temporal comparison functions + * @ingroup meos_geo_comp + * @brief Temporal comparison functions for temporal geometries + * + * @defgroup meos_geo_bbox Bounding box functions + * @ingroup meos_geo + * @brief Bounding box functions for temporal geometries + * + * @defgroup meos_geo_bbox_split Split functions + * @ingroup meos_geo_bbox + * @brief Split functions for temporal geometries + * + * @defgroup meos_geo_bbox_topo Topological functions + * @ingroup meos_geo_bbox + * @brief Topological functions for temporal geometries + * + * @defgroup meos_geo_bbox_pos Position functions + * @ingroup meos_geo_bbox + * @brief Position functions for temporal geometries + * + * @defgroup meos_geo_distance Distance functions + * @ingroup meos_geo + * @brief Distance functions for temporal geometries + * + * @defgroup meos_geo_srid Spatial reference system functions + * @ingroup meos_geo + * @brief Spatial reference system functions for temporal geometries + * + * @defgroup meos_geo_rel Spatial relationship functions + * @ingroup meos_geo + * @brief Spatial relationship functions for temporal geometries + * + * @defgroup meos_geo_rel_ever Ever/always relationship functions + * @ingroup meos_geo_rel + * @brief Ever/always relationship functions for temporal geometries + * + * @defgroup meos_geo_rel_temp Temporal relationship functions + * @ingroup meos_geo_rel + * @brief Temporal relationship functions for temporal geometries + * + * @defgroup meos_geo_agg Aggregate functions + * @ingroup meos_geo + * @brief Aggregate functions for temporal geometries + * + * @defgroup meos_geo_tile Tile functions + * @ingroup meos_geo + * @brief Tile functions for temporal geometries + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_geo_base_inout Input and output functions + * @ingroup meos_geo_base + * @brief Input and output functions for static geometries + * + * @defgroup meos_geo_base_constructor Constructor functions + * @ingroup meos_geo_base + * @brief Constructor functions for static geometries + * + * @defgroup meos_geo_base_conversion Conversion functions + * @ingroup meos_geo_base + * @brief Conversion functions for static geometries + * + * @defgroup meos_geo_base_accessor Accessor functions + * @ingroup meos_geo_base + * @brief Accessor functions for static geometries + * + * @defgroup meos_geo_base_transf Transformation functions + * @ingroup meos_geo_base + * @brief Transformation functions for static geometries + * + * @defgroup meos_geo_base_srid Spatial reference system functions + * @ingroup meos_geo_base + * @brief Spatial reference system functions for temporal geos + * + * @defgroup meos_geo_base_spatial Spatial processing functions + * @ingroup meos_geo_base + * @brief Spatial processing functions for static geometries + * + * @defgroup meos_geo_base_rel Spatial relationship functions + * @ingroup meos_geo_base + * @brief Spatial relationship functions for temporal geos + * + * @defgroup meos_geo_base_bbox Bounding box functions + * @ingroup meos_geo_base + * @brief Bounding box functions for static geometries + * + * @defgroup meos_geo_base_distance Distance functions + * @ingroup meos_geo_base + * @brief Distance functions for static geometries + * + * @defgroup meos_geo_base_comp Comparison functions + * @ingroup meos_geo_base + * @brief Comparison functions for static geometries + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_geo_set_inout Input and output functions + * @ingroup meos_geo_set + * @brief Input and output functions for spatial sets + * + * @defgroup meos_geo_set_constructor Constructor functions + * @ingroup meos_geo_set + * @brief Constructor functions for spatial sets + * + * @defgroup meos_geo_set_conversion Conversion functions + * @ingroup meos_geo_set + * @brief Conversion functions for spatial sets + * + * @defgroup meos_geo_set_accessor Accessor functions + * @ingroup meos_geo_set + * @brief Accessor functions for spatial sets + * + * @defgroup meos_geo_set_srid Spatial reference system functions + * @ingroup meos_geo_set + * @brief Spatial reference system functions for spatial sets + * + * @defgroup meos_geo_set_setops Set operations + * @ingroup meos_geo_set + * @brief Set operations for geometry sets + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_geo_box_inout Input and output functions + * @ingroup meos_geo_box + * @brief Input and output functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_constructor Constructor functions + * @ingroup meos_geo_box + * @brief Constructor functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_conversion Conversion functions + * @ingroup meos_geo_box + * @brief Conversion functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_accessor Accessor functions + * @ingroup meos_geo_box + * @brief Accessor functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_transf Transformation functions + * @ingroup meos_geo_box + * @brief Transformation functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_srid Spatial reference system functions + * @ingroup meos_geo_box + * @brief Spatial reference system functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_bbox Bounding box functions + * @ingroup meos_geo_box + * @brief Bounding box functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_topo Topological functions + * @ingroup meos_geo_box_bbox + * @brief Topological functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_pos Position functions + * @ingroup meos_geo_box_bbox + * @brief Position functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_set Set functions + * @ingroup meos_geo_box + * @brief Set functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_comp Comparison functions + * @ingroup meos_geo_box + * @brief Comparison functions for spatiotemporal boxes + * + * @defgroup meos_geo_box_index Index functions + * @ingroup meos_geo_box + * @brief In-memory RTree index for spatiotemporal boxes + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_internal_geo.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_internal_geo.h new file mode 100644 index 00000000..1773884c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/doxygen_meos_internal_geo.h @@ -0,0 +1,236 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_internal_geo_base Functions for static geometries + * @ingroup meos_internal_geo + * @brief Functions for static geometries + * + * @defgroup meos_internal_geo_set Functions for geometry sets + * @ingroup meos_internal_geo + * @brief Functions for geometry sets + * + * @defgroup meos_internal_geo_box Functions for spatiotemporal boxes + * @ingroup meos_internal_geo + * @brief Functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_inout Input and output functions + * @ingroup meos_internal_geo + * @brief Input and output functions for temporal geometries + * + * @defgroup meos_internal_geo_constructor Constructor functions + * @ingroup meos_internal_geo + * @brief Constructor functions for temporal geometries + * + * @defgroup meos_internal_geo_conversion Conversion functions + * @ingroup meos_internal_geo + * @brief Conversion functions for temporal geometries + * + * @defgroup meos_internal_geo_accessor Accessor functions + * @ingroup meos_internal_geo + * @brief Accessor functions for temporal geometries + * + * @defgroup meos_internal_geo_transf Transformation functions + * @ingroup meos_internal_geo + * @brief Transformation functions for temporal geometries + * + * @defgroup meos_internal_geo_restrict Restriction functions + * @ingroup meos_internal_geo + * @brief Restriction functions for temporal geometries + * + * @defgroup meos_internal_geo_comp Comparison functions + * @ingroup meos_internal_geo + * @brief Comparison functions for temporal geometries + * + * @defgroup meos_internal_geo_comp_ever Ever and always comparison functions + * @ingroup meos_internal_geo_comp + * @brief Ever and always comparison functions for temporal geometries + * + * @defgroup meos_internal_geo_comp_temp Temporal comparison functions + * @ingroup meos_internal_geo_comp + * @brief Temporal comparison functions for temporal geometries + * + * @defgroup meos_internal_geo_bbox Bounding box functions + * @ingroup meos_internal_geo + * @brief Bounding box functions for temporal geometries + * + * @defgroup meos_internal_geo_bbox_topo Topological functions + * @ingroup meos_internal_geo_bbox + * @brief Topological functions for temporal geometries + * + * @defgroup meos_internal_geo_bbox_pos Position functions + * @ingroup meos_internal_geo_bbox + * @brief Position functions for temporal geometries + * + * @defgroup meos_internal_geo_dist Distance functions + * @ingroup meos_internal_geo + * @brief Distance functions for temporal geometries + * + * @defgroup meos_internal_geo_srid Spatial reference system functions + * @ingroup meos_internal_geo + * @brief Spatial reference system functions for temporal geos + * + * @defgroup meos_internal_geo_rel Spatial relationship functions + * @ingroup meos_internal_geo + * @brief Spatial relationship functions for temporal geos + * + * @defgroup meos_internal_geo_rel_ever Ever/always relationship functions + * @ingroup meos_internal_geo_rel + * @brief Ever/always relationship functions for temporal geometries + * + * @defgroup meos_internal_geo_rel_temp Temporal relationship functions + * @ingroup meos_internal_geo_rel + * @brief Temporal relationship functions for temporal geometries + * + * @defgroup meos_internal_geo_agg Aggregate functions + * @ingroup meos_internal_geo + * @brief Aggregate functions for temporal geometries + * + * @defgroup meos_internal_geo_tile Tile functions + * @ingroup meos_internal_geo + * @brief Tile functions for temporal geometries + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_geo_base_inout Input and output functions + * @ingroup meos_internal_geo_base + * @brief Input and output functions for static geometries + * + * @defgroup meos_internal_geo_base_constructor Constructor functions + * @ingroup meos_internal_geo_base + * @brief Constructor functions for static geometries + * + * @defgroup meos_internal_geo_base_conversion Conversion functions + * @ingroup meos_internal_geo_base + * @brief Conversion functions for static geometries + * + * @defgroup meos_internal_geo_base_accessor Accessor functions + * @ingroup meos_internal_geo_base + * @brief Accessor functions for static geometries + * + * @defgroup meos_internal_geo_base_transf Transformation functions + * @ingroup meos_internal_geo_base + * @brief Transformation functions for static geometries + * + * @defgroup meos_internal_geo_base_srid Spatial reference system functions + * @ingroup meos_internal_geo_base + * @brief Spatial reference system functions for temporal geos + * + * @defgroup meos_internal_geo_base_spatial Spatial processing functions + * @ingroup meos_internal_geo_base + * @brief Spatial processing functions for static geometries + * + * @defgroup meos_internal_geo_base_rel Spatial relationship functions + * @ingroup meos_internal_geo_base + * @brief Spatial relationship functions for temporal geos + * + * @defgroup meos_internal_geo_base_bbox Bounding box functions + * @ingroup meos_internal_geo_base + * @brief Bounding box functions for static geometries + * + * @defgroup meos_internal_geo_base_comp Comparison functions + * @ingroup meos_internal_geo_base + * @brief Comparison functions for static geometries + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_geo_set_inout Input and output functions + * @ingroup meos_internal_geo_set + * @brief Input and output functions for geometry sets + * + * @defgroup meos_internal_geo_set_constructor Constructor functions + * @ingroup meos_internal_geo_set + * @brief Constructor functions for geometry sets + * + * @defgroup meos_internal_geo_set_conversion Conversion functions + * @ingroup meos_internal_geo_set + * @brief Conversion functions for geometry sets + * + * @defgroup meos_internal_geo_set_accessor Accessor functions + * @ingroup meos_internal_geo_set + * @brief Accessor functions for geometry sets + * + * @defgroup meos_internal_geo_set_setops Set operations + * @ingroup meos_internal_geo_set + * @brief Set operations for geometry sets + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_geo_box_inout Input and output functions + * @ingroup meos_internal_geo_box + * @brief Input and output functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_constructor Constructor functions + * @ingroup meos_internal_geo_box + * @brief Constructor functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_conversion Conversion functions + * @ingroup meos_internal_geo_box + * @brief Conversion functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_accessor Accessor functions + * @ingroup meos_internal_geo_box + * @brief Accessor functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_transf Transformation functions + * @ingroup meos_internal_geo_box + * @brief Transformation functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_srid Spatial reference system functions + * @ingroup meos_internal_geo_box + * @brief Spatial reference system functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_bbox Bounding box functions + * @ingroup meos_internal_geo_box + * @brief Bounding box functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_topo Topological functions + * @ingroup meos_internal_geo_box_bbox + * @brief Topological functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_pos Position functions + * @ingroup meos_internal_geo_box_bbox + * @brief Position functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_set Set functions + * @ingroup meos_internal_geo_box + * @brief Set functions for spatiotemporal boxes + * + * @defgroup meos_internal_geo_box_comp Comparison functions + * @ingroup meos_internal_geo_box + * @brief Comparison functions for spatiotemporal boxes + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/meos_transform.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/meos_transform.h new file mode 100644 index 00000000..c7c4e1cb --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/meos_transform.h @@ -0,0 +1,66 @@ +/********************************************************************** + * + * PostGIS - Spatial Types for PostgreSQL + * http://postgis.net + * Copyright 2001-2003 Refractions Research Inc. + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU General Public Licence. See the COPYING file. + * + **********************************************************************/ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include + +/* Prototypes */ + +extern int lwproj_lookup(int32_t srid_from, int32_t srid_to, LWPROJ **pj); +extern int spheroid_init_from_srid(int32_t srid, SPHEROID *s); +extern void srid_check_latlong(int32_t srid); +extern int srid_is_latlong(int32_t srid); + +/** + * Builtin SRID values + * @{ + */ + +/** Start of the reserved offset */ +#define SRID_RESERVE_OFFSET 999000 + +/** World Mercator, equivalent to EPSG:3395 */ +#define SRID_WORLD_MERCATOR 999000 + +/** Start of UTM North zone, equivalent to EPSG:32601 */ +#define SRID_NORTH_UTM_START 999001 + +/** End of UTM North zone, equivalent to EPSG:32660 */ +#define SRID_NORTH_UTM_END 999060 + +/** Lambert Azimuthal Equal Area (LAEA) North Pole, equivalent to EPSG:3574 */ +#define SRID_NORTH_LAMBERT 999061 + +/** PolarSteregraphic North, equivalent to EPSG:3995 */ +#define SRID_NORTH_STEREO 999062 + +/** Start of UTM South zone, equivalent to EPSG:32701 */ +#define SRID_SOUTH_UTM_START 999101 + +/** Start of UTM South zone, equivalent to EPSG:32760 */ +#define SRID_SOUTH_UTM_END 999160 + +/** Lambert Azimuthal Equal Area (LAEA) South Pole, equivalent to EPSG:3409 */ +#define SRID_SOUTH_LAMBERT 999161 + +/** PolarSteregraphic South, equivalent to EPSG:3031 */ +#define SRID_SOUTH_STEREO 999162 + +/** LAEA zones start (6 latitude bands x up to 20 longitude bands) */ +#define SRID_LAEA_START 999163 + +/** LAEA zones end (6 latitude bands x up to 20 longitude bands) */ +#define SRID_LAEA_END 999283 + +/** @} */ + diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/postgis_funcs.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/postgis_funcs.h new file mode 100644 index 00000000..b25d7722 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/postgis_funcs.h @@ -0,0 +1,85 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for geometry types corresponding to external + * PostGIS functions in order to bypass the function manager @p fmgr.c. + */ + +#ifndef __POSTGIS_FUNCS_H__ +#define __POSTGIS_FUNCS_H__ + +/*****************************************************************************/ + +/* GEOS */ +#include +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include + +/* Functions borrowed from lwgeom_pg.c */ + +extern GSERIALIZED* geom_serialize(LWGEOM *lwgeom); +extern GSERIALIZED* geog_serialize(LWGEOM *lwgeom); + +/* Functions adapted from gserialized_typmod.c */ + +extern GSERIALIZED *postgis_valid_typmod(GSERIALIZED *gs, int32_t typmod); + +extern char *geo_as_wkt(const GSERIALIZED *gs, int precision, bool extended); + +/* Functions adapted from lwgeom_box.c */ + +extern LWGEOM *box2d_to_lwgeom(GBOX *box, int32_t srid); + +/* Functions adapted from lwgeom_box3d.c */ + +extern LWGEOM *box3d_to_lwgeom(BOX3D *box); + +/* Functions adapted from lwgeom_geos.c */ + +extern GEOSGeometry *POSTGIS2GEOS(const GSERIALIZED *pglwgeom); +extern GSERIALIZED *GEOS2POSTGIS(GEOSGeom geom, char want3d); + +extern bool geom_spatialrel(const GSERIALIZED *gs1, const GSERIALIZED *gs2, + spatialRel rel); + +/* Functions adapted from lwgeom_lrs.c */ + +extern LWGEOM *lwgeom_line_interpolate_point(LWGEOM *geom, double fraction, + int32_t srid, char repeat); + +/*****************************************************************************/ + +#endif /* __POSTGIS_FUNCS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox.h new file mode 100644 index 00000000..67df1b13 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for spatiotemporal bounding boxes. + */ + +#ifndef __STBOX_H__ +#define __STBOX_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include + +/***************************************************************************** + * fmgr macros + *****************************************************************************/ + +#define DatumGetSTboxP(X) ((STBox *) DatumGetPointer(X)) +#define STboxPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_STBOX_P(n) DatumGetSTboxP(PG_GETARG_DATUM(n)) +#define PG_RETURN_STBOX_P(x) return STboxPGetDatum(x) + +/*****************************************************************************/ + +/* Set an STBox from a */ + +extern void point_get_coords(const GSERIALIZED *point, bool hasz, + double *x, double *y, double *z); +extern void tstzset_stbox_slice(Datum tsdatum, STBox *box); +extern void tstzspanset_stbox_slice(Datum psdatum, STBox *box); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox_index.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox_index.h new file mode 100644 index 00000000..6c51c8b0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/stbox_index.h @@ -0,0 +1,54 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic routines for indexing temporal numbers + */ + +#ifndef __STBOX_INDEX_H__ +#define __STBOX_INDEX_H__ + +/* PostgreSQL */ +#include +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern bool stbox_index_leaf_consistent(const STBox *key, const STBox *query, + StrategyNumber strategy); +extern bool stbox_gist_inner_consistent(const STBox *key, const STBox *query, + StrategyNumber strategy); +extern bool stbox_index_recheck(StrategyNumber strategy); + +/*****************************************************************************/ + +#endif /* __STBOX_INDEX_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo.h new file mode 100644 index 00000000..12a3ff3c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo.h @@ -0,0 +1,65 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for temporal geos. + */ + +#ifndef __TGEO_H__ +#define __TGEO_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/* General functions */ + +extern void mobilitydb_init(void); + +/* Conversion functions */ + +extern STBox *geo_stbox(const GSERIALIZED *gs); +extern GSERIALIZED *stbox_geo(const STBox *box); + +/* Temporal comparisons */ + +extern Temporal *tcomp_geo_tgeo(const GSERIALIZED *gs, + const Temporal *temp, Datum (*func)(Datum, Datum, MeosType)); +extern Temporal *tcomp_tgeo_geo(const Temporal *temp, + const GSERIALIZED *gs, Datum (*func)(Datum, Datum, MeosType)); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_aggfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_aggfuncs.h new file mode 100644 index 00000000..be689c05 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_aggfuncs.h @@ -0,0 +1,71 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Aggregate functions for temporal geos. + */ + +#ifndef __TGEO_AGGFUNCS_H__ +#define __TGEO_AGGFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include + + +/*****************************************************************************/ + +/** + * Structure storing the SRID and the dimensionality of the temporal geo + * values for aggregation. Notice that for the moment we do not aggregate + * temporal geographic points. + */ +struct GeoAggregateState +{ + int32_t srid; + bool hasz; +}; + +/*****************************************************************************/ + +extern bool ensure_geoaggstate(const SkipList *state, int32_t srid, bool hasz); +extern bool ensure_geoaggstate_state(const SkipList *state1, + const SkipList *state2); + +extern Temporal **tpoint_transform_tcentroid(const Temporal *temp, int *count); +extern TSequence *tpointinst_tcentroid_finalfn(TInstant **instants, int count, + int32_t srid); +extern TSequenceSet *tpointseq_tcentroid_finalfn(TSequence **sequences, + int count, int32_t srid); +extern Temporal *tpoint_tcentroid_finalfn(SkipList *state); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_distance.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_distance.h new file mode 100644 index 00000000..d7c9bddf --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_distance.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Distance functions for temporal points. + */ + +#ifndef __TGEO_DISTANCE_H__ +#define __TGEO_DISTANCE_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern bool point3d_min_dist(const POINT3DZ *p1, const POINT3DZ *p2, + const POINT3DZ *p3, const POINT3DZ *p4, double *fraction); + +extern int tgeompointsegm_distance_turnpt(Datum start1, Datum end1, + Datum start2, Datum end2, Datum param UNUSED, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); +extern int tgeogpointsegm_distance_turnpt(Datum start1, Datum end1, + Datum start2, Datum end2, Datum param UNUSED, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); + +extern double tnumberinst_distance(const TInstant *inst1, + const TInstant *inst2); +extern double tinstant_distance(const TInstant *inst1, const TInstant *inst2, + datum_func2 func); + +/*****************************************************************************/ + +#endif /* __TGEO_DISTANCE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_restrict.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_restrict.h new file mode 100644 index 00000000..7b792a25 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_restrict.h @@ -0,0 +1,55 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Restriction functions for temporal points. + */ + +#ifndef __TPOINT_RESTRICT_H__ +#define __TPOINT_RESTRICT_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include + +/*****************************************************************************/ + +/* Restriction functions */ + +extern TSequence **tpointseq_at_geom(const TSequence *seq, + const GSERIALIZED *gs, int *count); +extern Span *tpointseq_interperiods(const TSequence *seq, + const GSERIALIZED *gs, int *count); + +/*****************************************************************************/ + +#endif /* __TPOINT_RESTRICT_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialfuncs.h new file mode 100644 index 00000000..b0de08de --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialfuncs.h @@ -0,0 +1,208 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatial functions for temporal points. + */ + +#ifndef __TGEO_SPATIALFUNCS_H__ +#define __TGEO_SPATIALFUNCS_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/** Symbolic constants for transforming tgeompoint <-> tgeogpoint */ +#define TGEOMP_TO_TGEOGP true +#define TGEOGP_TO_TGEOMP false + +/** Symbolic constants for transforming tgeompoint <-> tgeogpoint */ +#define TGEOM_TO_TGEOG true +#define TGEOG_TO_TGEOM false + +/** Symbolic constants for transforming tgeo <-> tpoint */ +#define TGEO_TO_TPOINT true +#define TPOINT_TO_TGEO false + +/*****************************************************************************/ + +/* Utility functions */ + +extern void datum_point4d(Datum value, POINT4D *p); +extern int geopoint_cmp(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geopoint_eq(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geopoint_same(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool datum_point_eq(Datum point1, Datum point2); +extern bool datum_point_same(Datum point1, Datum point2); +extern Datum datum2_point_eq(Datum point1, Datum point2); +extern Datum datum2_point_ne(Datum point1, Datum point2); +extern Datum datum2_point_same(Datum point1, Datum point2); +extern Datum datum2_point_nsame(Datum point1, Datum point2); +extern Datum datum2_geom_centroid(Datum geo); +extern Datum datum2_geog_centroid(Datum geo); +extern GSERIALIZED **geo_extract_elements(const GSERIALIZED *gs, int *count); +extern GSERIALIZED *geo_serialize(const LWGEOM *geom); + +/* Generic functions */ + +extern datum_func2 geo_distance_fn(int16 flags); +extern datum_func2 pt_distance_fn(int16 flags); +extern Datum datum_geom_distance2d(Datum geom1, Datum geom2); +extern Datum datum_geom_distance3d(Datum geom1, Datum geom2); +extern Datum datum_geog_distance(Datum geog1, Datum geog2); +extern Datum datum_pt_distance2d(Datum geom1, Datum geom2); +extern Datum datum_pt_distance3d(Datum geom1, Datum geom2); +extern int16 spatial_flags(Datum d, MeosType basetype); + +/* Validity functions */ + +extern bool ensure_srid_is_latlong(int32_t srid); +extern bool ensure_spatial_validity(const Temporal *temp1, + const Temporal *temp2); +extern int spheroid_init_from_srid(int32_t srid, SPHEROID *s); +extern bool ensure_not_geodetic(int16 flags); +extern bool ensure_same_geodetic(int16 flags1, int16 flags2); +extern bool ensure_same_geodetic_geo(const GSERIALIZED *gs1, + const GSERIALIZED *gs2); +extern bool ensure_same_geodetic_tspatial_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_same_geodetic_tspatial_base(const Temporal *temp, + Datum base); +extern bool ensure_srid_known(int32_t srid); +extern bool ensure_same_srid(int32_t srid1, int32_t srid2); +extern bool ensure_same_dimensionality(int16 flags1, int16 flags2); +extern bool same_spatial_dimensionality(int16 flags1, int16 flags2); +extern bool ensure_same_spatial_dimensionality(int16 flags1, int16 flags2); +extern bool ensure_same_dimensionality_geo(const GSERIALIZED *gs1, + const GSERIALIZED *gs2); +extern bool same_dimensionality_tspatial_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_same_dimensionality_tspatial_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_same_spatial_dimensionality_stbox_geo(const STBox *box, + const GSERIALIZED *gs); +extern bool ensure_same_geodetic_stbox_geo(const STBox *box, + const GSERIALIZED *gs); +extern bool ensure_has_Z_geo(const GSERIALIZED *gs); +extern bool ensure_has_not_Z_geo(const GSERIALIZED *gs); +extern bool ensure_has_M_geo(const GSERIALIZED *gs); +extern bool ensure_has_not_M_geo(const GSERIALIZED *gs); +extern bool ensure_not_geodetic_geo(const GSERIALIZED *gs); +extern bool ensure_point_type(const GSERIALIZED *gs); +extern bool ensure_mline_type(const GSERIALIZED *gs); +extern bool circle_type(const GSERIALIZED *gs); +extern bool ensure_circle_type(const GSERIALIZED *gs); +extern bool ensure_not_empty(const GSERIALIZED *gs); +extern bool ensure_valid_stbox_geo(const STBox *box, const GSERIALIZED *gs); +extern bool ensure_valid_tspatial_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_valid_tspatial_base(const Temporal *temp, Datum base); +extern bool ensure_valid_tspatial_tspatial(const Temporal *temp1, + const Temporal *temp2); +extern bool ensure_valid_spatial_stbox_stbox(const STBox *box1, + const STBox *box2); +extern bool ensure_valid_tgeo_stbox(const Temporal *temp, const STBox *box); +extern bool ensure_valid_geo_geo(const GSERIALIZED *gs1, + const GSERIALIZED *gs2); +extern bool ensure_valid_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern bool ensure_valid_tgeo_tgeo(const Temporal *temp1, + const Temporal *temp2); +extern bool ensure_valid_tpoint_geo(const Temporal *temp, const GSERIALIZED *gs); +extern bool ensure_valid_tpoint_tpoint(const Temporal *temp1, + const Temporal *temp2); + +extern bool mline_type(const GSERIALIZED *gs); + +/* Functions for extracting coordinates */ + +extern Temporal *tpoint_get_coord(const Temporal *temp, int coord); + +/* Ever/always comparisons */ + +extern int eacomp_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + Datum (*func)(Datum, Datum, MeosType), bool ever); + +/* Functions derived from PostGIS to increase floating-point precision */ + +extern long double closest_point2d_on_segment_ratio(const POINT2D *p, + const POINT2D *A, const POINT2D *B, POINT2D *closest); +extern long double closest_point3dz_on_segment_ratio(const POINT3DZ *p, + const POINT3DZ *A, const POINT3DZ *B, POINT3DZ *closest); +extern long double closest_point_on_segment_sphere(const POINT4D *p, + const POINT4D *A, const POINT4D *B, POINT4D *closest, double *dist); +extern void interpolate_point4d_spheroid(const POINT4D *p1, const POINT4D *p2, + POINT4D *p, const SPHEROID *s, double f); + +/* Functions specializing the PostGIS functions ST_LineInterpolatePoint and + * ST_LineLocatePoint */ + +extern GSERIALIZED *geopoint_make(double x, double y, double z, bool hasz, + bool geodetic, int32_t srid); +extern LWGEOM *lwcircle_make(double x, double y, double radius, int32_t srid); +extern GSERIALIZED *geocircle_make(double x, double y, double radius, + int32_t srid); +extern Datum pointsegm_interpolate(Datum start, Datum end, + long double ratio); +extern long double pointsegm_locate(Datum start, Datum end, Datum point, + double *dist); + +/* Intersection functions */ + +extern int tgeompointsegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); +extern int tgeogpointsegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); + +extern bool geopoint_collinear(Datum value1, Datum value2, Datum value3, + double ratio, bool hasz, bool geodetic); + +/* Trajectory functions */ + +extern LWGEOM **lwpointarr_remove_duplicates(LWGEOM **points, int count, + int *newcount); +extern LWGEOM *lwpointarr_make_trajectory(LWGEOM **points, int count, + interpType interp); +extern LWLINE *lwline_make(Datum value1, Datum value2); +extern LWGEOM *lwcoll_from_points_lines(LWGEOM **points, LWGEOM **lines, + int npoints, int nlines); + +/* Stop function */ + +int tpointseq_stops_iter(const TSequence *seq, double maxdist, int64 mintunits, + TSequence **result); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialrels.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialrels.h new file mode 100644 index 00000000..c8af8a61 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_spatialrels.h @@ -0,0 +1,127 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatial relationships for temporal points. + */ + +#ifndef __TGEO_SPATIALRELS_H__ +#define __TGEO_SPATIALRELS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +#define INVERT_RESULT(result) (result < 0 ? -1 : (result > 0) ? 0 : 1) + +/*****************************************************************************/ + +extern Datum datum_geom_contains(Datum geom1, Datum geom2); +extern Datum datum_geom_covers(Datum geom1, Datum geom2); +extern Datum datum_geom_disjoint2d(Datum geom1, Datum geom2); +extern Datum datum_geom_disjoint3d(Datum geom1, Datum geom2); +extern Datum datum_geog_disjoint(Datum geog1, Datum geog2); +extern Datum datum_geom_intersects2d(Datum geom1, Datum geom2); +extern Datum datum_geom_intersects3d(Datum geom1, Datum geom2); +extern Datum datum_geog_intersects(Datum geog1, Datum geog2); +extern Datum datum_geom_touches(Datum geom1, Datum geom2); +extern Datum datum_geom_dwithin2d(Datum geom1, Datum geom2, Datum dist); +extern Datum datum_geom_dwithin3d(Datum geom1, Datum geom2, Datum dist); +extern Datum datum_geog_dwithin(Datum geog1, Datum geog2, Datum dist); +extern Datum datum_geom_relate_pattern(Datum geog1, Datum geog2, Datum p); +extern Datum datum_geom_touches(Datum geom1, Datum geom2); + +extern datum_func2 geo_disjoint_fn(int16 flags1, int16 flags2); +extern datum_func2 geo_disjoint_fn_geo(int16 flags1, uint8_t flags2); +extern datum_func2 geo_intersects_fn(int16 flags1, int16 flags2); +extern datum_func2 geo_intersects_fn_geo(int16 flags1, uint8_t flags2); +extern datum_func3 geo_dwithin_fn(int16 flags1, int16 flags2); +extern datum_func3 geo_dwithin_fn_geo(int16 flags1, uint8_t flags2); + +/*****************************************************************************/ + +extern int tpointsegm_tdwithin_turnpt(Datum start1, Datum end1, Datum start2, + Datum end2, Datum value, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); + +extern int spatialrel_geo_geo(const GSERIALIZED *gs1, const GSERIALIZED *gs2, + Datum param, varfunc func, int numparam, bool invert); +extern int spatialrel_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, + Datum param, varfunc func, int numparam); + +extern int ea_contains_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever); +extern int ea_contains_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_contains_tgeo_tgeo(const Temporal *temp, const Temporal *temp2, + bool ever); + +extern int ea_covers_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever); +extern int ea_covers_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_covers_tgeo_tgeo(const Temporal *temp, const Temporal *temp2, + bool ever); + +extern int ea_disjoint_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever); +extern int ea_disjoint_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_disjoint_tgeo_tgeo(const Temporal *temp, const Temporal *temp2, + bool ever); + +extern int ea_intersects_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever); +extern int ea_intersects_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_intersects_tgeo_tgeo(const Temporal *temp, const Temporal *temp2, + bool ever); + +extern int ea_touches_tpoint_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_touches_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_touches_tgeo_tgeo(const Temporal *temp, const Temporal *temp2, + bool ever); + +extern int ea_dwithin_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + double dist, bool ever); +extern int ea_dwithin_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, + double dist, bool ever); + +extern int ea_spatialrel_tspatial_geo(const Temporal *temp, + const GSERIALIZED *gs, datum_func2 func, bool ever, bool invert); +extern int ea_spatialrel_tspatial_tspatial(const Temporal *temp1, + const Temporal *temp2, datum_func2 func, bool ever); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tempspatialrels.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tempspatialrels.h new file mode 100644 index 00000000..b157f541 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tempspatialrels.h @@ -0,0 +1,79 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatiotemporal relationships for temporal points. + */ + +#ifndef __TGEO_TEMPSPATIALRELS_H__ +#define __TGEO_TEMPSPATIALRELS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/* Compute either the tintersects or the tdisjoint relationship */ +#define TINTERSECTS true +#define TDISJOINT false + +/*****************************************************************************/ + +extern Temporal *tspatialrel_tspatial_base(const Temporal *temp, + Datum base, Datum param, varfunc func, int numparam, bool invert); +extern Temporal *tspatialrel_tspatial_tspatial(const Temporal *temp1, + const Temporal *temp2, Datum param, varfunc func, int numparam, bool invert); + +extern Temporal *tinterrel_tgeo_geo(const Temporal *temp, + const GSERIALIZED *gs, bool tinter); +extern Temporal *tinterrel_tspatial_base(const Temporal *temp, Datum base, + bool tinter, datum_func2 func); + +extern Temporal *tinterrel_tspatial_base(const Temporal *temp, + Datum base, bool tinter, datum_func2 func); +extern Temporal *tinterrel_tspatial_tspatial(const Temporal *temp1, + const Temporal *temp2, bool tinter); + +extern Temporal *tdwithin_tspatial_tspatial(const Temporal *sync1, + const Temporal *sync2, Datum dist, + datum_func3 func, tpfunc_temp tpfn); + +extern int tdwithin_add_solutions(int solutions, TimestampTz lower, + TimestampTz upper, bool lower_inc, bool upper_inc, bool upper_inc1, + TimestampTz t1, TimestampTz t2, TInstant **instants, TSequence **result); +extern Temporal *tdwithin_tspatial_spatial(const Temporal *temp, Datum base, + Datum dist, datum_func3 func, tpfunc_temp tpfn); +extern Temporal *tdwithin_tspatial_tspatial(const Temporal *sync1, + const Temporal *sync2, Datum dist, + datum_func3 func, tpfunc_temp tpfn); + +/*****************************************************************************/ + +#endif /* __TGEO_TEMPSPATIALRELS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tile.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tile.h new file mode 100644 index 00000000..28829ce1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tgeo_tile.h @@ -0,0 +1,112 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for spatiotemporal bounding boxes. + */ + +#ifndef __TPOINT_TILE_H__ +#define __TPOINT_TILE_H__ + +/* PostGIS */ +#include +/* MEOS */ +#include + +#define MAXDIMS 4 + +/*****************************************************************************/ + +/** + * Structure for storing a bit matrix + */ +typedef struct +{ + int ndims; /**< Number of dimensions */ + int count[MAXDIMS]; /**< Number of elements in each dimension */ + uint8_t byte[1]; /**< beginning of variable-length data */ +} BitMatrix; + +/** + * Struct for storing the state that persists across multiple calls generating + * a multidimensional grid + */ +typedef struct STboxGridState +{ + bool done; /**< True when all tiles have been processed */ + bool hasx; /**< True when tiles have X dimension */ + bool hasz; /**< True when tiles have Z dimension */ + bool hast; /**< True when tiles have T dimension */ + int i; /**< Number of current tile */ + double xsize; /**< Size of the x dimension */ + double ysize; /**< Size of the y dimension */ + double zsize; /**< Size of the z dimension, 0 for 2D */ + int64 tunits; /**< Size of the time dimension, 0 for spatial only */ + STBox box; /**< Bounding box of the grid */ + const Temporal *temp; /**< Optional temporal point to be split */ + BitMatrix *bm; /**< Optional bit matrix for speeding up the + computation of the split functions */ + double x; /**< Minimum x value of the current tile */ + double y; /**< Minimum y value of the current tile */ + double z; /**< Minimum z value of the current tile, if any */ + TimestampTz t; /**< Minimum t value of the current tile, if any */ + int ntiles; /**< Total number of tiles */ + int max_coords[MAXDIMS]; /**< Maximum coordinates of the tiles */ + int coords[MAXDIMS]; /**< Coordinates of the current tile */ +} STboxGridState; + +/*****************************************************************************/ + +extern BitMatrix *bitmatrix_make(int *count, int ndims); +extern int tpoint_set_tiles(const Temporal *temp, const STboxGridState *state, + BitMatrix *bm); +extern Temporal *tpoint_at_tile(const Temporal *temp, const STBox *box); + +extern void stbox_tile_state_set(double x, double y, double z, TimestampTz t, + double xsize, double ysize, double zsize, int64 tunits, bool hasx, bool hasz, + bool hast, int32 srid, STBox *result); +extern STboxGridState *stbox_tile_state_make(const Temporal *temp, + const STBox *box, double xsize, double ysize, double zsize, + const Interval *duration, POINT3DZ sorigin, TimestampTz torigin, + bool border_inc); +extern void stbox_tile_state_next(STboxGridState *state); +extern bool stbox_tile_state_get(STboxGridState *state, STBox *box); + +extern STboxGridState *tgeo_space_time_tile_init(const Temporal *temp, + double xsize, double ysize, double zsize, const Interval *duration, + const GSERIALIZED *sorigin, TimestampTz torigin, bool bitmatrix, + bool border_inc, int *ntiles); + +extern STBox *stbox_space_time_tile(const GSERIALIZED *point, TimestampTz t, + double xsize, double ysize, double zsize, const Interval *duration, + const GSERIALIZED *sorigin, TimestampTz torigin, bool hasx, bool hast); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tpoint_datagen.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tpoint_datagen.h new file mode 100644 index 00000000..6d6fbb18 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tpoint_datagen.h @@ -0,0 +1,49 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for spatiotemporal bounding boxes. + */ + +#ifndef __TPOINT_DATAGEN_H__ +#define __TPOINT_DATAGEN_H__ + +/* MEOS */ +#include +#include + +/*****************************************************************************/ + +extern TSequence *create_trip(LWLINE **lines, const double *maxSpeeds, + const int *categories, uint32_t noEdges, TimestampTz startTime, + bool disturbData, int verbosity); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial.h new file mode 100644 index 00000000..7abd8cbc --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial.h @@ -0,0 +1,58 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Generic functions for spatiotemporal values + */ + +#ifndef __TSPATIAL_H__ +#define __TSPATIAL_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +extern char **spatialarr_wkt_out(const Datum *spatialarr, MeosType basetype, + int count, int maxdd, bool extended); + +extern char *spatialbase_as_text(Datum value, MeosType type, int maxdd); +extern char *spatialbase_as_ewkt(Datum value, MeosType type, int maxdd); + +extern bool point_transf_pj(GSERIALIZED *gs, int32_t srid_to, const LWPROJ *pj); + +/*****************************************************************************/ + +#endif /* __TSPATIAL_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_boxops.h new file mode 100644 index 00000000..ac6738a1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_boxops.h @@ -0,0 +1,73 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Bounding box operators for spatiotemporal values + */ + +#ifndef __TSPATIAL_BOXOPS_H__ +#define __TSPATIAL_BOXOPS_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/* Functions computing the bounding box at the creation of a temporal point */ + +extern void tgeoinst_set_stbox(const TInstant *inst, STBox *box); +extern void tgeoinstarr_set_stbox(TInstant **instants, int count, + STBox *box); +extern void tgeoseq_expand_stbox(TSequence *seq, const TInstant *inst); + +extern void tspatialinst_set_stbox(const TInstant *inst, STBox *box); +extern void tspatialinstarr_set_stbox(TInstant **instants, int count, + bool lower_inc, bool upper_inc, interpType interp, void *box); +extern void tspatialseqarr_set_stbox(TSequence **sequences, int count, + STBox *box); +extern void tspatialseq_expand_stbox(TSequence *seq, const TInstant *inst); + +extern void spatialarr_set_bbox(const Datum *values, MeosType basetype, + int count, void *box); + +/* Generic box functions */ + +extern bool boxop_tspatial_stbox(const Temporal *temp, const STBox *box, + bool (*func)(const STBox *, const STBox *), bool invert); +extern bool boxop_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2, + bool (*func)(const STBox *, const STBox *)); + +/*****************************************************************************/ + +#endif /* __TSPATIAL_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_parser.h b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_parser.h new file mode 100644 index 00000000..f51054b8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/geo/tspatial_parser.h @@ -0,0 +1,66 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for parsing temporal points. + */ + +#ifndef __TSPATIAL_PARSER_H__ +#define __TSPATIAL_PARSER_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +extern bool srid_parse(const char **str, int *srid); +extern bool spatial_parse_elem(const char **str, MeosType temptype, char delim, + int *temp_srid, Datum *result); +extern bool geo_parse(const char **str, MeosType basetype, char delim, + int *srid, GSERIALIZED **result); +extern STBox *stbox_parse(const char **str); +extern Temporal *tpoint_parse(const char **str, MeosType temptype); + +extern TInstant *tspatialinst_parse(const char **str, MeosType temptype, + bool end, int *temp_srid); +extern TSequence *tspatialseq_disc_parse(const char **str, MeosType temptype, + int *temp_srid); +extern TSequence *tspatialseq_cont_parse(const char **str, MeosType temptype, + interpType interp, bool end, int *temp_srid); +extern TSequenceSet *tspatialseqset_parse(const char **str, MeosType temptype, + interpType interp, int *temp_srid); +extern Temporal *tspatial_parse(const char **str, MeosType temptype); + +/*****************************************************************************/ + +#endif /* __TSPATIAL_PARSER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos.h new file mode 100644 index 00000000..044b2873 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos.h @@ -0,0 +1,1963 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief External API of the Mobility Engine Open Source (MEOS) library + */ + +#ifndef __MEOS_H__ +#define __MEOS_H__ + +/* C */ +#include +#include +#include +/* PostgreSQL */ +#if MEOS +#include "postgres_int_defs.h" +#else +#include +#include +#include +#endif + +/***************************************************************************** + * Toolchain dependent definitions + *****************************************************************************/ + +#ifdef _MSC_VER +/* + * Under MSVC, functions exported by a loadable module must be marked + * "dllexport". Other compilers don't need that. + * Borrowed from PostgreSQL file win32.h + */ +#define PGDLLEXPORT __declspec (dllexport) +/* + * Avoids warning C4996: 'strdup': The POSIX name for this item is deprecated. + */ +#define strdup _strdup +#endif + +/* + * Thread-local storage qualifier (MEOS_TLS) used internally by MEOS to + * make per-thread state (last-error number, PROJ context, SRS cache, + * ways cache, RNG, session timezone) safe under multithreading. Defined + * in a stand-alone header so that vendored PostgreSQL files can pick it + * up without pulling in the full meos.h. + */ +#include "meos_tls.h" + +/***************************************************************************** + * Type definitions + *****************************************************************************/ + +/** + * @brief Align to double + */ +#define DOUBLE_PAD(size) ( (size) + ((size) % 8 ? (8 - (size) % 8) : 0 ) ) + +/** + * Structure to represent sets of values + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 settype; /**< Set type */ + uint8 basetype; /**< Span basetype */ + int16 flags; /**< Flags */ + int32 count; /**< Number of elements */ + int32 maxcount; /**< Maximum number of elements */ + int16 bboxsize; /**< Size of the bouding box */ +} Set; + +/** + * Structure to represent spans (a.k.a. ranges) + */ +typedef struct +{ + uint8 spantype; /**< span type */ + uint8 basetype; /**< span basetype */ + bool lower_inc; /**< lower bound is inclusive (vs exclusive) */ + bool upper_inc; /**< upper bound is inclusive (vs exclusive) */ + char padding[4]; /**< Not used */ + Datum lower; /**< lower bound value */ + Datum upper; /**< upper bound value */ +} Span; + +/** + * Structure to represent span sets + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 spansettype; /**< Span set type */ + uint8 spantype; /**< Span type */ + uint8 basetype; /**< Span basetype */ + char padding; /**< Not used */ + int32 count; /**< Number of elements */ + int32 maxcount; /**< Maximum number of elements */ + Span span; /**< Bounding span */ + Span elems[1]; /**< Beginning of variable-length data */ +} SpanSet; + +/** + * Structure to represent temporal boxes + */ +typedef struct +{ + Span period; /**< time span */ + Span span; /**< value span */ + int16 flags; /**< flags */ +} TBox; + +/** + * Structure to represent spatiotemporal boxes + */ +typedef struct +{ + Span period; /**< time span */ + double xmin; /**< minimum x value */ + double ymin; /**< minimum y value */ + double zmin; /**< minimum z value */ + double xmax; /**< maximum x value */ + double ymax; /**< maximum y value */ + double zmax; /**< maximum z value */ + int32_t srid; /**< SRID */ + int16 flags; /**< flags */ +} STBox; + +/** + * @brief Enumeration that defines the temporal subtypes used in MEOS + */ +typedef enum +{ + ANYTEMPSUBTYPE = 0, /**< Any temporal subtype */ + TINSTANT = 1, /**< Temporal instant subtype */ + TSEQUENCE = 2, /**< Temporal sequence subtype */ + TSEQUENCESET = 3, /**< Temporal sequence set subtype */ +} tempSubtype; + +/** + * @brief Enumeration that defines the interpolation types used in MEOS + */ +typedef enum +{ + INTERP_NONE = 0, + DISCRETE = 1, + STEP = 2, + LINEAR = 3, +} interpType; + +/** + * Structure to represent the common structure of temporal values of + * any temporal subtype + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 temptype; /**< Temporal type */ + uint8 subtype; /**< Temporal subtype */ + int16 flags; /**< Flags */ + /* variable-length data follows */ +} Temporal; + +/** + * Structure to represent temporal values of instant subtype + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 temptype; /**< Temporal type */ + uint8 subtype; /**< Temporal subtype */ + int16 flags; /**< Flags */ + TimestampTz t; /**< Timestamp (8 bytes) */ + Datum value; /**< Base value for types passed by value, + first 8 bytes of the base value for values + passed by reference. The extra bytes + needed are added upon creation. */ + /* variable-length data follows */ +} TInstant; + +/** + * Structure to represent temporal values of sequence subtype + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 temptype; /**< Temporal type */ + uint8 subtype; /**< Temporal subtype */ + int16 flags; /**< Flags */ + int32 count; /**< Number of TInstant elements */ + int32 maxcount; /**< Maximum number of TInstant elements */ + int16 bboxsize; /**< Size of the bounding box */ + char padding[6]; /**< Not used */ + Span period; /**< Time span (24 bytes). All bounding boxes start + with a period so actually it is also the begining + of the bounding box. The extra bytes needed for + the bounding box are added upon creation. */ + /* variable-length data follows */ +} TSequence; + +#define TSEQUENCE_BBOX_PTR(seq) ((void *)(&(seq)->period)) + +/** + * Structure to represent temporal values of sequence set subtype + */ +typedef struct +{ + int32 vl_len_; /**< Varlena header (do not touch directly!) */ + uint8 temptype; /**< Temporal type */ + uint8 subtype; /**< Temporal subtype */ + int16 flags; /**< Flags */ + int32 count; /**< Number of TSequence elements */ + int32 totalcount; /**< Total number of TInstant elements in all + composing TSequence elements */ + int32 maxcount; /**< Maximum number of TSequence elements */ + int16 bboxsize; /**< Size of the bounding box */ + int16 padding; /**< Not used */ + Span period; /**< Time span (24 bytes). All bounding boxes start + with a period so actually it is also the begining + of the bounding box. The extra bytes needed for + the bounding box are added upon creation. */ + /* variable-length data follows */ +} TSequenceSet; + +#define TSEQUENCESET_BBOX_PTR(ss) ((void *)(&(ss)->period)) + +/** + * Struct for storing a similarity match + */ +typedef struct +{ + int i; + int j; +} Match; + +/*****************************************************************************/ + +/** + * Structure for skiplists + */ +typedef struct SkipList SkipList; + +/*****************************************************************************/ + +/** + * Structure for expandable arrays + */ +typedef struct MeosArray MeosArray; + +/* MeosArray functions */ + +extern MeosArray *meos_array_create(int elem_size); +extern void meos_array_add(MeosArray *array, void *value); +extern void *meos_array_get(const MeosArray *array, int n); +extern int meos_array_count(const MeosArray *array); +extern void meos_array_reset(MeosArray *array); +extern void meos_array_reset_free(MeosArray *array); +extern void meos_array_destroy(MeosArray *array); +extern void meos_array_destroy_free(MeosArray *array); + +/*****************************************************************************/ + +/** + * @brief Enumeration that defines the search operations for an RTree. + */ +typedef enum +{ + RTREE_OVERLAPS, /**< Find stored boxes that overlap the query */ + RTREE_CONTAINS, /**< Find stored boxes that contain the query */ + RTREE_CONTAINED_BY /**< Find stored boxes contained by the query */ +} RTreeSearchOp; + +/** + * Structure for the in-memory Rtree index + */ +typedef struct RTree RTree; + +/* RTree functions */ + +extern RTree *rtree_create_intspan(); +extern RTree *rtree_create_bigintspan(); +extern RTree *rtree_create_floatspan(); +extern RTree *rtree_create_datespan(); +extern RTree *rtree_create_tstzspan(); +extern RTree *rtree_create_tbox(); +extern RTree *rtree_create_stbox(); +#if POINTCLOUD +extern RTree *rtree_create_tpcbox(); +#endif +extern void rtree_free(RTree *rtree); +extern void rtree_insert(RTree *rtree, void *box, int id); +extern void rtree_insert_temporal(RTree *rtree, const Temporal *temp, int id); +extern int rtree_search(const RTree *rtree, RTreeSearchOp op, const void *query, MeosArray *result); +extern int rtree_search_temporal(const RTree *rtree, RTreeSearchOp op, const Temporal *temp, MeosArray *result); + +/***************************************************************************** + * Error codes + *****************************************************************************/ + +typedef enum +{ + MEOS_SUCCESS = 0, // Successful operation + + MEOS_ERR_INTERNAL_ERROR = 1, // Unspecified internal error + MEOS_ERR_INTERNAL_TYPE_ERROR = 2, // Internal type error + MEOS_ERR_VALUE_OUT_OF_RANGE = 3, // Internal out of range error + MEOS_ERR_DIVISION_BY_ZERO = 4, // Internal division by zero error + MEOS_ERR_MEMORY_ALLOC_ERROR = 5, // Internal malloc error + MEOS_ERR_AGGREGATION_ERROR = 6, // Internal aggregation error + MEOS_ERR_DIRECTORY_ERROR = 7, // Internal directory error + MEOS_ERR_FILE_ERROR = 8, // Internal file error + + MEOS_ERR_INVALID_ARG = 10, // Invalid argument + MEOS_ERR_INVALID_ARG_TYPE = 11, // Invalid argument type + MEOS_ERR_INVALID_ARG_VALUE = 12, // Invalid argument value + MEOS_ERR_FEATURE_NOT_SUPPORTED = 13, // Feature not currently supported + + MEOS_ERR_MFJSON_INPUT = 20, // MFJSON input error + MEOS_ERR_MFJSON_OUTPUT = 21, // MFJSON output error + MEOS_ERR_TEXT_INPUT = 22, // Text input error + MEOS_ERR_TEXT_OUTPUT = 23, // Text output error + MEOS_ERR_WKB_INPUT = 24, // WKB input error + MEOS_ERR_WKB_OUTPUT = 25, // WKB output error + MEOS_ERR_GEOJSON_INPUT = 26, // GEOJSON input error + MEOS_ERR_GEOJSON_OUTPUT = 27, // GEOJSON output error + +} errorCode; + +extern void meos_error(int errlevel, int errcode, const char *format, ...); + +/* Set or read error level */ + +extern int meos_errno(void); +extern int meos_errno_set(int err); +extern int meos_errno_restore(int err); +extern int meos_errno_reset(void); + +/***************************************************************************** + * Initialization of the MEOS library + * + * Multithreading + * -------------- + * The MEOS state managed by these functions is per-thread. Each thread + * that calls into MEOS must call `meos_initialize()` before its first + * MEOS call and `meos_finalize()` before exiting; the PROJ context, SRS + * cache, ways cache, RNGs, last-error number (`meos_errno`), and + * session timezone are all thread-local. + * + * The error handler set by `meos_initialize_error_handler()` is the + * one exception: it is process-global and should be installed once + * before workers are spawned. + *****************************************************************************/ + +/* Definition of error handler function */ +typedef void (*error_handler_fn)(int, int, const char *); + +extern void meos_initialize_timezone(const char *name); +extern void meos_initialize_error_handler(error_handler_fn err_handler); +extern void meos_finalize_timezone(void); +extern void meos_finalize_projsrs(void); +extern void meos_finalize_ways(void); + +extern bool meos_set_datestyle(const char *newval, void *extra); +extern bool meos_set_intervalstyle(const char *newval, int extra); +extern char *meos_get_datestyle(void); +extern char *meos_get_intervalstyle(void); + +extern void meos_set_spatial_ref_sys_csv(const char* path); + +extern void meos_initialize(void); +extern void meos_finalize(void); + +/****************************************************************************** + * Functions for base and time types + ******************************************************************************/ + +extern DateADT add_date_int(DateADT d, int32 days); +extern Interval *add_interval_interval(const Interval *interv1, const Interval *interv2); +extern TimestampTz add_timestamptz_interval(TimestampTz t, const Interval *interv); +extern bool bool_in(const char *str); +extern char *bool_out(bool b); +extern text *cstring2text(const char *str); +extern Timestamp date_to_timestamp(DateADT dateVal); +extern TimestampTz date_to_timestamptz(DateADT d); +extern double float_exp(double d); +extern double float_ln(double d); +extern double float_log10(double d); +extern char *float8_out(double d, int maxdd); +extern double float_round(double d, int maxdd); +extern int int32_cmp(int32 l, int32 r); +extern int int64_cmp(int64 l, int64 r); +extern Interval *interval_make(int32 years, int32 months, int32 weeks, int32 days, int32 hours, int32 mins, double secs); +extern int minus_date_date(DateADT d1, DateADT d2); +extern DateADT minus_date_int(DateADT d, int32 days); +extern TimestampTz minus_timestamptz_interval(TimestampTz t, const Interval *interv); +extern Interval *minus_timestamptz_timestamptz(TimestampTz t1, TimestampTz t2); +extern Interval *mul_interval_double(const Interval *interv, double factor); +extern DateADT pg_date_in(const char *str); +extern char *pg_date_out(DateADT d); +extern int pg_interval_cmp(const Interval *interv1, const Interval *interv2); +extern Interval *pg_interval_in(const char *str, int32 typmod); +extern char *pg_interval_out(const Interval *interv); +extern Timestamp pg_timestamp_in(const char *str, int32 typmod); +extern char *pg_timestamp_out(Timestamp t); +extern TimestampTz pg_timestamptz_in(const char *str, int32 typmod); +extern char *pg_timestamptz_out(TimestampTz t); +extern char *text2cstring(const text *txt); +extern int text_cmp(const text *txt1, const text *txt2); +extern text *text_copy(const text *txt); +extern text *text_in(const char *str); +extern text *text_initcap(const text *txt); +extern text *text_lower(const text *txt); +extern char *text_out(const text *txt); +extern text *text_upper(const text *txt); +extern text *textcat_text_text(const text *txt1, const text *txt2); +extern TimestampTz timestamptz_shift(TimestampTz t, const Interval *interv); +extern DateADT timestamp_to_date(Timestamp t); +extern DateADT timestamptz_to_date(TimestampTz t); + +/*============================================================================ + * Functions for set and span types + ===========================================================================*/ + +/***************************************************************************** + * Input/output functions for set and span types + *****************************************************************************/ + +extern Set *bigintset_in(const char *str); +extern char *bigintset_out(const Set *set); +extern Span *bigintspan_expand(const Span *s, int64 value); +extern Span *bigintspan_in(const char *str); +extern char *bigintspan_out(const Span *s); +extern SpanSet *bigintspanset_in(const char *str); +extern char *bigintspanset_out(const SpanSet *ss); +extern Set *dateset_in(const char *str); +extern char *dateset_out(const Set *s); +extern Span *datespan_in(const char *str); +extern char *datespan_out(const Span *s); +extern SpanSet *datespanset_in(const char *str); +extern char *datespanset_out(const SpanSet *ss); +extern Set *floatset_in(const char *str); +extern char *floatset_out(const Set *set, int maxdd); +extern Span *floatspan_expand(const Span *s, double value); +extern Span *floatspan_in(const char *str); +extern char *floatspan_out(const Span *s, int maxdd); +extern SpanSet *floatspanset_in(const char *str); +extern char *floatspanset_out(const SpanSet *ss, int maxdd); +extern Set *intset_in(const char *str); +extern char *intset_out(const Set *set); +extern Span *intspan_expand(const Span *s, int32 value); +extern Span *intspan_in(const char *str); +extern char *intspan_out(const Span *s); +extern SpanSet *intspanset_in(const char *str); +extern char *intspanset_out(const SpanSet *ss); +extern char *set_as_hexwkb(const Set *s, uint8_t variant, size_t *size_out); +extern uint8_t *set_as_wkb(const Set *s, uint8_t variant, size_t *size_out); +extern Set *set_from_hexwkb(const char *hexwkb); +extern Set *set_from_wkb(const uint8_t *wkb, size_t size); +extern char *span_as_hexwkb(const Span *s, uint8_t variant, size_t *size_out); +extern uint8_t *span_as_wkb(const Span *s, uint8_t variant, size_t *size_out); +extern Span *span_from_hexwkb(const char *hexwkb); +extern Span *span_from_wkb(const uint8_t *wkb, size_t size); +extern char *spanset_as_hexwkb(const SpanSet *ss, uint8_t variant, size_t *size_out); +extern uint8_t *spanset_as_wkb(const SpanSet *ss, uint8_t variant, size_t *size_out); +extern SpanSet *spanset_from_hexwkb(const char *hexwkb); +extern SpanSet *spanset_from_wkb(const uint8_t *wkb, size_t size); +extern Set *textset_in(const char *str); +extern char *textset_out(const Set *set); +extern Set *tstzset_in(const char *str); +extern char *tstzset_out(const Set *set); +extern Span *tstzspan_in(const char *str); +extern char *tstzspan_out(const Span *s); +extern SpanSet *tstzspanset_in(const char *str); +extern char *tstzspanset_out(const SpanSet *ss); + +/***************************************************************************** + * Constructor functions for set and span types + *****************************************************************************/ + +extern Set *bigintset_make(const int64 *values, int count); +extern Span *bigintspan_make(int64 lower, int64 upper, bool lower_inc, bool upper_inc); +extern Set *dateset_make(const DateADT *values, int count); +extern Span *datespan_make(DateADT lower, DateADT upper, bool lower_inc, bool upper_inc); +extern Set *floatset_make(const double *values, int count); +extern Span *floatspan_make(double lower, double upper, bool lower_inc, bool upper_inc); +extern Set *intset_make(const int *values, int count); +extern Span *intspan_make(int lower, int upper, bool lower_inc, bool upper_inc); +extern Set *set_copy(const Set *s); +extern Span *span_copy(const Span *s); +extern SpanSet *spanset_copy(const SpanSet *ss); +extern SpanSet *spanset_make(Span *spans, int count); +extern Set *textset_make(text **values, int count); +extern Set *tstzset_make(const TimestampTz *values, int count); +extern Span *tstzspan_make(TimestampTz lower, TimestampTz upper, bool lower_inc, bool upper_inc); + +/***************************************************************************** + * Conversion functions for set and span types + *****************************************************************************/ + +extern Set *bigint_to_set(int64 i); +extern Span *bigint_to_span(int64 i); +extern SpanSet *bigint_to_spanset(int64 i); +extern Span *bigintspan_to_intspan(const Span *s); +extern Span *bigintspan_to_floatspan(const Span *s); +extern Set *date_to_set(DateADT d); +extern Span *date_to_span(DateADT d); +extern SpanSet *date_to_spanset(DateADT d); +extern Set *dateset_to_tstzset(const Set *s); +extern Span *datespan_to_tstzspan(const Span *s); +extern SpanSet *datespanset_to_tstzspanset(const SpanSet *ss); +extern Set *float_to_set(double d); +extern Span *float_to_span(double d); +extern SpanSet *float_to_spanset(double d); +extern Set *floatset_to_intset(const Set *s); +extern Span *floatspan_to_bigintspan(const Span *s); +extern Span *floatspan_to_intspan(const Span *s); +extern SpanSet *floatspanset_to_intspanset(const SpanSet *ss); +extern Set *int_to_set(int i); +extern Span *int_to_span(int i); +extern SpanSet *int_to_spanset(int i); +extern Set *intset_to_floatset(const Set *s); +extern Span *intspan_to_bigintspan(const Span *s); +extern Span *intspan_to_floatspan(const Span *s); +extern SpanSet *intspanset_to_floatspanset(const SpanSet *ss); +extern Span *set_to_span(const Set *s); +extern SpanSet *set_to_spanset(const Set *s); +extern SpanSet *span_to_spanset(const Span *s); +extern Set *text_to_set(const text *txt); +extern Set *timestamptz_to_set(TimestampTz t); +extern Span *timestamptz_to_span(TimestampTz t); +extern SpanSet *timestamptz_to_spanset(TimestampTz t); +extern Set *tstzset_to_dateset(const Set *s); +extern Span *tstzspan_to_datespan(const Span *s); +extern SpanSet *tstzspanset_to_datespanset(const SpanSet *ss); + +/***************************************************************************** + * Accessor functions for set and span types + *****************************************************************************/ + +extern int64 bigintset_end_value(const Set *s); +extern int64 bigintset_start_value(const Set *s); +extern bool bigintset_value_n(const Set *s, int n, int64 *result); +extern int64 *bigintset_values(const Set *s); +extern int64 bigintspan_lower(const Span *s); +extern int64 bigintspan_upper(const Span *s); +extern int64 bigintspan_width(const Span *s); +extern int64 bigintspanset_lower(const SpanSet *ss); +extern int64 bigintspanset_upper(const SpanSet *ss); +extern int64 bigintspanset_width(const SpanSet *ss, bool boundspan); +extern DateADT dateset_end_value(const Set *s); +extern DateADT dateset_start_value(const Set *s); +extern bool dateset_value_n(const Set *s, int n, DateADT *result); +extern DateADT *dateset_values(const Set *s); +extern Interval *datespan_duration(const Span *s); +extern DateADT datespan_lower(const Span *s); +extern DateADT datespan_upper(const Span *s); +extern bool datespanset_date_n(const SpanSet *ss, int n, DateADT *result); +extern Set *datespanset_dates(const SpanSet *ss); +extern Interval *datespanset_duration(const SpanSet *ss, bool boundspan); +extern DateADT datespanset_end_date(const SpanSet *ss); +extern int datespanset_num_dates(const SpanSet *ss); +extern DateADT datespanset_start_date(const SpanSet *ss); +extern double floatset_end_value(const Set *s); +extern double floatset_start_value(const Set *s); +extern bool floatset_value_n(const Set *s, int n, double *result); +extern double *floatset_values(const Set *s); +extern double floatspan_lower(const Span *s); +extern double floatspan_upper(const Span *s); +extern double floatspan_width(const Span *s); +extern double floatspanset_lower(const SpanSet *ss); +extern double floatspanset_upper(const SpanSet *ss); +extern double floatspanset_width(const SpanSet *ss, bool boundspan); +extern int intset_end_value(const Set *s); +extern int intset_start_value(const Set *s); +extern bool intset_value_n(const Set *s, int n, int *result); +extern int *intset_values(const Set *s); +extern int intspan_lower(const Span *s); +extern int intspan_upper(const Span *s); +extern int intspan_width(const Span *s); +extern int intspanset_lower(const SpanSet *ss); +extern int intspanset_upper(const SpanSet *ss); +extern int intspanset_width(const SpanSet *ss, bool boundspan); +extern uint32 set_hash(const Set *s); +extern uint64 set_hash_extended(const Set *s, uint64 seed); +extern int set_num_values(const Set *s); +extern uint32 span_hash(const Span *s); +extern uint64 span_hash_extended(const Span *s, uint64 seed); +extern bool span_lower_inc(const Span *s); +extern bool span_upper_inc(const Span *s); +extern Span *spanset_end_span(const SpanSet *ss); +extern uint32 spanset_hash(const SpanSet *ss); +extern uint64 spanset_hash_extended(const SpanSet *ss, uint64 seed); +extern bool spanset_lower_inc(const SpanSet *ss); +extern int spanset_num_spans(const SpanSet *ss); +extern Span *spanset_span(const SpanSet *ss); +extern Span *spanset_span_n(const SpanSet *ss, int i); +extern Span **spanset_spanarr(const SpanSet *ss); +extern Span *spanset_start_span(const SpanSet *ss); +extern bool spanset_upper_inc(const SpanSet *ss); +extern text *textset_end_value(const Set *s); +extern text *textset_start_value(const Set *s); +extern bool textset_value_n(const Set *s, int n, text **result); +extern text **textset_values(const Set *s); +extern TimestampTz tstzset_end_value(const Set *s); +extern TimestampTz tstzset_start_value(const Set *s); +extern bool tstzset_value_n(const Set *s, int n, TimestampTz *result); +extern TimestampTz *tstzset_values(const Set *s); +extern Interval *tstzspan_duration(const Span *s); +extern TimestampTz tstzspan_lower(const Span *s); +extern TimestampTz tstzspan_upper(const Span *s); +extern Interval *tstzspanset_duration(const SpanSet *ss, bool boundspan); +extern TimestampTz tstzspanset_end_timestamptz(const SpanSet *ss); +extern TimestampTz tstzspanset_lower(const SpanSet *ss); +extern int tstzspanset_num_timestamps(const SpanSet *ss); +extern TimestampTz tstzspanset_start_timestamptz(const SpanSet *ss); +extern Set *tstzspanset_timestamps(const SpanSet *ss); +extern bool tstzspanset_timestamptz_n(const SpanSet *ss, int n, TimestampTz *result); +extern TimestampTz tstzspanset_upper(const SpanSet *ss); + +/***************************************************************************** + * Transformation functions for set and span types + *****************************************************************************/ + +extern Set *bigintset_shift_scale(const Set *s, int64 shift, int64 width, bool hasshift, bool haswidth); +extern Span *bigintspan_shift_scale(const Span *s, int64 shift, int64 width, bool hasshift, bool haswidth); +extern SpanSet *bigintspanset_shift_scale(const SpanSet *ss, int64 shift, int64 width, bool hasshift, bool haswidth); +extern Set *dateset_shift_scale(const Set *s, int shift, int width, bool hasshift, bool haswidth); +extern Span *datespan_shift_scale(const Span *s, int shift, int width, bool hasshift, bool haswidth); +extern SpanSet *datespanset_shift_scale(const SpanSet *ss, int shift, int width, bool hasshift, bool haswidth); +extern Set *floatset_ceil(const Set *s); +extern Set *floatset_degrees(const Set *s, bool normalize); +extern Set *floatset_floor(const Set *s); +extern Set *floatset_radians(const Set *s); +extern Set *floatset_shift_scale(const Set *s, double shift, double width, bool hasshift, bool haswidth); +extern Span *floatspan_ceil(const Span *s); +extern Span *floatspan_degrees(const Span *s, bool normalize); +extern Span *floatspan_floor(const Span *s); +extern Span *floatspan_radians(const Span *s); +extern Span *floatspan_round(const Span *s, int maxdd); +extern Span *floatspan_shift_scale(const Span *s, double shift, double width, bool hasshift, bool haswidth); +extern SpanSet *floatspanset_ceil(const SpanSet *ss); +extern SpanSet *floatspanset_floor(const SpanSet *ss); +extern SpanSet *floatspanset_degrees(const SpanSet *ss, bool normalize); +extern SpanSet *floatspanset_radians(const SpanSet *ss); +extern SpanSet *floatspanset_round(const SpanSet *ss, int maxdd); +extern SpanSet *floatspanset_shift_scale(const SpanSet *ss, double shift, double width, bool hasshift, bool haswidth); +extern Set *intset_shift_scale(const Set *s, int shift, int width, bool hasshift, bool haswidth); +extern Span *intspan_shift_scale(const Span *s, int shift, int width, bool hasshift, bool haswidth); +extern SpanSet *intspanset_shift_scale(const SpanSet *ss, int shift, int width, bool hasshift, bool haswidth); +extern Span *tstzspan_expand(const Span *s, const Interval *interv); +extern Set *set_round(const Set *s, int maxdd); +extern Set *textcat_text_textset(const text *txt, const Set *s); +extern Set *textcat_textset_text(const Set *s, const text *txt); +extern Set *textset_initcap(const Set *s); +extern Set *textset_lower(const Set *s); +extern Set *textset_upper(const Set *s); +extern TimestampTz timestamptz_tprecision(TimestampTz t, const Interval *duration, TimestampTz torigin); +extern Set *tstzset_shift_scale(const Set *s, const Interval *shift, const Interval *duration); +extern Set *tstzset_tprecision(const Set *s, const Interval *duration, TimestampTz torigin); +extern Span *tstzspan_shift_scale(const Span *s, const Interval *shift, const Interval *duration); +extern Span *tstzspan_tprecision(const Span *s, const Interval *duration, TimestampTz torigin); +extern SpanSet *tstzspanset_shift_scale(const SpanSet *ss, const Interval *shift, const Interval *duration); +extern SpanSet *tstzspanset_tprecision(const SpanSet *ss, const Interval *duration, TimestampTz torigin); + +/***************************************************************************** + * Comparison functions for set and span types + *****************************************************************************/ + +extern int set_cmp(const Set *s1, const Set *s2); +extern bool set_eq(const Set *s1, const Set *s2); +extern bool set_ge(const Set *s1, const Set *s2); +extern bool set_gt(const Set *s1, const Set *s2); +extern bool set_le(const Set *s1, const Set *s2); +extern bool set_lt(const Set *s1, const Set *s2); +extern bool set_ne(const Set *s1, const Set *s2); +extern int span_cmp(const Span *s1, const Span *s2); +extern bool span_eq(const Span *s1, const Span *s2); +extern bool span_ge(const Span *s1, const Span *s2); +extern bool span_gt(const Span *s1, const Span *s2); +extern bool span_le(const Span *s1, const Span *s2); +extern bool span_lt(const Span *s1, const Span *s2); +extern bool span_ne(const Span *s1, const Span *s2); +extern int spanset_cmp(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_eq(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_ge(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_gt(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_le(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_lt(const SpanSet *ss1, const SpanSet *ss2); +extern bool spanset_ne(const SpanSet *ss1, const SpanSet *ss2); + +/***************************************************************************** + * Bounding box functions for set and span types + *****************************************************************************/ + +/* Split functions */ + +extern Span *set_spans(const Set *s); +extern Span *set_split_each_n_spans(const Set *s, int elems_per_span, int *count); +extern Span *set_split_n_spans(const Set *s, int span_count, int *count); +extern Span *spanset_spans(const SpanSet *ss); +extern Span *spanset_split_each_n_spans(const SpanSet *ss, int elems_per_span, int *count); +extern Span *spanset_split_n_spans(const SpanSet *ss, int span_count, int *count); + +/* Topological functions */ + +extern bool adjacent_span_bigint(const Span *s, int64 i); +extern bool adjacent_span_date(const Span *s, DateADT d); +extern bool adjacent_span_float(const Span *s, double d); +extern bool adjacent_span_int(const Span *s, int i); +extern bool adjacent_span_span(const Span *s1, const Span *s2); +extern bool adjacent_span_spanset(const Span *s, const SpanSet *ss); +extern bool adjacent_span_timestamptz(const Span *s, TimestampTz t); +extern bool adjacent_spanset_bigint(const SpanSet *ss, int64 i); +extern bool adjacent_spanset_date(const SpanSet *ss, DateADT d); +extern bool adjacent_spanset_float(const SpanSet *ss, double d); +extern bool adjacent_spanset_int(const SpanSet *ss, int i); +extern bool adjacent_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool adjacent_spanset_span(const SpanSet *ss, const Span *s); +extern bool adjacent_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool contained_bigint_set(int64 i, const Set *s); +extern bool contained_bigint_span(int64 i, const Span *s); +extern bool contained_bigint_spanset(int64 i, const SpanSet *ss); +extern bool contained_date_set(DateADT d, const Set *s); +extern bool contained_date_span(DateADT d, const Span *s); +extern bool contained_date_spanset(DateADT d, const SpanSet *ss); +extern bool contained_float_set(double d, const Set *s); +extern bool contained_float_span(double d, const Span *s); +extern bool contained_float_spanset(double d, const SpanSet *ss); +extern bool contained_int_set(int i, const Set *s); +extern bool contained_int_span(int i, const Span *s); +extern bool contained_int_spanset(int i, const SpanSet *ss); +extern bool contained_set_set(const Set *s1, const Set *s2); +extern bool contained_span_span(const Span *s1, const Span *s2); +extern bool contained_span_spanset(const Span *s, const SpanSet *ss); +extern bool contained_spanset_span(const SpanSet *ss, const Span *s); +extern bool contained_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool contained_text_set(const text *txt, const Set *s); +extern bool contained_timestamptz_set(TimestampTz t, const Set *s); +extern bool contained_timestamptz_span(TimestampTz t, const Span *s); +extern bool contained_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern bool contains_set_bigint(const Set *s, int64 i); +extern bool contains_set_date(const Set *s, DateADT d); +extern bool contains_set_float(const Set *s, double d); +extern bool contains_set_int(const Set *s, int i); +extern bool contains_set_set(const Set *s1, const Set *s2); +extern bool contains_set_text(const Set *s, text *t); +extern bool contains_set_timestamptz(const Set *s, TimestampTz t); +extern bool contains_span_bigint(const Span *s, int64 i); +extern bool contains_span_date(const Span *s, DateADT d); +extern bool contains_span_float(const Span *s, double d); +extern bool contains_span_int(const Span *s, int i); +extern bool contains_span_span(const Span *s1, const Span *s2); +extern bool contains_span_spanset(const Span *s, const SpanSet *ss); +extern bool contains_span_timestamptz(const Span *s, TimestampTz t); +extern bool contains_spanset_bigint(const SpanSet *ss, int64 i); +extern bool contains_spanset_date(const SpanSet *ss, DateADT d); +extern bool contains_spanset_float(const SpanSet *ss, double d); +extern bool contains_spanset_int(const SpanSet *ss, int i); +extern bool contains_spanset_span(const SpanSet *ss, const Span *s); +extern bool contains_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool contains_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool overlaps_set_set(const Set *s1, const Set *s2); +extern bool overlaps_span_span(const Span *s1, const Span *s2); +extern bool overlaps_span_spanset(const Span *s, const SpanSet *ss); +extern bool overlaps_spanset_span(const SpanSet *ss, const Span *s); +extern bool overlaps_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); + +/*****************************************************************************/ + +/* Position functions for set and span types */ + +extern bool after_date_set(DateADT d, const Set *s); +extern bool after_date_span(DateADT d, const Span *s); +extern bool after_date_spanset(DateADT d, const SpanSet *ss); +extern bool after_set_date(const Set *s, DateADT d); +extern bool after_set_timestamptz(const Set *s, TimestampTz t); +extern bool after_span_date(const Span *s, DateADT d); +extern bool after_span_timestamptz(const Span *s, TimestampTz t); +extern bool after_spanset_date(const SpanSet *ss, DateADT d); +extern bool after_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool after_timestamptz_set(TimestampTz t, const Set *s); +extern bool after_timestamptz_span(TimestampTz t, const Span *s); +extern bool after_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern bool before_date_set(DateADT d, const Set *s); +extern bool before_date_span(DateADT d, const Span *s); +extern bool before_date_spanset(DateADT d, const SpanSet *ss); +extern bool before_set_date(const Set *s, DateADT d); +extern bool before_set_timestamptz(const Set *s, TimestampTz t); +extern bool before_span_date(const Span *s, DateADT d); +extern bool before_span_timestamptz(const Span *s, TimestampTz t); +extern bool before_spanset_date(const SpanSet *ss, DateADT d); +extern bool before_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool before_timestamptz_set(TimestampTz t, const Set *s); +extern bool before_timestamptz_span(TimestampTz t, const Span *s); +extern bool before_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern bool left_bigint_set(int64 i, const Set *s); +extern bool left_bigint_span(int64 i, const Span *s); +extern bool left_bigint_spanset(int64 i, const SpanSet *ss); +extern bool left_float_set(double d, const Set *s); +extern bool left_float_span(double d, const Span *s); +extern bool left_float_spanset(double d, const SpanSet *ss); +extern bool left_int_set(int i, const Set *s); +extern bool left_int_span(int i, const Span *s); +extern bool left_int_spanset(int i, const SpanSet *ss); +extern bool left_set_bigint(const Set *s, int64 i); +extern bool left_set_float(const Set *s, double d); +extern bool left_set_int(const Set *s, int i); +extern bool left_set_set(const Set *s1, const Set *s2); +extern bool left_set_text(const Set *s, text *txt); +extern bool left_span_bigint(const Span *s, int64 i); +extern bool left_span_float(const Span *s, double d); +extern bool left_span_int(const Span *s, int i); +extern bool left_span_span(const Span *s1, const Span *s2); +extern bool left_span_spanset(const Span *s, const SpanSet *ss); +extern bool left_spanset_bigint(const SpanSet *ss, int64 i); +extern bool left_spanset_float(const SpanSet *ss, double d); +extern bool left_spanset_int(const SpanSet *ss, int i); +extern bool left_spanset_span(const SpanSet *ss, const Span *s); +extern bool left_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool left_text_set(const text *txt, const Set *s); +extern bool overafter_date_set(DateADT d, const Set *s); +extern bool overafter_date_span(DateADT d, const Span *s); +extern bool overafter_date_spanset(DateADT d, const SpanSet *ss); +extern bool overafter_set_date(const Set *s, DateADT d); +extern bool overafter_set_timestamptz(const Set *s, TimestampTz t); +extern bool overafter_span_date(const Span *s, DateADT d); +extern bool overafter_span_timestamptz(const Span *s, TimestampTz t); +extern bool overafter_spanset_date(const SpanSet *ss, DateADT d); +extern bool overafter_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool overafter_timestamptz_set(TimestampTz t, const Set *s); +extern bool overafter_timestamptz_span(TimestampTz t, const Span *s); +extern bool overafter_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern bool overbefore_date_set(DateADT d, const Set *s); +extern bool overbefore_date_span(DateADT d, const Span *s); +extern bool overbefore_date_spanset(DateADT d, const SpanSet *ss); +extern bool overbefore_set_date(const Set *s, DateADT d); +extern bool overbefore_set_timestamptz(const Set *s, TimestampTz t); +extern bool overbefore_span_date(const Span *s, DateADT d); +extern bool overbefore_span_timestamptz(const Span *s, TimestampTz t); +extern bool overbefore_spanset_date(const SpanSet *ss, DateADT d); +extern bool overbefore_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern bool overbefore_timestamptz_set(TimestampTz t, const Set *s); +extern bool overbefore_timestamptz_span(TimestampTz t, const Span *s); +extern bool overbefore_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern bool overleft_bigint_set(int64 i, const Set *s); +extern bool overleft_bigint_span(int64 i, const Span *s); +extern bool overleft_bigint_spanset(int64 i, const SpanSet *ss); +extern bool overleft_float_set(double d, const Set *s); +extern bool overleft_float_span(double d, const Span *s); +extern bool overleft_float_spanset(double d, const SpanSet *ss); +extern bool overleft_int_set(int i, const Set *s); +extern bool overleft_int_span(int i, const Span *s); +extern bool overleft_int_spanset(int i, const SpanSet *ss); +extern bool overleft_set_bigint(const Set *s, int64 i); +extern bool overleft_set_float(const Set *s, double d); +extern bool overleft_set_int(const Set *s, int i); +extern bool overleft_set_set(const Set *s1, const Set *s2); +extern bool overleft_set_text(const Set *s, text *txt); +extern bool overleft_span_bigint(const Span *s, int64 i); +extern bool overleft_span_float(const Span *s, double d); +extern bool overleft_span_int(const Span *s, int i); +extern bool overleft_span_span(const Span *s1, const Span *s2); +extern bool overleft_span_spanset(const Span *s, const SpanSet *ss); +extern bool overleft_spanset_bigint(const SpanSet *ss, int64 i); +extern bool overleft_spanset_float(const SpanSet *ss, double d); +extern bool overleft_spanset_int(const SpanSet *ss, int i); +extern bool overleft_spanset_span(const SpanSet *ss, const Span *s); +extern bool overleft_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool overleft_text_set(const text *txt, const Set *s); +extern bool overright_bigint_set(int64 i, const Set *s); +extern bool overright_bigint_span(int64 i, const Span *s); +extern bool overright_bigint_spanset(int64 i, const SpanSet *ss); +extern bool overright_float_set(double d, const Set *s); +extern bool overright_float_span(double d, const Span *s); +extern bool overright_float_spanset(double d, const SpanSet *ss); +extern bool overright_int_set(int i, const Set *s); +extern bool overright_int_span(int i, const Span *s); +extern bool overright_int_spanset(int i, const SpanSet *ss); +extern bool overright_set_bigint(const Set *s, int64 i); +extern bool overright_set_float(const Set *s, double d); +extern bool overright_set_int(const Set *s, int i); +extern bool overright_set_set(const Set *s1, const Set *s2); +extern bool overright_set_text(const Set *s, text *txt); +extern bool overright_span_bigint(const Span *s, int64 i); +extern bool overright_span_float(const Span *s, double d); +extern bool overright_span_int(const Span *s, int i); +extern bool overright_span_span(const Span *s1, const Span *s2); +extern bool overright_span_spanset(const Span *s, const SpanSet *ss); +extern bool overright_spanset_bigint(const SpanSet *ss, int64 i); +extern bool overright_spanset_float(const SpanSet *ss, double d); +extern bool overright_spanset_int(const SpanSet *ss, int i); +extern bool overright_spanset_span(const SpanSet *ss, const Span *s); +extern bool overright_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool overright_text_set(const text *txt, const Set *s); +extern bool right_bigint_set(int64 i, const Set *s); +extern bool right_bigint_span(int64 i, const Span *s); +extern bool right_bigint_spanset(int64 i, const SpanSet *ss); +extern bool right_float_set(double d, const Set *s); +extern bool right_float_span(double d, const Span *s); +extern bool right_float_spanset(double d, const SpanSet *ss); +extern bool right_int_set(int i, const Set *s); +extern bool right_int_span(int i, const Span *s); +extern bool right_int_spanset(int i, const SpanSet *ss); +extern bool right_set_bigint(const Set *s, int64 i); +extern bool right_set_float(const Set *s, double d); +extern bool right_set_int(const Set *s, int i); +extern bool right_set_set(const Set *s1, const Set *s2); +extern bool right_set_text(const Set *s, text *txt); +extern bool right_span_bigint(const Span *s, int64 i); +extern bool right_span_float(const Span *s, double d); +extern bool right_span_int(const Span *s, int i); +extern bool right_span_span(const Span *s1, const Span *s2); +extern bool right_span_spanset(const Span *s, const SpanSet *ss); +extern bool right_spanset_bigint(const SpanSet *ss, int64 i); +extern bool right_spanset_float(const SpanSet *ss, double d); +extern bool right_spanset_int(const SpanSet *ss, int i); +extern bool right_spanset_span(const SpanSet *ss, const Span *s); +extern bool right_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern bool right_text_set(const text *txt, const Set *s); + +/***************************************************************************** + * Set functions for set and span types + *****************************************************************************/ + +extern Set *intersection_bigint_set(int64 i, const Set *s); +extern Set *intersection_date_set(DateADT d, const Set *s); +extern Set *intersection_float_set(double d, const Set *s); +extern Set *intersection_int_set(int i, const Set *s); +extern Set *intersection_set_bigint(const Set *s, int64 i); +extern Set *intersection_set_date(const Set *s, DateADT d); +extern Set *intersection_set_float(const Set *s, double d); +extern Set *intersection_set_int(const Set *s, int i); +extern Set *intersection_set_set(const Set *s1, const Set *s2); +extern Set *intersection_set_text(const Set *s, const text *txt); +extern Set *intersection_set_timestamptz(const Set *s, TimestampTz t); +extern Span *intersection_span_bigint(const Span *s, int64 i); +extern Span *intersection_span_date(const Span *s, DateADT d); +extern Span *intersection_span_float(const Span *s, double d); +extern Span *intersection_span_int(const Span *s, int i); +extern Span *intersection_span_span(const Span *s1, const Span *s2); +extern SpanSet *intersection_span_spanset(const Span *s, const SpanSet *ss); +extern Span *intersection_span_timestamptz(const Span *s, TimestampTz t); +extern SpanSet *intersection_spanset_bigint(const SpanSet *ss, int64 i); +extern SpanSet *intersection_spanset_date(const SpanSet *ss, DateADT d); +extern SpanSet *intersection_spanset_float(const SpanSet *ss, double d); +extern SpanSet *intersection_spanset_int(const SpanSet *ss, int i); +extern SpanSet *intersection_spanset_span(const SpanSet *ss, const Span *s); +extern SpanSet *intersection_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern SpanSet *intersection_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern Set *intersection_text_set(const text *txt, const Set *s); +extern Set *intersection_timestamptz_set(TimestampTz t, const Set *s); +extern Set *minus_bigint_set(int64 i, const Set *s); +extern SpanSet *minus_bigint_span(int64 i, const Span *s); +extern SpanSet *minus_bigint_spanset(int64 i, const SpanSet *ss); +extern Set *minus_date_set(DateADT d, const Set *s); +extern SpanSet *minus_date_span(DateADT d, const Span *s); +extern SpanSet *minus_date_spanset(DateADT d, const SpanSet *ss); +extern Set *minus_float_set(double d, const Set *s); +extern SpanSet *minus_float_span(double d, const Span *s); +extern SpanSet *minus_float_spanset(double d, const SpanSet *ss); +extern Set *minus_int_set(int i, const Set *s); +extern SpanSet *minus_int_span(int i, const Span *s); +extern SpanSet *minus_int_spanset(int i, const SpanSet *ss); +extern Set *minus_set_bigint(const Set *s, int64 i); +extern Set *minus_set_date(const Set *s, DateADT d); +extern Set *minus_set_float(const Set *s, double d); +extern Set *minus_set_int(const Set *s, int i); +extern Set *minus_set_set(const Set *s1, const Set *s2); +extern Set *minus_set_text(const Set *s, const text *txt); +extern Set *minus_set_timestamptz(const Set *s, TimestampTz t); +extern SpanSet *minus_span_bigint(const Span *s, int64 i); +extern SpanSet *minus_span_date(const Span *s, DateADT d); +extern SpanSet *minus_span_float(const Span *s, double d); +extern SpanSet *minus_span_int(const Span *s, int i); +extern SpanSet *minus_span_span(const Span *s1, const Span *s2); +extern SpanSet *minus_span_spanset(const Span *s, const SpanSet *ss); +extern SpanSet *minus_span_timestamptz(const Span *s, TimestampTz t); +extern SpanSet *minus_spanset_bigint(const SpanSet *ss, int64 i); +extern SpanSet *minus_spanset_date(const SpanSet *ss, DateADT d); +extern SpanSet *minus_spanset_float(const SpanSet *ss, double d); +extern SpanSet *minus_spanset_int(const SpanSet *ss, int i); +extern SpanSet *minus_spanset_span(const SpanSet *ss, const Span *s); +extern SpanSet *minus_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern SpanSet *minus_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern Set *minus_text_set(const text *txt, const Set *s); +extern Set *minus_timestamptz_set(TimestampTz t, const Set *s); +extern SpanSet *minus_timestamptz_span(TimestampTz t, const Span *s); +extern SpanSet *minus_timestamptz_spanset(TimestampTz t, const SpanSet *ss); +extern Set *union_bigint_set(int64 i, const Set *s); +extern SpanSet *union_bigint_span(const Span *s, int64 i); +extern SpanSet *union_bigint_spanset(int64 i, SpanSet *ss); +extern Set *union_date_set(DateADT d, const Set *s); +extern SpanSet *union_date_span(const Span *s, DateADT d); +extern SpanSet *union_date_spanset(DateADT d, SpanSet *ss); +extern Set *union_float_set(double d, const Set *s); +extern SpanSet *union_float_span(const Span *s, double d); +extern SpanSet *union_float_spanset(double d, SpanSet *ss); +extern Set *union_int_set(int i, const Set *s); +extern SpanSet *union_int_span(int i, const Span *s); +extern SpanSet *union_int_spanset(int i, SpanSet *ss); +extern Set *union_set_bigint(const Set *s, int64 i); +extern Set *union_set_date(const Set *s, DateADT d); +extern Set *union_set_float(const Set *s, double d); +extern Set *union_set_int(const Set *s, int i); +extern Set *union_set_set(const Set *s1, const Set *s2); +extern Set *union_set_text(const Set *s, const text *txt); +extern Set *union_set_timestamptz(const Set *s, TimestampTz t); +extern SpanSet *union_span_bigint(const Span *s, int64 i); +extern SpanSet *union_span_date(const Span *s, DateADT d); +extern SpanSet *union_span_float(const Span *s, double d); +extern SpanSet *union_span_int(const Span *s, int i); +extern SpanSet *union_span_span(const Span *s1, const Span *s2); +extern SpanSet *union_span_spanset(const Span *s, const SpanSet *ss); +extern SpanSet *union_span_timestamptz(const Span *s, TimestampTz t); +extern SpanSet *union_spanset_bigint(const SpanSet *ss, int64 i); +extern SpanSet *union_spanset_date(const SpanSet *ss, DateADT d); +extern SpanSet *union_spanset_float(const SpanSet *ss, double d); +extern SpanSet *union_spanset_int(const SpanSet *ss, int i); +extern SpanSet *union_spanset_span(const SpanSet *ss, const Span *s); +extern SpanSet *union_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern SpanSet *union_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern Set *union_text_set(const text *txt, const Set *s); +extern Set *union_timestamptz_set(TimestampTz t, const Set *s); +extern SpanSet *union_timestamptz_span(TimestampTz t, const Span *s); +extern SpanSet *union_timestamptz_spanset(TimestampTz t, SpanSet *ss); + +/***************************************************************************** + * Distance functions for set and span types + *****************************************************************************/ + +extern int64 distance_bigintset_bigintset(const Set *s1, const Set *s2); +extern int64 distance_bigintspan_bigintspan(const Span *s1, const Span *s2); +extern int64 distance_bigintspanset_bigintspan(const SpanSet *ss, const Span *s); +extern int64 distance_bigintspanset_bigintspanset(const SpanSet *ss1, const SpanSet *ss2); +extern int distance_dateset_dateset(const Set *s1, const Set *s2); +extern int distance_datespan_datespan(const Span *s1, const Span *s2); +extern int distance_datespanset_datespan(const SpanSet *ss, const Span *s); +extern int distance_datespanset_datespanset(const SpanSet *ss1, const SpanSet *ss2); +extern double distance_floatset_floatset(const Set *s1, const Set *s2); +extern double distance_floatspan_floatspan(const Span *s1, const Span *s2); +extern double distance_floatspanset_floatspan(const SpanSet *ss, const Span *s); +extern double distance_floatspanset_floatspanset(const SpanSet *ss1, const SpanSet *ss2); +extern int distance_intset_intset(const Set *s1, const Set *s2); +extern int distance_intspan_intspan(const Span *s1, const Span *s2); +extern int distance_intspanset_intspan(const SpanSet *ss, const Span *s); +extern int distance_intspanset_intspanset(const SpanSet *ss1, const SpanSet *ss2); +extern int64 distance_set_bigint(const Set *s, int64 i); +extern int distance_set_date(const Set *s, DateADT d); +extern double distance_set_float(const Set *s, double d); +extern int distance_set_int(const Set *s, int i); +extern double distance_set_timestamptz(const Set *s, TimestampTz t); +extern int64 distance_span_bigint(const Span *s, int64 i); +extern int distance_span_date(const Span *s, DateADT d); +extern double distance_span_float(const Span *s, double d); +extern int distance_span_int(const Span *s, int i); +extern double distance_span_timestamptz(const Span *s, TimestampTz t); +extern int64 distance_spanset_bigint(const SpanSet *ss, int64 i); +extern int distance_spanset_date(const SpanSet *ss, DateADT d); +extern double distance_spanset_float(const SpanSet *ss, double d); +extern int distance_spanset_int(const SpanSet *ss, int i); +extern double distance_spanset_timestamptz(const SpanSet *ss, TimestampTz t); +extern double distance_tstzset_tstzset(const Set *s1, const Set *s2); +extern double distance_tstzspan_tstzspan(const Span *s1, const Span *s2); +extern double distance_tstzspanset_tstzspan(const SpanSet *ss, const Span *s); +extern double distance_tstzspanset_tstzspanset(const SpanSet *ss1, const SpanSet *ss2); + +/***************************************************************************** + * Aggregate functions for set and span types + *****************************************************************************/ + +extern Span *bigint_extent_transfn(Span *state, int64 i); +extern Set *bigint_union_transfn(Set *state, int64 i); +extern Span *date_extent_transfn(Span *state, DateADT d); +extern Set *date_union_transfn(Set *state, DateADT d); +extern Span *float_extent_transfn(Span *state, double d); +extern Set *float_union_transfn(Set *state, double d); +extern Span *int_extent_transfn(Span *state, int i); +extern Set *int_union_transfn(Set *state, int32 i); +extern Span *set_extent_transfn(Span *state, const Set *s); +extern Set *set_union_finalfn(Set *state); +extern Set *set_union_transfn(Set *state, Set *s); +extern Span *span_extent_transfn(Span *state, const Span *s); +extern SpanSet *span_union_transfn(SpanSet *state, const Span *s); +extern Span *spanset_extent_transfn(Span *state, const SpanSet *ss); +extern SpanSet *spanset_union_finalfn(SpanSet *state); +extern SpanSet *spanset_union_transfn(SpanSet *state, const SpanSet *ss); +extern Set *text_union_transfn(Set *state, const text *txt); +extern Span *timestamptz_extent_transfn(Span *state, TimestampTz t); +extern Set *timestamptz_union_transfn(Set *state, TimestampTz t); + +/***************************************************************************** + * Bin functions for span and spanset types + *****************************************************************************/ + +extern int64 bigint_get_bin(int64 value, int64 vsize, int64 vorigin); +extern Span *bigintspan_bins(const Span *s, int64 vsize, int64 vorigin, int *count); +extern Span *bigintspanset_bins(const SpanSet *ss, int64 vsize, int64 vorigin, int *count); +extern DateADT date_get_bin(DateADT d, const Interval *duration, DateADT torigin); +extern Span *datespan_bins(const Span *s, const Interval *duration, DateADT torigin, int *count); +extern Span *datespanset_bins(const SpanSet *ss, const Interval *duration, DateADT torigin, int *count); +extern double float_get_bin(double value, double vsize, double vorigin); +extern Span *floatspan_bins(const Span *s, double vsize, double vorigin, int *count); +extern Span *floatspanset_bins(const SpanSet *ss, double vsize, double vorigin, int *count); +extern int int_get_bin(int value, int vsize, int vorigin); +extern Span *intspan_bins(const Span *s, int vsize, int vorigin, int *count); +extern Span *intspanset_bins(const SpanSet *ss, int vsize, int vorigin, int *count); +extern TimestampTz timestamptz_get_bin(TimestampTz t, const Interval *duration, TimestampTz torigin); +extern Span *tstzspan_bins(const Span *s, const Interval *duration, TimestampTz origin, int *count); +extern Span *tstzspanset_bins(const SpanSet *ss, const Interval *duration, TimestampTz torigin, int *count); + +/*===========================================================================* + * Functions for temporal boxes + *===========================================================================*/ + +/***************************************************************************** + * Input and output functions for box types + *****************************************************************************/ + +extern char *tbox_as_hexwkb(const TBox *box, uint8_t variant, size_t *size); +extern uint8_t *tbox_as_wkb(const TBox *box, uint8_t variant, size_t *size_out); +extern TBox *tbox_from_hexwkb(const char *hexwkb); +extern TBox *tbox_from_wkb(const uint8_t *wkb, size_t size); +extern TBox *tbox_in(const char *str); +extern char *tbox_out(const TBox *box, int maxdd); + +/***************************************************************************** + * Constructor functions for box types + *****************************************************************************/ + +extern TBox *float_timestamptz_to_tbox(double d, TimestampTz t); +extern TBox *float_tstzspan_to_tbox(double d, const Span *s); +extern TBox *int_timestamptz_to_tbox(int i, TimestampTz t); +extern TBox *int_tstzspan_to_tbox(int i, const Span *s); +extern TBox *numspan_tstzspan_to_tbox(const Span *span, const Span *s); +extern TBox *numspan_timestamptz_to_tbox(const Span *span, TimestampTz t); +extern TBox *tbox_copy(const TBox *box); +extern TBox *tbox_make(const Span *s, const Span *p); + +/***************************************************************************** + * Conversion functions for box types + *****************************************************************************/ + +extern TBox *float_to_tbox(double d); +extern TBox *int_to_tbox(int i); +extern TBox *set_to_tbox(const Set *s); +extern TBox *span_to_tbox(const Span *s); +extern TBox *spanset_to_tbox(const SpanSet *ss); +extern Span *tbox_to_bigintspan(const TBox *box); +extern Span *tbox_to_intspan(const TBox *box); +extern Span *tbox_to_floatspan(const TBox *box); +extern Span *tbox_to_tstzspan(const TBox *box); +extern TBox *timestamptz_to_tbox(TimestampTz t); + +/***************************************************************************** + * Accessor functions for box types + *****************************************************************************/ + +extern uint32 tbox_hash(const TBox *box); +extern uint64 tbox_hash_extended(const TBox *box, uint64 seed); +extern bool tbox_hast(const TBox *box); +extern bool tbox_hasx(const TBox *box); +extern bool tbox_tmax(const TBox *box, TimestampTz *result); +extern bool tbox_tmax_inc(const TBox *box, bool *result); +extern bool tbox_tmin(const TBox *box, TimestampTz *result); +extern bool tbox_tmin_inc(const TBox *box, bool *result); +extern bool tbox_xmax(const TBox *box, double *result); +extern bool tbox_xmax_inc(const TBox *box, bool *result); +extern bool tbox_xmin(const TBox *box, double *result); +extern bool tbox_xmin_inc(const TBox *box, bool *result); +extern bool tboxfloat_xmax(const TBox *box, double *result); +extern bool tboxfloat_xmin(const TBox *box, double *result); +extern bool tboxint_xmax(const TBox *box, int *result); +extern bool tboxint_xmin(const TBox *box, int *result); + +/***************************************************************************** + * Transformation functions for box types + *****************************************************************************/ + +extern TBox *tbigintbox_expand(const TBox *box, int64 i); +extern TBox *tbigintbox_shift_scale(const TBox *box, int64 shift, int64 width, bool hasshift, bool haswidth); +extern TBox *tbox_expand_time(const TBox *box, const Interval *interv); +extern TBox *tbox_round(const TBox *box, int maxdd); +extern TBox *tbox_shift_scale_time(const TBox *box, const Interval *shift, const Interval *duration); +extern TBox *tfloatbox_expand(const TBox *box, double d); +extern TBox *tfloatbox_shift_scale(const TBox *box, double shift, double width, bool hasshift, bool haswidth); +extern TBox *tintbox_expand(const TBox *box, int i); +extern TBox *tintbox_shift_scale(const TBox *box, int shift, int width, bool hasshift, bool haswidth); + +/***************************************************************************** + * Set functions for box types + *****************************************************************************/ + +extern TBox *union_tbox_tbox(const TBox *box1, const TBox *box2, bool strict); +extern TBox *intersection_tbox_tbox(const TBox *box1, const TBox *box2); + +/***************************************************************************** + * Bounding box functions for box types + *****************************************************************************/ + +/* Topological functions for box types */ + +extern bool adjacent_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool contained_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool contains_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool overlaps_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool same_tbox_tbox(const TBox *box1, const TBox *box2); + +/*****************************************************************************/ + +/* Position functions for box types */ + +extern bool after_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool before_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool left_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool overafter_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool overbefore_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool overleft_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool overright_tbox_tbox(const TBox *box1, const TBox *box2); +extern bool right_tbox_tbox(const TBox *box1, const TBox *box2); + +/***************************************************************************** + * Comparison functions for box types + *****************************************************************************/ + +extern int tbox_cmp(const TBox *box1, const TBox *box2); +extern bool tbox_eq(const TBox *box1, const TBox *box2); +extern bool tbox_ge(const TBox *box1, const TBox *box2); +extern bool tbox_gt(const TBox *box1, const TBox *box2); +extern bool tbox_le(const TBox *box1, const TBox *box2); +extern bool tbox_lt(const TBox *box1, const TBox *box2); +extern bool tbox_ne(const TBox *box1, const TBox *box2); + +/*===========================================================================* + * Functions for temporal types + *===========================================================================*/ + +/***************************************************************************** + * Input and output functions for temporal types + *****************************************************************************/ + +extern Temporal *tbigint_from_mfjson(const char *str); +extern Temporal *tbigint_in(const char *str); +extern char *tbigint_out(const Temporal *temp); +extern Temporal *tbool_from_mfjson(const char *str); +extern Temporal *tbool_in(const char *str); +extern char *tbool_out(const Temporal *temp); +extern char *temporal_as_hexwkb(const Temporal *temp, uint8_t variant, size_t *size_out); +extern char *temporal_as_mfjson(const Temporal *temp, bool with_bbox, int flags, int precision, const char *srs); +extern uint8_t *temporal_as_wkb(const Temporal *temp, uint8_t variant, size_t *size_out); +extern Temporal *temporal_from_hexwkb(const char *hexwkb); +extern Temporal *temporal_from_wkb(const uint8_t *wkb, size_t size); +extern Temporal *tfloat_from_mfjson(const char *str); +extern Temporal *tfloat_in(const char *str); +extern char *tfloat_out(const Temporal *temp, int maxdd); +extern Temporal *tint_from_mfjson(const char *str); +extern Temporal *tint_in(const char *str); +extern char *tint_out(const Temporal *temp); +extern Temporal *ttext_from_mfjson(const char *str); +extern Temporal *ttext_in(const char *str); +extern char *ttext_out(const Temporal *temp); + +/***************************************************************************** + * Constructor functions for temporal types + *****************************************************************************/ + +extern Temporal *tbigint_from_base_temp(int64 i, const Temporal *temp); +extern TInstant *tbigintinst_make(int64 i, TimestampTz t); +extern TSequence *tbigintseq_from_base_tstzset(int64 i, const Set *s); +extern TSequence *tbigintseq_from_base_tstzspan(int64 i, const Span *s); +extern TSequenceSet *tbigintseqset_from_base_tstzspanset(int64 i, const SpanSet *ss); +extern Temporal *tbool_from_base_temp(bool b, const Temporal *temp); +extern TInstant *tboolinst_make(bool b, TimestampTz t); +extern TSequence *tboolseq_from_base_tstzset(bool b, const Set *s); +extern TSequence *tboolseq_from_base_tstzspan(bool b, const Span *s); +extern TSequenceSet *tboolseqset_from_base_tstzspanset(bool b, const SpanSet *ss); +extern Temporal *temporal_copy(const Temporal *temp); +extern Temporal *tfloat_from_base_temp(double d, const Temporal *temp); +extern TInstant *tfloatinst_make(double d, TimestampTz t); +extern TSequence *tfloatseq_from_base_tstzset(double d, const Set *s); +extern TSequence *tfloatseq_from_base_tstzspan(double d, const Span *s, interpType interp); +extern TSequenceSet *tfloatseqset_from_base_tstzspanset(double d, const SpanSet *ss, interpType interp); +extern Temporal *tint_from_base_temp(int i, const Temporal *temp); +extern TInstant *tintinst_make(int i, TimestampTz t); +extern TSequence *tintseq_from_base_tstzset(int i, const Set *s); +extern TSequence *tintseq_from_base_tstzspan(int i, const Span *s); +extern TSequenceSet *tintseqset_from_base_tstzspanset(int i, const SpanSet *ss); +extern TSequence *tsequence_make(TInstant **instants, int count, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequenceSet *tsequenceset_make(TSequence **sequences, int count, bool normalize); +extern TSequenceSet *tsequenceset_make_gaps(TInstant **instants, int count, interpType interp, const Interval *maxt, double maxdist); +extern Temporal *ttext_from_base_temp(const text *txt, const Temporal *temp); +extern TInstant *ttextinst_make(const text *txt, TimestampTz t); +extern TSequence *ttextseq_from_base_tstzset(const text *txt, const Set *s); +extern TSequence *ttextseq_from_base_tstzspan(const text *txt, const Span *s); +extern TSequenceSet *ttextseqset_from_base_tstzspanset(const text *txt, const SpanSet *ss); + +/***************************************************************************** + * Conversion functions for temporal types + *****************************************************************************/ + +extern Temporal *tbigint_to_tfloat(const Temporal *temp); +extern Temporal *tbigint_to_tint(const Temporal *temp); +extern Temporal *tbool_to_tint(const Temporal *temp); +extern Span *temporal_to_tstzspan(const Temporal *temp); +extern Temporal *tfloat_to_tbigint(const Temporal *temp); +extern Temporal *tfloat_to_tint(const Temporal *temp); +extern Temporal *tint_to_tbigint(const Temporal *temp); +extern Temporal *tint_to_tfloat(const Temporal *temp); +extern Span *tnumber_to_span(const Temporal *temp); +extern TBox *tnumber_to_tbox (const Temporal *temp); + +/***************************************************************************** + * Accessor functions for temporal types + *****************************************************************************/ + +extern int64 tbigint_end_value(const Temporal *temp); +extern int64 tbigint_max_value(const Temporal *temp); +extern int64 tbigint_min_value(const Temporal *temp); +extern int64 tbigint_start_value(const Temporal *temp); +extern bool tbigint_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, int64 *value); +extern bool tbigint_value_n(const Temporal *temp, int64 n, int64 *result); +extern int64 *tbigint_values(const Temporal *temp, int32 *count); +extern bool tbool_end_value(const Temporal *temp); +extern bool tbool_start_value(const Temporal *temp); +extern bool tbool_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, bool *value); +extern bool tbool_value_n(const Temporal *temp, int n, bool *result); +extern bool *tbool_values(const Temporal *temp, int *count); +extern Interval *temporal_duration(const Temporal *temp, bool boundspan); +extern TInstant *temporal_end_instant(const Temporal *temp); +extern TSequence *temporal_end_sequence(const Temporal *temp); +extern TimestampTz temporal_end_timestamptz(const Temporal *temp); +extern uint32 temporal_hash(const Temporal *temp); +extern TInstant *temporal_instant_n(const Temporal *temp, int n); +extern TInstant **temporal_instants(const Temporal *temp, int *count); +extern const char *temporal_interp(const Temporal *temp); +extern bool temporal_lower_inc(const Temporal *temp); +extern TInstant *temporal_max_instant(const Temporal *temp); +extern TInstant *temporal_min_instant(const Temporal *temp); +extern int temporal_num_instants(const Temporal *temp); +extern int temporal_num_sequences(const Temporal *temp); +extern int temporal_num_timestamps(const Temporal *temp); +extern TSequenceSet *temporal_segm_duration(const Temporal *temp, const Interval *duration, bool atleast, bool strict); +extern TSequence **temporal_segments(const Temporal *temp, int *count); +extern TSequence *temporal_sequence_n(const Temporal *temp, int i); +extern TSequence **temporal_sequences(const Temporal *temp, int *count); +extern TInstant *temporal_start_instant(const Temporal *temp); +extern TSequence *temporal_start_sequence(const Temporal *temp); +extern TimestampTz temporal_start_timestamptz(const Temporal *temp); +extern TSequenceSet *temporal_stops(const Temporal *temp, double maxdist, const Interval *minduration); +extern const char *temporal_subtype(const Temporal *temp); +extern SpanSet *temporal_time(const Temporal *temp); +extern TimestampTz *temporal_timestamps(const Temporal *temp, int *count); +extern bool temporal_timestamptz_n(const Temporal *temp, int n, TimestampTz *result); +extern bool temporal_upper_inc(const Temporal *temp); +extern double tfloat_avg_value(const Temporal *temp); +extern double tfloat_end_value(const Temporal *temp); +extern double tfloat_min_value(const Temporal *temp); +extern double tfloat_max_value(const Temporal *temp); +extern double tfloat_start_value(const Temporal *temp); +extern bool tfloat_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, double *value); +extern bool tfloat_value_n(const Temporal *temp, int n, double *result); +extern double *tfloat_values(const Temporal *temp, int *count); +extern int tint_end_value(const Temporal *temp); +extern int tint_max_value(const Temporal *temp); +extern int tint_min_value(const Temporal *temp); +extern int tint_start_value(const Temporal *temp); +extern bool tint_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, int *value); +extern bool tint_value_n(const Temporal *temp, int n, int *result); +extern int *tint_values(const Temporal *temp, int *count); +extern double tnumber_avg_value(const Temporal *temp); +extern double tnumber_integral(const Temporal *temp); +extern double tnumber_twavg(const Temporal *temp); +extern SpanSet *tnumber_valuespans(const Temporal *temp); +extern text *ttext_end_value(const Temporal *temp); +extern text *ttext_max_value(const Temporal *temp); +extern text *ttext_min_value(const Temporal *temp); +extern text *ttext_start_value(const Temporal *temp); +extern bool ttext_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, text **value); +extern bool ttext_value_n(const Temporal *temp, int n, text **result); +extern text **ttext_values(const Temporal *temp, int *count); + +/***************************************************************************** + * Transformation functions for temporal types + *****************************************************************************/ + +extern double float_degrees(double value, bool normalize); +extern Temporal *tbigint_scale_value(const Temporal *temp, int64 width); +extern Temporal *tbigint_shift_scale_value(const Temporal *temp, int64 shift, int64 width); +extern Temporal *tbigint_shift_value(const Temporal *temp, int64 shift); +extern Temporal **temparr_round(Temporal **temp, int count, int maxdd); +extern Temporal *temporal_round(const Temporal *temp, int maxdd); +extern Temporal *temporal_scale_time(const Temporal *temp, const Interval *duration); +extern Temporal *temporal_set_interp(const Temporal *temp, interpType interp); +extern Temporal *temporal_shift_scale_time(const Temporal *temp, const Interval *shift, const Interval *duration); +extern Temporal *temporal_shift_time(const Temporal *temp, const Interval *shift); +extern TInstant *temporal_to_tinstant(const Temporal *temp); +extern TSequence *temporal_to_tsequence(const Temporal *temp, interpType interp); +extern TSequenceSet *temporal_to_tsequenceset(const Temporal *temp, interpType interp); +extern Temporal *tfloat_ceil(const Temporal *temp); +extern Temporal *tfloat_degrees(const Temporal *temp, bool normalize); +extern Temporal *tfloat_floor(const Temporal *temp); +extern Temporal *tfloat_radians(const Temporal *temp); +extern Temporal *tfloat_scale_value(const Temporal *temp, double width); +extern Temporal *tfloat_shift_scale_value(const Temporal *temp, double shift, double width); +extern Temporal *tfloat_shift_value(const Temporal *temp, double shift); +extern Temporal *tint_scale_value(const Temporal *temp, int width); +extern Temporal *tint_shift_scale_value(const Temporal *temp, int shift, int width); +extern Temporal *tint_shift_value(const Temporal *temp, int shift); + +/***************************************************************************** + * Modification functions for temporal types + *****************************************************************************/ + +extern Temporal *temporal_append_tinstant(Temporal *temp, const TInstant *inst, interpType interp, double maxdist, const Interval *maxt, bool expand); +extern Temporal *temporal_append_tsequence(Temporal *temp, const TSequence *seq, bool expand); +extern Temporal *temporal_delete_timestamptz(const Temporal *temp, TimestampTz t, bool connect); +extern Temporal *temporal_delete_tstzset(const Temporal *temp, const Set *s, bool connect); +extern Temporal *temporal_delete_tstzspan(const Temporal *temp, const Span *s, bool connect); +extern Temporal *temporal_delete_tstzspanset(const Temporal *temp, const SpanSet *ss, bool connect); +extern Temporal *temporal_insert(const Temporal *temp1, const Temporal *temp2, bool connect); +extern Temporal *temporal_merge(const Temporal *temp1, const Temporal *temp2); +extern Temporal *temporal_merge_array(Temporal **temparr, int count); +extern Temporal *temporal_update(const Temporal *temp1, const Temporal *temp2, bool connect); + +/***************************************************************************** + * Restriction functions for temporal types + *****************************************************************************/ + +extern Temporal *tbigint_at_value(const Temporal *temp, int64 i); +extern Temporal *tbigint_minus_value(const Temporal *temp, int64 i); +extern Temporal *tbool_at_value(const Temporal *temp, bool b); +extern Temporal *tbool_minus_value(const Temporal *temp, bool b); +extern Temporal *temporal_after_timestamptz(const Temporal *temp, TimestampTz t, bool strict); +extern Temporal *temporal_at_max(const Temporal *temp); +extern Temporal *temporal_at_min(const Temporal *temp); +extern Temporal *temporal_at_timestamptz(const Temporal *temp, TimestampTz t); +extern Temporal *temporal_at_tstzset(const Temporal *temp, const Set *s); +extern Temporal *temporal_at_tstzspan(const Temporal *temp, const Span *s); +extern Temporal *temporal_at_tstzspanset(const Temporal *temp, const SpanSet *ss); +extern Temporal *temporal_at_values(const Temporal *temp, const Set *set); +extern Temporal *temporal_before_timestamptz(const Temporal *temp, TimestampTz t, bool strict); +extern Temporal *temporal_minus_max(const Temporal *temp); +extern Temporal *temporal_minus_min(const Temporal *temp); +extern Temporal *temporal_minus_timestamptz(const Temporal *temp, TimestampTz t); +extern Temporal *temporal_minus_tstzset(const Temporal *temp, const Set *s); +extern Temporal *temporal_minus_tstzspan(const Temporal *temp, const Span *s); +extern Temporal *temporal_minus_tstzspanset(const Temporal *temp, const SpanSet *ss); +extern Temporal *temporal_minus_values(const Temporal *temp, const Set *set); +extern Temporal *tfloat_at_value(const Temporal *temp, double d); +extern Temporal *tfloat_minus_value(const Temporal *temp, double d); +extern Temporal *tint_at_value(const Temporal *temp, int i); +extern Temporal *tint_minus_value(const Temporal *temp, int i); +extern Temporal *tnumber_at_span(const Temporal *temp, const Span *span); +extern Temporal *tnumber_at_spanset(const Temporal *temp, const SpanSet *ss); +extern Temporal *tnumber_at_tbox(const Temporal *temp, const TBox *box); +extern Temporal *tnumber_minus_span(const Temporal *temp, const Span *span); +extern Temporal *tnumber_minus_spanset(const Temporal *temp, const SpanSet *ss); +extern Temporal *tnumber_minus_tbox(const Temporal *temp, const TBox *box); +extern Temporal *ttext_at_value(const Temporal *temp, text *txt); +extern Temporal *ttext_minus_value(const Temporal *temp, text *txt); + +/***************************************************************************** + * Comparison functions for temporal types + *****************************************************************************/ + +/* Traditional comparison functions for temporal types */ + +extern int temporal_cmp(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_eq(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_ge(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_gt(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_le(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_lt(const Temporal *temp1, const Temporal *temp2); +extern bool temporal_ne(const Temporal *temp1, const Temporal *temp2); + +/*****************************************************************************/ + +/* Ever and always comparison functions for temporal types */ + +extern int always_eq_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_eq_bool_tbool(bool b, const Temporal *temp); +extern int always_eq_float_tfloat(double d, const Temporal *temp); +extern int always_eq_int_tint(int i, const Temporal *temp); +extern int always_eq_tbool_bool(const Temporal *temp, bool b); +extern int always_eq_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_eq_text_ttext(const text *txt, const Temporal *temp); +extern int always_eq_tbigint_bigint(const Temporal *temp, int64 i); +extern int always_eq_tfloat_float(const Temporal *temp, double d); +extern int always_eq_tint_int(const Temporal *temp, int i); +extern int always_eq_ttext_text(const Temporal *temp, const text *txt); + +extern int always_ge_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_ge_float_tfloat(double d, const Temporal *temp); +extern int always_ge_int_tint(int i, const Temporal *temp); +extern int always_ge_tbigint_bigint(const Temporal *temp, int64 i); +extern int always_ge_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_ge_text_ttext(const text *txt, const Temporal *temp); +extern int always_ge_tfloat_float(const Temporal *temp, double d); +extern int always_ge_tint_int(const Temporal *temp, int i); +extern int always_ge_ttext_text(const Temporal *temp, const text *txt); + +extern int always_gt_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_gt_float_tfloat(double d, const Temporal *temp); +extern int always_gt_int_tint(int i, const Temporal *temp); +extern int always_gt_tbigint_bigint(const Temporal *temp, int64 i); +extern int always_gt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_gt_text_ttext(const text *txt, const Temporal *temp); +extern int always_gt_tfloat_float(const Temporal *temp, double d); +extern int always_gt_tint_int(const Temporal *temp, int i); +extern int always_gt_ttext_text(const Temporal *temp, const text *txt); + +extern int always_le_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_le_float_tfloat(double d, const Temporal *temp); +extern int always_le_int_tint(int i, const Temporal *temp); +extern int always_le_tbigint_bigint(const Temporal *temp, int64 i); +extern int always_le_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_le_text_ttext(const text *txt, const Temporal *temp); +extern int always_le_tfloat_float(const Temporal *temp, double d); +extern int always_le_tint_int(const Temporal *temp, int i); +extern int always_le_ttext_text(const Temporal *temp, const text *txt); + +extern int always_lt_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_lt_float_tfloat(double d, const Temporal *temp); +extern int always_lt_int_tint(int i, const Temporal *temp); +extern int always_lt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_lt_text_ttext(const text *txt, const Temporal *temp); +extern int always_lt_tfloat_float(const Temporal *temp, double d); +extern int always_lt_tint_int(const Temporal *temp, int i); +extern int always_lt_ttext_text(const Temporal *temp, const text *txt); +extern int always_ne_bool_tbool(bool b, const Temporal *temp); +extern int always_ne_float_tfloat(double d, const Temporal *temp); +extern int always_ne_int_tint(int i, const Temporal *temp); +extern int always_lt_tbigint_bigint(const Temporal *temp, int64 i); + +extern int always_ne_bigint_tbigint(int64 i, const Temporal *temp); +extern int always_ne_tbool_bool(const Temporal *temp, bool b); +extern int always_ne_tbigint_bigint(const Temporal *temp, int64 i); +extern int always_ne_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_text_ttext(const text *txt, const Temporal *temp); +extern int always_ne_tfloat_float(const Temporal *temp, double d); +extern int always_ne_tint_int(const Temporal *temp, int i); +extern int always_ne_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_eq_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_eq_bool_tbool(bool b, const Temporal *temp); +extern int ever_eq_float_tfloat(double d, const Temporal *temp); +extern int ever_eq_int_tint(int i, const Temporal *temp); +extern int ever_eq_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_eq_tbool_bool(const Temporal *temp, bool b); +extern int ever_eq_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_text_ttext(const text *txt, const Temporal *temp); +extern int ever_eq_tfloat_float(const Temporal *temp, double d); +extern int ever_eq_tint_int(const Temporal *temp, int i); +extern int ever_eq_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_ge_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_ge_float_tfloat(double d, const Temporal *temp); +extern int ever_ge_int_tint(int i, const Temporal *temp); +extern int ever_ge_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_ge_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_ge_text_ttext(const text *txt, const Temporal *temp); +extern int ever_ge_tfloat_float(const Temporal *temp, double d); +extern int ever_ge_tint_int(const Temporal *temp, int i); +extern int ever_ge_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_gt_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_gt_float_tfloat(double d, const Temporal *temp); +extern int ever_gt_int_tint(int i, const Temporal *temp); +extern int ever_gt_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_gt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_gt_text_ttext(const text *txt, const Temporal *temp); +extern int ever_gt_tfloat_float(const Temporal *temp, double d); +extern int ever_gt_tint_int(const Temporal *temp, int i); +extern int ever_gt_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_le_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_le_float_tfloat(double d, const Temporal *temp); +extern int ever_le_int_tint(int i, const Temporal *temp); +extern int ever_le_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_le_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_le_text_ttext(const text *txt, const Temporal *temp); +extern int ever_le_tfloat_float(const Temporal *temp, double d); +extern int ever_le_tint_int(const Temporal *temp, int i); +extern int ever_le_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_lt_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_lt_float_tfloat(double d, const Temporal *temp); +extern int ever_lt_int_tint(int i, const Temporal *temp); +extern int ever_lt_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_lt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_lt_text_ttext(const text *txt, const Temporal *temp); +extern int ever_lt_tfloat_float(const Temporal *temp, double d); +extern int ever_lt_tint_int(const Temporal *temp, int i); +extern int ever_lt_ttext_text(const Temporal *temp, const text *txt); + +extern int ever_ne_bigint_tbigint(int64 i, const Temporal *temp); +extern int ever_ne_bool_tbool(bool b, const Temporal *temp); +extern int ever_ne_float_tfloat(double d, const Temporal *temp); +extern int ever_ne_int_tint(int i, const Temporal *temp); +extern int ever_ne_tbigint_bigint(const Temporal *temp, int64 i); +extern int ever_ne_tbool_bool(const Temporal *temp, bool b); +extern int ever_ne_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_text_ttext(const text *txt, const Temporal *temp); +extern int ever_ne_tfloat_float(const Temporal *temp, double d); +extern int ever_ne_tint_int(const Temporal *temp, int i); +extern int ever_ne_ttext_text(const Temporal *temp, const text *txt); + +/*****************************************************************************/ + +/* Temporal comparison functions for temporal types */ + +extern Temporal *teq_bool_tbool(bool b, const Temporal *temp); +extern Temporal *teq_float_tfloat(double d, const Temporal *temp); +extern Temporal *teq_int_tint(int i, const Temporal *temp); +extern Temporal *teq_tbool_bool(const Temporal *temp, bool b); +extern Temporal *teq_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *teq_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *teq_tfloat_float(const Temporal *temp, double d); +extern Temporal *teq_tint_int(const Temporal *temp, int i); +extern Temporal *teq_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *tge_float_tfloat(double d, const Temporal *temp); +extern Temporal *tge_int_tint(int i, const Temporal *temp); +extern Temporal *tge_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tge_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *tge_tfloat_float(const Temporal *temp, double d); +extern Temporal *tge_tint_int(const Temporal *temp, int i); +extern Temporal *tge_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *tgt_float_tfloat(double d, const Temporal *temp); +extern Temporal *tgt_int_tint(int i, const Temporal *temp); +extern Temporal *tgt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tgt_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *tgt_tfloat_float(const Temporal *temp, double d); +extern Temporal *tgt_tint_int(const Temporal *temp, int i); +extern Temporal *tgt_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *tle_float_tfloat(double d, const Temporal *temp); +extern Temporal *tle_int_tint(int i, const Temporal *temp); +extern Temporal *tle_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tle_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *tle_tfloat_float(const Temporal *temp, double d); +extern Temporal *tle_tint_int(const Temporal *temp, int i); +extern Temporal *tle_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *tlt_float_tfloat(double d, const Temporal *temp); +extern Temporal *tlt_int_tint(int i, const Temporal *temp); +extern Temporal *tlt_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tlt_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *tlt_tfloat_float(const Temporal *temp, double d); +extern Temporal *tlt_tint_int(const Temporal *temp, int i); +extern Temporal *tlt_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *tne_bool_tbool(bool b, const Temporal *temp); +extern Temporal *tne_float_tfloat(double d, const Temporal *temp); +extern Temporal *tne_int_tint(int i, const Temporal *temp); +extern Temporal *tne_tbool_bool(const Temporal *temp, bool b); +extern Temporal *tne_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tne_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *tne_tfloat_float(const Temporal *temp, double d); +extern Temporal *tne_tint_int(const Temporal *temp, int i); +extern Temporal *tne_ttext_text(const Temporal *temp, const text *txt); + +/***************************************************************************** + * Bounding box functions for temporal types + *****************************************************************************/ + +/* Split functions */ + +extern Span *temporal_spans(const Temporal *temp, int *count); +extern Span *temporal_split_each_n_spans(const Temporal *temp, int elem_count, int *count); +extern Span *temporal_split_n_spans(const Temporal *temp, int span_count, int *count); +extern TBox *tnumber_split_each_n_tboxes(const Temporal *temp, int elem_count, int *count); +extern TBox *tnumber_split_n_tboxes(const Temporal *temp, int box_count, int *count); +extern TBox *tnumber_tboxes(const Temporal *temp, int *count); + +/* Topological functions for temporal types */ + +extern bool adjacent_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool adjacent_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool adjacent_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool adjacent_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool adjacent_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool adjacent_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool adjacent_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool adjacent_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool contained_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool contained_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool contained_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool contained_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool contained_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool contained_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool contained_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool contained_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool contains_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool contains_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool contains_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool contains_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool contains_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool contains_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool contains_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool contains_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool overlaps_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool overlaps_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool overlaps_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool overlaps_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool overlaps_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool overlaps_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool overlaps_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool overlaps_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool same_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool same_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool same_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool same_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool same_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool same_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool same_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool same_tstzspan_temporal(const Span *s, const Temporal *temp); + +/*****************************************************************************/ + +/* Position functions for temporal types */ + +extern bool after_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool after_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool after_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool after_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool after_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool after_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool before_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool before_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool before_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool before_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool before_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool before_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool left_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool left_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool left_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool left_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool left_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool overafter_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool overafter_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool overafter_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool overafter_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool overafter_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool overafter_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool overbefore_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool overbefore_temporal_tstzspan(const Temporal *temp, const Span *s); +extern bool overbefore_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool overbefore_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool overbefore_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool overbefore_tstzspan_temporal(const Span *s, const Temporal *temp); +extern bool overleft_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool overleft_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool overleft_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool overleft_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool overleft_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool overright_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool overright_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool overright_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool overright_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool overright_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool right_numspan_tnumber(const Span *s, const Temporal *temp); +extern bool right_tbox_tnumber(const TBox *box, const Temporal *temp); +extern bool right_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool right_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool right_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Boolean functions for temporal types + *****************************************************************************/ + +extern Temporal *tand_bool_tbool(bool b, const Temporal *temp); +extern Temporal *tand_tbool_bool(const Temporal *temp, bool b); +extern Temporal *tand_tbool_tbool(const Temporal *temp1, const Temporal *temp2); +extern SpanSet *tbool_when_true(const Temporal *temp); +extern Temporal *tnot_tbool(const Temporal *temp); +extern Temporal *tor_bool_tbool(bool b, const Temporal *temp); +extern Temporal *tor_tbool_bool(const Temporal *temp, bool b); +extern Temporal *tor_tbool_tbool(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Mathematical functions for temporal types + *****************************************************************************/ + +extern Temporal *add_bigint_tbigint(int64 i, const Temporal *tnumber); +extern Temporal *add_float_tfloat(double d, const Temporal *tnumber); +extern Temporal *add_int_tint(int i, const Temporal *tnumber); +extern Temporal *add_tbigint_bigint(const Temporal *tnumber, int64 i); +extern Temporal *add_tfloat_float(const Temporal *tnumber, double d); +extern Temporal *add_tint_int(const Temporal *tnumber, int i); +extern Temporal *add_tnumber_tnumber(const Temporal *tnumber1, const Temporal *tnumber2); +extern Temporal *div_bigint_tbigint(int64 i, const Temporal *tnumber); +extern Temporal *div_float_tfloat(double d, const Temporal *tnumber); +extern Temporal *div_int_tint(int i, const Temporal *tnumber); +extern Temporal *div_tbigint_bigint(const Temporal *tnumber, int64 i); +extern Temporal *div_tfloat_float(const Temporal *tnumber, double d); +extern Temporal *div_tint_int(const Temporal *tnumber, int i); +extern Temporal *div_tnumber_tnumber(const Temporal *tnumber1, const Temporal *tnumber2); +extern Temporal *mul_bigint_tbigint(int64 i, const Temporal *tnumber); +extern Temporal *mul_float_tfloat(double d, const Temporal *tnumber); +extern Temporal *mul_int_tint(int i, const Temporal *tnumber); +extern Temporal *mul_tbigint_bigint(const Temporal *tnumber, int64 i); +extern Temporal *mul_tfloat_float(const Temporal *tnumber, double d); +extern Temporal *mul_tint_int(const Temporal *tnumber, int i); +extern Temporal *mul_tnumber_tnumber(const Temporal *tnumber1, const Temporal *tnumber2); +extern Temporal *sub_bigint_tbigint(int64 i, const Temporal *tnumber); +extern Temporal *sub_float_tfloat(double d, const Temporal *tnumber); +extern Temporal *sub_int_tint(int i, const Temporal *tnumber); +extern Temporal *sub_tbigint_bigint(const Temporal *tnumber, int64 i); +extern Temporal *sub_tfloat_float(const Temporal *tnumber, double d); +extern Temporal *sub_tint_int(const Temporal *tnumber, int i); +extern Temporal *sub_tnumber_tnumber(const Temporal *tnumber1, const Temporal *tnumber2); +extern Temporal *temporal_derivative(const Temporal *temp); +extern Temporal *tfloat_exp(const Temporal *temp); +extern Temporal *tfloat_ln(const Temporal *temp); +extern Temporal *tfloat_log10(const Temporal *temp); +extern Temporal *tnumber_abs(const Temporal *temp); +extern Temporal *tnumber_trend(const Temporal *temp); +extern double float_angular_difference(double degrees1, double degrees2); +extern Temporal *tnumber_angular_difference(const Temporal *temp); +extern Temporal *tnumber_delta_value(const Temporal *temp); + +/***************************************************************************** + * Text functions for temporal types + *****************************************************************************/ + +extern Temporal *textcat_text_ttext(const text *txt, const Temporal *temp); +extern Temporal *textcat_ttext_text(const Temporal *temp, const text *txt); +extern Temporal *textcat_ttext_ttext(const Temporal *temp1, const Temporal *temp2); +extern Temporal *ttext_initcap(const Temporal *temp); +extern Temporal *ttext_upper(const Temporal *temp); +extern Temporal *ttext_lower(const Temporal *temp); + +/***************************************************************************** + * Distance functions for temporal types + *****************************************************************************/ + +extern Temporal *tdistance_tfloat_float(const Temporal *temp, double d); +extern Temporal *tdistance_tint_int(const Temporal *temp, int i); +extern Temporal *tdistance_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern double nad_tboxfloat_tboxfloat(const TBox *box1, const TBox *box2); +extern int nad_tboxint_tboxint(const TBox *box1, const TBox *box2); +extern double nad_tfloat_float(const Temporal *temp, double d); +extern double nad_tfloat_tfloat(const Temporal *temp1, const Temporal *temp2); +extern double nad_tfloat_tbox(const Temporal *temp, const TBox *box); +extern int nad_tint_int(const Temporal *temp, int i); +extern int nad_tint_tbox(const Temporal *temp, const TBox *box); +extern int nad_tint_tint(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Aggregate functions for temporal types + *****************************************************************************/ + +extern SkipList *tbool_tand_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tbool_tor_transfn(SkipList *state, const Temporal *temp); +extern Span *temporal_extent_transfn(Span *s, const Temporal *temp); +extern SkipList *temporal_merge_transfn(SkipList *state, const Temporal *temp); +extern SkipList *temporal_merge_combinefn(SkipList *state1, SkipList *state2); +extern Temporal *temporal_tagg_finalfn(SkipList *state); +extern SkipList *temporal_tcount_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tfloat_tmax_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tfloat_tmin_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tfloat_tsum_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tfloat_wmax_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *tfloat_wmin_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *tfloat_wsum_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *timestamptz_tcount_transfn(SkipList *state, TimestampTz t); +extern SkipList *tint_tmax_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tint_tmin_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tint_tsum_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tint_wmax_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *tint_wmin_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *tint_wsum_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern TBox *tnumber_extent_transfn(TBox *box, const Temporal *temp); +extern Temporal *tnumber_tavg_finalfn(SkipList *state); +extern SkipList *tnumber_tavg_transfn(SkipList *state, const Temporal *temp); +extern SkipList *tnumber_wavg_transfn(SkipList *state, const Temporal *temp, const Interval *interv); +extern SkipList *tstzset_tcount_transfn(SkipList *state, const Set *s); +extern SkipList *tstzspan_tcount_transfn(SkipList *state, const Span *s); +extern SkipList *tstzspanset_tcount_transfn(SkipList *state, const SpanSet *ss); +extern SkipList *ttext_tmax_transfn(SkipList *state, const Temporal *temp); +extern SkipList *ttext_tmin_transfn(SkipList *state, const Temporal *temp); + +/***************************************************************************** + * Analytics functions for temporal types + *****************************************************************************/ + +/* Simplification functions for temporal types */ + +extern Temporal *temporal_simplify_dp(const Temporal *temp, double eps_dist, bool synchronized); +extern Temporal *temporal_simplify_max_dist(const Temporal *temp, double eps_dist, bool synchronized); +extern Temporal *temporal_simplify_min_dist(const Temporal *temp, double dist); +extern Temporal *temporal_simplify_min_tdelta(const Temporal *temp, const Interval *mint); + +/*****************************************************************************/ + +/* Reduction functions for temporal types */ + +extern Temporal *temporal_tprecision(const Temporal *temp, const Interval *duration, TimestampTz origin); +extern Temporal *temporal_tsample(const Temporal *temp, const Interval *duration, TimestampTz origin, interpType interp); + +/*****************************************************************************/ + +/* Similarity functions for temporal types */ + +extern double temporal_dyntimewarp_distance(const Temporal *temp1, const Temporal *temp2); +extern Match *temporal_dyntimewarp_path(const Temporal *temp1, const Temporal *temp2, int *count); +extern double temporal_frechet_distance(const Temporal *temp1, const Temporal *temp2); +extern Match *temporal_frechet_path(const Temporal *temp1, const Temporal *temp2, int *count); +extern double temporal_hausdorff_distance(const Temporal *temp1, const Temporal *temp2); + +/*****************************************************************************/ + +/* Tile functions for temporal types */ + +extern Span *temporal_time_bins(const Temporal *temp, const Interval *duration, TimestampTz origin, int *count); +extern Temporal **temporal_time_split(const Temporal *temp, const Interval *duration, TimestampTz torigin, TimestampTz **time_bins, int *count); +extern TBox *tfloat_time_boxes(const Temporal *temp, const Interval *duration, TimestampTz torigin, int *count); +extern Span *tfloat_value_bins(const Temporal *temp, double vsize, double vorigin, int *count); +extern TBox *tfloat_value_boxes(const Temporal *temp, double vsize, double vorigin, int *count); +extern Temporal **tfloat_value_split(const Temporal *temp, double size, double origin, double **bins, int *count); +extern TBox *tfloat_value_time_boxes(const Temporal *temp, double vsize, const Interval *duration, double vorigin, TimestampTz torigin, int *count); +extern Temporal **tfloat_value_time_split(const Temporal *temp, double vsize, const Interval *duration, double vorigin, TimestampTz torigin, double **value_bins, TimestampTz **time_bins, int *count); +extern TBox *tfloatbox_time_tiles(const TBox *box, const Interval *duration, TimestampTz torigin, int *count); +extern TBox *tfloatbox_value_tiles(const TBox *box, double vsize, double vorigin, int *count); +extern TBox *tfloatbox_value_time_tiles(const TBox *box, double vsize, const Interval *duration, double vorigin, TimestampTz torigin, int *count); +extern TBox *tint_time_boxes(const Temporal *temp, const Interval *duration, TimestampTz torigin, int *count); +extern Span *tint_value_bins(const Temporal *temp, int vsize, int vorigin, int *count); +extern TBox *tint_value_boxes(const Temporal *temp, int vsize, int vorigin, int *count); +extern Temporal **tint_value_split(const Temporal *temp, int vsize, int vorigin, int **bins, int *count); +extern TBox *tint_value_time_boxes(const Temporal *temp, int vsize, const Interval *duration, int vorigin, TimestampTz torigin, int *count); +extern Temporal **tint_value_time_split(const Temporal *temp, int size, const Interval *duration, int vorigin, TimestampTz torigin, int **value_bins, TimestampTz **time_bins, int *count); +extern TBox *tintbox_time_tiles(const TBox *box, const Interval *duration, TimestampTz torigin, int *count); +extern TBox *tintbox_value_tiles(const TBox *box, int xsize, int xorigin, int *count); +extern TBox *tintbox_value_time_tiles(const TBox *box, int xsize, const Interval *duration, int xorigin, TimestampTz torigin, int *count); + +/*****************************************************************************/ + +extern void meos_initialize_noexit_error_handler(void); + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_cbuffer.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_cbuffer.h new file mode 100644 index 00000000..1d4b6037 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_cbuffer.h @@ -0,0 +1,392 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief API of the Mobility Engine Open Source (MEOS) library. + */ + +#ifndef __MEOS_CBUFFER_H__ +#define __MEOS_CBUFFER_H__ + +/* C */ +#include +#include + +/* MEOS */ +#include +#include + +/***************************************************************************** + * Type definitions + *****************************************************************************/ + +/* Opaque structure to represent circular buffers */ + +typedef struct Cbuffer Cbuffer; + +/***************************************************************************** + * Validity macros and functions + *****************************************************************************/ + +/** + * @brief Macro for ensuring that the set passed as argument is a circular + * buffer set + */ +#if MEOS + #define VALIDATE_CBUFFERSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_CBUFFERSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_CBUFFERSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_CBUFFERSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value passed as argument is a + * temporal circular buffer + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TCBUFFER(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TCBUFFER) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TCBUFFER(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TCBUFFER); \ + } while (0) +#endif /* MEOS */ + +/****************************************************************************** + * Functions for circular buffers + ******************************************************************************/ + +/* Input and output functions */ + +extern char *cbuffer_as_ewkt(const Cbuffer *cb, int maxdd); +extern char *cbuffer_as_hexwkb(const Cbuffer *cb, uint8_t variant, size_t *size); +extern char *cbuffer_as_text(const Cbuffer *cb, int maxdd); +extern uint8_t *cbuffer_as_wkb(const Cbuffer *cb, uint8_t variant, size_t *size_out); +extern Cbuffer *cbuffer_from_hexwkb(const char *hexwkb); +extern Cbuffer *cbuffer_from_wkb(const uint8_t *wkb, size_t size); +extern Cbuffer *cbuffer_in(const char *str); +extern char *cbuffer_out(const Cbuffer *cb, int maxdd); + +/* Constructor functions */ + +extern Cbuffer *cbuffer_copy(const Cbuffer *cb); +extern Cbuffer *cbuffer_make(const GSERIALIZED *point, double radius); + +/* Conversion functions */ + +extern GSERIALIZED *cbuffer_to_geom(const Cbuffer *cb); +extern STBox *cbuffer_to_stbox(const Cbuffer *cb); +extern GSERIALIZED *cbufferarr_to_geom(const Cbuffer **cbarr, int count); +extern Cbuffer *geom_to_cbuffer(const GSERIALIZED *gs); + +/* Accessor functions */ + +extern uint32 cbuffer_hash(const Cbuffer *cb); +extern uint64 cbuffer_hash_extended(const Cbuffer *cb, uint64 seed); +extern GSERIALIZED *cbuffer_point(const Cbuffer *cb); +extern double cbuffer_radius(const Cbuffer *cb); + +/* Transformation functions */ + +extern Cbuffer *cbuffer_round(const Cbuffer *cb, int maxdd); +extern Cbuffer **cbufferarr_round(const Cbuffer **cbarr, int count, int maxdd); + +/* Spatial reference system functions */ + +extern void cbuffer_set_srid(Cbuffer *cb, int32_t srid); +extern int32_t cbuffer_srid(const Cbuffer *cb); +extern Cbuffer *cbuffer_transform(const Cbuffer *cb, int32_t srid); +extern Cbuffer *cbuffer_transform_pipeline(const Cbuffer *cb, const char *pipelinestr, int32_t srid, bool is_forward); + +/* Spatial relationship functions */ + +extern int contains_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int covers_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int disjoint_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int dwithin_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2, double dist); +extern int intersects_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern int touches_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); + +/* Bounding box functions */ + +extern STBox *cbuffer_tstzspan_to_stbox(const Cbuffer *cb, const Span *s); +extern STBox *cbuffer_timestamptz_to_stbox(const Cbuffer *cb, TimestampTz t); + +/* Distance functions */ + +extern double distance_cbuffer_cbuffer(const Cbuffer *cb1, const Cbuffer *cb2); +extern double distance_cbuffer_geo(const Cbuffer *cb, const GSERIALIZED *gs); +extern double distance_cbuffer_stbox(const Cbuffer *cb, const STBox *box); +extern double nad_cbuffer_stbox(const Cbuffer *cb, const STBox *box); + +/* Comparison functions */ + +extern int cbuffer_cmp(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_eq(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_ge(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_gt(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_le(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_lt(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_ne(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_nsame(const Cbuffer *cb1, const Cbuffer *cb2); +extern bool cbuffer_same(const Cbuffer *cb1, const Cbuffer *cb2); + +/****************************************************************************** + * Functions for circular buffer sets + ******************************************************************************/ + +/* Input and output functions */ + +extern Set *cbufferset_in(const char *str); +extern char *cbufferset_out(const Set *s, int maxdd); + +/* Constructor functions */ + +extern Set *cbufferset_make(Cbuffer **values, int count); + +/* Conversion functions */ + +extern Set *cbuffer_to_set(const Cbuffer *cb); + +/* Accessor functions */ + +extern Cbuffer *cbufferset_end_value(const Set *s); +extern Cbuffer *cbufferset_start_value(const Set *s); +extern bool cbufferset_value_n(const Set *s, int n, Cbuffer **result); +extern Cbuffer **cbufferset_values(const Set *s); + +/* Set operations */ + +extern Set *cbuffer_union_transfn(Set *state, const Cbuffer *cb); +extern bool contained_cbuffer_set(const Cbuffer *cb, const Set *s); +extern bool contains_set_cbuffer(const Set *s, Cbuffer *cb); +extern Set *intersection_cbuffer_set(const Cbuffer *cb, const Set *s); +extern Set *intersection_set_cbuffer(const Set *s, const Cbuffer *cb); +extern Set *minus_cbuffer_set(const Cbuffer *cb, const Set *s); +extern Set *minus_set_cbuffer(const Set *s, const Cbuffer *cb); +extern Set *union_cbuffer_set(const Cbuffer *cb, const Set *s); +extern Set *union_set_cbuffer(const Set *s, const Cbuffer *cb); + +/*===========================================================================* + * Functions for temporal types + *===========================================================================*/ + +/***************************************************************************** + * Input/output functions + *****************************************************************************/ + +extern Temporal *tcbuffer_in(const char *str); +extern Temporal *tcbuffer_from_mfjson(const char *mfjson); + +/***************************************************************************** + * Constructor functions + *****************************************************************************/ + +extern Temporal *tcbuffer_make(const Temporal *tpoint, const Temporal *tfloat); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +extern Set *tcbuffer_points(const Temporal *temp); +extern Set *tcbuffer_radius(const Temporal *temp); +extern GSERIALIZED *tcbuffer_trav_area(const Temporal *temp, bool merge_union); + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +extern Temporal *tcbuffer_to_tfloat(const Temporal *temp); +extern Temporal *tcbuffer_to_tgeompoint(const Temporal *temp); +extern Temporal *tgeometry_to_tcbuffer(const Temporal *temp); + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +extern Temporal *tcbuffer_expand(const Temporal *temp, double dist); + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +extern Temporal *tcbuffer_at_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tcbuffer_at_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcbuffer_at_stbox(const Temporal *temp, const STBox *box, bool border_inc); +extern Temporal *tcbuffer_minus_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tcbuffer_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcbuffer_minus_stbox(const Temporal *temp, const STBox *box, bool border_inc); + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +extern Temporal *tdistance_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tdistance_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdistance_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern double nad_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern double nad_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern double nad_tcbuffer_stbox(const Temporal *temp, const STBox *box); +extern double nad_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern TInstant *nai_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern TInstant *nai_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern GSERIALIZED *shortestline_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern GSERIALIZED *shortestline_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Comparison functions + *****************************************************************************/ + +/* Ever/always comparison functions */ + +extern int always_eq_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int always_eq_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int always_eq_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int always_ne_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int always_ne_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int ever_eq_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int ever_eq_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int ever_ne_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int ever_ne_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); + +/* Temporal comparison functions */ + +extern Temporal *teq_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *teq_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tne_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *tne_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); + +/***************************************************************************** + * Spatial relationship functions + *****************************************************************************/ + +/* Ever and always spatial relationship functions */ + +extern int acontains_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int acontains_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern int acontains_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int acontains_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int acovers_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int acovers_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern int acovers_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int acovers_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int adisjoint_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int adisjoint_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int adisjoint_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int adwithin_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern int adwithin_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb, double dist); +extern int adwithin_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2, double dist); +extern int aintersects_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int aintersects_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int aintersects_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int atouches_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int atouches_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int atouches_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int econtains_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int econtains_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int econtains_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ecovers_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int ecovers_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int ecovers_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ecovers_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int edisjoint_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int edisjoint_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int edwithin_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern int edwithin_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb, double dist); +extern int edwithin_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2, double dist); +extern int eintersects_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int eintersects_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int eintersects_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern int etouches_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int etouches_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int etouches_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); + +/*****************************************************************************/ + +/* Spatiotemporal relationship functions */ + +extern Temporal *tcontains_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *tcontains_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tcontains_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcontains_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tcontains_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tcovers_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *tcovers_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tcovers_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcovers_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tcovers_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tdwithin_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp, double dist); +extern Temporal *tdwithin_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern Temporal *tdwithin_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb, double dist); +extern Temporal *tdwithin_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2, double dist); +extern Temporal *tdisjoint_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *tdisjoint_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tdisjoint_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdisjoint_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tdisjoint_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tintersects_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *tintersects_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tintersects_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tintersects_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *tintersects_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); +extern Temporal *ttouches_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *ttouches_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *ttouches_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern Temporal *ttouches_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern Temporal *ttouches_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); + +/*****************************************************************************/ + +#endif /* __MEOS_CBUFFER_H__ */ +extern int acovers_cbuffer_tcbuffer(const Cbuffer *cb, const Temporal *temp); +extern int acovers_geo_tcbuffer(const GSERIALIZED *gs, const Temporal *temp); +extern int acovers_tcbuffer_cbuffer(const Temporal *temp, const Cbuffer *cb); +extern int acovers_tcbuffer_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int acovers_tcbuffer_tcbuffer(const Temporal *temp1, const Temporal *temp2); diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_geo.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_geo.h new file mode 100644 index 00000000..7d543851 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_geo.h @@ -0,0 +1,900 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief API of the Mobility Engine Open Source (MEOS) library. + */ + +#ifndef __MEOS_GEO_H__ +#define __MEOS_GEO_H__ + +/* C */ +#include +#include + +/* PostGIS */ +#include +/* MEOS */ +#include + +/***************************************************************************** + * Type definitions + *****************************************************************************/ + +/** + * @brief Enumeration that defines the spatial relationships for which a call + * to GEOS is made. + */ +typedef enum +{ + INTERSECTS = 0, + CONTAINS = 1, + TOUCHES = 2, + COVERS = 3, +} spatialRel; + +/***************************************************************************** + * Validity macros + *****************************************************************************/ + +/** + * @brief Macro ensuring that a set is a geometry set + */ +#if MEOS + #define VALIDATE_GEOMSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type(set, T_GEOMSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_GEOMSET(set, ret) \ + do { \ + assert(temp); \ + assert((set)->settype == T_GEOMSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a set is a geography set + */ +#if MEOS + #define VALIDATE_GEOGSET(set, ret) ( \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type(set, T_GEOGSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_GEOGSET(set, ret) \ + do { \ + assert(temp); \ + assert((set)->settype == T_GEOGSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a set is of a geometry or geography set + */ +#if MEOS + #define VALIDATE_GEOSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_geoset_type((set)->settype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_GEOSET(set, ret) \ + do { \ + assert(temp); \ + assert(geoset_type((set)->settype); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a set is of a spatial set + */ +#if MEOS + #define VALIDATE_SPATIALSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_spatialset_type((set)->settype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_SPATIALSET(set, ret) \ + do { \ + assert(set); \ + assert(spatialset_type((set)->settype)); \ + } while (0) +#endif /* MEOS */ + +/*****************************************************************************/ + +/** + * @brief Macro ensuring that a temporal value is a temporal geometry + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOMETRY(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TGEOMETRY) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOMETRY(temp, ret) \ + do { \ + assert(temp); \ + assert((temp)->temptype == T_TGEOMETRY); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is a temporal geography + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOGRAPHY(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TGEOGRAPHY) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOGRAPHY(temp, ret) \ + do { \ + assert(temp); \ + assert((temp)->temptype == T_TGEOGRAPHY); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is a temporal geometry point + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOMPOINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TGEOMPOINT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOMPOINT(temp, ret) \ + do { \ + assert(temp); \ + assert((temp)->temptype == T_TGEOMPOINT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is a temporal geography point + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOGPOINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TGEOGPOINT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOGPOINT(temp, ret) \ + do { \ + assert(temp); \ + assert((temp)->temptype == T_TGEOGPOINT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is a temporal geometry or + * geography + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEO(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tgeo_type_all(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEO(temp, ret) \ + do { \ + assert(temp); \ + assert(tgeo_type_all(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is a temporal geometry + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOM(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tgeometry_type(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOM(temp, ret) \ + do { \ + assert(temp); \ + assert(tgeometry_type(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is of a temporal geography + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TGEOG(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tgeodetic_type(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TGEOG(temp, ret) \ + do { \ + assert(temp); \ + assert(tgeodetic_type(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is of a temporal + * geometry/geography point + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TPOINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tpoint_type(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TPOINT(temp, ret) \ + do { \ + assert(temp); \ + assert(tpoint_type(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro ensuring that a temporal value is of a spatiotemporal type + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TSPATIAL(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tspatial_type(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TSPATIAL(temp, ret) \ + do { \ + assert(temp); \ + assert(tspatial_type(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/*===========================================================================* + * Functions for static geometries + *===========================================================================*/ + +/* Input and output functions */ + +extern uint8_t *geo_as_ewkb(const GSERIALIZED *gs, const char *endian, size_t *size); +extern char *geo_as_ewkt(const GSERIALIZED *gs, int precision); +extern char *geo_as_geojson(const GSERIALIZED *gs, int option, int precision, const char *srs); +extern char *geo_as_hexewkb(const GSERIALIZED *gs, const char *endian); +extern char *geo_as_text(const GSERIALIZED *gs, int precision); +extern GSERIALIZED *geo_from_ewkb(const uint8_t *wkb, size_t wkb_size, int32 srid); +extern GSERIALIZED *geo_from_geojson(const char *geojson); +extern GSERIALIZED *geo_from_text(const char *wkt, int32_t srid); +extern char *geo_out(const GSERIALIZED *gs); +extern GSERIALIZED *geog_from_binary(const char *wkb_bytea); +extern GSERIALIZED *geog_from_hexewkb(const char *wkt); +extern GSERIALIZED *geog_in(const char *str, int32 typmod); +extern GSERIALIZED *geom_from_hexewkb(const char *wkt); +extern GSERIALIZED *geom_in(const char *str, int32 typmod); + +extern BOX3D *box3d_make(double xmin, double xmax, double ymin, double ymax, + double zmin, double zmax, int32_t srid); +extern char *box3d_out(const BOX3D *box, int maxdd); +extern GBOX *gbox_make(bool hasz, double xmin, double xmax, double ymin, + double ymax, double zmin, double zmax); +extern char *gbox_out(const GBOX *box, int maxdd); + +/* Constructor functions */ + +extern GSERIALIZED *geo_copy(const GSERIALIZED *g); +extern GSERIALIZED *geogpoint_make2d(int32_t srid, double x, double y); +extern GSERIALIZED *geogpoint_make3dz(int32_t srid, double x, double y, double z); +extern GSERIALIZED *geompoint_make2d(int32_t srid, double x, double y); +extern GSERIALIZED *geompoint_make3dz(int32_t srid, double x, double y, double z); + +/* Conversion functions */ + +extern GSERIALIZED *geom_to_geog(const GSERIALIZED *geom); +extern GSERIALIZED *geog_to_geom(const GSERIALIZED *geog); + +/* Accessor functions */ + +extern bool geo_is_empty(const GSERIALIZED *g); +extern bool geo_is_unitary(const GSERIALIZED *gs); +extern const char *geo_typename(int type); +extern double geog_area(const GSERIALIZED *g, bool use_spheroid); +extern GSERIALIZED *geog_centroid(const GSERIALIZED *g, bool use_spheroid); +extern double geog_length(const GSERIALIZED *g, bool use_spheroid); +extern double geog_perimeter(const GSERIALIZED *g, bool use_spheroid); +extern bool geom_azimuth(const GSERIALIZED *gs1, const GSERIALIZED *gs2, double *result); +extern double geom_length(const GSERIALIZED *gs); +extern double geom_perimeter(const GSERIALIZED *gs); +extern int line_numpoints(const GSERIALIZED *gs); +extern GSERIALIZED *line_point_n(const GSERIALIZED *geom, int n); + +/* Transformation functions */ + +extern GSERIALIZED *geo_reverse(const GSERIALIZED *gs); +extern GSERIALIZED *geo_round(const GSERIALIZED *gs, int maxdd); + +/* Spatial reference system functions */ + +extern GSERIALIZED *geo_set_srid(const GSERIALIZED *gs, int32_t srid); +extern int32_t geo_srid(const GSERIALIZED *gs); +extern GSERIALIZED *geo_transform(const GSERIALIZED *geom, int32_t srid_to); +extern GSERIALIZED *geo_transform_pipeline(const GSERIALIZED *gs, char *pipeline, int32_t srid_to, bool is_forward); + +/* Spatial processing functions */ + +extern GSERIALIZED *geo_collect_garray(GSERIALIZED **gsarr, int count); +extern GSERIALIZED *geo_makeline_garray(GSERIALIZED **gsarr, int count); +extern int geo_num_points(const GSERIALIZED *gs); +extern int geo_num_geos(const GSERIALIZED *gs); +extern GSERIALIZED *geo_geo_n(const GSERIALIZED *geom, int n); +extern GSERIALIZED **geo_pointarr(const GSERIALIZED *gs, int *count); +extern GSERIALIZED *geo_points(const GSERIALIZED *gs); +extern GSERIALIZED *geom_array_union(GSERIALIZED **gsarr, int count); +extern GSERIALIZED *geom_boundary(const GSERIALIZED *gs); +extern GSERIALIZED *geom_buffer(const GSERIALIZED *gs, double size, const char *params); +extern GSERIALIZED *geom_centroid(const GSERIALIZED *gs); +extern GSERIALIZED *geom_convex_hull(const GSERIALIZED *gs); +extern GSERIALIZED *geom_difference2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern GSERIALIZED *geom_intersection2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern GSERIALIZED *geom_intersection2d_coll(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern GSERIALIZED *geom_min_bounding_radius(const GSERIALIZED *geom, double *radius); +extern GSERIALIZED *geom_shortestline2d(const GSERIALIZED *gs1, const GSERIALIZED *s2); +extern GSERIALIZED *geom_shortestline3d(const GSERIALIZED *gs1, const GSERIALIZED *s2); +extern GSERIALIZED *geom_unary_union(const GSERIALIZED *gs, double prec); +extern GSERIALIZED *line_interpolate_point(const GSERIALIZED *gs, double distance_fraction, bool repeat); +extern double line_locate_point(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern GSERIALIZED *line_substring(const GSERIALIZED *gs, double from, double to); + +/* Spatial relationship functions */ + +extern bool geog_dwithin(const GSERIALIZED *g1, const GSERIALIZED *g2, double tolerance, bool use_spheroid); +extern bool geog_intersects(const GSERIALIZED *gs1, const GSERIALIZED *gs2, bool use_spheroid); +extern bool geom_contains(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geom_covers(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geom_disjoint2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geom_dwithin2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2, double tolerance); +extern bool geom_dwithin3d(const GSERIALIZED *gs1, const GSERIALIZED *gs2, double tolerance); +extern bool geom_intersects2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geom_intersects3d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geom_relate_pattern(const GSERIALIZED *gs1, const GSERIALIZED *gs2, char *patt); +extern bool geom_touches(const GSERIALIZED *gs1, const GSERIALIZED *gs2); + +/* Bounding box functions */ + +extern STBox *geo_stboxes(const GSERIALIZED *gs, int *count); +extern STBox *geo_split_each_n_stboxes(const GSERIALIZED *gs, int elem_count, int *count); +extern STBox *geo_split_n_stboxes(const GSERIALIZED *gs, int box_count, int *count); + +/* Distance functions */ + +extern double geog_distance(const GSERIALIZED *g1, const GSERIALIZED *g2); +extern double geom_distance2d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern double geom_distance3d(const GSERIALIZED *gs1, const GSERIALIZED *gs2); + +/* Comparison functions */ + +extern int geo_equals(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern bool geo_same(const GSERIALIZED *gs1, const GSERIALIZED *gs2); + +/***************************************************************************** + * Functions for spatial sets + *****************************************************************************/ + +/* Input and output functions */ + +extern Set *geogset_in(const char *str); +extern Set *geomset_in(const char *str); +extern char *spatialset_as_text(const Set *set, int maxdd); +extern char *spatialset_as_ewkt(const Set *set, int maxdd); + +/* Constructor functions */ + +extern Set *geoset_make(GSERIALIZED **values, int count); + +/* Conversion functions */ + +extern Set *geo_to_set(const GSERIALIZED *gs); + +/* Accessor functions */ + +extern GSERIALIZED *geoset_end_value(const Set *s); +extern GSERIALIZED *geoset_start_value(const Set *s); +extern bool geoset_value_n(const Set *s, int n, GSERIALIZED **result); +extern GSERIALIZED **geoset_values(const Set *s); + +/* Set operations */ + +extern bool contained_geo_set(const GSERIALIZED *gs, const Set *s); +extern bool contains_set_geo(const Set *s, GSERIALIZED *gs); +extern Set *geo_union_transfn(Set *state, const GSERIALIZED *gs); +extern Set *intersection_geo_set(const GSERIALIZED *gs, const Set *s); +extern Set *intersection_set_geo(const Set *s, const GSERIALIZED *gs); +extern Set *minus_geo_set(const GSERIALIZED *gs, const Set *s); +extern Set *minus_set_geo(const Set *s, const GSERIALIZED *gs); +extern Set *union_geo_set(const GSERIALIZED *gs, const Set *s); +extern Set *union_set_geo(const Set *s, const GSERIALIZED *gs); + +/* SRID functions */ + +extern Set *spatialset_set_srid(const Set *s, int32_t srid); +extern int32_t spatialset_srid(const Set *s); +extern Set *spatialset_transform(const Set *s, int32_t srid); +extern Set *spatialset_transform_pipeline(const Set *s, const char *pipelinestr, int32_t srid, bool is_forward); + +/***************************************************************************** + * Functions for spatiotemporal boxes + *****************************************************************************/ + +/* Input/output functions */ + +extern char *stbox_as_hexwkb(const STBox *box, uint8_t variant, size_t *size); +extern uint8_t *stbox_as_wkb(const STBox *box, uint8_t variant, size_t *size_out); +extern STBox *stbox_from_hexwkb(const char *hexwkb); +extern STBox *stbox_from_wkb(const uint8_t *wkb, size_t size); +extern STBox *stbox_in(const char *str); +extern char *stbox_out(const STBox *box, int maxdd); + +/* Constructor functions */ + +extern STBox *geo_timestamptz_to_stbox(const GSERIALIZED *gs, TimestampTz t); +extern STBox *geo_tstzspan_to_stbox(const GSERIALIZED *gs, const Span *s); +extern STBox *stbox_copy(const STBox *box); +extern STBox *stbox_make(bool hasx, bool hasz, bool geodetic, int32 srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, const Span *s); + +/* Conversion functions */ + +extern STBox *geo_to_stbox(const GSERIALIZED *gs); +extern STBox *spatialset_to_stbox(const Set *s); +extern BOX3D *stbox_to_box3d(const STBox *box); +extern GBOX *stbox_to_gbox(const STBox *box); +extern GSERIALIZED *stbox_to_geo(const STBox *box); +extern Span *stbox_to_tstzspan(const STBox *box); +extern STBox *timestamptz_to_stbox(TimestampTz t); +extern STBox *tstzset_to_stbox(const Set *s); +extern STBox *tstzspan_to_stbox(const Span *s); +extern STBox *tstzspanset_to_stbox(const SpanSet *ss); + +/* Accessor functions */ + +extern double stbox_area(const STBox *box, bool spheroid); +extern uint32 stbox_hash(const STBox *box); +extern uint64 stbox_hash_extended(const STBox *box, uint64 seed); +extern bool stbox_hast(const STBox *box); +extern bool stbox_hasx(const STBox *box); +extern bool stbox_hasz(const STBox *box); +extern bool stbox_isgeodetic(const STBox *box); +extern double stbox_perimeter(const STBox *box, bool spheroid); +extern bool stbox_tmax(const STBox *box, TimestampTz *result); +extern bool stbox_tmax_inc(const STBox *box, bool *result); +extern bool stbox_tmin(const STBox *box, TimestampTz *result); +extern bool stbox_tmin_inc(const STBox *box, bool *result); +extern double stbox_volume(const STBox *box); +extern bool stbox_xmax(const STBox *box, double *result); +extern bool stbox_xmin(const STBox *box, double *result); +extern bool stbox_ymax(const STBox *box, double *result); +extern bool stbox_ymin(const STBox *box, double *result); +extern bool stbox_zmax(const STBox *box, double *result); +extern bool stbox_zmin(const STBox *box, double *result); + +/* Transformation functions */ + +extern STBox *stbox_expand_space(const STBox *box, double d); +extern STBox *stbox_expand_time(const STBox *box, const Interval *interv); +extern STBox *stbox_get_space(const STBox *box); +extern STBox *stbox_quad_split(const STBox *box, int *count); +extern STBox *stbox_round(const STBox *box, int maxdd); +extern STBox *stbox_shift_scale_time(const STBox *box, const Interval *shift, const Interval *duration); +extern STBox *stboxarr_round(const STBox *boxarr, int count, int maxdd); + +/* SRID functions */ + +extern STBox *stbox_set_srid(const STBox *box, int32_t srid); +extern int32_t stbox_srid(const STBox *box); +extern STBox *stbox_transform(const STBox *box, int32_t srid); +extern STBox *stbox_transform_pipeline(const STBox *box, const char *pipelinestr, int32_t srid, bool is_forward); + +/* Topological functions */ + +extern bool adjacent_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool contained_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool contains_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overlaps_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool same_stbox_stbox(const STBox *box1, const STBox *box2); + +/* Position functions */ + +extern bool above_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool after_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool back_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool before_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool below_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool front_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool left_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overabove_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overafter_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overback_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overbefore_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overbelow_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overfront_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overleft_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool overright_stbox_stbox(const STBox *box1, const STBox *box2); +extern bool right_stbox_stbox(const STBox *box1, const STBox *box2); + +/* Set functions */ + +extern STBox *union_stbox_stbox(const STBox *box1, const STBox *box2, bool strict); +extern STBox *intersection_stbox_stbox(const STBox *box1, const STBox *box2); + +/* Comparisons */ + +extern int stbox_cmp(const STBox *box1, const STBox *box2); +extern bool stbox_eq(const STBox *box1, const STBox *box2); +extern bool stbox_ge(const STBox *box1, const STBox *box2); +extern bool stbox_gt(const STBox *box1, const STBox *box2); +extern bool stbox_le(const STBox *box1, const STBox *box2); +extern bool stbox_lt(const STBox *box1, const STBox *box2); +extern bool stbox_ne(const STBox *box1, const STBox *box2); + +/***************************************************************************** + * Functions for temporal geometries/geographies + *****************************************************************************/ + +/* Input and output functions */ + +extern Temporal *tgeogpoint_from_mfjson(const char *str); +extern Temporal *tgeogpoint_in(const char *str); +extern Temporal *tgeography_from_mfjson(const char *mfjson); +extern Temporal *tgeography_in(const char *str); +extern Temporal *tgeometry_from_mfjson(const char *str); +extern Temporal *tgeometry_in(const char *str); +extern Temporal *tgeompoint_from_mfjson(const char *str); +extern Temporal *tgeompoint_in(const char *str); +extern char *tspatial_as_ewkt(const Temporal *temp, int maxdd); +extern char *tspatial_as_text(const Temporal *temp, int maxdd); +extern char *tspatial_out(const Temporal *temp, int maxdd); + +/* Constructor functions */ + +extern Temporal *tgeo_from_base_temp(const GSERIALIZED *gs, const Temporal *temp); +extern TInstant *tgeoinst_make(const GSERIALIZED *gs, TimestampTz t); +extern TSequence *tgeoseq_from_base_tstzset(const GSERIALIZED *gs, const Set *s); +extern TSequence *tgeoseq_from_base_tstzspan(const GSERIALIZED *gs, const Span *s, interpType interp); +extern TSequenceSet *tgeoseqset_from_base_tstzspanset(const GSERIALIZED *gs, const SpanSet *ss, interpType interp); +extern Temporal *tpoint_from_base_temp(const GSERIALIZED *gs, const Temporal *temp); +extern TInstant *tpointinst_make(const GSERIALIZED *gs, TimestampTz t); +extern TSequence *tpointseq_from_base_tstzset(const GSERIALIZED *gs, const Set *s); +extern TSequence *tpointseq_from_base_tstzspan(const GSERIALIZED *gs, const Span *s, interpType interp); +extern TSequence *tpointseq_make_coords(const double *xcoords, const double *ycoords, const double *zcoords, const TimestampTz *times, int count, int32 srid, bool geodetic, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequenceSet *tpointseqset_from_base_tstzspanset(const GSERIALIZED *gs, const SpanSet *ss, interpType interp); + +/* Conversion functions */ + +extern STBox *box3d_to_stbox(const BOX3D *box); +extern STBox *gbox_to_stbox(const GBOX *box); +extern Temporal *geomeas_to_tpoint(const GSERIALIZED *gs); +extern Temporal *tgeogpoint_to_tgeography(const Temporal *temp); +extern Temporal *tgeography_to_tgeogpoint(const Temporal *temp); +extern Temporal *tgeography_to_tgeometry(const Temporal *temp); +extern Temporal *tgeometry_to_tgeography(const Temporal *temp); +extern Temporal *tgeometry_to_tgeompoint(const Temporal *temp); +extern Temporal *tgeompoint_to_tgeometry(const Temporal *temp); +extern bool tpoint_as_mvtgeom(const Temporal *temp, const STBox *bounds, int32_t extent, int32_t buffer, bool clip_geom, GSERIALIZED **gsarr, int64 **timesarr, int *count); +extern bool tpoint_tfloat_to_geomeas(const Temporal *tpoint, const Temporal *measure, bool segmentize, GSERIALIZED **result); +extern STBox *tspatial_to_stbox(const Temporal *temp); + +/* Accessor functions */ + +extern bool bearing_point_point(const GSERIALIZED *gs1, const GSERIALIZED *gs2, double *result); +extern Temporal *bearing_tpoint_point(const Temporal *temp, const GSERIALIZED *gs, bool invert); +extern Temporal *bearing_tpoint_tpoint(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tgeo_centroid(const Temporal *temp); +extern GSERIALIZED *tgeo_convex_hull(const Temporal *temp); +extern GSERIALIZED *tgeo_end_value(const Temporal *temp); +extern GSERIALIZED *tgeo_start_value(const Temporal *temp); +extern GSERIALIZED *tgeo_traversed_area(const Temporal *temp, bool unary_union); +extern bool tgeo_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, GSERIALIZED **value); +extern bool tgeo_value_n(const Temporal *temp, int n, GSERIALIZED **result); +extern GSERIALIZED **tgeo_values(const Temporal *temp, int *count); +extern Temporal *tpoint_angular_difference(const Temporal *temp); +extern Temporal *tpoint_azimuth(const Temporal *temp); +extern Temporal *tpoint_cumulative_length(const Temporal *temp); +extern bool tpoint_direction(const Temporal *temp, double *result); +extern Temporal *tpoint_get_x(const Temporal *temp); +extern Temporal *tpoint_get_y(const Temporal *temp); +extern Temporal *tpoint_get_z(const Temporal *temp); +extern bool tpoint_is_simple(const Temporal *temp); +extern double tpoint_length(const Temporal *temp); +extern Temporal *tpoint_speed(const Temporal *temp); +extern GSERIALIZED *tpoint_trajectory(const Temporal *temp, bool unary_union); +extern GSERIALIZED *tpoint_twcentroid(const Temporal *temp); + +/* Transformation functions */ + +extern Temporal *tgeo_affine(const Temporal *temp, const AFFINE *a); +extern Temporal *tgeo_scale(const Temporal *temp, const GSERIALIZED *scale, const GSERIALIZED *sorigin); +extern Temporal **tpoint_make_simple(const Temporal *temp, int *count); + +/* SRID functions */ + +int32_t tspatial_srid(const Temporal *temp); +extern Temporal *tspatial_set_srid(const Temporal *temp, int32_t srid); +extern Temporal *tspatial_transform(const Temporal *temp, int32_t srid); +extern Temporal *tspatial_transform_pipeline(const Temporal *temp, const char *pipelinestr, int32_t srid, bool is_forward); + +/* Restriction functions */ + +extern Temporal *tgeo_at_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tgeo_at_stbox(const Temporal *temp, const STBox *box, bool border_inc); +extern Temporal *tgeo_at_value(const Temporal *temp, GSERIALIZED *gs); +extern Temporal *tgeo_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tgeo_minus_stbox(const Temporal *temp, const STBox *box, bool border_inc); +extern Temporal *tgeo_minus_value(const Temporal *temp, GSERIALIZED *gs); +extern Temporal *tpoint_at_elevation(const Temporal *temp, const Span *s); +extern Temporal *tpoint_at_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tpoint_at_value(const Temporal *temp, GSERIALIZED *gs); +extern Temporal *tpoint_minus_elevation(const Temporal *temp, const Span *s); +extern Temporal *tpoint_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tpoint_minus_value(const Temporal *temp, GSERIALIZED *gs); + +/* Ever and always comparisons */ + +extern int always_eq_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int always_eq_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int always_eq_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int always_ne_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int always_ne_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int ever_eq_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ever_eq_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int ever_ne_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ever_ne_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); + +/* Temporal comparisons */ + +extern Temporal *teq_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *teq_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tne_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tne_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); + +/* Bounding box functions */ + +extern STBox *tgeo_stboxes(const Temporal *temp, int *count); +extern STBox *tgeo_space_boxes(const Temporal *temp, double xsize, double ysize, double zsize, const GSERIALIZED *sorigin, bool bitmatrix, bool border_inc, int *count); +extern STBox *tgeo_space_time_boxes(const Temporal *temp, double xsize, double ysize, double zsize, const Interval *duration, const GSERIALIZED *sorigin, TimestampTz torigin, bool bitmatrix, bool border_inc, int *count); +extern STBox *tgeo_split_each_n_stboxes(const Temporal *temp, int elem_count, int *count); +extern STBox *tgeo_split_n_stboxes(const Temporal *temp, int box_count, int *count); + +/* Topological functions */ + +extern bool adjacent_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool adjacent_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool adjacent_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool contained_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool contained_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool contained_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool contains_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool contains_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool contains_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overlaps_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overlaps_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overlaps_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool same_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool same_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool same_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); + +/* Position functions */ + +extern bool above_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool above_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool above_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool after_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool after_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool after_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool back_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool back_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool back_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool before_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool before_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool before_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool below_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool below_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool below_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool front_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool front_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool front_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool left_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool left_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool left_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overabove_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overabove_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overabove_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overafter_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overafter_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overafter_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overback_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overback_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overback_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overbefore_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overbefore_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overbefore_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overbelow_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overbelow_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overbelow_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overfront_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overfront_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overfront_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overleft_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overleft_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overleft_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool overright_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool overright_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool overright_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); +extern bool right_stbox_tspatial(const STBox *box, const Temporal *temp); +extern bool right_tspatial_stbox(const Temporal *temp, const STBox *box); +extern bool right_tspatial_tspatial(const Temporal *temp1, const Temporal *temp2); + +/* Ever and always spatial relationships */ + +extern int acontains_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int acontains_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int acontains_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int adisjoint_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int adisjoint_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int adwithin_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern int adwithin_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, double dist); +extern int aintersects_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int aintersects_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int atouches_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int atouches_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int atouches_tpoint_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int econtains_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int econtains_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int econtains_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int ecovers_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int ecovers_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ecovers_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int edisjoint_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int edisjoint_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int edwithin_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern int edwithin_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, double dist); +extern int eintersects_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int eintersects_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int etouches_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int etouches_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern int etouches_tpoint_geo(const Temporal *temp, const GSERIALIZED *gs); + +/* Spatiotemporal relationships */ + +extern Temporal *tcontains_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tcontains_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcontains_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tcovers_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tcovers_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tcovers_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tdisjoint_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tdisjoint_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdisjoint_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tdwithin_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp, double dist); +extern Temporal *tdwithin_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs, double dist); +extern Temporal *tdwithin_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, double dist); +extern Temporal *tintersects_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tintersects_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tintersects_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern Temporal *ttouches_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *ttouches_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *ttouches_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); + +/* Distance */ + +extern Temporal *tdistance_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdistance_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern double nad_stbox_geo(const STBox *box, const GSERIALIZED *gs); +extern double nad_stbox_stbox(const STBox *box1, const STBox *box2); +extern double nad_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern double nad_tgeo_stbox(const Temporal *temp, const STBox *box); +extern double nad_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern TInstant *nai_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern GSERIALIZED *shortestline_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2); +extern double tgeoarr_tgeoarr_mindist(const Temporal **arr1, int count1, const Temporal **arr2, int count2); +extern double mindistance_tgeo_tgeo(const Temporal *temp1, const Temporal *temp2, double threshold); + +/* Aggregates */ + +extern Temporal *tpoint_tcentroid_finalfn(SkipList *state); +extern SkipList *tpoint_tcentroid_transfn(SkipList *state, Temporal *temp); +extern STBox *tspatial_extent_transfn(STBox *box, const Temporal *temp); + +/* Tile functions */ + +extern STBox *stbox_get_space_tile(const GSERIALIZED *point, double xsize, double ysize, double zsize, const GSERIALIZED *sorigin); +extern STBox *stbox_get_space_time_tile(const GSERIALIZED *point, TimestampTz t, double xsize, double ysize, double zsize, const Interval *duration, const GSERIALIZED *sorigin, TimestampTz torigin); +extern STBox *stbox_get_time_tile(TimestampTz t, const Interval *duration, TimestampTz torigin); +extern STBox *stbox_space_tiles(const STBox *bounds, double xsize, double ysize, double zsize, const GSERIALIZED *sorigin, bool border_inc, int *count); +extern STBox *stbox_space_time_tiles(const STBox *bounds, double xsize, double ysize, double zsize, const Interval *duration, const GSERIALIZED *sorigin, TimestampTz torigin, bool border_inc, int *count); +extern STBox *stbox_time_tiles(const STBox *bounds, const Interval *duration, TimestampTz torigin, bool border_inc, int *count); +extern Temporal **tgeo_space_split(const Temporal *temp, double xsize, double ysize, double zsize, const GSERIALIZED *sorigin, bool bitmatrix, bool border_inc, GSERIALIZED ***space_bins, int *count); +extern Temporal **tgeo_space_time_split(const Temporal *temp, double xsize, double ysize, double zsize, const Interval *duration, const GSERIALIZED *sorigin, TimestampTz torigin, bool bitmatrix, bool border_inc, GSERIALIZED ***space_bins, TimestampTz **time_bins, int *count); + +/* Clustering functions */ + +extern int *geo_cluster_kmeans(const GSERIALIZED **geoms, uint32_t ngeoms, uint32_t k); +extern uint32_t *geo_cluster_dbscan(const GSERIALIZED **geoms, uint32_t ngeoms, double tolerance, int minpoints, int *count); +extern GSERIALIZED **geo_cluster_intersecting(const GSERIALIZED **geoms, uint32_t ngeoms, int *count); +extern GSERIALIZED **geo_cluster_within(const GSERIALIZED **geoms, uint32_t ngeoms, double tolerance, int *count); + +/*****************************************************************************/ + +#endif +extern int acovers_geo_tgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int acovers_tgeo_geo(const Temporal *temp, const GSERIALIZED *gs); diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_h3.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_h3.h new file mode 100644 index 00000000..2febc478 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_h3.h @@ -0,0 +1,197 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Public MEOS API for the temporal H3 index type (th3index). + * + * Implementations live in meos/src/h3/. The PG V1 wrappers in + * mobilitydb/src/h3/ call these symbols. + */ + +#ifndef __MEOS_H3_H__ +#define __MEOS_H3_H__ + +#include +#include +#include +#include +#include + +/***************************************************************************** + * Static h3index SQL type — analogue of meos_cbuffer.h's + * static-cbuffer section. + *****************************************************************************/ + +extern H3Index h3index_in(const char *str); +extern char *h3index_out(H3Index cell); + +/***************************************************************************** + * Type inheritance (analogue of meos_cbuffer.h's tcbuffer section) + *****************************************************************************/ + +/* Input */ +extern Temporal *th3index_in(const char *str); +extern TInstant *th3indexinst_in(const char *str); +extern TSequence *th3indexseq_in(const char *str, interpType interp); +extern TSequenceSet *th3indexseqset_in(const char *str); + +/* Constructors */ +extern Temporal *th3index_make(H3Index value, TimestampTz t); +extern TInstant *th3indexinst_make(H3Index value, TimestampTz t); +extern TSequence *th3indexseq_make(const H3Index *values, + const TimestampTz *times, int count, bool lower_inc, bool upper_inc); +extern TSequenceSet *th3indexseqset_make(const TSequence **sequences, int count); + +/* Accessors */ +extern H3Index th3index_start_value(const Temporal *temp); +extern H3Index th3index_end_value(const Temporal *temp); +extern bool th3index_value_n(const Temporal *temp, int n, H3Index *result); +extern H3Index *th3index_values(const Temporal *temp, int *count); +extern bool th3index_value_at_timestamptz(const Temporal *temp, TimestampTz t, + bool strict, H3Index *result); + +/* MEOS-level conversions to/from tbigint */ +extern Temporal *tbigint_to_th3index(const Temporal *temp); +extern Temporal *th3index_to_tbigint(const Temporal *temp); + +/***************************************************************************** + * Ever/always comparison operators + *****************************************************************************/ + +extern int ever_eq_h3index_th3index(H3Index cell, const Temporal *temp); +extern int ever_eq_th3index_h3index(const Temporal *temp, H3Index cell); +extern int ever_ne_h3index_th3index(H3Index cell, const Temporal *temp); +extern int ever_ne_th3index_h3index(const Temporal *temp, H3Index cell); +extern int always_eq_h3index_th3index(H3Index cell, const Temporal *temp); +extern int always_eq_th3index_h3index(const Temporal *temp, H3Index cell); +extern int always_ne_h3index_th3index(H3Index cell, const Temporal *temp); +extern int always_ne_th3index_h3index(const Temporal *temp, H3Index cell); +extern int ever_eq_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); +extern int ever_ne_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); +extern int always_eq_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); +extern int always_ne_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); + +/***************************************************************************** + * Temporal comparison operators + *****************************************************************************/ + +extern Temporal *teq_h3index_th3index(H3Index cell, const Temporal *temp); +extern Temporal *teq_th3index_h3index(const Temporal *temp, H3Index cell); +extern Temporal *teq_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); +extern Temporal *tne_h3index_th3index(H3Index cell, const Temporal *temp); +extern Temporal *tne_th3index_h3index(const Temporal *temp, H3Index cell); +extern Temporal *tne_th3index_th3index(const Temporal *temp1, + const Temporal *temp2); + +/***************************************************************************** + * Inspection + *****************************************************************************/ + +extern Temporal *th3index_get_resolution(const Temporal *temp); +extern Temporal *th3index_get_base_cell_number(const Temporal *temp); +extern Temporal *th3index_is_valid_cell(const Temporal *temp); +extern Temporal *th3index_is_res_class_iii(const Temporal *temp); +extern Temporal *th3index_is_pentagon(const Temporal *temp); + +/***************************************************************************** + * Hierarchy + *****************************************************************************/ + +extern Temporal *th3index_cell_to_parent(const Temporal *temp, int32 resolution); +extern Temporal *th3index_cell_to_parent_next(const Temporal *temp); +extern Temporal *th3index_cell_to_center_child(const Temporal *temp, int32 resolution); +extern Temporal *th3index_cell_to_center_child_next(const Temporal *temp); +extern Temporal *th3index_cell_to_child_pos(const Temporal *temp, int32 parent_res); +extern Temporal *th3index_child_pos_to_cell(const Temporal *child_pos, + const Temporal *parent, int32 child_res); + +/***************************************************************************** + * Lat/Lng conversion + *****************************************************************************/ + +extern Temporal *tgeogpoint_to_th3index(const Temporal *temp, int32 resolution); +extern Temporal *tgeompoint_to_th3index(const Temporal *temp, int32 resolution); +extern Temporal *th3index_to_tgeogpoint(const Temporal *temp); +extern Temporal *th3index_to_tgeompoint(const Temporal *temp); +extern Temporal *th3index_cell_to_boundary(const Temporal *temp); + +/* Static geometry → H3 cell / cell set. See meos/src/h3/h3_geo.c. */ +extern H3Index h3_gs_point_to_cell(const GSERIALIZED *point, int32 resolution); +extern Set *geo_to_h3index_set(const GSERIALIZED *gs, int32 resolution); +extern int ever_eq_h3indexset_th3index(const Set *cells, + const Temporal *th3idx); + +/***************************************************************************** + * Directed edges + *****************************************************************************/ + +extern Temporal *th3index_are_neighbor_cells(const Temporal *origin, + const Temporal *dest); +extern Temporal *th3index_cells_to_directed_edge(const Temporal *origin, + const Temporal *dest); +extern Temporal *th3index_is_valid_directed_edge(const Temporal *edge); +extern Temporal *th3index_get_directed_edge_origin(const Temporal *edge); +extern Temporal *th3index_get_directed_edge_destination(const Temporal *edge); +extern Temporal *th3index_directed_edge_to_boundary(const Temporal *edge); + +/***************************************************************************** + * Vertices + *****************************************************************************/ + +extern Temporal *th3index_cell_to_vertex(const Temporal *temp, int32 vertex_num); +extern Temporal *th3index_vertex_to_latlng(const Temporal *temp); +extern Temporal *th3index_is_valid_vertex(const Temporal *temp); + +/***************************************************************************** + * Grid traversal + *****************************************************************************/ + +extern Temporal *th3index_grid_distance(const Temporal *origin, + const Temporal *dest); +extern Temporal *th3index_cell_to_local_ij(const Temporal *origin, + const Temporal *cell); +extern Temporal *th3index_local_ij_to_cell(const Temporal *origin, + const Temporal *coord); + +/***************************************************************************** + * Metrics + *****************************************************************************/ + +extern Temporal *th3index_cell_area(const Temporal *temp, const char *unit); +extern Temporal *th3index_edge_length(const Temporal *temp, const char *unit); +extern Temporal *tgeogpoint_great_circle_distance(const Temporal *a, + const Temporal *b, const char *unit); + +#endif /* __MEOS_H3_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal.h new file mode 100644 index 00000000..5791740f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal.h @@ -0,0 +1,1405 @@ +/***************************************************************************** + * + * This MobilityDB code seq provided under The PostgreSQL License. + * Copyright(c) 2016-2023, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License(GPLv2 or later). + * Copyright(c) 2001-2023, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement seq hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Internal API of the Mobility Engine Open Source(MEOS) library. + */ + +#ifndef __MEOS_INTERNAL_H__ +#define __MEOS_INTERNAL_H__ + +/* C */ +#include +/* JSON-C */ +#include +/* GSL */ +#include +#include +/* PROJ */ +#include +/* PostgreSQL */ +/* MEOS */ +#include +#include "temporal/meos_catalog.h" /* For MeosType */ + +/***************************************************************************** + * Validity macros + *****************************************************************************/ + +/** + * @brief Macro for ensuring that a pointer is not null + */ +#if MEOS + #define VALIDATE_NOT_NULL(ptr, ret) \ + do { if (! ensure_not_null((void *) (ptr))) return (ret); } while (0) +#else + #define VALIDATE_NOT_NULL(ptr, ret) \ + do { assert(ptr); } while (0) +#endif /* MEOS */ + +/*****************************************************************************/ + +/** + * @brief Macro for ensuring that a set is an integer set + */ +#if MEOS + #define VALIDATE_INTSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_INTSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_INTSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_INTSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a set is a big integer set + */ +#if MEOS + #define VALIDATE_BIGINTSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_BIGINTSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_BIGINTSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_BIGINTSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a set is a float set + */ +#if MEOS + #define VALIDATE_FLOATSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_FLOATSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_FLOATSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_FLOATSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a set is a text set + */ +#if MEOS + #define VALIDATE_TEXTSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_TEXTSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TEXTSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_TEXTSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a set is a date set + */ +#if MEOS + #define VALIDATE_DATESET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_DATESET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_DATESET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_DATESET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a set is a timestamptz set + */ +#if MEOS + #define VALIDATE_TSTZSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_TSTZSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TSTZSET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_TSTZSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the span is a number span + */ +#if MEOS + #define VALIDATE_NUMSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_numset_type((set)->settype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_NUMSET(set, ret) \ + do { \ + assert(set); \ + assert(numset_type((set)->settype)); \ + } while (0) +#endif /* MEOS */ + +/*****************************************************************************/ + +/** + * @brief Macro for ensuring that a span is an integer span + */ +#if MEOS + #define VALIDATE_INTSPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_span_isof_type((span), T_INTSPAN) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_INTSPAN(span, ret) \ + do { \ + assert(span); \ + assert((span)->spantype == T_INTSPAN); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span is a big integer span + */ +#if MEOS + #define VALIDATE_BIGINTSPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_span_isof_type((span), T_BIGINTSPAN) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_BIGINTSPAN(span, ret) \ + do { \ + assert(span); \ + assert((span)->spantype == T_BIGINTSPAN); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span is a float span + */ +#if MEOS + #define VALIDATE_FLOATSPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_span_isof_type((span), T_FLOATSPAN) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_FLOATSPAN(span, ret) \ + do { \ + assert(span); \ + assert((span)->spantype == T_FLOATSPAN); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span is a date span + */ +#if MEOS + #define VALIDATE_DATESPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_span_isof_type((span), T_DATESPAN) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_DATESPAN(span, ret) \ + do { \ + assert(span); \ + assert((span)->spantype == T_DATESPAN); \ + } while (0) +#endif /* MEOS */ + + +/** + * @brief Macro for ensuring that the span is a timestamptz span + */ +#if MEOS + #define VALIDATE_TSTZSPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_span_isof_type((span), T_TSTZSPAN) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TSTZSPAN(span, ret) \ + do { \ + assert(span); \ + assert((span)->spantype == T_TSTZSPAN); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the span is a number span + */ +#if MEOS + #define VALIDATE_NUMSPAN(span, ret) \ + do { \ + if (! ensure_not_null((void *) (span)) || \ + ! ensure_numspan_type((span)->spantype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_NUMSPAN(span, ret) \ + do { \ + assert(span); \ + assert(numspan_type((span)->spantype)); \ + } while (0) +#endif /* MEOS */ + +/*****************************************************************************/ + +/** + * @brief Macro for ensuring that a span set is an integer span set + */ +#if MEOS + #define VALIDATE_INTSPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_spanset_isof_type((ss), T_INTSPANSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_INTSPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert((ss)->spansettype == T_INTSPANSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span set is a big integer span set + */ +#if MEOS + #define VALIDATE_BIGINTSPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_spanset_isof_type((ss), T_BIGINTSPANSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_BIGINTSPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert((ss)->spansettype == T_BIGINTSPANSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span set is a float span set + */ +#if MEOS + #define VALIDATE_FLOATSPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_spanset_isof_type((ss), T_FLOATSPANSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_FLOATSPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert((ss)->spansettype == T_FLOATSPANSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that a span set is a date span set + */ +#if MEOS + #define VALIDATE_DATESPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_spanset_isof_type((ss), T_DATESPANSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_DATESPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert((ss)->spansettype == T_DATESPANSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the span set is a timestamptz span set + */ +#if MEOS + #define VALIDATE_TSTZSPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_spanset_isof_type(ss, T_TSTZSPANSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TSTZSPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert((ss)->spansettype == T_TSTZSPANSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the span set is a number span set + */ +#if MEOS + #define VALIDATE_NUMSPANSET(ss, ret) \ + do { \ + if (! ensure_not_null((void *) (ss)) || \ + ! ensure_numspanset_type((ss)->spansettype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_NUMSPANSET(ss, ret) \ + do { \ + assert(ss); \ + assert(numspanset_type((ss)->spansettype)); \ + } while (0) +#endif /* MEOS */ + +/*****************************************************************************/ + +/** + * @brief Macro for ensuring that the temporal value is a temporal Boolean + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TBOOL(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TBOOL) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TBOOL(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TBOOL); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value is a temporal integer + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TINT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TINT(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TINT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value is a temporal big integer + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TBIGINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TBIGINT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TBIGINT(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TBIGINT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value is a temporal float + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TFLOAT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TFLOAT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TFLOAT(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TFLOAT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value is a temporal text + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TTEXT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TTEXT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TTEXT(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TTEXT); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value is a temporal number + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TNUMBER(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_tnumber_type(((Temporal *) (temp))->temptype) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TNUMBER(temp, ret) \ + do { \ + assert(temp); \ + assert(tnumber_type(((Temporal *) (temp))->temptype)); \ + } while (0) +#endif /* MEOS */ + +/***************************************************************************** + * Macros for manipulating the 'flags' element where the less significant + * bits are MGTZXIICB, where + * M: (GEOM) the reference geometry is stored + * G: coordinates are geodetic + * T: has T coordinate, + * Z: has Z coordinate + * X: has value or X coordinate + * II: interpolation, whose values are + * - 00: INTERP_NONE (undetermined) for TInstant + * - 01: DISCRETE + * - 10: STEP + * - 11: LINEAR + * C: continuous base type / Ordered set + * B: base type passed by value + * Notice that the interpolation flags are only needed for sequence and + * sequence set subtypes. + *****************************************************************************/ + +/* The following flag is only used for Set and TInstant */ +#define MEOS_FLAG_BYVAL 0x0001 // 1 +/* The following flag is only used for Set */ +#define MEOS_FLAG_ORDERED 0x0002 // 2 +/* The following flag is only used for Temporal */ +#define MEOS_FLAG_CONTINUOUS 0x0002 // 2 +/* The following two interpolation flags are only used for TSequence and TSequenceSet */ +#define MEOS_FLAGS_INTERP 0x000C // 4 / 8 +/* The following two flags are used for both bounding boxes and temporal types */ +#define MEOS_FLAG_X 0x0010 // 16 +#define MEOS_FLAG_Z 0x0020 // 32 +#define MEOS_FLAG_T 0x0040 // 64 +#define MEOS_FLAG_GEODETIC 0x0080 // 128 +#define MEOS_FLAG_GEOM 0x0100 // 256 + +#define MEOS_FLAGS_GET_BYVAL(flags) ((bool) (((flags) & MEOS_FLAG_BYVAL))) +#define MEOS_FLAGS_GET_ORDERED(flags) ((bool) (((flags) & MEOS_FLAG_ORDERED)>>1)) +#define MEOS_FLAGS_GET_CONTINUOUS(flags) ((bool) (((flags) & MEOS_FLAG_CONTINUOUS)>>1)) +#define MEOS_FLAGS_GET_X(flags) ((bool) (((flags) & MEOS_FLAG_X)>>4)) +#define MEOS_FLAGS_GET_Z(flags) ((bool) (((flags) & MEOS_FLAG_Z)>>5)) +#define MEOS_FLAGS_GET_T(flags) ((bool) (((flags) & MEOS_FLAG_T)>>6)) +#define MEOS_FLAGS_GET_GEODETIC(flags) ((bool) (((flags) & MEOS_FLAG_GEODETIC)>>7)) +#define MEOS_FLAGS_GET_GEOM(flags) ((bool) (((flags) & MEOS_FLAG_GEOM)>>8)) + +#define MEOS_FLAGS_BYREF(flags) ((bool) (((flags) & ! MEOS_FLAG_BYVAL))) + +#define MEOS_FLAGS_SET_BYVAL(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_BYVAL) : ((flags) & ~MEOS_FLAG_BYVAL)) +#define MEOS_FLAGS_SET_ORDERED(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_ORDERED) : ((flags) & ~MEOS_FLAG_ORDERED)) +#define MEOS_FLAGS_SET_CONTINUOUS(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_CONTINUOUS) : ((flags) & ~MEOS_FLAG_CONTINUOUS)) +#define MEOS_FLAGS_SET_X(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_X) : ((flags) & ~MEOS_FLAG_X)) +#define MEOS_FLAGS_SET_Z(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_Z) : ((flags) & ~MEOS_FLAG_Z)) +#define MEOS_FLAGS_SET_T(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_T) : ((flags) & ~MEOS_FLAG_T)) +#define MEOS_FLAGS_SET_GEODETIC(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_GEODETIC) : ((flags) & ~MEOS_FLAG_GEODETIC)) +#define MEOS_FLAGS_SET_GEOM(flags, value) \ + ((flags) = (value) ? ((flags) | MEOS_FLAG_GEOM) : ((flags) & ~MEOS_FLAG_GEOM)) + +#define MEOS_FLAGS_GET_INTERP(flags) (((flags) & MEOS_FLAGS_INTERP) >> 2) +#define MEOS_FLAGS_SET_INTERP(flags, value) ((flags) = (((flags) & ~MEOS_FLAGS_INTERP) | ((value & 0x0003) << 2))) + +#define MEOS_FLAGS_DISCRETE_INTERP(flags) ((bool) (MEOS_FLAGS_GET_INTERP((flags)) == DISCRETE)) +#define MEOS_FLAGS_STEP_INTERP(flags) ((bool) (MEOS_FLAGS_GET_INTERP((flags)) == STEP)) +#define MEOS_FLAGS_LINEAR_INTERP(flags) ((bool) (MEOS_FLAGS_GET_INTERP((flags)) == LINEAR)) +#define MEOS_FLAGS_STEP_LINEAR_INTERP(flags) \ + ((bool) (MEOS_FLAGS_GET_INTERP((flags)) == STEP || MEOS_FLAGS_GET_INTERP((flags)) == LINEAR)) + +/***************************************************************************** + * Macros for speeding up access to component values + *****************************************************************************/ + +/* Macros for speeding up access to component values of sets and span sets */ + +#if DEBUG_BUILD +extern void *SET_BBOX_PTR(const Set *s); +extern size_t *SET_OFFSETS_PTR(const Set *s); +extern Datum SET_VAL_N(const Set *s, int index); +extern const Span *SPANSET_SP_N(const SpanSet *ss, int index); +#else +/** + * @brief Return a pointer to the bounding box of a set (if any) + */ +#define SET_BBOX_PTR(s) ( (void *)( \ + ((char *) (s)) + DOUBLE_PAD(sizeof(Set)) ) ) + +/** + * @brief Return a pointer to the offsets array of a set + */ +#define SET_OFFSETS_PTR(s) ( (size_t *)( \ + ((char *) (s)) + DOUBLE_PAD(sizeof(Set)) + DOUBLE_PAD((s)->bboxsize) ) ) + +/** + * @brief Return the n-th value of a set + * @pre The argument @p index is less than the number of values in the set + */ +#define SET_VAL_N(s, index) ( (Datum) ( \ + MEOS_FLAGS_GET_BYVAL((s)->flags) ? (SET_OFFSETS_PTR(s))[index] : \ + PointerGetDatum( ((char *) (s)) + DOUBLE_PAD(sizeof(Set)) + \ + DOUBLE_PAD((s)->bboxsize) + (sizeof(size_t) * (s)->maxcount) + \ + (SET_OFFSETS_PTR(s))[index] ) ) ) + +/** + * @brief Return the n-th span of a span set. + * @pre The argument @p index is less than the number of spans in the span set + * @note This is the macro equivalent to #spanset_span_n. + * This function does not verify that the index is is in the correct bounds + */ +#define SPANSET_SP_N(ss, index) (const Span *) &((ss)->elems[(index)]) +#endif + +/*****************************************************************************/ + +/* Macros for speeding up access to components of temporal sequences (sets)*/ + +#if DEBUG_BUILD +extern size_t *TSEQUENCE_OFFSETS_PTR(const TSequence *seq); +extern const TInstant *TSEQUENCE_INST_N(const TSequence *seq, int index); +extern size_t *TSEQUENCESET_OFFSETS_PTR(const TSequenceSet *ss); +extern const TSequence *TSEQUENCESET_SEQ_N(const TSequenceSet *ss, int index); +#else +/** + * @brief Return a pointer to the offsets array of a temporal sequence + * @note The period component of the bbox is already declared in the struct + */ +#define TSEQUENCE_OFFSETS_PTR(seq) ( (size_t *)( \ + ((char *) &((seq)->period)) + (seq)->bboxsize ) ) + +/** + * @brief Return the n-th instant of a temporal sequence. + * @note The period component of the bbox is already declared in the struct + * @pre The argument @p index is less than the number of instants in the + * sequence + */ +#define TSEQUENCE_INST_N(seq, index) ( (const TInstant *)( \ + ((char *) &((seq)->period)) + (seq)->bboxsize + \ + (sizeof(size_t) * (seq)->maxcount) + (TSEQUENCE_OFFSETS_PTR(seq))[index] ) ) + +/** + * @brief Return a pointer to the offsets array of a temporal sequence set + * @note The period component of the bbox is already declared in the struct + */ +#define TSEQUENCESET_OFFSETS_PTR(ss) ( (size_t *)( \ + ((char *) &((ss)->period)) + (ss)->bboxsize ) ) + +/** + * @brief Return the n-th sequence of a temporal sequence set + * @note The period component of the bbox is already declared in the struct + * @pre The argument @p index is less than the number of sequences in the + * sequence set + */ +#define TSEQUENCESET_SEQ_N(ss, index) ( (const TSequence *)( \ + ((char *) &((ss)->period)) + (ss)->bboxsize + \ + (sizeof(size_t) * (ss)->maxcount) + (TSEQUENCESET_OFFSETS_PTR(ss))[index] ) ) +#endif /* DEBUG_BUILD */ + +/*****************************************************************************/ + +/* Structure of an expandable arrays used in particular to avoid parsing twice + * a MEOS value input in text format */ + +#define MEOS_ARRAY_INITIAL_SIZE 256 + +/** + * @brief Structure of an expandable arrays used in particular to avoid parsing + * twice a MEOS value input in text format + */ +typedef struct MeosArray +{ + size_t capacity; /**< Total capacity in number of elements */ + size_t count; /**< Number of elements currently in use */ + size_t elem_size; /**< Size of a single element in bytes */ + bool varlength; /**< True if elements are pointers (stored as Datums); + the array does not own the pointed-to memory */ + void *elems; /**< Pointer to the array elements */ +} MeosArray; + + +/*****************************************************************************/ + +/** + * Structure to represent skiplist elements + */ + +#define SKIPLIST_MAXLEVEL 32 /**< maximum possible is 47 with current RNG */ + +typedef struct +{ + void *key; + void *value; + int height; + int next[SKIPLIST_MAXLEVEL]; +} SkipListElem; + +/** + * Structure to represent skiplists that keep the current state of an aggregation + */ +struct SkipList +{ + size_t key_size; /**< Size in bytes of the keys */ + size_t value_size; /**< Size in bytes of the values */ + int capacity; /**< Maximum number of elements */ + int length; /**< Number of elements */ + int next; /**< Index of the next free element */ + int tail; /**< Index of the tail element */ + int *freed; /**< Array of index values of deleted elements */ + int freecount; /**< Number of deleted elements */ + int freecap; /**< Maximum number of deleted elements */ + void *extra; /**< Pointer to additional data needed for processing */ + size_t extrasize; /**< Size of additional data needed for processing */ + int (*comp_fn)(void *, void *); /**< Comparison function for the elements */ + void *(*merge_fn)(void *, void *); /**< Merge function for the elements */ + SkipListElem *elems; /**< Array of elements */ +}; + +/** + * @brief Enumeration for the relative position of a given element into a + * skiplist + */ +typedef enum +{ + TEMPORAL, + KEYVALUE +} SkipListType; + +/***************************************************************************** + * Definition of a function with one to three Datum arguments and returning + * a Datum + *****************************************************************************/ + +typedef Datum (*datum_func1) (Datum); +typedef Datum (*datum_func2) (Datum, Datum); +typedef Datum (*datum_func3) (Datum, Datum, Datum); + +/***************************************************************************** + * Internal function accessing the Gnu Scientic Library (GSL) + *****************************************************************************/ + +extern gsl_rng *gsl_get_generation_rng(void); +extern gsl_rng *gsl_get_aggregation_rng(void); + +/***************************************************************************** + * Generic type functions + *****************************************************************************/ + +#if MEOS +#define TimestampTzGetDatum(X) Int64GetDatum(X) +#define DatumGetTimestampTz(X)((TimestampTz) DatumGetInt64(X)) +#endif /* MEOS */ + +extern Datum datum_ceil(Datum d); +extern Datum datum_degrees(Datum d, Datum normalize); +extern Datum datum_float_round(Datum value, Datum size); +extern Datum datum_floor(Datum d); +extern uint32 datum_hash(Datum d, MeosType basetype); +extern uint64 datum_hash_extended(Datum d, MeosType basetype, uint64 seed); +extern Datum datum_radians(Datum d); +extern void floatspan_round_set(const Span *s, int maxdd, Span *result); + +/***************************************************************************** + * Functions for set and span types + *****************************************************************************/ + +/* Input and output functions for set and span types */ + +extern Set *set_in(const char *str, MeosType basetype); +extern char *set_out(const Set *s, int maxdd); +extern Span *span_in(const char *str, MeosType spantype); +extern char *span_out(const Span *s, int maxdd); +extern SpanSet *spanset_in(const char *str, MeosType spantype); +extern char *spanset_out(const SpanSet *ss, int maxdd); + +/*****************************************************************************/ + +/* Constructor functions for set and span types */ + +extern Set *set_make(const Datum *values, int count, MeosType basetype, bool order); +extern Set *set_make_exp(const Datum *values, int count, int maxcount, MeosType basetype, bool order); +extern Set *set_make_free(Datum *values, int count, MeosType basetype, bool order); +extern Span *span_make(Datum lower, Datum upper, bool lower_inc, bool upper_inc, MeosType basetype); +extern void span_set(Datum lower, Datum upper, bool lower_inc, bool upper_inc, MeosType basetype, MeosType spantype, Span *s); +extern SpanSet *spanset_make_exp(Span *spans, int count, int maxcount, bool normalize, bool order); +extern SpanSet *spanset_make_free(Span *spans, int count, bool normalize, bool order); + +/*****************************************************************************/ + +/* Conversion functions for set and span types */ + +extern Span *set_span(const Set *s); +extern SpanSet *set_spanset(const Set *s); +extern void value_set_span(Datum value, MeosType basetype, Span *s); +extern Set *value_set(Datum d, MeosType basetype); +extern Span *value_span(Datum d, MeosType basetype); +extern SpanSet *value_spanset(Datum d, MeosType basetype); + +/*****************************************************************************/ + +/* Accessor functions for set and span types */ + +extern Datum numspan_width(const Span *s); +extern Datum numspanset_width(const SpanSet *ss, bool boundspan); +extern Datum set_end_value(const Set *s); +extern int set_mem_size(const Set *s); +extern void set_set_subspan(const Set *s, int minidx, int maxidx, Span *result); +extern void set_set_span(const Set *s, Span *result); +extern Datum set_start_value(const Set *s); +extern bool set_value_n(const Set *s, int n, Datum *result); +extern Datum *set_vals(const Set *s); +extern Datum *set_values(const Set *s); +extern Datum spanset_lower(const SpanSet *ss); +extern int spanset_mem_size(const SpanSet *ss); +extern const Span **spanset_sps(const SpanSet *ss); +extern Datum spanset_upper(const SpanSet *ss); + +/*****************************************************************************/ + +/* Transformation functions for set and span types */ + +extern void bigintspan_set_floatspan(const Span *s1, Span *s2); +extern void bigintspan_set_intspan(const Span *s1, Span *s2); +extern void datespan_set_tstzspan(const Span *s1, Span *s2); +extern void floatspan_set_bigintspan(const Span *s1, Span *s2); +extern void floatspan_set_intspan(const Span *s1, Span *s2); +extern void intspan_set_bigintspan(const Span *s1, Span *s2); +extern void intspan_set_floatspan(const Span *s1, Span *s2); +extern Set *numset_shift_scale(const Set *s, Datum shift, Datum width, bool hasshift, bool haswidth); +extern Span *numspan_expand(const Span *s, Datum value); +extern Span *numspan_shift_scale(const Span *s, Datum shift, Datum width, bool hasshift, bool haswidth); +extern SpanSet *numspanset_shift_scale(const SpanSet *ss, Datum shift, Datum width, bool hasshift, bool haswidth); +extern Set *set_compact(const Set *s); +extern void span_expand(const Span *s1, Span *s2); +extern SpanSet *spanset_compact(const SpanSet *ss); +extern TBox *tbox_expand_value(const TBox *box, Datum value, MeosType basetyp); +extern Set *textcat_textset_text_common(const Set *s, const text *txt, bool invert); +extern void tstzspan_set_datespan(const Span *s1, Span *s2); + +/***************************************************************************** + * Comparison functions for set and span types + *****************************************************************************/ + + +/***************************************************************************** + * Bounding box functions for set and span types + *****************************************************************************/ + +/* Topological functions for set and span types */ + +extern bool adjacent_span_value(const Span *s, Datum value); +extern bool adjacent_spanset_value(const SpanSet *ss, Datum value); +extern bool adjacent_value_spanset(Datum value, const SpanSet *ss); +extern bool contained_value_set(Datum value, const Set *s); +extern bool contained_value_span(Datum value, const Span *s); +extern bool contained_value_spanset(Datum value, const SpanSet *ss); +extern bool contains_set_value(const Set *s, Datum value); +extern bool contains_span_value(const Span *s, Datum value); +extern bool contains_spanset_value(const SpanSet *ss, Datum value); +extern bool ovadj_span_span(const Span *s1, const Span *s2); + +/*****************************************************************************/ + +/* Position functions for set and span types */ + +extern bool left_set_value(const Set *s, Datum value); +extern bool left_span_value(const Span *s, Datum value); +extern bool left_spanset_value(const SpanSet *ss, Datum value); +extern bool left_value_set(Datum value, const Set *s); +extern bool left_value_span(Datum value, const Span *s); +extern bool left_value_spanset(Datum value, const SpanSet *ss); +extern bool lfnadj_span_span(const Span *s1, const Span *s2); +extern bool overleft_set_value(const Set *s, Datum value); +extern bool overleft_span_value(const Span *s, Datum value); +extern bool overleft_spanset_value(const SpanSet *ss, Datum value); +extern bool overleft_value_set(Datum value, const Set *s); +extern bool overleft_value_span(Datum value, const Span *s); +extern bool overleft_value_spanset(Datum value, const SpanSet *ss); +extern bool overright_set_value(const Set *s, Datum value); +extern bool overright_span_value(const Span *s, Datum value); +extern bool overright_spanset_value(const SpanSet *ss, Datum value); +extern bool overright_value_set(Datum value, const Set *s); +extern bool overright_value_span(Datum value, const Span *s); +extern bool overright_value_spanset(Datum value, const SpanSet *ss); +extern bool right_value_set(Datum value, const Set *s); +extern bool right_set_value(const Set *s, Datum value); +extern bool right_value_span(Datum value, const Span *s); +extern bool right_value_spanset(Datum value, const SpanSet *ss); +extern bool right_span_value(const Span *s, Datum value); +extern bool right_spanset_value(const SpanSet *ss, Datum value); + +/*****************************************************************************/ + +/* Functions on generic bounding boxes of temporal types */ + +extern bool bbox_type(MeosType bboxtype); +extern size_t bbox_get_size(MeosType bboxtype); +extern int bbox_max_dims(MeosType bboxtype); +extern bool temporal_bbox_eq(const void *box1, const void *box2, + MeosType temptype); +extern int temporal_bbox_cmp(const void *box1, const void *box2, + MeosType temptype); + +/* Set functions for set and span types */ + +extern void bbox_union_span_span(const Span *s1, const Span *s2, Span *result); +extern bool inter_span_span(const Span *s1, const Span *s2, Span *result); +extern Set *intersection_set_value(const Set *s, Datum value); +extern Span *intersection_span_value(const Span *s, Datum value); +extern SpanSet *intersection_spanset_value(const SpanSet *ss, Datum value); +extern Set *intersection_value_set(Datum value, const Set *s); +extern Span *intersection_value_span(Datum value, const Span *s); +extern SpanSet *intersection_value_spanset(Datum value, const SpanSet *ss); +extern int mi_span_span(const Span *s1, const Span *s2, Span *result); +extern Set *minus_set_value(const Set *s, Datum value); +extern SpanSet *minus_span_value(const Span *s, Datum value); +extern SpanSet *minus_spanset_value(const SpanSet *ss, Datum value); +extern Set *minus_value_set(Datum value, const Set *s); +extern SpanSet *minus_value_span(Datum value, const Span *s); +extern SpanSet *minus_value_spanset(Datum value, const SpanSet *ss); +extern Span *super_union_span_span(const Span *s1, const Span *s2); +extern Set *union_set_value(const Set *s, Datum value); +extern SpanSet *union_span_value(const Span *s, Datum value); +extern SpanSet *union_spanset_value(const SpanSet *ss, Datum value); +extern Set *union_value_set(Datum value, const Set *s); +extern SpanSet *union_value_span(Datum value, const Span *s); +extern SpanSet *union_value_spanset(Datum value, const SpanSet *ss); + +/*****************************************************************************/ + +/* Distance functions for set and span types */ + +extern Datum distance_set_set(const Set *s1, const Set *s2); +extern Datum distance_set_value(const Set *s, Datum value); +extern Datum distance_span_span(const Span *s1, const Span *s2); +extern Datum distance_span_value(const Span *s, Datum value); +extern Datum distance_spanset_span(const SpanSet *ss, const Span *s); +extern Datum distance_spanset_spanset(const SpanSet *ss1, const SpanSet *ss2); +extern Datum distance_spanset_value(const SpanSet *ss, Datum value); +extern Datum distance_value_value(Datum l, Datum r, MeosType basetype); + +/*****************************************************************************/ + +/* Aggregate functions for set and span types */ + +extern Span *spanbase_extent_transfn(Span *state, Datum value, MeosType basetype); +extern Set *value_union_transfn(Set *state, Datum value, MeosType basetype); + +/****************************************************************************** + * Functions for box types + *****************************************************************************/ + +/* Constructor functions for box types */ + +extern TBox *number_tstzspan_to_tbox(Datum d, MeosType basetype, const Span *s); +extern TBox *number_timestamptz_to_tbox(Datum d, MeosType basetype, TimestampTz t); +extern void tbox_set(const Span *s, const Span *p, TBox *box); + +/*****************************************************************************/ + +/* Conversion functions for box types */ + +extern void float_set_tbox(double d, TBox *box); +extern void int_set_tbox(int i, TBox *box); +extern void number_set_tbox(Datum d, MeosType basetype, TBox *box); +extern TBox *number_tbox(Datum value, MeosType basetype); +extern void numset_set_tbox(const Set *s, TBox *box); +extern void numspan_set_tbox(const Span *span, TBox *box); +extern void timestamptz_set_tbox(TimestampTz t, TBox *box); +extern void tstzset_set_tbox(const Set *s, TBox *box); +extern void tstzspan_set_tbox(const Span *s, TBox *box); + +/*****************************************************************************/ + +/* Accessor functions for box types */ + + +/*****************************************************************************/ + +/* Transformation functions for box types */ + +extern TBox *tbox_shift_scale_value(const TBox *box, Datum shift, Datum width, bool hasshift, bool haswidth); +extern void tbox_expand(const TBox *box1, TBox *box2); + +/*****************************************************************************/ + +/* Set functions for box types */ + +extern bool inter_tbox_tbox(const TBox *box1, const TBox *box2, TBox *result); + +/***************************************************************************** + * Functions for temporal types + *****************************************************************************/ + +/* Input and output functions for temporal types */ + +extern TInstant *tboolinst_from_mfjson(json_object *mfjson); +extern TInstant *tboolinst_in(const char *str); +extern TSequence *tboolseq_from_mfjson(json_object *mfjson); +extern TSequence *tboolseq_in(const char *str, interpType interp); +extern TSequenceSet *tboolseqset_from_mfjson(json_object *mfjson); +extern TSequenceSet *tboolseqset_in(const char *str); +extern Temporal *temporal_in(const char *str, MeosType temptype); +extern char *temporal_out(const Temporal *temp, int maxdd); +extern char **temparr_out(Temporal **temparr, int count, int maxdd); +extern TInstant *tfloatinst_from_mfjson(json_object *mfjson); +extern TInstant *tfloatinst_in(const char *str); +extern TSequence *tfloatseq_from_mfjson(json_object *mfjson, interpType interp); +extern TSequence *tfloatseq_in(const char *str, interpType interp); +extern TSequenceSet *tfloatseqset_from_mfjson(json_object *mfjson, interpType interp); +extern TSequenceSet *tfloatseqset_in(const char *str); +extern TInstant *tinstant_from_mfjson(json_object *mfjson, bool spatial, int32_t srid, MeosType temptype); +extern TInstant *tinstant_in(const char *str, MeosType temptype); +extern char *tinstant_out(const TInstant *inst, int maxdd); +extern TInstant *tintinst_from_mfjson(json_object *mfjson); +extern TInstant *tintinst_in(const char *str); +extern TSequence *tintseq_from_mfjson(json_object *mfjson); +extern TSequence *tintseq_in(const char *str, interpType interp); +extern TSequenceSet *tintseqset_from_mfjson(json_object *mfjson); +extern TSequenceSet *tintseqset_in(const char *str); +extern TSequence *tsequence_from_mfjson(json_object *mfjson, bool spatial, int32_t srid, MeosType temptype, interpType interp); +extern TSequence *tsequence_in(const char *str, MeosType temptype, interpType interp); +extern char *tsequence_out(const TSequence *seq, int maxdd); +extern TSequenceSet *tsequenceset_from_mfjson(json_object *mfjson, bool spatial, int32_t srid, MeosType temptype, interpType interp); +extern TSequenceSet *tsequenceset_in(const char *str, MeosType temptype, interpType interp); +extern char *tsequenceset_out(const TSequenceSet *ss, int maxdd); +extern TInstant *ttextinst_from_mfjson(json_object *mfjson); +extern TInstant *ttextinst_in(const char *str); +extern TSequence *ttextseq_from_mfjson(json_object *mfjson); +extern TSequence *ttextseq_in(const char *str, interpType interp); +extern TSequenceSet *ttextseqset_from_mfjson(json_object *mfjson); +extern TSequenceSet *ttextseqset_in(const char *str); +extern Temporal *temporal_from_mfjson(const char *mfjson, MeosType temptype); + +/*****************************************************************************/ + +/* Constructor functions for temporal types */ + +extern Temporal *temporal_from_base_temp(Datum value, MeosType temptype, const Temporal *temp); +extern TInstant *tinstant_copy(const TInstant *inst); +extern TInstant *tinstant_make(Datum value, MeosType temptype, TimestampTz t); +extern TInstant *tinstant_make_free(Datum value, MeosType temptype, TimestampTz t); +extern TSequence *tsequence_copy(const TSequence *seq); +extern TSequence *tsequence_from_base_temp(Datum value, MeosType temptype, const TSequence *seq); +extern TSequence *tsequence_from_base_tstzset(Datum value, MeosType temptype, const Set *s); +extern TSequence *tsequence_from_base_tstzspan(Datum value, MeosType temptype, const Span *s, interpType interp); +extern TSequence *tsequence_make_exp(TInstant **instants, int count, int maxcount, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *tsequence_make_free(TInstant **instants, int count, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequenceSet *tsequenceset_copy(const TSequenceSet *ss); +extern TSequenceSet *tseqsetarr_to_tseqset(TSequenceSet **seqsets, int count, int totalseqs); +extern TSequenceSet *tsequenceset_from_base_temp(Datum value, MeosType temptype, const TSequenceSet *ss); +extern TSequenceSet *tsequenceset_from_base_tstzspanset(Datum value, MeosType temptype, const SpanSet *ss, interpType interp); +extern TSequenceSet *tsequenceset_make_exp(TSequence **sequences, int count, int maxcount, bool normalize); +extern TSequenceSet *tsequenceset_make_free(TSequence **sequences, int count, bool normalize); + +/*****************************************************************************/ + +/* Conversion functions for temporal types */ + +extern void temporal_set_tstzspan(const Temporal *temp, Span *s); +extern void tinstant_set_tstzspan(const TInstant *inst, Span *s); +extern void tnumber_set_tbox(const Temporal *temp, TBox *box); +extern void tnumberinst_set_tbox(const TInstant *inst, TBox *box); +extern void tnumberseq_set_tbox(const TSequence *seq, TBox *box); +extern void tnumberseqset_set_tbox(const TSequenceSet *ss, TBox *box); +extern void tsequence_set_tstzspan(const TSequence *seq, Span *s); +extern void tsequenceset_set_tstzspan(const TSequenceSet *ss, Span *s); + +/*****************************************************************************/ + +/* Accessor functions for temporal types */ + +extern const TInstant *temporal_end_inst(const Temporal *temp); +extern Datum temporal_end_value(const Temporal *temp); +extern const TInstant *temporal_inst_n(const Temporal *temp, int n); +extern const TInstant **temporal_insts_p(const Temporal *temp, int *count); +extern const TInstant *temporal_max_inst_p(const Temporal *temp); +extern Datum temporal_max_value(const Temporal *temp); +extern size_t temporal_mem_size(const Temporal *temp); +extern const TInstant *temporal_min_inst_p(const Temporal *temp); +extern Datum temporal_min_value(const Temporal *temp); +extern const TSequence **temporal_sequences_p(const Temporal *temp, int *count); +extern void temporal_set_bbox(const Temporal *temp, void *box); +extern const TInstant *temporal_start_inst(const Temporal *temp); +extern Datum temporal_start_value(const Temporal *temp); +extern Datum *temporal_values_p(const Temporal *temp, int *count); +extern bool temporal_value_n(const Temporal *temp, int n, Datum *result); +extern Datum *temporal_values(const Temporal *temp, int *count); +extern uint32 tinstant_hash(const TInstant *inst); +extern const TInstant **tinstant_insts(const TInstant *inst, int *count); +extern void tinstant_set_bbox(const TInstant *inst, void *box); +extern SpanSet *tinstant_time(const TInstant *inst); +extern TimestampTz *tinstant_timestamps(const TInstant *inst, int *count); +extern Datum tinstant_value_p(const TInstant *inst); +extern Datum tinstant_value(const TInstant *inst); +extern bool tinstant_value_at_timestamptz(const TInstant *inst, TimestampTz t, Datum *result); +extern Datum *tinstant_values_p(const TInstant *inst, int *count); +extern void tnumber_set_span(const Temporal *temp, Span *span); +extern SpanSet *tnumberinst_valuespans(const TInstant *inst); +extern double tnumberseq_avg_val(const TSequence *seq); +extern SpanSet *tnumberseq_valuespans(const TSequence *seq); +extern double tnumberseqset_avg_val(const TSequenceSet *ss); +extern SpanSet *tnumberseqset_valuespans(const TSequenceSet *ss); +extern Interval *tsequence_duration(const TSequence *seq); +extern TimestampTz tsequence_end_timestamptz(const TSequence *seq); +extern uint32 tsequence_hash(const TSequence *seq); +extern const TInstant **tsequence_insts_p(const TSequence *seq); +extern const TInstant *tsequence_max_inst_p(const TSequence *seq); +extern Datum tsequence_max_val(const TSequence *seq); +extern const TInstant *tsequence_min_inst_p(const TSequence *seq); +extern Datum tsequence_min_val(const TSequence *seq); +extern TSequence **tsequence_segments(const TSequence *seq, int *count); +extern const TSequence **tsequence_seqs(const TSequence *seq, int *count); +extern TimestampTz tsequence_start_timestamptz(const TSequence *seq); +extern SpanSet *tsequence_time(const TSequence *seq); +extern TimestampTz *tsequence_timestamps(const TSequence *seq, int *count); +extern bool tsequence_value_at_timestamptz(const TSequence *seq, TimestampTz t, bool strict, Datum *result); +extern Datum *tsequence_values_p(const TSequence *seq, int *count); +extern Interval *tsequenceset_duration(const TSequenceSet *ss, bool boundspan); +extern TimestampTz tsequenceset_end_timestamptz(const TSequenceSet *ss); +extern uint32 tsequenceset_hash(const TSequenceSet *ss); +extern const TInstant *tsequenceset_inst_n(const TSequenceSet *ss, int n); +extern const TInstant **tsequenceset_insts_p(const TSequenceSet *ss); +extern const TInstant *tsequenceset_max_inst_p(const TSequenceSet *ss); +extern Datum tsequenceset_max_val(const TSequenceSet *ss); +extern const TInstant *tsequenceset_min_inst_p(const TSequenceSet *ss); +extern Datum tsequenceset_min_val(const TSequenceSet *ss); +extern int tsequenceset_num_instants(const TSequenceSet *ss); +extern int tsequenceset_num_timestamps(const TSequenceSet *ss); +extern TSequence **tsequenceset_segments(const TSequenceSet *ss, int *count); +extern const TSequence **tsequenceset_sequences_p(const TSequenceSet *ss); +extern TimestampTz tsequenceset_start_timestamptz(const TSequenceSet *ss); +extern SpanSet *tsequenceset_time(const TSequenceSet *ss); +extern bool tsequenceset_timestamptz_n(const TSequenceSet *ss, int n, TimestampTz *result); +extern TimestampTz *tsequenceset_timestamps(const TSequenceSet *ss, int *count); +extern bool tsequenceset_value_at_timestamptz(const TSequenceSet *ss, TimestampTz t, bool strict, Datum *result); +extern bool tsequenceset_value_n(const TSequenceSet *ss, int n, Datum *result); +extern Datum *tsequenceset_values_p(const TSequenceSet *ss, int *count); + +/*****************************************************************************/ + +/* Transformation functions for temporal types */ + +extern void temporal_restart(Temporal *temp, int count); +extern TSequence *temporal_tsequence(const Temporal *temp, interpType interp); +extern TSequenceSet *temporal_tsequenceset(const Temporal *temp, interpType interp); +extern TInstant *tinstant_shift_time(const TInstant *inst, const Interval *interv); +extern TSequence *tinstant_to_tsequence(const TInstant *inst, interpType interp); +extern TSequence *tinstant_to_tsequence_free(TInstant *inst, interpType interp); +extern TSequenceSet *tinstant_to_tsequenceset(const TInstant *inst, interpType interp); +extern Temporal *tnumber_shift_scale_value(const Temporal *temp, Datum shift, Datum width, bool hasshift, bool haswidth); +extern TInstant *tnumberinst_shift_value(const TInstant *inst, Datum shift); +extern TSequence *tnumberseq_shift_scale_value(const TSequence *seq, Datum shift, Datum width, bool hasshift, bool haswidth); +extern TSequenceSet *tnumberseqset_shift_scale_value(const TSequenceSet *ss, Datum start, Datum width, bool hasshift, bool haswidth); +extern void tsequence_restart(TSequence *seq, int count); +extern Temporal *tsequence_set_interp(const TSequence *seq, interpType interp); +extern TSequence *tsequence_shift_scale_time(const TSequence *seq, const Interval *shift, const Interval *duration); +extern TSequence *tsequence_subseq(const TSequence *seq, int from, int to, bool lower_inc, bool upper_inc); +extern TInstant *tsequence_to_tinstant(const TSequence *seq); +extern TSequenceSet *tsequence_to_tsequenceset(const TSequence *seq); +extern TSequenceSet *tsequence_to_tsequenceset_free(TSequence *seq); +extern TSequenceSet *tsequence_to_tsequenceset_interp(const TSequence *seq, interpType interp); +extern void tsequenceset_restart(TSequenceSet *ss, int count); +extern Temporal *tsequenceset_set_interp(const TSequenceSet *ss, interpType interp); +extern TSequenceSet *tsequenceset_shift_scale_time(const TSequenceSet *ss, const Interval *start, const Interval *duration); +extern TSequence *tsequenceset_to_discrete(const TSequenceSet *ss); +extern TSequenceSet *tsequenceset_to_linear(const TSequenceSet *ss); +extern TSequenceSet *tsequenceset_to_step(const TSequenceSet *ss); +extern TInstant *tsequenceset_to_tinstant(const TSequenceSet *ss); +extern TSequence *tsequenceset_to_tsequence(const TSequenceSet *ss); + +/*****************************************************************************/ + +/* Modification functions for temporal types */ + +extern Temporal *tinstant_merge(const TInstant *inst1, const TInstant *inst2); +extern Temporal *tinstant_merge_array(TInstant **instants, int count); +extern Temporal *tsequence_append_tinstant(TSequence *seq, const TInstant *inst, double maxdist, const Interval *maxt, bool expand); +extern Temporal *tsequence_append_tsequence(const TSequence *seq1, const TSequence *seq2, bool expand); +extern Temporal *tsequence_delete_timestamptz(const TSequence *seq, TimestampTz t, bool connect); +extern Temporal *tsequence_delete_tstzset(const TSequence *seq, const Set *s, bool connect); +extern Temporal *tsequence_delete_tstzspan(const TSequence *seq, const Span *s, bool connect); +extern Temporal *tsequence_delete_tstzspanset(const TSequence *seq, const SpanSet *ss, bool connect); +extern Temporal *tsequence_insert(const TSequence *seq1, const TSequence *seq2, bool connect); +extern Temporal *tsequence_merge(const TSequence *seq1, const TSequence *seq2); +extern Temporal *tsequence_merge_array(TSequence **sequences, int count); +extern TSequenceSet *tsequenceset_append_tinstant(TSequenceSet *ss, const TInstant *inst, double maxdist, const Interval *maxt, bool expand); +extern TSequenceSet *tsequenceset_append_tsequence(TSequenceSet *ss, const TSequence *seq, bool expand); +extern TSequenceSet *tsequenceset_delete_timestamptz(const TSequenceSet *ss, TimestampTz t); +extern TSequenceSet *tsequenceset_delete_tstzset(const TSequenceSet *ss, const Set *s); +extern TSequenceSet *tsequenceset_delete_tstzspan(const TSequenceSet *ss, const Span *s); +extern TSequenceSet *tsequenceset_delete_tstzspanset(const TSequenceSet *ss, const SpanSet *ps); +extern TSequenceSet *tsequenceset_insert(const TSequenceSet *ss1, const TSequenceSet *ss2); +extern TSequenceSet *tsequenceset_merge(const TSequenceSet *ss1, const TSequenceSet *ss2); +extern TSequenceSet *tsequenceset_merge_array(TSequenceSet **seqsets, int count); + +/*****************************************************************************/ + +/* Bounding box functions for temporal types */ + +extern void tsequence_expand_bbox(TSequence *seq, const TInstant *inst); +extern void tsequence_set_bbox(const TSequence *seq, void *box); +extern void tsequenceset_expand_bbox(TSequenceSet *ss, const TSequence *seq); +extern void tsequenceset_set_bbox(const TSequenceSet *ss, void *box); + +/*****************************************************************************/ + +/* Restriction functions for temporal types */ + +extern TSequence *tcontseq_after_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tcontseq_before_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequenceSet *tcontseq_restrict_minmax(const TSequence *seq, bool min, bool atfunc); +extern TSequence *tdiscseq_after_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tdiscseq_before_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tdiscseq_restrict_minmax(const TSequence *seq, bool min, bool atfunc); +extern bool temporal_bbox_restrict_set(const Temporal *temp, const Set *set); +extern Temporal *temporal_restrict_minmax(const Temporal *temp, bool min, bool atfunc); +extern Temporal *temporal_restrict_timestamptz(const Temporal *temp, TimestampTz t, bool atfunc); +extern Temporal *temporal_restrict_tstzset(const Temporal *temp, const Set *s, bool atfunc); +extern Temporal *temporal_restrict_tstzspan(const Temporal *temp, const Span *s, bool atfunc); +extern Temporal *temporal_restrict_tstzspanset(const Temporal *temp, const SpanSet *ss, bool atfunc); +extern Temporal *temporal_restrict_value(const Temporal *temp, Datum value, bool atfunc); +extern Temporal *temporal_restrict_values(const Temporal *temp, const Set *set, bool atfunc); +extern bool temporal_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, Datum *result); +extern TInstant *tinstant_after_timestamptz(const TInstant *inst, TimestampTz t, bool strict); +extern TInstant *tinstant_before_timestamptz(const TInstant *inst, TimestampTz t, bool strict); +extern TInstant *tinstant_restrict_tstzspan(const TInstant *inst, const Span *period, bool atfunc); +extern TInstant *tinstant_restrict_tstzspanset(const TInstant *inst, const SpanSet *ss, bool atfunc); +extern TInstant *tinstant_restrict_timestamptz(const TInstant *inst, TimestampTz t, bool atfunc); +extern TInstant *tinstant_restrict_tstzset(const TInstant *inst, const Set *s, bool atfunc); +extern TInstant *tinstant_restrict_value(const TInstant *inst, Datum value, bool atfunc); +extern TInstant *tinstant_restrict_values(const TInstant *inst, const Set *set, bool atfunc); +extern Temporal *tnumber_restrict_span(const Temporal *temp, const Span *span, bool atfunc); +extern Temporal *tnumber_restrict_spanset(const Temporal *temp, const SpanSet *ss, bool atfunc); +extern TInstant *tnumberinst_restrict_span(const TInstant *inst, const Span *span, bool atfunc); +extern TInstant *tnumberinst_restrict_spanset(const TInstant *inst, const SpanSet *ss, bool atfunc); +extern TSequenceSet *tnumberseqset_restrict_span(const TSequenceSet *ss, const Span *span, bool atfunc); +extern TSequenceSet *tnumberseqset_restrict_spanset(const TSequenceSet *ss, const SpanSet *spanset, bool atfunc); +extern TInstant *tsequence_at_timestamptz(const TSequence *seq, TimestampTz t); +extern Temporal *tsequence_restrict_tstzspan(const TSequence *seq, const Span *s, bool atfunc); +extern Temporal *tsequence_restrict_tstzspanset(const TSequence *seq, const SpanSet *ss, bool atfunc); +extern TSequenceSet *tsequenceset_after_timestamptz(const TSequenceSet *ss, TimestampTz t, bool strict); +extern TSequenceSet *tsequenceset_before_timestamptz(const TSequenceSet *ss, TimestampTz t, bool strict); +extern TSequenceSet *tsequenceset_restrict_minmax(const TSequenceSet *ss, bool min, bool atfunc); +extern TSequenceSet *tsequenceset_restrict_tstzspan(const TSequenceSet *ss, const Span *s, bool atfunc); +extern TSequenceSet *tsequenceset_restrict_tstzspanset(const TSequenceSet *ss, const SpanSet *ps, bool atfunc); +extern Temporal *tsequenceset_restrict_timestamptz(const TSequenceSet *ss, TimestampTz t, bool atfunc); +extern Temporal *tsequenceset_restrict_tstzset(const TSequenceSet *ss, const Set *s, bool atfunc); +extern TSequenceSet *tsequenceset_restrict_value(const TSequenceSet *ss, Datum value, bool atfunc); +extern TSequenceSet *tsequenceset_restrict_values(const TSequenceSet *ss, const Set *s, bool atfunc); + +/*****************************************************************************/ + +/* Traditional comparison functions for temporal types */ + +extern int tinstant_cmp(const TInstant *inst1, const TInstant *inst2); +extern bool tinstant_eq(const TInstant *inst1, const TInstant *inst2); +extern int tsequence_cmp(const TSequence *seq1, const TSequence *seq2); +extern bool tsequence_eq(const TSequence *seq1, const TSequence *seq2); +extern int tsequenceset_cmp(const TSequenceSet *ss1, const TSequenceSet *ss2); +extern bool tsequenceset_eq(const TSequenceSet *ss1, const TSequenceSet *ss2); + +/*****************************************************************************/ + +/* Ever/always functions for temporal types */ + +extern int always_eq_base_temporal(Datum value, const Temporal *temp); +extern int always_eq_temporal_base(const Temporal *temp, Datum value); +extern int always_ne_base_temporal(Datum value, const Temporal *temp); +extern int always_ne_temporal_base(const Temporal *temp, Datum value); +extern int always_ge_base_temporal(Datum value, const Temporal *temp); +extern int always_ge_temporal_base(const Temporal *temp, Datum value); +extern int always_gt_base_temporal(Datum value, const Temporal *temp); +extern int always_gt_temporal_base(const Temporal *temp, Datum value); +extern int always_le_base_temporal(Datum value, const Temporal *temp); +extern int always_le_temporal_base(const Temporal *temp, Datum value); +extern int always_lt_base_temporal(Datum value, const Temporal *temp); +extern int always_lt_temporal_base(const Temporal *temp, Datum value); +extern int ever_eq_base_temporal(Datum value, const Temporal *temp); +extern int ever_eq_temporal_base(const Temporal *temp, Datum value); +extern int ever_ne_base_temporal(Datum value, const Temporal *temp); +extern int ever_ne_temporal_base(const Temporal *temp, Datum value); +extern int ever_ge_base_temporal(Datum value, const Temporal *temp); +extern int ever_ge_temporal_base(const Temporal *temp, Datum value); +extern int ever_gt_base_temporal(Datum value, const Temporal *temp); +extern int ever_gt_temporal_base(const Temporal *temp, Datum value); +extern int ever_le_base_temporal(Datum value, const Temporal *temp); +extern int ever_le_temporal_base(const Temporal *temp, Datum value); +extern int ever_lt_base_temporal(Datum value, const Temporal *temp); +extern int ever_lt_temporal_base(const Temporal *temp, Datum value); + +/*****************************************************************************/ + +/* Mathematical functions for temporal types */ + +extern TInstant *tnumberinst_abs(const TInstant *inst); +extern TSequence *tnumberseq_abs(const TSequence *seq); +extern TSequence *tnumberseq_angular_difference(const TSequence *seq); +extern TSequence *tnumberseq_delta_value(const TSequence *seq); +extern TSequenceSet *tnumberseqset_abs(const TSequenceSet *ss); +extern TSequence *tnumberseqset_angular_difference(const TSequenceSet *ss); +extern TSequenceSet *tnumberseqset_delta_value(const TSequenceSet *ss); + +/*****************************************************************************/ + +/* Distance functions for temporal types */ + +extern double distance_span_span_double(const Span *s1, const Span *s2); +extern double nad_tbox_tbox(const TBox *box1, const TBox *box2); +extern double nad_tnumber_number(const Temporal *temp, Datum value); +extern double nad_tnumber_tbox(const Temporal *temp, const TBox *box); +extern double nad_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tdistance_tnumber_number(const Temporal *temp, Datum value); +extern double tnumberinst_distance(const TInstant *inst1, const TInstant *inst2); + +/*****************************************************************************/ + +/* Local aggregate functions for temporal types */ + +extern double tnumberseq_integral(const TSequence *seq); +extern double tnumberseq_twavg(const TSequence *seq); +extern double tnumberseqset_integral(const TSequenceSet *ss); +extern double tnumberseqset_twavg(const TSequenceSet *ss); + +/*****************************************************************************/ + +/* Compact functions for final append aggregate */ + +extern Temporal *temporal_compact(const Temporal *temp); +extern TSequence *tsequence_compact(const TSequence *seq); +extern TSequenceSet *tsequenceset_compact(const TSequenceSet *ss); + +/*****************************************************************************/ + +/* Aggregate functions for temporal types */ + +extern SkipList *temporal_skiplist_make(); +extern SkipList *skiplist_make(size_t key_size, size_t value_size, + int (*comp_fn)(void *, void *), void *(*merge_fn)(void *, void *)); +extern int skiplist_search(SkipList *list, void *key, void *value); +extern void skiplist_free(SkipList *list); +extern void skiplist_splice(SkipList *list, void **keys, void **values, int count, datum_func2 func, bool crossings, SkipListType sktype); +extern void temporal_skiplist_splice(SkipList *list, void **values, int count, datum_func2 func, bool crossings); +extern void **skiplist_values(SkipList *list); +extern void **skiplist_keys_values(SkipList *list, void **values); + +extern Temporal *temporal_app_tinst_transfn(Temporal *state, const TInstant *inst, interpType interp, double maxdist, const Interval *maxt); +extern Temporal *temporal_app_tseq_transfn(Temporal *state, const TSequence *seq); + +/*****************************************************************************/ + +/* Tile functions for span and temporal types */ + +extern Span *span_bins(const Span *s, Datum size, Datum origin, int *count); +extern Span *spanset_bins(const SpanSet *ss, Datum size, Datum origin, int *count); +extern Span *tnumber_value_bins(const Temporal *temp, Datum size, Datum origin, int *count); +extern TBox *tnumber_value_time_boxes(const Temporal *temp, Datum vsize, const Interval *duration, Datum vorigin, TimestampTz torigin, int *count); +extern Temporal **tnumber_value_split(const Temporal *temp, Datum vsize, Datum vorigin, Datum **bins, int *count); +extern TBox *tbox_get_value_time_tile(Datum value, TimestampTz t, Datum vsize, const Interval *duration, Datum vorigin, TimestampTz torigin, MeosType basetype, MeosType spantype); +extern Temporal **tnumber_value_time_split(const Temporal *temp, Datum size, const Interval *duration, Datum vorigin, TimestampTz torigin, Datum **value_bins, TimestampTz **time_bins, int *count); + +/*****************************************************************************/ + +/* Similarity functions for temporal types */ + + +/*****************************************************************************/ + +#endif /* __MEOS_INTERNAL_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal_geo.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal_geo.h new file mode 100644 index 00000000..e9595545 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_internal_geo.h @@ -0,0 +1,303 @@ +/***************************************************************************** + * + * This MobilityDB code seq provided under The PostgreSQL License. + * Copyright(c) 2016-2023, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License(GPLv2 or later). + * Copyright(c) 2001-2023, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement seq hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Internal API of the Mobility Engine Open Source(MEOS) library. + */ + +#ifndef __MEOS_INTERNAL_GEO_H__ +#define __MEOS_INTERNAL_GEO_H__ + +/* C */ +#include +/* JSON-C */ +#include +/* PROJ */ +#include +/* PostgreSQL */ +/* MEOS */ +#include +#include +#include + +/***************************************************************************** + * Direct access to a single point in the GSERIALIZED struct + *****************************************************************************/ + +/* + * Obtain a geometry/geography point from the GSERIALIZED WITHOUT creating + * the corresponding LWGEOM. These functions constitute a **SERIOUS** + * break of encapsulation but it is the only way to achieve reasonable + * performance when manipulating mobility data. + * The datum_* functions suppose that the GSERIALIZED has been already + * detoasted. This is typically the case when the datum is within a Temporal* + * that has been already detoasted with PG_GETARG_TEMPORAL* + * The first variant (e.g. datum_point2d) is slower than the second (e.g. + * datum_point2d_p) since the point is passed by value and thus the bytes + * are copied. The second version is declared const because you aren't allowed + * to modify the values, only read them. + */ + +/** + * @brief Macro for accessing the GSERIALIZED value of a temporal point. + * @pre It is assumed that the geometry/geography IS NOT TOASTED + */ +#define DatumGetGserializedP(X) ((GSERIALIZED *) DatumGetPointer(X)) +#define GserializedPGetDatum(X) PointerGetDatum(X) + +/** + * @brief Definition for the internal aspects of the GSERIALIZED struct + */ +// #define LWFLAG_EXTFLAGS 0x20 +#define LWFLAG_VERSBIT2 0x80 + +// #define FLAGS_GET_EXTFLAGS(flags) (((flags) & LWFLAG_EXTFLAGS)>>5) +#define FLAGS_GET_VERSBIT2(flags) (((flags) & LWFLAG_VERSBIT2)>>7) + +#define GS_POINT_PTR(gs) ( (uint8_t *) ((gs)->data) + 8 + \ + FLAGS_GET_BBOX((gs)->gflags) * FLAGS_NDIMS_BOX((gs)->gflags) * 8 + \ + FLAGS_GET_VERSBIT2((gs)->gflags) * 8 ) + +/** + * @brief Return a pointer to a 2D/3DZ point from the datum/GSERIALIZED + */ +#define DATUM_POINT2D_P(gs) ( (POINT2D *) GS_POINT_PTR(DatumGetGserializedP(gs)) ) +#define DATUM_POINT3DZ_P(gs) ( (POINT3DZ *) GS_POINT_PTR(DatumGetGserializedP(gs)) ) + +#define GSERIALIZED_POINT2D_P(gs) ( (POINT2D *) GS_POINT_PTR((gs)) ) +#define GSERIALIZED_POINT3DZ_P(gs) ( (POINT3DZ *) GS_POINT_PTR((gs)) ) + +/***************************************************************************** + * Internal function accessing the PROJ library + *****************************************************************************/ + +extern PJ_CONTEXT *proj_get_context(void); + +/***************************************************************************** + * Round functions + *****************************************************************************/ + +extern Datum datum_geo_round(Datum value, Datum size); +extern GSERIALIZED *point_round(const GSERIALIZED *gs, int maxdd); + +/****************************************************************************** + * Functions for box types + *****************************************************************************/ + +/* Constructor functions for box types */ + +extern void stbox_set(bool hasx, bool hasz, bool geodetic, int32 srid, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, const Span *s, STBox *box); + +/*****************************************************************************/ + +/* Conversion functions for box types */ + +extern void gbox_set_stbox(const GBOX *box, int32_t srid, STBox *result); +extern bool geo_set_stbox(const GSERIALIZED *gs, STBox *box); +extern void geoarr_set_stbox(const Datum *values, int count, STBox *box); +extern bool spatial_set_stbox(Datum d, MeosType basetype, STBox *box); +extern void spatialset_set_stbox(const Set *set, STBox *box); +extern void stbox_set_box3d(const STBox *box, BOX3D *box3d); +extern void stbox_set_gbox(const STBox *box, GBOX *gbox); +extern void tstzset_set_stbox(const Set *s, STBox *box); +extern void tstzspan_set_stbox(const Span *s, STBox *box); +extern void tstzspanset_set_stbox(const SpanSet *s, STBox *box); + +/*****************************************************************************/ + +/* Transformation functions for box types */ + +extern void stbox_expand(const STBox *box1, STBox *box2); + +/*****************************************************************************/ + +/* Set functions for box types */ + +extern bool inter_stbox_stbox(const STBox *box1, const STBox *box2, STBox *result); +extern GSERIALIZED *stbox_geo(const STBox *box); + +/***************************************************************************** + * Functions for temporal types + *****************************************************************************/ + +/* Input and output functions */ + +extern TInstant *tgeogpointinst_from_mfjson(json_object *mfjson, int32_t srid); +extern TInstant *tgeogpointinst_in(const char *str); +extern TSequence *tgeogpointseq_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequence *tgeogpointseq_in(const char *str, interpType interp); +extern TSequenceSet *tgeogpointseqset_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequenceSet *tgeogpointseqset_in(const char *str); +extern TInstant *tgeompointinst_from_mfjson(json_object *mfjson, int32_t srid); +extern TInstant *tgeompointinst_in(const char *str); +extern TSequence *tgeompointseq_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequence *tgeompointseq_in(const char *str, interpType interp); +extern TSequenceSet *tgeompointseqset_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequenceSet *tgeompointseqset_in(const char *str); +extern TInstant *tgeographyinst_from_mfjson(json_object *mfjson, int32_t srid); +extern TInstant *tgeographyinst_in(const char *str); +extern TSequence *tgeographyseq_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequence *tgeographyseq_in(const char *str, interpType interp); +extern TSequenceSet *tgeographyseqset_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequenceSet *tgeographyseqset_in(const char *str); +extern TInstant *tgeometryinst_from_mfjson(json_object *mfjson, int32_t srid); +extern TInstant *tgeometryinst_in(const char *str); +extern TSequence *tgeometryseq_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequence *tgeometryseq_in(const char *str, interpType interp); +extern TSequenceSet *tgeometryseqset_from_mfjson(json_object *mfjson, int32_t srid, interpType interp); +extern TSequenceSet *tgeometryseqset_in(const char *str); + +/*****************************************************************************/ + +/* Constructor functions */ + +/*****************************************************************************/ + +/* Conversion functions */ + +/*****************************************************************************/ + +/* Accessor functions */ + +/*****************************************************************************/ + +/* Transformation functions */ + +/*****************************************************************************/ + +/* Modification functions */ + +/*****************************************************************************/ + +/* Bounding box functions */ + +extern void tspatial_set_stbox(const Temporal *temp, STBox *box); +extern void tgeoinst_set_stbox(const TInstant *inst, STBox *box); +extern void tspatialseq_set_stbox(const TSequence *seq, STBox *box); +extern void tspatialseqset_set_stbox(const TSequenceSet *ss, STBox *box); + +/*****************************************************************************/ + +/* Restriction functions */ + +extern Temporal *tgeo_restrict_elevation(const Temporal *temp, const Span *s, bool atfunc); +extern Temporal *tgeo_restrict_geom(const Temporal *temp, const GSERIALIZED *gs, bool atfunc); +extern Temporal *tgeo_restrict_stbox(const Temporal *temp, const STBox *box, bool border_inc, bool atfunc); +extern TInstant *tgeoinst_restrict_geom(const TInstant *inst, const GSERIALIZED *gs, bool atfunc); +extern TInstant *tgeoinst_restrict_stbox(const TInstant *inst, const STBox *box, bool border_inc, bool atfunc); +extern Temporal *tgeoseq_restrict_geom(const TSequence *seq, const GSERIALIZED *gs, bool atfunc); +extern Temporal *tgeoseq_restrict_stbox(const TSequence *seq, const STBox *box, bool border_inc, bool atfunc); +extern TSequenceSet *tgeoseqset_restrict_geom(const TSequenceSet *ss, const GSERIALIZED *gs, bool atfunc); +extern TSequenceSet *tgeoseqset_restrict_stbox(const TSequenceSet *ss, const STBox *box, bool border_inc, bool atfunc); + +/*****************************************************************************/ + +/* Traditional comparison functions */ + +/*****************************************************************************/ + +/* Ever/always functions */ + +/*****************************************************************************/ + +/* Mathematical functions */ + +/*****************************************************************************/ + +/* Distance functions */ + +/***************************************************************************** + * Spatial functions for temporal points + *****************************************************************************/ + +/* Spatial accessor functions for temporal points */ + +extern int32_t spatial_srid(Datum d, MeosType basetype); +extern bool spatial_set_srid(Datum d, MeosType basetype, int32_t srid); +extern int tspatialinst_srid(const TInstant *inst); +extern TSequenceSet *tpointseq_azimuth(const TSequence *seq); +extern TSequence *tpointseq_cumulative_length(const TSequence *seq, double prevlength); +extern bool tpointseq_is_simple(const TSequence *seq); +extern double tpointseq_length(const TSequence *seq); +extern GSERIALIZED *tpointseq_linear_trajectory(const TSequence *seq, bool unary_union); +extern STBox *tgeoseq_stboxes(const TSequence *seq, int *count); +extern STBox *tgeoseq_split_n_stboxes(const TSequence *seq, int max_count, int *count); +extern TSequenceSet *tpointseqset_azimuth(const TSequenceSet *ss); +extern TSequenceSet *tpointseqset_cumulative_length(const TSequenceSet *ss); +extern bool tpointseqset_is_simple(const TSequenceSet *ss); +extern double tpointseqset_length(const TSequenceSet *ss); +extern STBox *tgeoseqset_stboxes(const TSequenceSet *ss, int *count); +extern STBox *tgeoseqset_split_n_stboxes(const TSequenceSet *ss, int max_count, int *count); +extern Temporal *tpoint_get_coord(const Temporal *temp, int coord); + +/*****************************************************************************/ + +/* Spatial transformation functions for temporal points */ + +extern TInstant *tgeominst_tgeoginst(const TInstant *inst, bool oper); +extern TSequence *tgeomseq_tgeogseq(const TSequence *seq, bool oper); +extern TSequenceSet *tgeomseqset_tgeogseqset(const TSequenceSet *ss, bool oper); +extern Temporal *tgeom_tgeog(const Temporal *temp, bool oper); +extern Temporal *tgeo_tpoint(const Temporal *temp, bool oper); +extern void tspatialinst_set_srid(TInstant *inst, int32_t srid); +extern TSequence **tpointseq_make_simple(const TSequence *seq, int *count); +extern void tspatialseq_set_srid(TSequence *seq, int32_t srid); +extern TSequence **tpointseqset_make_simple(const TSequenceSet *ss, int *count); +extern void tspatialseqset_set_srid(TSequenceSet *ss, int32_t srid); + +/*****************************************************************************/ + +/* Local aggregate functions */ + +extern GSERIALIZED *tpointseq_twcentroid(const TSequence *seq); +extern GSERIALIZED *tpointseqset_twcentroid(const TSequenceSet *ss); + +/*****************************************************************************/ + +/* Compact functions for final append aggregate */ + + +/*****************************************************************************/ + +/* Aggregate functions */ + + +/*****************************************************************************/ + +/* Tile functions for span and temporal types */ + + +/*****************************************************************************/ + +/* Similarity functions */ + + +/*****************************************************************************/ + +#endif /* __MEOS_INTERNAL_GEO_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_npoint.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_npoint.h new file mode 100644 index 00000000..69835244 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_npoint.h @@ -0,0 +1,330 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief API of the Mobility Engine Open Source (MEOS) library. + */ + +#ifndef __MEOS_NPOINT_H__ +#define __MEOS_NPOINT_H__ + +/* C */ +#include +#include +/* MEOS */ +#include +#include +#include + +/***************************************************************************** + * Type definitions + *****************************************************************************/ + +/* Structure to represent network-based points */ + +typedef struct +{ + int64 rid; /**< route identifier */ + double pos; /**< position */ +} Npoint; + +/* Structure to represent network-based segments */ + +typedef struct +{ + int64 rid; /**< route identifier */ + double pos1; /**< position1 */ + double pos2; /**< position2 */ +} Nsegment; + +/***************************************************************************** + * Validity macros and functions + *****************************************************************************/ + +/** + * @brief Macro for ensuring that the set passed as argument is a network + * point set + */ +#if MEOS + #define VALIDATE_NPOINTSET(set, ret) \ + do { \ + if (! ensure_not_null((void *) (set)) || \ + ! ensure_set_isof_type((set), T_NPOINTSET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_NPOINTSET(set, ret) \ + do { \ + assert(set); \ + assert(set->settype == T_NPOINTSET); \ + } while (0) +#endif /* MEOS */ + +/** + * @brief Macro for ensuring that the temporal value passed as argument is a + * temporal network point + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TNPOINT(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TNPOINT) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TNPOINT(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TNPOINT); \ + } while (0) +#endif /* MEOS */ + +/****************************************************************************** + * Functions for network points + ******************************************************************************/ + +/* Input and output functions */ + +extern char *npoint_as_ewkt(const Npoint *np, int maxdd); +extern char *npoint_as_hexwkb(const Npoint *np, uint8_t variant, size_t *size_out); +extern char *npoint_as_text(const Npoint *np, int maxdd); +extern uint8_t *npoint_as_wkb(const Npoint *np, uint8_t variant, size_t *size_out); +extern Npoint *npoint_from_hexwkb(const char *hexwkb); +extern Npoint *npoint_from_wkb(const uint8_t *wkb, size_t size); +extern Npoint *npoint_in(const char *str); +extern char *npoint_out(const Npoint *np, int maxdd); +extern Nsegment *nsegment_in(const char *str); +extern char *nsegment_out(const Nsegment *ns, int maxdd); + +/* Constructor functions */ + +extern Npoint *npoint_make(int64 rid, double pos); +extern Nsegment *nsegment_make(int64 rid, double pos1, double pos2); + +/* Conversion functions */ + +extern Npoint *geompoint_to_npoint(const GSERIALIZED *gs); +extern Nsegment *geom_to_nsegment(const GSERIALIZED *gs); +extern GSERIALIZED *npoint_to_geompoint(const Npoint *np); +extern Nsegment *npoint_to_nsegment(const Npoint *np); +extern STBox *npoint_to_stbox(const Npoint *np); +extern GSERIALIZED *nsegment_to_geom(const Nsegment *ns); +extern STBox *nsegment_to_stbox(const Nsegment *np); + +/* Accessor functions */ + +extern uint32 npoint_hash(const Npoint *np); +extern uint64 npoint_hash_extended(const Npoint *np, uint64 seed); +extern double npoint_position(const Npoint *np); +extern int64 npoint_route(const Npoint *np); +extern double nsegment_end_position(const Nsegment *ns); +extern int64 nsegment_route(const Nsegment *ns); +extern double nsegment_start_position(const Nsegment *ns); + +/* Route functions */ + +extern bool route_exists(int64 rid); +extern const GSERIALIZED *route_geom(int64 rid); +extern double route_length(int64 rid); + +/* Transformation functions */ + +extern Npoint *npoint_round(const Npoint *np, int maxdd); +extern Nsegment *nsegment_round(const Nsegment *ns, int maxdd); + +/* Spatial reference system functions */ + +extern int32_t get_srid_ways(void); +extern int32_t npoint_srid(const Npoint *np); +extern int32_t nsegment_srid(const Nsegment *ns); + +/* Bounding box functions */ + +extern STBox *npoint_timestamptz_to_stbox(const Npoint *np, TimestampTz t); +extern STBox *npoint_tstzspan_to_stbox(const Npoint *np, const Span *s); + +/* Comparison functions */ + +extern int npoint_cmp(const Npoint *np1, const Npoint *np2); +extern bool npoint_eq(const Npoint *np1, const Npoint *np2); +extern bool npoint_ge(const Npoint *np1, const Npoint *np2); +extern bool npoint_gt(const Npoint *np1, const Npoint *np2); +extern bool npoint_le(const Npoint *np1, const Npoint *np2); +extern bool npoint_lt(const Npoint *np1, const Npoint *np2); +extern bool npoint_ne(const Npoint *np1, const Npoint *np2); +extern bool npoint_same(const Npoint *np1, const Npoint *np2); +extern int nsegment_cmp(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_eq(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_ge(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_gt(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_le(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_lt(const Nsegment *ns1, const Nsegment *ns2); +extern bool nsegment_ne(const Nsegment *ns1, const Nsegment *ns2); + +/****************************************************************************** + * Functions for network point sets + ******************************************************************************/ + +/* Input and output functions */ + +extern Set *npointset_in(const char *str); +extern char *npointset_out(const Set *s, int maxdd); + +/* Constructor functions */ + +extern Set *npointset_make(Npoint **values, int count); + +/* Conversion functions */ + +extern Set *npoint_to_set(const Npoint *np); + +/* Accessor functions */ + +extern Npoint *npointset_end_value(const Set *s); +extern Set *npointset_routes(const Set *s); +extern Npoint *npointset_start_value(const Set *s); +extern bool npointset_value_n(const Set *s, int n, Npoint **result); +extern Npoint **npointset_values(const Set *s); + +/* Set operations */ + +extern bool contained_npoint_set(const Npoint *np, const Set *s); +extern bool contains_set_npoint(const Set *s, const Npoint *np); +extern Set *intersection_npoint_set(const Npoint *np, const Set *s); +extern Set *intersection_set_npoint(const Set *s, const Npoint *np); +extern Set *minus_npoint_set(const Npoint *np, const Set *s); +extern Set *minus_set_npoint(const Set *s, const Npoint *np); +extern Set *npoint_union_transfn(Set *state, const Npoint *np); +extern Set *union_npoint_set(const Npoint *np, const Set *s); +extern Set *union_set_npoint(const Set *s, const Npoint *np); + +/*===========================================================================* + * Functions for temporal network points + *===========================================================================*/ + +/***************************************************************************** + * Input/output functions + *****************************************************************************/ + +extern Temporal *tnpoint_in(const char *str); +extern Temporal *tnpoint_from_mfjson(const char *mfjson); +extern char *tnpoint_out(const Temporal *temp, int maxdd); + +/***************************************************************************** + * Constructor functions + *****************************************************************************/ + +extern TInstant *tnpointinst_make(const Npoint *np, TimestampTz t); + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +extern Temporal *tgeompoint_to_tnpoint(const Temporal *temp); +extern Temporal *tnpoint_to_tgeompoint(const Temporal *temp); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +extern Temporal *tnpoint_cumulative_length(const Temporal *temp); +extern double tnpoint_length(const Temporal *temp); +extern Nsegment **tnpoint_positions(const Temporal *temp, int *count); +extern int64 tnpoint_route(const Temporal *temp); +extern Set *tnpoint_routes(const Temporal *temp); +extern Temporal *tnpoint_speed(const Temporal *temp); +extern GSERIALIZED *tnpoint_trajectory(const Temporal *temp); +extern GSERIALIZED *tnpoint_twcentroid(const Temporal *temp); + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +extern Temporal *tnpoint_at_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tnpoint_at_npoint(const Temporal *temp, const Npoint *np); +extern Temporal *tnpoint_at_npointset(const Temporal *temp, const Set *s); +extern Temporal *tnpoint_at_stbox(const Temporal *temp, const STBox *box, bool border_inc); +extern Temporal *tnpoint_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tnpoint_minus_npoint(const Temporal *temp, const Npoint *np); +extern Temporal *tnpoint_minus_npointset(const Temporal *temp, const Set *s); +extern Temporal *tnpoint_minus_stbox(const Temporal *temp, const STBox *box, bool border_inc); + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +extern Temporal *tdistance_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern Temporal *tdistance_tnpoint_point(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdistance_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern double nad_tnpoint_geo(const Temporal *temp, const GSERIALIZED *gs); +extern double nad_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern double nad_tnpoint_stbox(const Temporal *temp, const STBox *box); +extern double nad_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_tnpoint_geo(const Temporal *temp, const GSERIALIZED *gs); +extern TInstant *nai_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern TInstant *nai_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_tnpoint_geo(const Temporal *temp, const GSERIALIZED *gs); +extern GSERIALIZED *shortestline_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern GSERIALIZED *shortestline_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Aggregate functions + *****************************************************************************/ + +extern SkipList *tnpoint_tcentroid_transfn(SkipList *state, Temporal *temp); + +/***************************************************************************** + * Comparison functions + *****************************************************************************/ + +/* Ever/always comparisons */ + +extern int always_eq_npoint_tnpoint(const Npoint *np, const Temporal *temp); +extern int always_eq_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern int always_eq_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_npoint_tnpoint(const Npoint *np, const Temporal *temp); +extern int always_ne_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern int always_ne_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_npoint_tnpoint(const Npoint *np, const Temporal *temp); +extern int ever_eq_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern int ever_eq_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_npoint_tnpoint(const Npoint *np, const Temporal *temp); +extern int ever_ne_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern int ever_ne_tnpoint_tnpoint(const Temporal *temp1, const Temporal *temp2); + +/* Temporal comparisons */ + +extern Temporal *teq_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern Temporal *tne_tnpoint_npoint(const Temporal *temp, const Npoint *np); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_pose.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_pose.h new file mode 100644 index 00000000..c9709cef --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_pose.h @@ -0,0 +1,305 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief External API of the Mobility Engine Open Source (MEOS) library + */ + +#ifndef __MEOS_POSE_H__ +#define __MEOS_POSE_H__ + +/* C */ +#include +#include +/* MEOS */ +#include +#include + +/***************************************************************************** + * Struct definitions + *****************************************************************************/ + +/** + * Opaque structure to represent pose values + */ +typedef struct Pose Pose; + +/***************************************************************************** + * Validity macros + *****************************************************************************/ + +/** + * @brief Macro for ensuring that the set passed as argument is a pose set + */ +#if MEOS + #define VALIDATE_POSESET(set, ret) \ + do { \ + if (! ensure_not_null((void *) set) || \ + ! ensure_set_isof_type((set), T_POSESET) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_POSESET(set, ret) \ + do { \ + assert(set); \ + assert((set)->settype == T_POSESET); \ + } while (0) +#endif + +/** + * @brief Macro for ensuring that the temporal value passed as argument is a + * temporal pose + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TPOSE(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TPOSE) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TPOSE(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TPOSE); \ + } while (0) +#endif + +/****************************************************************************** + * Functions for poses + ******************************************************************************/ + +/* Input and output functions */ + +extern char *pose_as_ewkt(const Pose *pose, int maxdd); +extern char *pose_as_hexwkb(const Pose *pose, uint8_t variant, size_t *size); +extern char *pose_as_text(const Pose *pose, int maxdd); +extern uint8_t *pose_as_wkb(const Pose *pose, uint8_t variant, size_t *size_out); +extern Pose *pose_from_wkb(const uint8_t *wkb, size_t size); +extern Pose *pose_from_hexwkb(const char *hexwkb); +extern Pose *pose_in(const char *str); +extern char *pose_out(const Pose *pose, int maxdd); + +/* Constructor functions */ + +extern Pose *pose_copy(const Pose *pose); +extern Pose *pose_make_2d(double x, double y, double theta, int32_t srid); +extern Pose *pose_make_3d(double x, double y, double z, double W, double X, double Y, double Z, int32_t srid); +extern Pose *pose_make_point2d(const GSERIALIZED *gs, double theta); +extern Pose *pose_make_point3d(const GSERIALIZED *gs, double W, double X, double Y, double Z); + +/* Conversion functions */ + +extern GSERIALIZED *pose_to_point(const Pose *pose); +extern STBox *pose_to_stbox(const Pose *pose); + +/* Accessor functions */ + +extern uint32 pose_hash(const Pose *pose); +extern uint64 pose_hash_extended(const Pose *pose, uint64 seed); +extern double *pose_orientation(const Pose *pose); +extern double pose_rotation(const Pose *pose); + +/* Transformation functions */ + +extern Pose *pose_round(const Pose *pose, int maxdd); +extern Pose **posearr_round(const Pose **posearr, int count, int maxdd); + +/* Spatial reference system functions */ + +extern void pose_set_srid(Pose *pose, int32_t srid); +extern int32_t pose_srid(const Pose *pose); +extern Pose *pose_transform(const Pose *pose, int32_t srid); +extern Pose *pose_transform_pipeline(const Pose *pose, const char *pipelinestr, int32_t srid, bool is_forward); + +/* Bounding box functions */ + +extern STBox *pose_tstzspan_to_stbox(const Pose *pose, const Span *s); +extern STBox *pose_timestamptz_to_stbox(const Pose *pose, TimestampTz t); + +/* Distance functions */ + +extern double distance_pose_geo(const Pose *pose, const GSERIALIZED *gs); +extern double distance_pose_pose(const Pose *pose1, const Pose *pose2); +extern double distance_pose_stbox(const Pose *pose, const STBox *box); + +/* Comparison functions */ + +extern int pose_cmp(const Pose *pose1, const Pose *pose2); +extern bool pose_eq(const Pose *pose1, const Pose *pose2); +extern bool pose_ge(const Pose *pose1, const Pose *pose2); +extern bool pose_gt(const Pose *pose1, const Pose *pose2); +extern bool pose_le(const Pose *pose1, const Pose *pose2); +extern bool pose_lt(const Pose *pose1, const Pose *pose2); +extern bool pose_ne(const Pose *pose1, const Pose *pose2); +extern bool pose_nsame(const Pose *pose1, const Pose *pose2); +extern bool pose_same(const Pose *pose1, const Pose *pose2); + +/****************************************************************************** + * Functions for pose sets + ******************************************************************************/ + +/* Input and output functions */ + +extern Set *poseset_in(const char *str); +extern char *poseset_out(const Set *s, int maxdd); + +/* Constructor functions */ + +extern Set *poseset_make(const Pose **values, int count); + +/* Conversion functions */ + +extern Set *pose_to_set(const Pose *pose); + +/* Accessor functions */ + +extern Pose *poseset_end_value(const Set *s); +extern Pose *poseset_start_value(const Set *s); +extern bool poseset_value_n(const Set *s, int n, Pose **result); +extern Pose **poseset_values(const Set *s); + +/* Set operations */ + +extern bool contained_pose_set(const Pose *pose, const Set *s); +extern bool contains_set_pose(const Set *s, Pose *pose); +extern Set *intersection_pose_set(const Pose *pose, const Set *s); +extern Set *intersection_set_pose(const Set *s, const Pose *pose); +extern Set *minus_pose_set(const Pose *pose, const Set *s); +extern Set *minus_set_pose(const Set *s, const Pose *pose); +extern Set *pose_union_transfn(Set *state, const Pose *pose); +extern Set *union_pose_set(const Pose *pose, const Set *s); +extern Set *union_set_pose(const Set *s, const Pose *pose); + +/*===========================================================================* + * Functions for temporal poses + *===========================================================================*/ + +/***************************************************************************** + * Input/output functions + *****************************************************************************/ + +Temporal *tpose_in(const char *str); + +/***************************************************************************** + * Constructor functions + *****************************************************************************/ + + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +extern Temporal *tpose_make(const Temporal *tpoint, const Temporal *tradius); +extern Temporal *tpose_to_tpoint(const Temporal *temp); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +extern Pose *tpose_end_value(const Temporal *temp); +extern Set *tpose_points(const Temporal *temp); +// extern Temporal *tpose_orientation(const Temporal *temp); +extern Temporal *tpose_rotation(const Temporal *temp); +extern Pose *tpose_start_value(const Temporal *temp); +extern GSERIALIZED *tpose_trajectory(const Temporal *temp); +extern bool tpose_value_at_timestamptz(const Temporal *temp, TimestampTz t, bool strict, Pose **value); +extern bool tpose_value_n(const Temporal *temp, int n, Pose **result); +extern Pose **tpose_values(const Temporal *temp, int *count); + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +extern Temporal *tpose_at_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tpose_at_stbox(const Temporal *temp, const STBox *box, bool border_inc); +extern Temporal *tpose_at_pose(const Temporal *temp, const Pose *pose); +extern Temporal *tpose_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tpose_minus_pose(const Temporal *temp, const Pose *pose); +extern Temporal *tpose_minus_stbox(const Temporal *temp, const STBox *box, bool border_inc); + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +extern Temporal *tdistance_tpose_pose(const Temporal *temp, const Pose *pose); +extern Temporal *tdistance_tpose_point(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdistance_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern double nad_tpose_geo(const Temporal *temp, const GSERIALIZED *gs); +extern double nad_tpose_pose(const Temporal *temp, const Pose *pose); +extern double nad_tpose_stbox(const Temporal *temp, const STBox *box); +extern double nad_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_tpose_geo(const Temporal *temp, const GSERIALIZED *gs); +extern TInstant *nai_tpose_pose(const Temporal *temp, const Pose *pose); +extern TInstant *nai_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_tpose_geo(const Temporal *temp, const GSERIALIZED *gs); +extern GSERIALIZED *shortestline_tpose_pose(const Temporal *temp, const Pose *pose); +extern GSERIALIZED *shortestline_tpose_tpose(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Comparison functions + *****************************************************************************/ + +/* Ever/always and temporal comparison functions */ + +extern int always_eq_pose_tpose(const Pose *pose, const Temporal *temp); +extern int always_eq_tpose_pose(const Temporal *temp, const Pose *pose); +extern int always_eq_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_pose_tpose(const Pose *pose, const Temporal *temp); +extern int always_ne_tpose_pose(const Temporal *temp, const Pose *pose); +extern int always_ne_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_pose_tpose(const Pose *pose, const Temporal *temp); +extern int ever_eq_tpose_pose(const Temporal *temp, const Pose *pose); +extern int ever_eq_tpose_tpose(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_pose_tpose(const Pose *pose, const Temporal *temp); +extern int ever_ne_tpose_pose(const Temporal *temp, const Pose *pose); +extern int ever_ne_tpose_tpose(const Temporal *temp1, const Temporal *temp2); + +/*****************************************************************************/ + +extern Temporal *teq_pose_tpose(const Pose *pose, const Temporal *temp); +extern Temporal *teq_tpose_pose(const Temporal *temp, const Pose *pose); +extern Temporal *tne_pose_tpose(const Pose *pose, const Temporal *temp); +extern Temporal *tne_tpose_pose(const Temporal *temp, const Pose *pose); + +/*****************************************************************************/ + +/* Ever and always spatial relationship functions */ + + +/*****************************************************************************/ + +/* Spatiotemporal relationship functions */ + + +/*****************************************************************************/ + +#endif /* __MEOS_POSE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_rgeo.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_rgeo.h new file mode 100644 index 00000000..bcfc7f4a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_rgeo.h @@ -0,0 +1,206 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURRGEO. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief External API of the Mobility Engine Open Source (MEOS) library + */ + +#ifndef __MEOS_RGEO_H__ +#define __MEOS_RGEO_H__ + +/* C */ +#include +/* MEOS */ +#include +#include +#include + +/***************************************************************************** + * Validity macros + *****************************************************************************/ + +/** + * @brief Macro for ensuring that the temporal value passed as argument is a + * temporal rigid geometry + * @note The macro works for the Temporal type and its subtypes TInstant, + * TSequence, and TSequenceSet + */ +#if MEOS + #define VALIDATE_TRGEOMETRY(temp, ret) \ + do { \ + if (! ensure_not_null((void *) (temp)) || \ + ! ensure_temporal_isof_type((Temporal *) (temp), T_TRGEOMETRY) ) \ + return (ret); \ + } while (0) +#else + #define VALIDATE_TRGEOMETRY(temp, ret) \ + do { \ + assert(temp); \ + assert(((Temporal *) (temp))->temptype == T_TRGEOMETRY); \ + } while (0) +#endif + +/*===========================================================================* + * Functions for temporal rigid geometries + *===========================================================================*/ + +/***************************************************************************** + * Input/output functions + *****************************************************************************/ + +extern char *trgeo_out(const Temporal *temp); + +/***************************************************************************** + * Constructor functions + *****************************************************************************/ + +extern TInstant *trgeoinst_make(const GSERIALIZED *geom, const Pose *pose, TimestampTz t); +extern Temporal *geo_tpose_to_trgeo(const GSERIALIZED *gs, const Temporal *temp); + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +extern Temporal *trgeo_to_tpose(const Temporal *temp); +extern Temporal *trgeo_to_tpoint(const Temporal *temp); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +extern TInstant *trgeo_end_instant(const Temporal *temp); +extern TSequence *trgeo_end_sequence(const Temporal *temp); +extern GSERIALIZED *trgeo_end_value(const Temporal *temp); +extern GSERIALIZED *trgeo_geom(const Temporal *temp); +extern TInstant *trgeo_instant_n(const Temporal *temp, int n); +extern TInstant **trgeo_instants(const Temporal *temp, int *count); +extern Set *trgeo_points(const Temporal *temp); +extern Temporal *trgeo_rotation(const Temporal *temp); +extern TSequence **trgeo_segments(const Temporal *temp, int *count); +extern TSequence *trgeo_sequence_n(const Temporal *temp, int i); +extern TSequence **trgeo_sequences(const Temporal *temp, int *count); +extern TInstant *trgeo_start_instant(const Temporal *temp); +extern TSequence *trgeo_start_sequence(const Temporal *temp); +extern GSERIALIZED *trgeo_start_value(const Temporal *temp); +extern bool trgeo_value_n(const Temporal *temp, int n, GSERIALIZED **result); +extern GSERIALIZED *trgeo_traversed_area(const Temporal *temp, bool unary_union); + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +extern Temporal *trgeo_append_tinstant(Temporal *temp, const TInstant *inst, interpType interp, double maxdist, const Interval *maxt, bool expand); +extern Temporal *trgeo_append_tsequence(Temporal *temp, const TSequence *seq, bool expand); +extern Temporal *trgeo_delete_timestamptz(const Temporal *temp, TimestampTz t, bool connect); +extern Temporal *trgeo_delete_tstzset(const Temporal *temp, const Set *s, bool connect); +extern Temporal *trgeo_delete_tstzspan(const Temporal *temp, const Span *s, bool connect); +extern Temporal *trgeo_delete_tstzspanset(const Temporal *temp, const SpanSet *ss, bool connect); +extern Temporal *trgeo_round(const Temporal *temp, int maxdd); +extern Temporal *trgeo_set_interp(const Temporal *temp, interpType interp); +extern TInstant *trgeo_to_tinstant(const Temporal *temp); + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +extern Temporal *trgeo_after_timestamptz(const Temporal *temp, TimestampTz t, bool strict); +extern Temporal *trgeo_before_timestamptz(const Temporal *temp, TimestampTz t, bool strict); + +extern Temporal *trgeo_restrict_value(const Temporal *temp, Datum value, bool atfunc); +extern Temporal *trgeo_restrict_values(const Temporal *temp, const Set *s, bool atfunc); + +extern Temporal *trgeo_restrict_timestamptz(const Temporal *temp, TimestampTz t, bool atfunc); +extern Temporal *trgeo_restrict_tstzset(const Temporal *temp, const Set *s, bool atfunc); +extern Temporal *trgeo_restrict_tstzspan(const Temporal *temp, const Span *s, bool atfunc); +extern Temporal *trgeo_restrict_tstzspanset(const Temporal *temp, const SpanSet *ss, bool atfunc); + +// extern Temporal *trgeo_at_geom(const Temporal *temp, const GSERIALIZED *gs); +// extern Temporal *trgeo_at_geo(const Temporal *temp, const GSERIALIZED *gs); +// extern Temporal *trgeo_at_stbox(const Temporal *temp, const STBox *box, bool border_inc); +// extern Temporal *trgeo_at_elevation(const Temporal *temp, const Span *s); +// extern Temporal *trgeo_minus_geom(const Temporal *temp, const GSERIALIZED *gs); +// extern Temporal *trgeo_minus_geo(const Temporal *temp, const GSERIALIZED *gs); +// extern Temporal *trgeo_minus_stbox(const Temporal *temp, const STBox *box, bool border_inc); +// extern Temporal *trgeo_minus_elevation(const Temporal *temp, const Span *s); + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +extern Temporal *tdistance_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tdistance_trgeo_tpoint(const Temporal *temp1, const Temporal *temp2); +extern Temporal *tdistance_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern double nad_stbox_trgeo(const STBox *box, const Temporal *temp); +extern double nad_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern double nad_trgeo_stbox(const Temporal *temp, const STBox *box); +extern double nad_trgeo_tpoint(const Temporal *temp1, const Temporal *temp2); +extern double nad_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern TInstant *nai_trgeo_tpoint(const Temporal *temp1, const Temporal *temp2); +extern TInstant *nai_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern GSERIALIZED *shortestline_trgeo_tpoint(const Temporal *temp1, const Temporal *temp2); +extern GSERIALIZED *shortestline_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); + +/***************************************************************************** + * Comparison functions + *****************************************************************************/ + +/* Ever/always and temporal comparison functions */ + +extern int always_eq_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int always_eq_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int always_eq_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern int always_ne_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int always_ne_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int always_ne_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern int ever_eq_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int ever_eq_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ever_eq_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern int ever_ne_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern int ever_ne_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern int ever_ne_trgeo_trgeo(const Temporal *temp1, const Temporal *temp2); +extern Temporal *teq_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *teq_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); +extern Temporal *tne_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp); +extern Temporal *tne_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs); + +/*****************************************************************************/ + +/* Ever and always spatial relationship functions */ + + +/*****************************************************************************/ + +/* Spatiotemporal relationship functions */ + + +/*****************************************************************************/ + +#endif /* __MEOS_RGEO_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/meos_tls.h b/jmeos-core/tools/parity/meos-ref/meos/include/meos_tls.h new file mode 100644 index 00000000..ded25d8d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/meos_tls.h @@ -0,0 +1,60 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2026, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Thread-local-storage qualifier macro used by MEOS to mark + * per-thread state. Kept in a stand-alone header so that vendored + * PostgreSQL headers (e.g. pgtime.h) can pick it up without pulling in + * the full meos.h. + */ + +#ifndef __MEOS_TLS_H__ +#define __MEOS_TLS_H__ + +/* + * Thread-local storage qualifier. C11 _Thread_local is supported by GCC, + * Clang, and MSVC 2019 16.10+; older compilers fall back to vendor + * extensions. If none of these is available the macro expands to + * nothing and MEOS state remains process-global (legacy behaviour). + */ +#if defined(__cplusplus) && __cplusplus >= 201103L +#define MEOS_TLS thread_local +#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && \ + !defined(__STDC_NO_THREADS__) +#define MEOS_TLS _Thread_local +#elif defined(_MSC_VER) +#define MEOS_TLS __declspec(thread) +#elif defined(__GNUC__) || defined(__clang__) || defined(__INTEL_COMPILER) +#define MEOS_TLS __thread +#else +#define MEOS_TLS /* not supported; falls back to non-thread-safe globals */ +#endif + +#endif /* __MEOS_TLS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_internal_npoint.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_internal_npoint.h new file mode 100644 index 00000000..4c0b46b0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_internal_npoint.h @@ -0,0 +1,116 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_internal_npoint_base Functions for static network points + * @ingroup meos_internal_npoint + * @brief Functions for static network points + * + * @defgroup meos_internal_npoint_set Functions for network point sets + * @ingroup meos_internal_npoint + * @brief Functions for network point sets + * + * @defgroup meos_internal_npoint_inout Input and output functions + * @ingroup meos_internal_npoint + * @brief Input and output functions for temporal network points + * + * @defgroup meos_internal_npoint_conversion Conversion functions + * @ingroup meos_internal_npoint + * @brief Conversion functions for temporal network points + * + * @defgroup meos_internal_npoint_accessor Accessor functions + * @ingroup meos_internal_npoint + * @brief Accessor functions for temporal network points + * + * @defgroup meos_internal_npoint_restrict Restriction functions + * @ingroup meos_internal_npoint + * @brief Restriction functions for temporal network points + * + * @defgroup meos_internal_npoint_dist Distance functions + * @ingroup meos_internal_npoint + * @brief Distance functions for temporal network points + * + * @defgroup meos_internal_npoint_agg Aggregate functions + * @ingroup meos_internal_npoint + * @brief Aggregate functions for temporal network points + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_npoint_base_inout Input and output functions + * @ingroup meos_internal_npoint_base + * @brief Input and output functions for static network points + * + * @defgroup meos_internal_npoint_base_constructor Constructor functions + * @ingroup meos_internal_npoint_base + * @brief Constructor functions for static network points + * + * @defgroup meos_internal_npoint_base_conversion Conversion functions + * @ingroup meos_internal_npoint_base + * @brief Conversion functions for static network points + * + * @defgroup meos_internal_npoint_base_accessor Accessor functions + * @ingroup meos_internal_npoint_base + * @brief Accessor functions for static network points + * + * @defgroup meos_internal_npoint_base_transf Transformation functions + * @ingroup meos_internal_npoint_base + * @brief Transformation functions for static network points + * + * @defgroup meos_internal_npoint_base_comp Comparison functions + * @ingroup meos_internal_npoint_base + * @brief Comparison functions for static network points + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_npoint_set_inout Input and output functions + * @ingroup meos_internal_npoint_set + * @brief Input and output functions for network point sets + * + * @defgroup meos_internal_npoint_set_constructor Constructor functions + * @ingroup meos_internal_npoint_set + * @brief Constructor functions for network point sets + * + * @defgroup meos_internal_npoint_set_conversion Conversion functions + * @ingroup meos_internal_npoint_set + * @brief Conversion functions for network point sets + * + * @defgroup meos_internal_npoint_set_accessor Accessor functions + * @ingroup meos_internal_npoint_set + * @brief Accessor functions for network point sets + * + * @defgroup meos_internal_npoint_set_setops Set operations + * @ingroup meos_internal_npoint_set + * @brief Set operations for network point sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_npoint.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_npoint.h new file mode 100644 index 00000000..e7c1c10a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/doxygen_meos_npoint.h @@ -0,0 +1,136 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_npoint_base Functions for static network points + * @ingroup meos_npoint + * @brief Functions for static network points + * + * @defgroup meos_npoint_set Functions for network point sets + * @ingroup meos_npoint + * @brief Functions for network point sets + * + * @defgroup meos_npoint_inout Input and output functions + * @ingroup meos_npoint + * @brief Input and output functions for temporal network points + * + * @defgroup meos_npoint_conversion Conversion functions + * @ingroup meos_npoint + * @brief Conversion functions for temporal network points + * + * @defgroup meos_npoint_accessor Accessor functions + * @ingroup meos_npoint + * @brief Accessor functions for temporal network points + * + * @defgroup meos_npoint_restrict Restriction functions + * @ingroup meos_npoint + * @brief Restriction functions for temporal network points + * + * @defgroup meos_npoint_dist Distance functions + * @ingroup meos_npoint + * @brief Distance functions for temporal network points + * + * @defgroup meos_npoint_agg Aggregate functions + * @ingroup meos_npoint + * @brief Aggregate functions for temporal network points + * + * @defgroup meos_npoint_comp Comparison functions + * @ingroup meos_npoint + * @brief Comparison functions for temporal network points + * + * @defgroup meos_npoint_comp_ever Ever and always comparison functions + * @ingroup meos_npoint_comp + * @brief Ever and always comparison functions for temporal network points + * + * @defgroup meos_npoint_comp_temp Temporal comparison functions + * @ingroup meos_npoint_comp + * @brief Temporal comparison functions for temporal network points + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_npoint_base_inout Input and output functions + * @ingroup meos_npoint_base + * @brief Input and output functions for static network points + * + * @defgroup meos_npoint_base_constructor Constructor functions + * @ingroup meos_npoint_base + * @brief Constructor functions for static network points + * + * @defgroup meos_npoint_base_conversion Conversion functions + * @ingroup meos_npoint_base + * @brief Conversion functions for static network points + * + * @defgroup meos_npoint_base_accessor Accessor functions + * @ingroup meos_npoint_base + * @brief Accessor functions for static network points + * + * @defgroup meos_npoint_base_route Route functions + * @ingroup meos_npoint_base + * @brief Route functions for static network points + * + * @defgroup meos_npoint_base_transf Transformation functions + * @ingroup meos_npoint_base + * @brief Transformation functions for static network points + * + * @defgroup meos_npoint_base_srid Spatial reference system functions + * @ingroup meos_npoint_base + * @brief Spatial reference system functions for static network points + * + * @defgroup meos_npoint_base_comp Comparison functions + * @ingroup meos_npoint_base + * @brief Comparison functions for static network points + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_npoint_set_inout Input and output functions + * @ingroup meos_npoint_set + * @brief Input and output functions for network point sets + * + * @defgroup meos_npoint_set_constructor Constructor functions + * @ingroup meos_npoint_set + * @brief Constructor functions for network point sets + * + * @defgroup meos_npoint_set_conversion Conversion functions + * @ingroup meos_npoint_set + * @brief Conversion functions for network point sets + * + * @defgroup meos_npoint_set_accessor Accessor functions + * @ingroup meos_npoint_set + * @brief Accessor functions for network point sets + * + * @defgroup meos_npoint_set_setops Set operations + * @ingroup meos_npoint_set + * @brief Set operations for network point sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint.h new file mode 100644 index 00000000..47768dd6 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint.h @@ -0,0 +1,153 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for temporal network points. + */ + +#ifndef __TNPOINT_H__ +#define __TNPOINT_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/***************************************************************************** + * fmgr macros + *****************************************************************************/ + +/* Npoint */ +#define DatumGetNpointP(X) ((Npoint *) DatumGetPointer(X)) +#define NpointPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_NPOINT_P(X) DatumGetNpointP(PG_GETARG_DATUM(X)) +#define PG_RETURN_NPOINT_P(X) PG_RETURN_POINTER(X) + +/* Nsegment */ +#define DatumGetNsegmentP(X) ((Nsegment *) DatumGetPointer(X)) +#define NsegmentPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_NSEGMENT_P(X) DatumGetNsegmentP(PG_GETARG_DATUM(X)) +#define PG_RETURN_NSEGMENT_P(X) PG_RETURN_POINTER(X) + +/***************************************************************************** + * Npoint functions + *****************************************************************************/ + +/* Validity functions */ + +extern bool ensure_valid_tnpoint_npoint(const Temporal *temp, + const Npoint *np); +extern bool ensure_valid_tnpoint_npointset(const Temporal *temp, const Set *s); +extern bool ensure_valid_tnpoint_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_valid_tnpoint_stbox(const Temporal *temp, const STBox *box); +extern bool ensure_valid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); + +extern int tnpointsegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); + +extern bool common_rid_tnpoint_npoint(const Temporal *temp, const Npoint *np); +extern bool common_rid_tnpoint_npointset(const Temporal *temp, const Set *s); +extern bool common_rid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); + +/* Collinear functions */ + +extern bool npoint_collinear(const Npoint *np1, const Npoint *np2, + const Npoint *np3, double ratio); + +/* Interpolation functions */ + +extern Npoint *npointsegm_interpolate(const Npoint *start, const Npoint *end, + long double ratio); +extern long double npointsegm_locate(const Npoint *start, const Npoint *end, + const Npoint *value); + +/* General functions */ + +extern GSERIALIZED *npointarr_geom(Npoint **points, int count); +extern GSERIALIZED *nsegmentarr_geom(Nsegment **segments, int count); +extern Nsegment **nsegmentarr_normalize(Nsegment **segments, int *count); + +/* Input/output functions */ + +extern char *npoint_wkt_out(Datum value, int maxdd); + +/* Constructor functions */ + +extern void npoint_set(int64 rid, double pos, Npoint *np); +extern void nsegment_set(int64 rid, double pos1, double pos2, Nsegment *ns); + +/* Transformation functions */ + +extern Datum datum_npoint_round(Datum npoint, Datum size); + +/***************************************************************************** + * Temporal network point functions + *****************************************************************************/ + +/* Input/output functions */ + +/* Conversion functions */ + +extern TInstant *tnpointinst_tgeompointinst(const TInstant *inst); +extern TSequence *tnpointseq_tgeompointseq_disc(const TSequence *is); +extern TSequence *tnpointseq_tgeompointseq_cont(const TSequence *seq); +extern TSequenceSet *tnpointseqset_tgeompointseqset(const TSequenceSet *ss); + +extern TInstant *tgeompointinst_tnpointinst(const TInstant *inst); +extern TSequence *tgeompointseq_tnpointseq(const TSequence *seq); +extern TSequenceSet *tgeompointseqset_tnpointseqset(const TSequenceSet *ss); + +/* Accessor functions */ + +extern Nsegment **tnpointinst_positions(const TInstant *inst); +extern Nsegment **tnpointseq_positions(const TSequence *seq, int *count); +extern Nsegment **tnpointseqset_positions(const TSequenceSet *ss, int *count); +extern int64 tnpointinst_route(const TInstant *inst); +extern Set *tnpointinst_routes(const TInstant *inst); +extern Set *tnpointseq_disc_routes(const TSequence *is); +extern Set *tnpointseq_cont_routes(const TSequence *seq); +extern Set *tnpointseqset_routes(const TSequenceSet *ss); + +extern Nsegment *tnpointseq_linear_positions(const TSequence *seq); + +extern Temporal *tnpoint_restrict_stbox(const Temporal *temp, const STBox *box, + bool border_inc, bool atfunc); +extern Temporal *tnpoint_restrict_npoint(const Temporal *temp, const Npoint + *np, bool atfunc); +extern Temporal *tnpoint_restrict_npointset(const Temporal *temp, const Set *s, + bool atfunc); + +/*****************************************************************************/ + +#endif /* __TNPOINT_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_boxops.h new file mode 100644 index 00000000..18370fae --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_boxops.h @@ -0,0 +1,60 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Bounding box operators for temporal network points. + */ + +#ifndef __TNPOINT_BOXOPS_H__ +#define __TNPOINT_BOXOPS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "npoint/tnpoint.h" + +/*****************************************************************************/ + +extern bool npoint_set_stbox(const Npoint *np, STBox *box); +extern void npointarr_set_stbox(const Datum *values, int count, STBox *box); +extern bool nsegment_set_stbox(const Nsegment *ns, STBox *box); +extern bool npoint_timestamptz_set_stbox(const Npoint *np, TimestampTz t, + STBox *box); +extern bool npoint_tstzspan_set_stbox(const Npoint *np, const Span *s, + STBox *box); + +extern void tnpointinst_set_stbox(const TInstant *inst, STBox *box); +extern void tnpointinstarr_set_stbox(TInstant **inst, int count, + interpType interp, STBox *box); +extern void tnpointseq_expand_stbox(const TSequence *seq, const TInstant *inst); + +/*****************************************************************************/ + +#endif /* __TNPOINT_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_distance.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_distance.h new file mode 100644 index 00000000..1a7ece4a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_distance.h @@ -0,0 +1,48 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal distance for temporal circular buffers. + */ + +#ifndef __TNPOINT_DISTANCE_H__ +#define __TNPOINT_DISTANCE_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern Datum datum_npoint_distance(Datum np1, Datum np2); + +/*****************************************************************************/ + +#endif /* __TNPOINT_DISTANCE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_parser.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_parser.h new file mode 100644 index 00000000..05641001 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_parser.h @@ -0,0 +1,47 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for parsing static and temporal network points. + */ + +#ifndef __TNPOINT_PARSER_H__ +#define __TNPOINT_PARSER_H__ + +/* MEOS */ +#include "npoint/tnpoint.h" + +/*****************************************************************************/ + +extern Npoint *npoint_parse(const char **str, bool end); +extern Nsegment *nsegment_parse(const char **str); + +/*****************************************************************************/ + +#endif /* __TNPOINT_PARSER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_routeops.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_routeops.h new file mode 100644 index 00000000..d2c92451 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_routeops.h @@ -0,0 +1,79 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Route identifier operators for temporal network points. + */ + +#ifndef __TNPOINT_ROUTEOPS_H__ +#define __TNPOINT_ROUTEOPS_H__ + +/* PostgreSQL */ +#include +#if ! MEOS + #include +#endif /* ! MEOS */ +/* MEOS */ +#include "npoint/tnpoint.h" + +/*****************************************************************************/ + +extern bool contains_rid_tnpoint_bigint(const Temporal *temp, int64 rid, + bool invert UNUSED); +extern bool contained_rid_tnpoint_bigint(const Temporal *temp, int64 rid, + bool invert); +extern bool same_rid_tnpoint_bigint(const Temporal *temp, int64 rid, + bool invert UNUSED); +extern bool overlaps_rid_tnpoint_bigintset(const Temporal *temp, const Set *s, + bool invert UNUSED); +extern bool contains_rid_tnpoint_bigintset(const Temporal *temp, const Set *s, + bool invert); +extern bool contained_rid_tnpoint_bigintset(const Temporal *temp, const Set *s, + bool invert); +extern bool same_rid_tnpoint_bigintset(const Temporal *temp, const Set *s, + bool invert UNUSED); +extern bool contains_rid_tnpoint_npoint(const Temporal *temp, const Npoint *np, + bool invert UNUSED); +extern bool contained_rid_npoint_tnpoint(const Temporal *temp, const Npoint *np, + bool invert); +extern bool same_rid_tnpoint_npoint(const Temporal *temp, const Npoint *np, + bool invert UNUSED); +extern bool overlaps_rid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); +extern bool contains_rid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); +extern bool contained_rid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); +extern bool same_rid_tnpoint_tnpoint(const Temporal *temp1, + const Temporal *temp2); + +/*****************************************************************************/ + +#endif /* __TNPOINT_ROUTEOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_spatialfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_spatialfuncs.h new file mode 100644 index 00000000..f4cdcb0f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/npoint/tnpoint_spatialfuncs.h @@ -0,0 +1,61 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Geospatial functions for temporal network points. + */ + +#ifndef __TNPOINT_SPATIALFUNCS_H__ +#define __TNPOINT_SPATIALFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +/* Parameter tests */ + +extern bool ensure_same_rid_tnpointinst(const TInstant *inst1, + const TInstant *inst2); + +/* Restriction functions */ + +extern Temporal *tnpoint_restrict_geom(const Temporal *temp, + const GSERIALIZED *gs, bool atfunc); +extern Temporal *tnpoint_restrict_stbox(const Temporal *temp, const STBox *box, + bool border_inc, bool atfunc); + + +/*****************************************************************************/ + +#endif /* __TNPOINT_SPATIALFUNCS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_internal_pose.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_internal_pose.h new file mode 100644 index 00000000..77c36ea1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_internal_pose.h @@ -0,0 +1,124 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_internal_pose_base Functions for static poses + * @ingroup meos_internal_pose + * @brief Functions for static poses + * + * @defgroup meos_internal_pose_set Functions for pose sets + * @ingroup meos_internal_pose + * @brief Functions for pose sets + * + * @defgroup meos_internal_pose_inout Input and output functions + * @ingroup meos_internal_pose + * @brief Input and output functions for temporal poses + * + * @defgroup meos_internal_pose_conversion Conversion functions + * @ingroup meos_internal_pose + * @brief Conversion functions for temporal poses + * + * @defgroup meos_internal_pose_accessor Accessor functions + * @ingroup meos_internal_pose + * @brief Accessor functions for temporal poses + * + * @defgroup meos_internal_pose_restrict Restriction functions + * @ingroup meos_internal_pose + * @brief Restriction functions for temporal poses + * + * @defgroup meos_internal_pose_comp Comparison functions + * @ingroup meos_internal_pose + * @brief Comparison functions for temporal poses + * + * @defgroup meos_internal_pose_comp_ever Ever and always comparison functions + * @ingroup meos_internal_pose_comp + * @brief Ever and always comparison functions for temporal poses + * + * @defgroup meos_internal_pose_comp_temp Temporal comparison functions + * @ingroup meos_internal_pose_comp + * @brief Temporal comparison functions for temporal poses + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_pose_base_inout Input and output functions + * @ingroup meos_internal_pose_base + * @brief Input and output functions for static poses + * + * @defgroup meos_internal_pose_base_constructor Constructor functions + * @ingroup meos_internal_pose_base + * @brief Constructor functions for static poses + * + * @defgroup meos_internal_pose_base_conversion Conversion functions + * @ingroup meos_internal_pose_base + * @brief Conversion functions for static poses + * + * @defgroup meos_internal_pose_base_accessor Accessor functions + * @ingroup meos_internal_pose_base + * @brief Accessor functions for static poses + * + * @defgroup meos_internal_pose_base_transf Transformation functions + * @ingroup meos_internal_pose_base + * @brief Transformation functions for static poses + * + * @defgroup meos_internal_pose_base_srid Spatial reference system functions + * @ingroup meos_internal_pose_base + * @brief Spatial reference system functions for static poses + * + * @defgroup meos_internal_pose_base_comp Comparison functions + * @ingroup meos_internal_pose_base + * @brief Comparison functions for static poses + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_pose_set_inout Input and output functions + * @ingroup meos_internal_pose_set + * @brief Input and output functions for pose sets + * + * @defgroup meos_internal_pose_set_constructor Constructor functions + * @ingroup meos_internal_pose_set + * @brief Constructor functions for pose sets + * + * @defgroup meos_internal_pose_set_conversion Conversion functions + * @ingroup meos_internal_pose_set + * @brief Conversion functions for pose sets + * + * @defgroup meos_internal_pose_set_accessor Accessor functions + * @ingroup meos_internal_pose_set + * @brief Accessor functions for pose sets + * + * @defgroup meos_internal_pose_set_setops Set operations + * @ingroup meos_internal_pose_set + * @brief Set operations for pose sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_pose.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_pose.h new file mode 100644 index 00000000..9fd5b02e --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/doxygen_meos_pose.h @@ -0,0 +1,136 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_pose_base Functions for static poses + * @ingroup meos_pose + * @brief Functions for static poses + * + * @defgroup meos_pose_set Functions for pose sets + * @ingroup meos_pose + * @brief Functions for pose sets + * + * @defgroup meos_pose_inout Input and output functions + * @ingroup meos_pose + * @brief Input and output functions for temporal poses + * + * @defgroup meos_geo_constructor Constructor functions + * @ingroup meos_geo + * @brief Constructor functions for temporal geometries + * + * @defgroup meos_pose_conversion Conversion functions + * @ingroup meos_pose + * @brief Conversion functions for temporal poses + * + * @defgroup meos_pose_accessor Accessor functions + * @ingroup meos_pose + * @brief Accessor functions for temporal poses + * + * @defgroup meos_pose_restrict Restriction functions + * @ingroup meos_pose + * @brief Restriction functions for temporal poses + * + * @defgroup meos_pose_comp Comparison functions + * @ingroup meos_pose + * @brief Comparison functions for temporal poses + * + * @defgroup meos_pose_comp_ever Ever and always comparison functions + * @ingroup meos_pose_comp + * @brief Ever and always comparison functions for temporal poses + * + * @defgroup meos_pose_comp_temp Temporal comparison functions + * @ingroup meos_pose_comp + * @brief Temporal comparison functions for temporal poses + * + * @defgroup meos_pose_distance Distance functions + * @ingroup meos_pose + * @brief Distance functions for temporal poses + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_pose_base_inout Input and output functions + * @ingroup meos_pose_base + * @brief Input and output functions for static poses + * + * @defgroup meos_pose_base_constructor Constructor functions + * @ingroup meos_pose_base + * @brief Constructor functions for static poses + * + * @defgroup meos_pose_base_conversion Conversion functions + * @ingroup meos_pose_base + * @brief Conversion functions for static poses + * + * @defgroup meos_pose_base_accessor Accessor functions + * @ingroup meos_pose_base + * @brief Accessor functions for static poses + * + * @defgroup meos_pose_base_transf Transformation functions + * @ingroup meos_pose_base + * @brief Transformation functions for static poses + * + * @defgroup meos_pose_base_srid Spatial reference system functions + * @ingroup meos_pose_base + * @brief Spatial reference system functions for static poses + * + * @defgroup meos_pose_base_bbox Bounding box functions + * @ingroup meos_pose_base + * @brief Bounding box functions for static poses + * + * @defgroup meos_pose_base_comp Comparison functions + * @ingroup meos_pose_base + * @brief Comparison functions for static poses + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_pose_set_inout Input and output functions + * @ingroup meos_pose_set + * @brief Input and output functions for pose sets + * + * @defgroup meos_pose_set_constructor Constructor functions + * @ingroup meos_pose_set + * @brief Constructor functions for pose sets + * + * @defgroup meos_pose_set_conversion Conversion functions + * @ingroup meos_pose_set + * @brief Conversion functions for pose sets + * + * @defgroup meos_pose_set_accessor Accessor functions + * @ingroup meos_pose_set + * @brief Accessor functions for pose sets + * + * @defgroup meos_pose_set_setops Set operations + * @ingroup meos_pose_set + * @brief Set operations for pose sets + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/pose.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/pose.h new file mode 100644 index 00000000..0c9d5449 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/pose.h @@ -0,0 +1,118 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for static pose objects. + */ + +#ifndef __POSE_H__ +#define __POSE_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include + +/***************************************************************************** + * Struct definitions + *****************************************************************************/ + +/** + * @brief Structure to represent pose values + * @details + * flags (8 bits, x = unused): xxZXxxxx + * data: 2D: [x, y, theta] + * 3D: [x, y, z, W, X, Z, Y] + * + */ +struct Pose +{ + int32 vl_len_; /**< varlena header (do not touch directly!) */ + int8 flags; /**< flags */ + uint8_t srid[3]; /**< srid */ + double data[]; /**< position and orientation values */ +}; + +/***************************************************************************** + * fmgr macros + *****************************************************************************/ + +#define DatumGetPoseP(X) ((Pose *) DatumGetPointer(X)) +#define PosePGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_POSE_P(X) DatumGetPoseP(PG_GETARG_DATUM(X)) +#define PG_RETURN_POSE_P(X) PG_RETURN_POINTER(X) + +/*****************************************************************************/ + +/* Validity functions */ + +extern bool ensure_valid_pose_geo(const Pose *pose, const GSERIALIZED *gs); +extern bool ensure_valid_pose_stbox(const Pose *pose, const STBox *box); +extern bool ensure_valid_pose_pose(const Pose *pose1, const Pose *pose2); +extern bool ensure_valid_poseset_pose(const Set *s, const Pose *pose); + +/* Collinear and interpolation functions */ + +extern bool pose_collinear(const Pose *pose1, const Pose *pose2, + const Pose *pose3, double ratio); +extern Pose *posesegm_interpolate(const Pose *start, const Pose *end, + double ratio); +extern long double posesegm_locate(const Pose *start, const Pose *end, + const Pose *value); + +/* Input/output functions */ + +extern char *pose_wkt_out(const Pose *pose, bool extended, int maxdd); + +extern Pose *pose_parse(const char **str, bool end); + +extern Datum datum_pose_point(Datum pose); +extern Datum datum_pose_rotation(Datum pose); + +/* Transformation functions */ + +extern Datum datum_pose_round(Datum pose, Datum size); + +/* Distance */ + +extern Datum pose_distance(Datum pose1, Datum pose2); + +/* Box functions */ + +extern bool pose_set_stbox(const Pose *pose, STBox *box); +extern void posearr_set_stbox(const Datum *values, int count, STBox *box); +extern bool pose_timestamptz_set_stbox(const Pose *pose, TimestampTz t, + STBox *box); +extern bool pose_tstzspan_set_stbox(const Pose *pose, const Span *p, + STBox *box); + +/*****************************************************************************/ + +#endif /* __POSE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose.h new file mode 100644 index 00000000..3bf57ff5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose.h @@ -0,0 +1,61 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief General functions for temporal pose objects. + */ + +#ifndef __TPOSE_H__ +#define __TPOSE_H__ + +#include "temporal/temporal.h" +#include "pose/pose.h" + +/*****************************************************************************/ + +/* Validity functions */ + +extern bool ensure_valid_tpose_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_valid_tpose_pose(const Temporal *temp, const Pose *pose); +extern bool ensure_valid_tpose_stbox(const Temporal *temp, const STBox *box); +extern bool ensure_valid_tpose_tpose(const Temporal *temp1, + const Temporal *temp2); + +/* Interpolation functions */ + +extern int tposesegm_intersection_value(Datum start, Datum end, Datum value, + TimestampTz lower, TimestampTz upper, TimestampTz *t1, TimestampTz *t2); +extern int tposesegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); + +/*****************************************************************************/ + +#endif /* __TPOSE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_boxops.h new file mode 100644 index 00000000..a2629c9a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_boxops.h @@ -0,0 +1,54 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Bounding box operators for temporal pose objects. + */ + +#ifndef __TPOSE_BOXOPS_H__ +#define __TPOSE_BOXOPS_H__ + +#include "temporal/temporal.h" +#include + +/*****************************************************************************/ + +/* Functions computing the bounding box at the creation of a temporal pose */ + +extern bool pose_set_stbox(const Pose *pose, STBox *box); +extern void posearr_set_stbox(const Datum *values, int count, STBox *box); + +extern void tposeinst_set_stbox(const TInstant *inst, STBox *box); +extern void tposeinstarr_set_stbox(TInstant **instants, int count, + STBox *box); +extern void tposeseq_expand_stbox(TSequence *seq, const TInstant *inst); + +/*****************************************************************************/ + +#endif /* __TPOSE_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_spatialfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_spatialfuncs.h new file mode 100644 index 00000000..6076e958 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/pose/tpose_spatialfuncs.h @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Spatial functions for temporal pose objects. + */ + +#ifndef __TPOSE_SPATIALFUNCS_H__ +#define __TPOSE_SPATIALFUNCS_H__ + +#include "temporal/temporal.h" +#include "pose/pose.h" + +/*****************************************************************************/ + +/* Trajectory function */ + +extern GSERIALIZED *tpose_trajectory(const Temporal *temp); + +/* Restriction functions */ + +extern Temporal *tpose_restrict_geom(const Temporal *temp, + const GSERIALIZED *gs, bool atfunc); +extern Temporal *tpose_restrict_stbox(const Temporal *temp, const STBox *box, + bool border_inc, bool atfunc); +extern Temporal *tpose_restrict_elevation(const Temporal *temp, const Span *s, + bool atfunc); + +/*****************************************************************************/ + +#endif /* __TPOSE_SPATIALFUNCS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/postgis_ext_defs.in.h b/jmeos-core/tools/parity/meos-ref/meos/include/postgis_ext_defs.in.h new file mode 100644 index 00000000..243d0fbf --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/postgis_ext_defs.in.h @@ -0,0 +1,420 @@ +#ifndef _LIBLWGEOM_H +#define _LIBLWGEOM_H + +/******************************************************************/ + +/** +* Macros for manipulating the 'flags' byte. A uint8_t used as follows: +* VVSRGBMZ +* Version bit, followed by +* Validty, Solid, ReadOnly, Geodetic, HasBBox, HasM and HasZ flags. +*/ +#define LWFLAG_Z 0x01 +#define LWFLAG_M 0x02 +#define LWFLAG_BBOX 0x04 +#define LWFLAG_GEODETIC 0x08 +#define LWFLAG_READONLY 0x10 +#define LWFLAG_SOLID 0x20 + +#define FLAGS_GET_Z(flags) ((flags) & LWFLAG_Z) +#define FLAGS_GET_M(flags) (((flags) & LWFLAG_M)>>1) +#define FLAGS_GET_BBOX(flags) (((flags) & LWFLAG_BBOX)>>2) +#define FLAGS_GET_GEODETIC(flags) (((flags) & LWFLAG_GEODETIC)>>3) +#define FLAGS_GET_READONLY(flags) (((flags) & LWFLAG_READONLY)>>4) +#define FLAGS_GET_SOLID(flags) (((flags) & LWFLAG_SOLID)>>5) + +#define FLAGS_SET_Z(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_Z) : ((flags) & ~LWFLAG_Z)) +#define FLAGS_SET_M(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_M) : ((flags) & ~LWFLAG_M)) +#define FLAGS_SET_BBOX(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_BBOX) : ((flags) & ~LWFLAG_BBOX)) +#define FLAGS_SET_GEODETIC(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_GEODETIC) : ((flags) & ~LWFLAG_GEODETIC)) +#define FLAGS_SET_READONLY(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_READONLY) : ((flags) & ~LWFLAG_READONLY)) +#define FLAGS_SET_SOLID(flags, value) ((flags) = (value) ? ((flags) | LWFLAG_SOLID) : ((flags) & ~LWFLAG_SOLID)) + +#define FLAGS_NDIMS(flags) (2 + FLAGS_GET_Z(flags) + FLAGS_GET_M(flags)) +#define FLAGS_GET_ZM(flags) (FLAGS_GET_M(flags) + FLAGS_GET_Z(flags) * 2) +#define FLAGS_NDIMS_BOX(flags) (FLAGS_GET_GEODETIC(flags) ? 3 : FLAGS_NDIMS(flags)) + +/* +** Variants available for WKB and WKT output types +*/ + +#define WKB_ISO 0x01 +#define WKB_SFSQL 0x02 +#define WKB_EXTENDED 0x04 +#define WKB_NDR 0x08 +#define WKB_XDR 0x10 +#define WKB_HEX 0x20 +#define WKB_NO_NPOINTS 0x40 /* Internal use only */ +#define WKB_NO_SRID 0x80 /* Internal use only */ + +#define WKT_ISO 0x01 +#define WKT_SFSQL 0x02 +#define WKT_EXTENDED 0x04 + +typedef uint16_t lwflags_t; + +/******************************************************************/ + +typedef struct { + double afac, bfac, cfac, dfac, efac, ffac, gfac, hfac, ifac, xoff, yoff, zoff; +} AFFINE; + +/******************************************************************/ + +typedef struct +{ + double xmin, ymin, zmin; + double xmax, ymax, zmax; + int32_t srid; +} +BOX3D; + +/****************************************************************** +* GBOX structure. +* We include the flags (information about dimensionality), +* so we don't have to constantly pass them +* into functions that use the GBOX. +*/ +typedef struct +{ + lwflags_t flags; + double xmin; + double xmax; + double ymin; + double ymax; + double zmin; + double zmax; + double mmin; + double mmax; +} GBOX; + + +/****************************************************************** +* SPHEROID +* +* Standard definition of an ellipsoid (what wkt calls a spheroid) +* f = (a-b)/a +* e_sq = (a*a - b*b)/(a*a) +* b = a - fa +*/ +typedef struct +{ + double a; /* semimajor axis */ + double b; /* semiminor axis b = (a - fa) */ + double f; /* flattening f = (a-b)/a */ + double e; /* eccentricity (first) */ + double e_sq; /* eccentricity squared (first) e_sq = (a*a-b*b)/(a*a) */ + double radius; /* spherical average radius = (2*a+b)/3 */ + char name[20]; /* name of ellipse */ +} +SPHEROID; + +/****************************************************************** +* POINT2D, POINT3D, POINT3DM, POINT4D +*/ +typedef struct +{ + double x, y; +} +POINT2D; + +typedef struct +{ + double x, y, z; +} +POINT3DZ; + +typedef struct +{ + double x, y, z; +} +POINT3D; + +typedef struct +{ + double x, y, m; +} +POINT3DM; + +typedef struct +{ + double x, y, z, m; +} +POINT4D; + +/****************************************************************** +* POINTARRAY +* Point array abstracts a lot of the complexity of points and point lists. +* It handles 2d/3d translation +* (2d points converted to 3d will have z=0 or NaN) +* DO NOT MIX 2D and 3D POINTS! EVERYTHING* is either one or the other +*/ +typedef struct +{ + uint32_t npoints; /* how many points we are currently storing */ + uint32_t maxpoints; /* how many points we have space for in serialized_pointlist */ + + /* Use FLAGS_* macros to handle */ + lwflags_t flags; + + /* Array of POINT 2D, 3D or 4D, possibly misaligned. */ + uint8_t *serialized_pointlist; +} +POINTARRAY; + +/****************************************************************** +* GSERIALIZED +*/ + +typedef struct +{ + uint32_t size; /* For PgSQL use only, use VAR* macros to manipulate. */ + uint8_t srid[3]; /* 24 bits of SRID */ + uint8_t gflags; /* HasZ, HasM, HasBBox, IsGeodetic */ + uint8_t data[1]; /* See gserialized.txt */ +} GSERIALIZED; + +/****************************************************************** +* LWGEOM (any geometry type) +* +* Abstract type, note that 'type', 'bbox' and 'srid' are available in +* all geometry variants. +*/ +typedef struct +{ + GBOX *bbox; + void *data; + int32_t srid; + lwflags_t flags; + uint8_t type; + char pad[1]; /* Padding to 24 bytes (unused) */ +} +LWGEOM; + +/* POINTYPE */ +typedef struct +{ + GBOX *bbox; + POINTARRAY *point; /* hide 2d/3d (this will be an array of 1 point) */ + int32_t srid; + lwflags_t flags; + uint8_t type; /* POINTTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ +} +LWPOINT; /* "light-weight point" */ + +/* LINETYPE */ +typedef struct +{ + GBOX *bbox; + POINTARRAY *points; /* array of POINT3D */ + int32_t srid; + lwflags_t flags; + uint8_t type; /* LINETYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ +} +LWLINE; /* "light-weight line" */ + +/* TRIANGLE */ +typedef struct +{ + GBOX *bbox; + POINTARRAY *points; + int32_t srid; + lwflags_t flags; + uint8_t type; + char pad[1]; /* Padding to 24 bytes (unused) */ +} +LWTRIANGLE; + +/* CIRCSTRINGTYPE */ +typedef struct +{ + GBOX *bbox; + POINTARRAY *points; /* array of POINT(3D/3DM) */ + int32_t srid; + lwflags_t flags; + uint8_t type; /* CIRCSTRINGTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ +} +LWCIRCSTRING; /* "light-weight circularstring" */ + +/* POLYGONTYPE */ +typedef struct +{ + GBOX *bbox; + POINTARRAY **rings; /* list of rings (list of points) */ + int32_t srid; + lwflags_t flags; + uint8_t type; /* POLYGONTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t nrings; /* how many rings we are currently storing */ + uint32_t maxrings; /* how many rings we have space for in **rings */ +} +LWPOLY; /* "light-weight polygon" */ + +/* MULTIPOINTTYPE */ +typedef struct +{ + GBOX *bbox; + LWPOINT **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* MULTYPOINTTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWMPOINT; + +/* MULTILINETYPE */ +typedef struct +{ + GBOX *bbox; + LWLINE **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* MULTILINETYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWMLINE; + +/* MULTIPOLYGONTYPE */ +typedef struct +{ + GBOX *bbox; + LWPOLY **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* MULTIPOLYGONTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWMPOLY; + +/* COLLECTIONTYPE */ +typedef struct +{ + GBOX *bbox; + LWGEOM **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* COLLECTIONTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWCOLLECTION; + +/* COMPOUNDTYPE */ +typedef struct +{ + GBOX *bbox; + LWGEOM **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* COLLECTIONTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWCOMPOUND; /* "light-weight compound line" */ + +/* CURVEPOLYTYPE */ +typedef struct +{ + GBOX *bbox; + LWGEOM **rings; + int32_t srid; + lwflags_t flags; + uint8_t type; /* CURVEPOLYTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t nrings; /* how many rings we are currently storing */ + uint32_t maxrings; /* how many rings we have space for in **rings */ +} +LWCURVEPOLY; /* "light-weight polygon" */ + +/* MULTICURVE */ +typedef struct +{ + GBOX *bbox; + LWGEOM **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* MULTICURVE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWMCURVE; + +/* MULTISURFACETYPE */ +typedef struct +{ + GBOX *bbox; + LWGEOM **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* MULTISURFACETYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWMSURFACE; + +/* POLYHEDRALSURFACETYPE */ +typedef struct +{ + GBOX *bbox; + LWPOLY **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* POLYHEDRALSURFACETYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWPSURFACE; + +/* TINTYPE */ +typedef struct +{ + GBOX *bbox; + LWTRIANGLE **geoms; + int32_t srid; + lwflags_t flags; + uint8_t type; /* TINTYPE */ + char pad[1]; /* Padding to 24 bytes (unused) */ + uint32_t ngeoms; /* how many geometries we are currently storing */ + uint32_t maxgeoms; /* how many geometries we have space for in **geoms */ +} +LWTIN; + +/* Functions */ + +extern int32 geo_get_srid(const GSERIALIZED *g); + +/* PROJ */ + +struct PJconsts; +typedef struct PJconsts PJ; + +typedef struct LWPROJ +{ + PJ* pj; + + /* for pipeline transforms, whether to do a forward or inverse */ + bool pipeline_is_forward; + + /* Source crs is geographic: Used in geography calls (source srid == dst srid) */ + uint8_t source_is_latlong; + /* Source ellipsoid parameters */ + double source_semi_major_metre; + double source_semi_minor_metre; +} LWPROJ; + + +#endif /* _LIBLWGEOM_H */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/postgres_int_defs.h b/jmeos-core/tools/parity/meos-ref/meos/include/postgres_int_defs.h new file mode 100644 index 00000000..4d9087ab --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/postgres_int_defs.h @@ -0,0 +1,3 @@ +#include "../postgres/postgres.h" +#include "../postgres/utils/timestamp_def.h" +#include "../postgres/utils/date.h" diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_internal_rgeo.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_internal_rgeo.h new file mode 100644 index 00000000..d03950e8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_internal_rgeo.h @@ -0,0 +1,60 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_internal_rgeo_inout Input and output functions + * @ingroup meos_internal_rgeo + * @brief Input and output functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_conversion Conversion functions + * @ingroup meos_internal_rgeo + * @brief Conversion functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_accessor Accessor functions + * @ingroup meos_internal_rgeo + * @brief Accessor functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_restrict Restriction functions + * @ingroup meos_internal_rgeo + * @brief Restriction functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_comp Comparison functions + * @ingroup meos_internal_rgeo + * @brief Comparison functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_comp_ever Ever and always comparison functions + * @ingroup meos_internal_rgeo_comp + * @brief Ever and always comparison functions for temporal rigid geometries + * + * @defgroup meos_internal_rgeo_comp_temp Temporal comparison functions + * @ingroup meos_internal_rgeo_comp + * @brief Temporal comparison functions for temporal rigid geometries + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_rgeo.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_rgeo.h new file mode 100644 index 00000000..a5bbb631 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/doxygen_meos_rgeo.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @defgroup meos_rgeo_inout Input and output functions + * @ingroup meos_rgeo + * @brief Input and output functions for temporal rigid geometries + * + * @defgroup meos_rgeo_conversion Conversion functions + * @ingroup meos_rgeo + * @brief Conversion functions for temporal rigid geometries + * + * @defgroup meos_rgeo_accessor Accessor functions + * @ingroup meos_rgeo + * @brief Accessor functions for temporal rigid geometries + * + * @defgroup meos_rgeo_restrict Restriction functions + * @ingroup meos_rgeo + * @brief Restriction functions for temporal rigid geometries + * + * @defgroup meos_rgeo_dist Distance functions + * @ingroup meos_rgeo + * @brief Distance functions for temporal rigid geometries + * + * @defgroup meos_rgeo_comp Comparison functions + * @ingroup meos_rgeo + * @brief Comparison functions for temporal rigid geometries + * + * @defgroup meos_rgeo_comp_ever Ever and always comparison functions + * @ingroup meos_rgeo_comp + * @brief Ever and always comparison functions for temporal rigid geometries + * + * @defgroup meos_rgeo_comp_temp Temporal comparison functions + * @ingroup meos_rgeo_comp + * @brief Temporal comparison functions for temporal rigid geometries + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo.h new file mode 100644 index 00000000..55b0a59b --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo.h @@ -0,0 +1,88 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief General functions for temporal rigid geometries + */ + +#ifndef __TRGEO_H__ +#define __TRGEO_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" + +/** Symbolic constants for the temporal instant geometry constuctor */ +#define WITH_GEOM true +#define NO_GEOM false + +/***************************************************************************** + * Miscellaneous functions defined in trgeo.c + *****************************************************************************/ + +extern bool ensure_has_geom(int16 flags); +extern bool ensure_valid_trgeo_geo(const Temporal *temp, + const GSERIALIZED *gs); +extern bool ensure_valid_trgeo_stbox(const Temporal *temp, + const STBox *box); +extern bool ensure_valid_trgeo_trgeo(const Temporal *temp1, + const Temporal *temp2); +extern bool ensure_valid_trgeo_tpoint(const Temporal *temp1, + const Temporal *temp2); +extern const GSERIALIZED *trgeo_geom_p(const Temporal *temp); + +/* Input/output functions */ + +extern char *trgeo_wkt_out(const Temporal *temp, int maxdd, bool extended); + +/* Constructor functions */ + +extern TInstant *geo_tposeinst_to_trgeo(const GSERIALIZED *gs, + const TInstant *inst); +extern TSequence *geo_tposeseq_to_trgeo(const GSERIALIZED *gs, + const TSequence *seq); +extern TSequenceSet *geo_tposeseqset_to_trgeo(const GSERIALIZED *gs, + const TSequenceSet *ss); + +/* Conversion functions */ + + +/* Accessor functions */ + +extern bool trgeo_value_at_timestamptz(const Temporal *temp, TimestampTz t, + bool strict, Datum *result); + +/* Transformation functions */ + + +/*****************************************************************************/ + +#endif /* __TRGEO_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_all.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_all.h new file mode 100644 index 00000000..4e3be67d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_all.h @@ -0,0 +1,46 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief General functions for temporal rigid geometries + */ + +#ifndef __TRGEO_ALL_H__ +#define __TRGEO_ALL_H__ + +/* MEOS */ +#include "rgeo/trgeo.h" +#include "rgeo/trgeo_inst.h" +#include "rgeo/trgeo_seq.h" +#include "rgeo/trgeo_seqset.h" + +/*****************************************************************************/ + +#endif /* __TRGEO_ALL_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_boxops.h new file mode 100644 index 00000000..b75e43db --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_boxops.h @@ -0,0 +1,60 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal rigid geometries + */ + +#ifndef __TRGEO_BOXOPS_H__ +#define __TRGEO_BOXOPS_H__ + +/* Postgres */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "geo/stbox.h" + +/*****************************************************************************/ + +/* Functions computing the bounding box at the creation of the temporal rigid + * geometry */ + +extern void trgeoinst_set_stbox(const GSERIALIZED *geom, const TInstant *inst, + STBox *box); +extern void trgeoinstarr_static_stbox(const GSERIALIZED *geom, + TInstant **instants, int count, STBox *box); +extern void trgeoinstarr_rotating_stbox(const GSERIALIZED *geom, + TInstant **instants, int count, STBox *box); +extern void trgeoinstarr_compute_bbox(const GSERIALIZED *geom, + TInstant **instants, int count, interpType interp, void *box); + +/*****************************************************************************/ + +#endif /* __TRGEO_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_distance.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_distance.h new file mode 100644 index 00000000..db8439c5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_distance.h @@ -0,0 +1,106 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal rigid geometries + */ + +#ifndef __TRGEO_DISTANCE_H__ +#define __TRGEO_DISTANCE_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "pose/pose.h" + +/***************************************************************************** + * Struct definitions + *****************************************************************************/ + +/** Symbolic constants for temporal distance */ +#define MEOS_ANY 0 +#define MEOS_RIGHT 1 +#define MEOS_LEFT 2 + +/** Symbolic constants for equation solving */ +#define MEOS_SOLVE_0 true +#define MEOS_SOLVE_1 false + +/** Symbolic constants for cfp_elem */ +#define MEOS_CFP_STORE true +#define MEOS_CFP_STORE_NO false + +#define MEOS_CFP_FREE true +#define MEOS_CFP_FREE_NO false + +/* Closest features pair */ + +typedef struct { + LWGEOM *geom_1; + LWGEOM *geom_2; + Pose *pose_1; + Pose *pose_2; + bool free_pose_1; + bool free_pose_2; + uint32_t cf_1; + uint32_t cf_2; + TimestampTz t; + bool store; +} cfp_elem; + +/* List of CFPs */ + +typedef struct { + size_t count; + size_t size; + cfp_elem *arr; +} cfp_array; + +/* Closest features pair */ + +typedef struct { + double dist;; + TimestampTz t; +} tdist_elem; + +/* List of CFPs */ + +typedef struct { + size_t count; + size_t size; + tdist_elem *arr; +} tdist_array; + +/*****************************************************************************/ + +#endif /* __TRGEO_DISTANCE_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_inst.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_inst.h new file mode 100644 index 00000000..e1f25277 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_inst.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @brief Functions for temporal rigid instant geometries. + */ + +#ifndef __TRGEO_INST_H__ +#define __TRGEO_INST_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "pose/pose.h" + +/***************************************************************************** + * General functions + *****************************************************************************/ + +extern const GSERIALIZED *trgeoinst_geom_p(const TInstant *inst); +extern size_t trgeoinst_pose_varsize(const TInstant *inst); +extern void trgeoinst_set_pose(TInstant *inst); +extern TInstant *trgeoinst_tposeinst(const TInstant *inst); + +/* Constructor functions */ + +extern TInstant *trgeoinst_make1(const GSERIALIZED *geom, const Pose *pose, + TimestampTz t); + +/* Transformation functions */ + +extern TInstant *trgeoseq_to_tinstant(const TSequence *seq); +extern TInstant *trgeoseqset_to_tinstant(const TSequenceSet *ts); + +/*****************************************************************************/ + +#endif /* __TRGEO_INST_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_parser.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_parser.h new file mode 100644 index 00000000..bf16981e --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_parser.h @@ -0,0 +1,49 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for parsing temporal rigid geometries + */ + +#ifndef __TRGEO_PARSER_H__ +#define __TRGEO_PARSER_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern Temporal *trgeo_parse(const char **str, MeosType temptype); + +/*****************************************************************************/ + +#endif /* __TRGEO_PARSER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seq.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seq.h new file mode 100644 index 00000000..aa181ad8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seq.h @@ -0,0 +1,77 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for temporal rigid geometries with sequence subtype + */ + +#ifndef __TRGEO_SEQ_H__ +#define __TRGEO_SEQ_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" + +/***************************************************************************** + * General functions + *****************************************************************************/ + +extern const GSERIALIZED *trgeoseq_geom_p(const TSequence *seq); + +extern size_t trgeoseq_pose_varsize(const TSequence *seq); +extern void trgeoseq_set_pose(TSequence *seq); +extern TSequence *trgeoseq_tposeseq(const TSequence *seq); + +/* Constructor functions */ + +extern bool trgeoseq_make_valid(const GSERIALIZED *geom, TInstant **instants, + int count, bool lower_inc, bool upper_inc, bool linear); +extern TSequence *trgeoseq_make1_exp(const GSERIALIZED *geom, TInstant **instants, + int count, int maxcount, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *trgeoseq_make1(const GSERIALIZED *geom, TInstant **instants, + int count, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *trgeoseq_make_exp(const GSERIALIZED *geom, TInstant **instants, + int count, int maxcount, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *trgeoseq_make(const GSERIALIZED *geom, TInstant **instants, + int count, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *trgeoseq_make_free_exp(const GSERIALIZED *geom, TInstant **instants, + int count, int maxcount, bool lower_inc, bool upper_inc, interpType interp, bool normalize); +extern TSequence *trgeoseq_make_free(const GSERIALIZED *geom, TInstant **instants, + int count, bool lower_inc, bool upper_inc, interpType interp, bool normalize); + +/* Transformation functions */ + +extern TSequence *trgeoinst_to_tsequence(const TInstant *inst, interpType interp); +extern TInstant *trgeoseq_to_tinstant(const TSequence *seq); + +/*****************************************************************************/ + +#endif /* __TRGEO_SEQ_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seqset.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seqset.h new file mode 100644 index 00000000..6437b351 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_seqset.h @@ -0,0 +1,74 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for temporal rigid geometries with sequence set subtype + */ + +#ifndef __TRGEO_SEQSET_H__ +#define __TRGEO_SEQSET_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/temporal.h" + +/***************************************************************************** + * General functions + *****************************************************************************/ + +extern const GSERIALIZED *trgeoseqset_geom_p(const TSequenceSet *ts); +extern TSequenceSet *trgeoseqset_tposeseqset(const TSequenceSet *ss); + +/* Constructor functions */ + +extern TSequenceSet *trgeoseqset_make1_exp(const GSERIALIZED *geom, + TSequence **sequences, int count, int maxcount, bool normalize); +extern TSequenceSet *trgeoseqset_make_exp(const GSERIALIZED *geom, + TSequence **sequences, int count, int maxcount, bool normalize); +extern TSequenceSet *trgeoseqset_make(const GSERIALIZED *geom, + TSequence **sequences, int count, bool normalize); +extern TSequenceSet *trgeoseqset_make_free(const GSERIALIZED *geom, + TSequence **sequences, int count, bool normalize); +extern TSequenceSet *trgeoseqset_make_gaps(const GSERIALIZED *geom, + TInstant **instants, int count, interpType interp, Interval *maxt, + double maxdist); + +/* Transformation functions */ + +extern TSequence *trgeoseqset_to_tsequence(const TSequenceSet *ss); +extern TSequence *trgeo_to_tsequence(const Temporal *temp, + const char *interp_str); +extern TSequenceSet *trgeo_to_tsequenceset(const Temporal *temp, + const char *interp_str); + +/*****************************************************************************/ + +#endif /* __TRGEO_SEQSET_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_spatialrels.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_spatialrels.h new file mode 100644 index 00000000..51b71ea0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_spatialrels.h @@ -0,0 +1,59 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal rigid geometries + */ + +#ifndef __TRGEO_SPATIALRELS_H__ +#define __TRGEO_SPATIALRELS_H__ + +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "pose/pose.h" + +/*****************************************************************************/ + +extern int ea_contains_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever); +extern int ea_covers_geo_trgeo(const GSERIALIZED *gs, const Temporal *temp, + bool ever) +extern int ea_covers_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever); +extern int ea_disjoint_trgeo_geo(const Temporal *temp, const GSERIALIZED *gs, + bool ever) + +/*****************************************************************************/ + +#endif /* __TRGEO_SPATIALRELS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_utils.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_utils.h new file mode 100644 index 00000000..63908f8a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_utils.h @@ -0,0 +1,52 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Utility functions for temporal rigid geometries + */ + +#ifndef __TRGEO_UTILS_H__ +#define __TRGEO_UTILS_H__ + +/* Postgres */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "pose/pose.h" + +/*****************************************************************************/ + +extern bool ensure_same_geom(const GSERIALIZED *gs1, const GSERIALIZED *gs2); +extern void lwgeom_apply_pose(const Pose *pose, LWGEOM *geom); +extern double geom_radius(const GSERIALIZED *gs); + +/*****************************************************************************/ + +#endif /* __TRGEO_UTILS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_vclip.h b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_vclip.h new file mode 100644 index 00000000..30a450a7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/rgeo/trgeo_vclip.h @@ -0,0 +1,74 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal rigid geometries. + */ + +#ifndef __TRGEO_VCLIP_H__ +#define __TRGEO_VCLIP_H__ + +/* C */ +#include +/* PostgreSQL */ +#include +/* PostGIS */ +#include +/* MEOS */ +#include "temporal/temporal.h" +#include "pose/pose.h" + +/***************************************************************************** + * Struct definitions + *****************************************************************************/ + +/** Max iterations to avoid infinite loops */ +#define MEOS_MAX_ITERS 1000 + +/** Symbolic constants for v-clip */ +#define MEOS_CONTINUE 0 +#define MEOS_DISJOINT 1 +#define MEOS_INTERSECT -1 + +/*****************************************************************************/ + +/* V-clip functions */ + +extern int v_clip_tpoly_point(const LWPOLY *poly, const LWPOINT *point, + const Pose *pose, uint32_t *poly_feature, double *dist); +extern int v_clip_tpoly_tpoly(const LWPOLY *poly1, const LWPOLY *poly2, + const Pose *pose1, const Pose *pose2, uint32_t *poly1_feature, + uint32_t *poly2_feature, double *dist); + +extern void apply_pose_point4d(POINT4D *p, const Pose *pose); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doublen.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doublen.h new file mode 100644 index 00000000..0471bf31 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doublen.h @@ -0,0 +1,109 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Internal types used in particular for computing the average and + * centroid temporal aggregates. + */ + +#ifndef __DOUBLEN_H__ +#define __DOUBLEN_H__ + +/* C */ +#include + +/*****************************************************************************/ + +/** + * Structure to represent values of the internal type for computing aggregates + * for temporal number types + */ +typedef struct +{ + double a; + double b; +} double2; + +/** + * Structure to represent values of the internal type for computing aggregates + * for 2D temporal points + */ +typedef struct +{ + double a; + double b; + double c; +} double3; + +/** + * Structure to represent values of the internal type for computing aggregates + * for 3D temporal points + */ +typedef struct +{ + double a; + double b; + double c; + double d; +} double4; + +/*****************************************************************************/ + +extern char *double2_out(const double2 *d, int maxdd); +extern void double2_set(double a, double b, double2 *result); +extern double2 *double2_add(const double2 *d1, const double2 *d2); +extern bool double2_eq(const double2 *d1, const double2 *d2); + +extern char *double3_out(const double3 *d, int maxdd); +extern void double3_set(double a, double b, double c, double3 *result); +extern double3 *double3_add(const double3 *d1, const double3 *d2); +extern bool double3_eq(const double3 *d1, const double3 *d2); + +extern char *double4_out(const double4 *d, int maxdd); +extern void double4_set(double a, double b, double c, double d, double4 *result); +extern double4 *double4_add(const double4 *d1, const double4 *d2); +extern bool double4_eq(const double4 *d1, const double4 *d2); + +extern bool double2_collinear(const double2 *x1, const double2 *x2, + const double2 *x3, double ratio); +extern bool double3_collinear(const double3 *x1, const double3 *x2, + const double3 *x3, double ratio); +extern bool double4_collinear(const double4 *x1, const double4 *x2, + const double4 *x3, double ratio); + +extern double2 *double2segm_interpolate(const double2 *start, + const double2 *end, long double ratio); +extern double3 *double3segm_interpolate(const double3 *start, + const double3 *end, long double ratio); +extern double4 *double4segm_interpolate(const double4 *start, + const double4 *end, long double ratio); + +/*****************************************************************************/ + +#endif /* __DOUBLEN_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos.h new file mode 100644 index 00000000..68a88560 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos.h @@ -0,0 +1,341 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @mainpage MEOS and MobilityDB Developer's Documentation + * + * \htmlonly + *
+ *
+ * MEOS logo + *
+ *
+ * MobilityDB logo + *
+ *
+ * \endhtmlonly + * + * @image latex meos-logo.png width=10% + * @image latex mobilitydb-logo.png width=10% + * + * This document defines the developer's documentation of both the MEOS library + * and MobilityDB. The documentation is divided into modules, where the + * top-level modules are as follows: + * + * - MEOS library + * - MEOS API + * - Internal functions + * - MobilityDB API + * + * \tableofcontents + * + * Please refer to the Modules tab for a detailed account of these modules. + */ + +/***************************************************************************** + * Sections of the external MEOS API + * These sections follow the ones of the MobilityDB documentation although + * some subsections are merged into a single one + *****************************************************************************/ + +/** + * @defgroup meos MEOS library + * @brief Mobility Engine Open Source (MEOS) library + * + * @defgroup meos_api External API + * @ingroup meos + * @brief External API of the Mobility Engine Open Source (MEOS) library + * + * @defgroup meos_internal Internal API + * @ingroup meos + * @brief Internal API of the Mobility Engine Open Source (MEOS) library + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_base_types Functions for base and time types + * @ingroup meos_api + * @brief Functions for base and time types + * + * @defgroup meos_setspan Functions for set and span types + * @ingroup meos_api + * @brief Functions for set and span types + * + * @defgroup meos_box Functions for temporal boxes + * @ingroup meos_api + * @brief Functions for temporal boxes + * + * @defgroup meos_temporal Functions for temporal types + * @ingroup meos_api + * @brief Functions for temporal types + * + * @defgroup meos_geo Functions for temporal geometries + * @ingroup meos_api + * @brief Functions for temporal geometries + * + * @defgroup meos_cbuffer Functions for temporal circular buffers + * @ingroup meos_api + * @brief Functions for temporal temporal circular buffers + * + * @defgroup meos_npoint Functions for temporal network points + * @ingroup meos_api + * @brief Functions for temporal network points + * + * @defgroup meos_pose Functions for temporal poses + * @ingroup meos_api + * @brief Functions for temporal poses + * + * @defgroup meos_rgeo Functions for temporal rigid geometries + * @ingroup meos_api + * @brief Functions for temporal rigid geometries + * + * @defgroup meos_misc Miscellaneous functions + * @ingroup meos_api + * @brief Miscellaneous functions + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_setspan_inout Input and output functions + * @ingroup meos_setspan + * @brief Input and output functions for set and span types + * + * @defgroup meos_setspan_constructor Constructor functions + * @ingroup meos_setspan + * @brief Constructor functions for set and span types + * + * @defgroup meos_setspan_conversion Conversion functions + * @ingroup meos_setspan + * @brief Conversion functions for set and span types + * + * @defgroup meos_setspan_accessor Accessor functions + * @ingroup meos_setspan + * @brief Accessor functions for set and span types + * + * @defgroup meos_setspan_transf Transformation functions + * @ingroup meos_setspan + * @brief Transformation functions for set and span types + * + * @defgroup meos_setspan_srid Spatial reference system functions + * @ingroup meos_setspan + * @brief Spatial reference system functions for set and span types + * + * @defgroup meos_setspan_comp Comparison functions + * @ingroup meos_setspan + * @brief Comparison functions for set and span types + * + * @defgroup meos_setspan_bbox Bounding box functions + * @ingroup meos_setspan + * @brief Bounding box functions for set and span types + * + * @defgroup meos_setspan_bbox_split Split functions + * @ingroup meos_setspan_bbox + * @brief Split functions for set and span types + * + * @defgroup meos_setspan_topo Topological functions + * @ingroup meos_setspan_bbox + * @brief Topological functions for set and span types + * + * @defgroup meos_setspan_pos Position functions + * @ingroup meos_setspan_bbox + * @brief Position functions for set and span types + * + * @defgroup meos_setspan_set Set functions + * @ingroup meos_setspan + * @brief Set functions for set and span types + * + * @defgroup meos_setspan_dist Distance functions + * @ingroup meos_setspan + * @brief Distance functions for set and span types + * + * @defgroup meos_setspan_agg Aggregate functions + * @ingroup meos_setspan + * @brief Aggregate functions for set and span types + * + * @defgroup meos_setspan_bin Bin functions + * @ingroup meos_setspan + * @brief Bin functions for set and span types + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_box_inout Input and output functions + * @ingroup meos_box + * @brief Input and output functions for temporal boxes + * + * @defgroup meos_box_constructor Constructor functions + * @ingroup meos_box + * @brief Constructor functions for temporal boxes + * + * @defgroup meos_box_conversion Conversion functions + * @ingroup meos_box + * @brief Conversion functions for temporal boxes + * + * @defgroup meos_box_accessor Accessor functions + * @ingroup meos_box + * @brief Accessor functions for temporal boxes + * + * @defgroup meos_box_transf Transformation functions + * @ingroup meos_box + * @brief Transformation functions for temporal boxes + * + * @defgroup meos_box_srid Spatial reference system functions + * @ingroup meos_box + * @brief Spatial reference system functions for temporal boxes + * + * @defgroup meos_box_set Set functions + * @ingroup meos_box + * @brief Set functions for temporal boxes + * + * @defgroup meos_box_bbox Bounding box functions + * @ingroup meos_box + * @brief Bounding box functions for temporal boxes + * + * @defgroup meos_box_bbox_topo Topological functions + * @ingroup meos_box_bbox + * @brief Topological functions for temporal boxes + * + * @defgroup meos_box_bbox_pos Position functions + * @ingroup meos_box_bbox + * @brief Position functions for temporal boxes + * + * @defgroup meos_box_comp Comparison functions + * @ingroup meos_box + * @brief Comparison functions for temporal boxes + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_temporal_inout Input and output functions + * @ingroup meos_temporal + * @brief Input and output functions for temporal types + * + * @defgroup meos_temporal_constructor Constructor functions + * @ingroup meos_temporal + * @brief Constructor functions for temporal types + * + * @defgroup meos_temporal_conversion Conversion functions + * @ingroup meos_temporal + * @brief Conversion functions for temporal types + * + * @defgroup meos_temporal_accessor Accessor functions + * @ingroup meos_temporal + * @brief Accessor functions for temporal types + * + * @defgroup meos_temporal_transf Transformation functions + * @ingroup meos_temporal + * @brief Transformation functions for temporal types + * + * @defgroup meos_temporal_modif Modification functions + * @ingroup meos_temporal + * @brief Modification functions for temporal types + * + * @defgroup meos_temporal_restrict Restriction functions + * @ingroup meos_temporal + * @brief Restriction functions for temporal types + * + * @defgroup meos_temporal_comp Comparison functions + * @ingroup meos_temporal + * @brief Comparison functions for temporal types + * + * @defgroup meos_temporal_comp_trad Traditional comparison functions + * @ingroup meos_temporal_comp + * @brief Traditional comparison functions for temporal types + * + * @defgroup meos_temporal_comp_ever Ever and always comparison functions + * @ingroup meos_temporal_comp + * @brief Ever and always comparison functions for temporal types + * + * @defgroup meos_temporal_comp_temp Temporal comparison functions + * @ingroup meos_temporal_comp + * @brief Temporal comparison functions for temporal types + * + * @defgroup meos_temporal_bbox Bounding box functions + * @ingroup meos_temporal + * @brief Bounding box functions for temporal types + * + * @defgroup meos_temporal_bbox_split Split functions + * @ingroup meos_temporal_bbox + * @brief Split functions for temporal types + * + * @defgroup meos_temporal_bbox_topo Topological functions + * @ingroup meos_temporal_bbox + * @brief Topological functions for temporal types + * + * @defgroup meos_temporal_bbox_pos Position functions + * @ingroup meos_temporal_bbox + * @brief Position functions for temporal types + * + * @defgroup meos_temporal_bool Boolean functions + * @ingroup meos_temporal + * @brief Boolean functions for temporal types + * + * @defgroup meos_temporal_math Mathematical functions + * @ingroup meos_temporal + * @brief Mathematical functions for temporal types + * + * @defgroup meos_temporal_text Text functions + * @ingroup meos_temporal + * @brief Text functions for temporal types + * + * @defgroup meos_temporal_dist Distance functions + * @ingroup meos_temporal + * @brief Distance functions for temporal types + * + * @defgroup meos_temporal_agg Aggregate functions + * @ingroup meos_temporal + * @brief Aggregate functions for temporal types + * + * @defgroup meos_temporal_analytics Analytics functions + * @ingroup meos_temporal + * @brief Analytics functions for temporal types + * + * @defgroup meos_temporal_analytics_simplify Simplification functions + * @ingroup meos_temporal_analytics + * @brief Simplification functions for temporal types + * + * @defgroup meos_temporal_analytics_reduction Reduction functions + * @ingroup meos_temporal_analytics + * @brief Reduction functions for temporal types + * + * @defgroup meos_temporal_analytics_similarity Similarity functions + * @ingroup meos_temporal_analytics + * @brief Similarity functions for temporal types + * + * @defgroup meos_temporal_analytics_tile Tile functions + * @ingroup meos_temporal_analytics + * @brief Tile functions for temporal types + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos_internal.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos_internal.h new file mode 100644 index 00000000..59966d57 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/doxygen_meos_internal.h @@ -0,0 +1,217 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief MEOS Developer's Documentation: Internal API + */ + +/***************************************************************************** + * Sections of the MEOS internal API + *****************************************************************************/ + +/** + * @defgroup meos_internal_setspan Functions for set and span types + * @ingroup meos_internal + * @brief Functions for set and span types + * + * @defgroup meos_internal_box Functions for temporal boxes + * @ingroup meos_internal + * @brief Functions for temporal boxes + * + * @defgroup meos_internal_temporal Functions for temporal types + * @ingroup meos_internal + * @brief Functions for temporal types + * + * @defgroup meos_internal_geo Functions for temporal geometries + * @ingroup meos_internal + * @brief Functions for temporal geometries + * + * @defgroup meos_internal_cbuffer Functions for temporal circular buffers + * @ingroup meos_internal + * @brief Functions for temporal circular buffers + * + * @defgroup meos_internal_npoint Functions for temporal network points + * @ingroup meos_internal + * @brief Functions for temporal network points + * + * @defgroup meos_internal_pose Functions for temporal poses + * @ingroup meos_internal + * @brief Functions for temporal poses + * + * @defgroup meos_internal_rgeo Functions for temporal rigid geometries + * @ingroup meos_internal + * @brief Functions for temporal rigid geometries + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_setspan_inout Input and output functions + * @ingroup meos_internal_setspan + * @brief Input and output functions for set and span types + * + * @defgroup meos_internal_setspan_constructor Constructor functions + * @ingroup meos_internal_setspan + * @brief Constructor functions for set and span types + * + * @defgroup meos_internal_setspan_conversion Conversion functions + * @ingroup meos_internal_setspan + * @brief Conversion functions for set and span types + * + * @defgroup meos_internal_setspan_accessor Accessor functions + * @ingroup meos_internal_setspan + * @brief Accessor functions for set and span types + * + * @defgroup meos_internal_setspan_transf Transformation functions + * @ingroup meos_internal_setspan + * @brief Transformation functions for set and span types + * + * @defgroup meos_internal_setspan_bbox Bounding box functions + * @ingroup meos_internal_setspan + * @brief Bounding box functions for set and span types + * + * @defgroup meos_internal_setspan_topo Topological functions + * @ingroup meos_internal_setspan_bbox + * @brief Topological functions for set and span types + * + * @defgroup meos_internal_setspan_pos Position functions + * @ingroup meos_internal_setspan_bbox + * @brief Position functions for set and span types + * + * @defgroup meos_internal_setspan_set Set functions + * @ingroup meos_internal_setspan + * @brief Set functions for set and span types + * + * @defgroup meos_internal_setspan_dist Distance functions + * @ingroup meos_internal_setspan + * @brief Distance functions for set and span types + * + * @defgroup meos_internal_setspan_agg Aggregate functions + * @ingroup meos_internal_setspan + * @brief Aggregate functions for set and span types + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_box_constructor Constructor functions + * @ingroup meos_internal_box + * @brief Constructor functions for box types + * + * @defgroup meos_internal_box_conversion Conversion functions + * @ingroup meos_internal_box + * @brief Conversion functions for box types + * + * @defgroup meos_internal_box_transf Transformation functions + * @ingroup meos_internal_box + * @brief Transformation functions for box types + * + * @defgroup meos_internal_box_set Set functions + * @ingroup meos_internal_box + * @brief Set functions for box types + */ + +/*****************************************************************************/ + +/** + * @defgroup meos_internal_temporal_inout Input and output functions + * @ingroup meos_internal_temporal + * @brief Input and output functions for temporal types + * + * @defgroup meos_internal_temporal_constructor Constructor functions + * @ingroup meos_internal_temporal + * @brief Constructor functions for temporal types + * + * @defgroup meos_internal_temporal_conversion Conversion functions + * @ingroup meos_internal_temporal + * @brief Conversion functions for temporal types + * + * @defgroup meos_internal_temporal_accessor Accessor functions + * @ingroup meos_internal_temporal + * @brief Accessor functions for temporal types + * + * @defgroup meos_internal_temporal_transf Transformation functions + * @ingroup meos_internal_temporal + * @brief Transformation functions for temporal types + * + * @defgroup meos_internal_temporal_modif Modification functions + * @ingroup meos_internal_temporal + * @brief Modification functions for temporal types + * + * @defgroup meos_internal_temporal_restrict Restriction functions + * @ingroup meos_internal_temporal + * @brief Restriction functions for temporal types + * + * @defgroup meos_internal_temporal_comp Comparison functions + * @ingroup meos_internal_temporal + * @brief Comparison functions for temporal types + * + * @defgroup meos_internal_temporal_bbox Bounding box functions + * @ingroup meos_internal_temporal + * @brief Bounding box functions for temporal types + * + * @defgroup meos_internal_temporal_math Mathematical functions + * @ingroup meos_internal_temporal + * @brief Mathematical functions for temporal types + * + * @defgroup meos_internal_temporal_dist Distance functions + * @ingroup meos_internal_temporal + * @brief Distance functions for temporal types + * + * @defgroup meos_internal_temporal_comp_trad Traditional comparison functions + * @ingroup meos_internal_temporal_comp + * @brief Tranditional comparison functions for temporal types + * + * @defgroup meos_internal_temporal_comp_ever Ever/always comparison functions + * @ingroup meos_internal_temporal_comp + * @brief Ever and always comparison functions for temporal types + * + * @defgroup meos_internal_temporal_comp_temp Temporal comparison functions + * @ingroup meos_internal_temporal_comp + * @brief Temporal comparison functions for temporal types + * + * @defgroup meos_internal_temporal_spatial Spatial functions + * @ingroup meos_internal_temporal + * @brief Spatial functions for temporal geos + * + * @defgroup meos_internal_temporal_spatial_accessor Spatial accessor functions + * @ingroup meos_internal_temporal_spatial + * @brief Spatial accessor functions for temporal geos + * + * @defgroup meos_internal_temporal_spatial_transf Spatial transformation functions + * @ingroup meos_internal_temporal_spatial + * @brief Spatial transformation functions for temporal geos + * + * @defgroup meos_internal_temporal_agg Aggregate functions + * @ingroup meos_internal_temporal + * @brief Aggregate functions for temporal types + */ + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/lifting.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/lifting.h new file mode 100644 index 00000000..0a93af83 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/lifting.h @@ -0,0 +1,112 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Generic functions for lifting functions and operators on temporal + * types. + */ + +#ifndef __LIFTING_H__ +#define __LIFTING_H__ + +/* MEOS */ +#include +#include "temporal/temporal.h" +#include "temporal/meos_catalog.h" + +/** + * Structure to represent the information about lifted functions + * + * The mandatory parameters are `func`, `numparam`, and `restype`. These + * parameters are used by function `tfunc_temporal`, which applies the lifted + * function to every instant of the temporal value. The remaining parameters + * are used by functions `tfunc_temporal_base` and `tfunc_temporal_temporal` + * that apply the lifted function to two base values. + */ + +#define MAX_PARAMS 1 +#define MAX_ARGS 2 + +typedef struct +{ + varfunc func; /**< Variadic function that is lifted */ + int numparam; /**< Number of parameters of the function */ + Datum param[MAX_PARAMS]; /**< Datum array for the parameters of the function */ + MeosType argtype[MAX_ARGS]; /**< Type of the arguments of the function */ + MeosType restype; /**< Type of the result of the function */ + bool reslinear; /**< True if the result has linear interpolation */ + bool invert; /**< True if the arguments of the function must be inverted */ + bool discont; /**< True if the function has instantaneous discontinuities */ + bool ever; /**< True/false when computing the ever/always semantics */ + tpfunc_unary tpfn_unary; /**< Turning point function for unary lifts */ + tpfunc_base tpfn_base; /**< Turning point function for temporal and base types*/ + tpfunc_temp tpfn_temp; /**< Turning point function for two temporal types */ +} LiftedFunctionInfo; + +/*****************************************************************************/ + +extern TInstant *tfunc_tinstant(const TInstant *inst, + LiftedFunctionInfo *lfinfo); +extern TSequence *tfunc_tsequence(const TSequence *seq, + LiftedFunctionInfo *lfinfo); +extern TSequenceSet *tfunc_tsequenceset(const TSequenceSet *ss, + LiftedFunctionInfo *lfinfo); +extern Temporal *tfunc_temporal(const Temporal *temp, + LiftedFunctionInfo *lfinfo); + +extern TInstant *tfunc_tinstant_base(const TInstant *inst, Datum value, + LiftedFunctionInfo *lfinfo); +extern TSequence *tfunc_tsequence_base(const TSequence *seq, Datum value, + LiftedFunctionInfo *lfinfo); +extern TSequenceSet *tfunc_tsequenceset_base(const TSequenceSet *ss, Datum value, + LiftedFunctionInfo *lfinfo); +extern Temporal *tfunc_temporal_base(const Temporal *temp, Datum value, + LiftedFunctionInfo *lfinfo); + +extern TInstant *tfunc_tinstant_tinstant(const TInstant *inst1, + const TInstant *inst2, LiftedFunctionInfo *lfinfo); +extern TSequence *tfunc_tdiscseq_tdiscseq(const TSequence *seq1, + const TSequence *seq2, LiftedFunctionInfo *lfinfo); +extern Temporal *tfunc_tcontseq_tcontseq(const TSequence *seq1, + const TSequence *seq2, LiftedFunctionInfo *lfinfo); +extern TSequenceSet *tfunc_tsequenceset_tsequenceset(const TSequenceSet *ss1, + const TSequenceSet *ss2, LiftedFunctionInfo *lfinfo); +extern Temporal *tfunc_temporal_temporal(const Temporal *temp1, + const Temporal *temp2, LiftedFunctionInfo *lfinfo); + +/*****************************************************************************/ + +extern int eafunc_temporal_base(const Temporal *temp, Datum value, + LiftedFunctionInfo *lfinfo); +extern int eafunc_temporal_temporal(const Temporal *temp1, + const Temporal *temp2, LiftedFunctionInfo *lfinfo); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/meos_catalog.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/meos_catalog.h new file mode 100644 index 00000000..ffdf54d9 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/meos_catalog.h @@ -0,0 +1,311 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for building a cache of temporal types and operators. + */ + +#ifndef __MEOS_CATALOG_H__ +#define __MEOS_CATALOG_H__ + +/* C */ +#include +/* PostgreSQL */ +#ifndef int16 +typedef signed short int16; +#endif +/* MEOS */ +#include + +/***************************************************************************** + * Data structures + *****************************************************************************/ + +/** + * @brief Enumeration that defines the built-in and temporal types used in + * MobilityDB. + */ +typedef enum +{ + T_UNKNOWN = 0, /**< unknown type */ + T_BOOL = 1, /**< boolean type */ + T_DATE = 2, /**< date type */ + T_DATEMULTIRANGE = 3, /**< PostgreSQL date multirange type */ + T_DATERANGE = 4, /**< PostgreSQL date range type */ + T_DATESET = 5, /**< date set type */ + T_DATESPAN = 6, /**< date span type */ + T_DATESPANSET = 7, /**< date span set type */ + T_DOUBLE2 = 8, /**< double2 type */ + T_DOUBLE3 = 9, /**< double3 type */ + T_DOUBLE4 = 10, /**< double4 type */ + T_FLOAT8 = 11, /**< float8 type */ + T_FLOATSET = 12, /**< float8 set type */ + T_FLOATSPAN = 13, /**< float8 span type */ + T_FLOATSPANSET = 14, /**< float8 span set type */ + T_INT4 = 15, /**< int4 type */ + T_INT4MULTIRANGE = 16, /**< PostgreSQL int4 multirange type */ + T_INT4RANGE = 17, /**< PostgreSQL int4 range type */ + T_INTSET = 18, /**< int4 set type */ + T_INTSPAN = 19, /**< int4 span type */ + T_INTSPANSET = 20, /**< int4 span set type */ + T_INT8 = 21, /**< int8 type */ + T_INT8MULTIRANGE = 52, /**< PostgreSQL int8 multirange type */ + T_INT8RANGE = 53, /**< PostgreSQL int8 range type */ + T_BIGINTSET = 22, /**< int8 set type */ + T_BIGINTSPAN = 23, /**< int8 span type */ + T_BIGINTSPANSET = 24, /**< int8 span set type */ + T_STBOX = 25, /**< spatiotemporal box type */ + T_TBOOL = 26, /**< temporal boolean type */ + T_TBOX = 27, /**< temporal box type */ + T_TDOUBLE2 = 28, /**< temporal double2 type */ + T_TDOUBLE3 = 29, /**< temporal double3 type */ + T_TDOUBLE4 = 30, /**< temporal double4 type */ + T_TEXT = 31, /**< text type */ + T_TEXTSET = 32, /**< text type */ + T_TFLOAT = 33, /**< temporal float type */ + T_TIMESTAMPTZ = 34, /**< timestamp with time zone type */ + T_TINT = 35, /**< temporal integer type */ + T_TSTZMULTIRANGE = 36, /**< PostgreSQL timestamp with time zone multirange type */ + T_TSTZRANGE = 37, /**< PostgreSQL timestamp with time zone range type */ + T_TSTZSET = 38, /**< timestamptz set type */ + T_TSTZSPAN = 39, /**< timestamptz span type */ + T_TSTZSPANSET = 40, /**< timestamptz span set type */ + T_TTEXT = 41, /**< temporal text type */ + T_GEOMETRY = 42, /**< geometry type */ + T_GEOMSET = 43, /**< geometry set type */ + T_GEOGRAPHY = 44, /**< geography type */ + T_GEOGSET = 45, /**< geography set type */ + T_TGEOMPOINT = 46, /**< temporal geometry point type */ + T_TGEOGPOINT = 47, /**< temporal geography point type */ + T_NPOINT = 48, /**< network point type */ + T_NPOINTSET = 49, /**< network point set type */ + T_NSEGMENT = 50, /**< network segment type */ + T_TNPOINT = 51, /**< temporal network point type */ + T_POSE = 54, /**< pose type */ + T_POSESET = 55, /**< pose set type */ + T_TPOSE = 56, /**< temporal pose type */ + T_CBUFFER = 57, /**< buffer type */ + T_CBUFFERSET = 58, /**< buffer set type */ + T_TCBUFFER = 59, /**< temporal buffer type */ + T_TGEOMETRY = 60, /**< temporal geometry type */ + T_TGEOGRAPHY = 61, /**< temporal geography type */ + T_TRGEOMETRY = 62, /**< temporal rigid geometry type */ + NUM_MEOS_TYPES /* Dummy value that determines the size of the + * lookup array MeosType -> Oid */ +} MeosType; + +/** + * Enumeration that defines the classes of Boolean operators used in + * MobilityDB. + */ +typedef enum +{ + UNKNOWN_OP = 0, + EQ_OP = 1, /**< Equality `=` operator */ + NE_OP = 2, /**< Distinct `!=` operator */ + LT_OP = 3, /**< Less than `<` operator */ + LE_OP = 4, /**< Less than or equal to `<=` operator */ + GT_OP = 5, /**< Greater than `<` operator */ + GE_OP = 6, /**< Greater than or equal to `>=` operator */ + ADJACENT_OP = 7, /**< Adjacent `-|-` operator */ + UNION_OP = 8, /**< Union `+` operator */ + MINUS_OP = 9, /**< Minus `-` operator */ + INTERSECT_OP = 10, /**< Intersection `*` operator */ + OVERLAPS_OP = 11, /**< Overlaps `&&` operator */ + CONTAINS_OP = 12, /**< Contains `@>` operator */ + CONTAINED_OP = 13, /**< Contained `<@` operator */ + SAME_OP = 14, /**< Same `~=` operator */ + LEFT_OP = 15, /**< Left `<<` operator */ + OVERLEFT_OP = 16, /**< Overleft `&<` operator */ + RIGHT_OP = 17, /**< Right `>>` operator */ + OVERRIGHT_OP = 18, /**< Overright `&>` operator */ + BELOW_OP = 19, /**< Below `<<|` operator */ + OVERBELOW_OP = 20, /**< Overbelow `&<|` operator */ + ABOVE_OP = 21, /**< Above `|>>` operator */ + OVERABOVE_OP = 22, /**< Overbove `|&>` operator */ + FRONT_OP = 23, /**< Front `<>` operator */ + OVERBACK_OP = 26, /**< Overback `/&>` operator */ + BEFORE_OP = 27, /**< Before `<<#` operator */ + OVERBEFORE_OP = 28, /**< Overbefore `&<#` operator */ + AFTER_OP = 29, /**< After `#>>` operator */ + OVERAFTER_OP = 30, /**< Overafter `#&>` operator */ + EVEREQ_OP = 31, /**< Evereq `?=` operator */ + EVERNE_OP = 32, /**< Everne `?<>` operator */ + EVERLT_OP = 33, /**< Everlt `?<` operator */ + EVERLE_OP = 34, /**< Everle `?<=` operator */ + EVERGT_OP = 35, /**< Evergt `?>` operator */ + EVERGE_OP = 36, /**< Everge `?>=` operator */ + ALWAYSEQ_OP = 37, /**< Alwayseq `%=` operator */ + ALWAYSNE_OP = 38, /**< Alwaysne `%<>` operator */ + ALWAYSLT_OP = 39, /**< Alwayslt `%<` operator */ + ALWAYSLE_OP = 40, /**< Alwaysle `%<=` operator */ + ALWAYSGT_OP = 41, /**< Alwaysgt `%>` operator */ + ALWAYSGE_OP = 42, /**< Alwaysge `%>=` operator */ +} meosOper; + +/** + * Structure to represent the temporal type cache array. + */ +typedef struct +{ + MeosType temptype; /**< Enum value of the temporal type */ + MeosType basetype; /**< Enum value of the base type */ +} temptype_catalog_struct; + +/** + * Structure to represent the span type cache array. + */ +typedef struct +{ + MeosType settype; /**< Enum value of the set type */ + MeosType basetype; /**< Enum value of the base type */ +} settype_catalog_struct; + +/** + * Structure to represent the span type cache array. + */ +typedef struct +{ + MeosType spantype; /**< Enum value of the span type */ + MeosType basetype; /**< Enum value of the base type */ +} spantype_catalog_struct; + +/** + * Structure to represent the spanset type cache array. + */ +typedef struct +{ + MeosType spansettype; /**< Enum value of the span type */ + MeosType spantype; /**< Enum value of the base type */ +} spansettype_catalog_struct; + +/*****************************************************************************/ + +#ifndef NDEBUG +extern bool temptype_subtype(tempSubtype subtype); +extern bool temptype_subtype_all(tempSubtype subtype); +#endif +extern const char *tempsubtype_name(tempSubtype subtype); +extern bool tempsubtype_from_string(const char *str, int16 *subtype); +extern const char *meosoper_name(meosOper oper); +extern meosOper meosoper_from_string(const char *name); +extern const char *interptype_name(interpType interp); +extern interpType interptype_from_string(const char *interp_str); + +/* Type conversion functions */ + +extern const char *meostype_name(MeosType type); +extern MeosType temptype_basetype(MeosType type); +extern MeosType settype_basetype(MeosType type); +extern MeosType spantype_basetype(MeosType type); +extern MeosType spantype_spansettype(MeosType type); +extern MeosType spansettype_spantype(MeosType type); +extern MeosType basetype_spantype(MeosType type); +extern MeosType basetype_settype(MeosType type); + +/* Catalog functions */ + +extern bool tnumber_basetype(MeosType type); +extern bool geo_basetype(MeosType type); +#ifndef NDEBUG +extern bool meos_basetype(MeosType type); +extern bool alphanum_basetype(MeosType type); +extern bool alphanum_temptype(MeosType type); +#endif + +extern bool time_type(MeosType type); +#ifndef NDEBUG +extern bool set_basetype(MeosType type); +#endif + +extern bool set_type(MeosType type); +extern bool numset_type(MeosType type); +extern bool ensure_numset_type(MeosType type); +extern bool timeset_type(MeosType type); +extern bool set_spantype(MeosType type); +extern bool ensure_set_spantype(MeosType type); +extern bool alphanumset_type(MeosType settype); +extern bool geoset_type(MeosType type); +extern bool ensure_geoset_type(MeosType type); +extern bool spatialset_type(MeosType type); +extern bool ensure_spatialset_type(MeosType type); + +extern bool span_basetype(MeosType type); +extern bool span_canon_basetype(MeosType type); +extern bool span_type(MeosType type); +extern bool type_span_bbox(MeosType type); +extern bool span_tbox_type(MeosType type); +extern bool ensure_span_tbox_type(MeosType type); +extern bool numspan_basetype(MeosType type); +extern bool numspan_type(MeosType type); +extern bool ensure_numspan_type(MeosType type); +extern bool timespan_basetype(MeosType type); +extern bool timespan_type(MeosType type); + +extern bool spanset_type(MeosType type); +extern bool timespanset_type(MeosType type); +extern bool ensure_timespanset_type(MeosType type); + +extern bool temporal_type(MeosType type); +#ifndef NDEBUG +extern bool temporal_basetype(MeosType type); +#endif +extern bool temptype_supports_linear(MeosType type); +extern bool basetype_byvalue(MeosType type); +extern bool basetype_varlength(MeosType type); +extern int16 meostype_length(MeosType type); +#ifndef NDEBUG +extern bool talphanum_type(MeosType type); +#endif +extern bool talpha_type(MeosType type); +extern bool tnumber_type(MeosType type); +extern bool ensure_tnumber_type(MeosType type); +extern bool ensure_tnumber_basetype(MeosType type); +extern bool tnumber_spantype(MeosType type); +extern bool spatial_basetype(MeosType type); +extern bool tspatial_type(MeosType type); +extern bool ensure_tspatial_type(MeosType type); +extern bool tpoint_type(MeosType type); +extern bool ensure_tpoint_type(MeosType type); +extern bool tgeo_type(MeosType type); +extern bool ensure_tgeo_type(MeosType type); +extern bool tgeo_type_all(MeosType type); +extern bool ensure_tgeo_type_all(MeosType type); +extern bool tgeometry_type(MeosType type); +extern bool ensure_tgeometry_type(MeosType type); +extern bool tgeodetic_type(MeosType type); +extern bool ensure_tgeodetic_type(MeosType type); +extern bool ensure_tnumber_tpoint_type(MeosType type); + +/*****************************************************************************/ + +#endif /* __MEOS_CATALOG_H__ */ + diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/postgres_types.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/postgres_types.h new file mode 100644 index 00000000..7c671abd --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/postgres_types.h @@ -0,0 +1,114 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for base and time types corresponding to external + * PostgreSQL functions in order to bypass the function manager @p fmgr.c. + */ + +#ifndef POSTGRES_TYPES_H +#define POSTGRES_TYPES_H + +/* PostgreSQL */ +#include +#if MEOS +#include "postgres_int_defs.h" +#else +#include +#include +#endif /* MEOS */ + +#if POSTGRESQL_VERSION_NUMBER < 170000 +/* + * Infinite intervals are represented by setting all fields to the minimum or + * maximum integer values. + */ +#define INTERVAL_NOBEGIN(i) \ + do { \ + (i)->time = PG_INT64_MIN; \ + (i)->day = PG_INT32_MIN; \ + (i)->month = PG_INT32_MIN; \ + } while (0) + +#define INTERVAL_IS_NOBEGIN(i) \ + ((i)->month == PG_INT32_MIN && (i)->day == PG_INT32_MIN && (i)->time == PG_INT64_MIN) + +#define INTERVAL_NOEND(i) \ + do { \ + (i)->time = PG_INT64_MAX; \ + (i)->day = PG_INT32_MAX; \ + (i)->month = PG_INT32_MAX; \ + } while (0) + +#define INTERVAL_IS_NOEND(i) \ + ((i)->month == PG_INT32_MAX && (i)->day == PG_INT32_MAX && (i)->time == PG_INT64_MAX) + +#define INTERVAL_NOT_FINITE(i) (INTERVAL_IS_NOBEGIN(i) || INTERVAL_IS_NOEND(i)) +#endif /* POSTGRESQL_VERSION_NUMBER < 170000 */ + +/* Functions adapted from int.c */ + +extern int32 int4_in(const char *str); +extern char *int4_out(int32 val); + +/* Functions adapted from int8.c */ + +extern int64 int8_in(const char *str); +extern char *int8_out(int64 val); + +/* Functions adapted from float.c */ + +extern float8 float8_in(const char *num, const char *type_name, + const char *orig_string); +extern char *float8_out(double num, int maxdd); +extern float8 pg_dsin(float8 arg1); +extern float8 pg_dcos(float8 arg1); +extern float8 pg_datan(float8 arg1); +extern float8 pg_datan2(float8 arg1, float8 arg2); + +/* Functions adadpted from timestamp.c */ + +extern Interval *interval_negate(const Interval *interval); +extern Interval *pg_interval_justify_hours(const Interval *span); + +/* Functions adapted from hashfn.h and hashfn.c */ + +extern uint32 hash_bytes_uint32(uint32 k); +extern uint32 pg_hashint8(int64 val); +extern uint32 pg_hashfloat8(float8 key); +extern uint64 hash_bytes_uint32_extended(uint32 k, uint64 seed); +extern uint64 pg_hashint8extended(int64 val, uint64 seed); +extern uint64 pg_hashfloat8extended(float8 key, uint64 seed); +extern uint32 pg_hashtext(text *key); +extern uint64 pg_hashtextextended(text *key, uint64 seed); + +/*****************************************************************************/ + +#endif /* POSTGRES_TYPES_H */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/set.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/set.h new file mode 100644 index 00000000..3a5bf71b --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/set.h @@ -0,0 +1,95 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for set of (distinct) timestamps. + */ + +#ifndef __SET_H__ +#define __SET_H__ + +/*****************************************************************************/ + +/* + * fmgr macros for ordered set types + */ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" +#include "temporal/temporal.h" + +#if MEOS + #define DatumGetSetP(X) ((Set *) DatumGetPointer(X)) +#else + #define DatumGetSetP(X) ((Set *) PG_DETOAST_DATUM(X)) +#endif /* MEOS */ +#define SetPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_SET_P(X) ((Set *) PG_GETARG_VARLENA_P(X)) +#define PG_RETURN_SET_P(X) PG_RETURN_POINTER(X) + +#define MINIDX 0 +#define MAXIDX count - 1 + +/***************************************************************************** + * Struct definition for the unnest operation + *****************************************************************************/ + +/** + * Structure to represent information about an entry that can be placed + * to either group without affecting overlap over selected axis ("common entry"). + */ +typedef struct +{ + bool done; + int i; + int count; + Set *set; /* Set to unnest */ + Datum *values; /* Values obtained by getValues(temp) */ +} SetUnnestState; + +/*****************************************************************************/ + +/* General functions */ + +extern char *set_out_fn(const Set *s, int maxdd, outfunc value_out); + +extern bool ensure_set_isof_type(const Set *s, MeosType settype); +extern bool ensure_valid_set_set(const Set *s1, const Set *s2); + +extern bool set_find_value(const Set *s, Datum, int *loc); + +extern SetUnnestState *set_unnest_state_make(const Set *set); +extern void set_unnest_state_next(SetUnnestState *state); + +/*****************************************************************************/ + +#endif /* __SET_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/skiplist.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/skiplist.h new file mode 100644 index 00000000..546c5ba0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/skiplist.h @@ -0,0 +1,62 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Skiplist data structure used for performing temporal aggregates + */ + +#ifndef __SKIPLIST_H__ +#define __SKIPLIST_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/***************************************************************************** + * fmgr macros + *****************************************************************************/ + +#define DatumGetSkipListP(X) ((SkipList *) DatumGetPointer(X)) +#define SkipListPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_SKIPLIST_P(n) DatumGetSkipListP(PG_GETARG_DATUM(n)) +#define PG_RETURN_SKIPLIST_P(x) return SkipListPGetDatum(x) + +/*****************************************************************************/ + +extern bool ensure_same_skiplist_subtype(SkipList *state, uint8 subtype); + +extern void skiplist_set_extra(SkipList *state, void *data, size_t size); +extern void *skiplist_headval(SkipList *list); + + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span.h new file mode 100644 index 00000000..c38c66e7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span.h @@ -0,0 +1,117 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic routines for spans (a.k.a. ranges) composed of two `Datum` + * values and two Boolean values stating whether the bounds are inclusive. + */ + +#ifndef __SPAN_H__ +#define __SPAN_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/** + * Internal representation of either bound of a span (not what's on disk) + */ +typedef struct +{ + Datum val; /**< bound value */ + bool inclusive; /**< bound is inclusive (vs exclusive) */ + bool lower; /**< this is the lower (vs upper) bound */ + uint8 spantype; /**< span type */ + uint8 basetype; /**< span basetype */ +} SpanBound; + +/* + * fmgr macros for span types + */ + +#define DatumGetSpanP(X) ((Span *) DatumGetPointer(X)) +#define SpanPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_SPAN_P(X) DatumGetSpanP(PG_GETARG_DATUM(X)) +#define PG_RETURN_SPAN_P(X) PG_RETURN_POINTER(X) + +#if MEOS + #define DatumGetSpanSetP(X) ((SpanSet *) DatumGetPointer(X)) +#else + #define DatumGetSpanSetP(X) ((SpanSet *) PG_DETOAST_DATUM(X)) +#endif /* MEOS */ +#define SpanSetPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_SPANSET_P(X) ((SpanSet *) PG_GETARG_VARLENA_P(X)) +#define PG_RETURN_SPANSET_P(X) PG_RETURN_POINTER(X) + +/*****************************************************************************/ + +/* General functions */ + +extern bool ensure_span_isof_type(const Span *s, MeosType spantype); +extern bool ensure_span_isof_basetype(const Span *s, MeosType basetype); +extern bool ensure_same_span_type(const Span *s1, const Span *s2); +extern bool ensure_valid_span_span(const Span *s1, const Span *s2); + +extern void span_deserialize(const Span *s, SpanBound *lower, + SpanBound *upper); +extern int span_bound_cmp(const SpanBound *b1, const SpanBound *b2); +extern int span_bound_qsort_cmp(const void *s1, const void *s2); +extern int span_lower_cmp(const Span *s1, const Span *s2); +extern int span_upper_cmp(const Span *s1, const Span *s2); +extern Datum span_decr_bound(Datum upper, MeosType basetype); +extern Datum span_incr_bound(Datum upper, MeosType basetype); +extern Span *spanarr_normalize(Span *spans, int count, bool sort, + int *newcount); +extern void span_bounds_shift_scale_value(Datum shift, Datum width, + MeosType type, bool hasshift, bool haswidth, Datum *lower, Datum *upper); +extern void span_bounds_shift_scale_time(const Interval *shift, + const Interval *duration, TimestampTz *lower, TimestampTz *upper); +extern void floatspan_floor_ceil_iter(Span *s, datum_func1 func); +extern void numspan_delta_scale_iter(Span *s, Datum origin, Datum delta, + bool hasdelta, double scale); +extern void tstzspan_delta_scale_iter(Span *s, TimestampTz origin, + TimestampTz delta, double scale); +extern void numspan_shift_scale_iter(Span *s, Datum shift, Datum width, + bool hasshift, bool haswidth, Datum *delta, double *scale); +extern void tstzspan_shift_scale1(Span *s, const Interval *shift, + const Interval *duration, TimestampTz *delta, double *scale); + +extern int mi_span_span(const Span *s1, const Span *s2, Span *result); +extern int mi_span_value(const Span *s, Datum value, Span *result); + +extern double dist_double_value_value(Datum l, Datum r, MeosType type); + +/*****************************************************************************/ + +#endif /* __SPAN_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span_index.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span_index.h new file mode 100644 index 00000000..7f91674f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/span_index.h @@ -0,0 +1,56 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic routines for indexing spans + */ + +#ifndef __SPAN_INDEX_H__ +#define __SPAN_INDEX_H__ + +/* PostgreSQL */ +#include +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern int common_entry_cmp(const void *i1, const void *i2); + +extern bool span_index_leaf_consistent(const Span *key, const Span *query, + StrategyNumber strategy); +extern bool span_gist_inner_consistent(const Span *key, const Span *query, + StrategyNumber strategy); +extern bool span_index_recheck(StrategyNumber strategy); + +/*****************************************************************************/ + +#endif /* __SPAN_INDEX_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/spanset.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/spanset.h new file mode 100644 index 00000000..c0bae9af --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/spanset.h @@ -0,0 +1,58 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for set of disjoint spans. + */ + +#ifndef __SPANSET_H__ +#define __SPANSET_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/* General functions */ + +extern bool ensure_spanset_isof_type(const SpanSet *ss, MeosType spansettype); +extern bool ensure_same_spanset_type(const SpanSet *ss1, const SpanSet *ss2); +extern bool ensure_same_spanset_span_type(const SpanSet *ss, const Span *s); +extern bool ensure_valid_spanset_span(const SpanSet *ss, const Span *s); +extern bool ensure_valid_spanset_spanset(const SpanSet *ss1, + const SpanSet *ss2); + +extern bool spanset_find_value(const SpanSet *ss, Datum v, int *loc); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/stratnum.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/stratnum.h new file mode 100644 index 00000000..8fd50ef9 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/stratnum.h @@ -0,0 +1,105 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Strategy numbers for MEOS indexes + * @note Definitions borrowed from startnum.h + */ + +#ifndef __STRATNUM_H__ +#define __STRATNUM_H__ + +/* PostgreSQL */ +#include + +/*****************************************************************************/ + +#if ! MEOS +/* + * Strategy numbers identify the semantics that particular operators have + * with respect to particular operator classes. In some cases a strategy + * subtype (an OID) is used as further information. + */ +typedef uint16 StrategyNumber; + +#define InvalidStrategy ((StrategyNumber) 0) + +/* + * Strategy numbers common to (some) GiST, SP-GiST and BRIN opclasses. + * + * The first few of these come from the R-Tree indexing method (hence the + * names); the others have been added over time as they have been needed. + */ +#define RTLeftStrategyNumber 1 /* for << */ +#define RTOverLeftStrategyNumber 2 /* for &< */ +#define RTOverlapStrategyNumber 3 /* for && */ +#define RTOverRightStrategyNumber 4 /* for &> */ +#define RTRightStrategyNumber 5 /* for >> */ +#define RTSameStrategyNumber 6 /* for ~= */ +#define RTContainsStrategyNumber 7 /* for @> */ +#define RTContainedByStrategyNumber 8 /* for <@ */ +#define RTOverBelowStrategyNumber 9 /* for &<| */ +#define RTBelowStrategyNumber 10 /* for <<| */ +#define RTAboveStrategyNumber 11 /* for |>> */ +#define RTOverAboveStrategyNumber 12 /* for |&> */ +#define RTOldContainsStrategyNumber 13 /* for old spelling of @> */ +#define RTOldContainedByStrategyNumber 14 /* for old spelling of <@ */ +#define RTKNNSearchStrategyNumber 15 /* for <-> (distance) */ +#define RTContainsElemStrategyNumber 16 /* for range types @> elem */ +#define RTAdjacentStrategyNumber 17 /* for -|- */ +#define RTEqualStrategyNumber 18 /* for = */ +#define RTNotEqualStrategyNumber 19 /* for != */ +#define RTLessStrategyNumber 20 /* for < */ +#define RTLessEqualStrategyNumber 21 /* for <= */ +#define RTGreaterStrategyNumber 22 /* for > */ +#define RTGreaterEqualStrategyNumber 23 /* for >= */ +#define RTSubStrategyNumber 24 /* for inet >> */ +#define RTSubEqualStrategyNumber 25 /* for inet <<= */ +#define RTSuperStrategyNumber 26 /* for inet << */ +#define RTSuperEqualStrategyNumber 27 /* for inet >>= */ +#define RTPrefixStrategyNumber 28 /* for text ^@ */ +#define RTOldBelowStrategyNumber 29 /* for old spelling of <<| */ +#define RTOldAboveStrategyNumber 30 /* for old spelling of |>> */ + +#endif /* ! MEOS */ + +/* Additional operator strategy numbers used for temporal types */ + +#define RTOverBeforeStrategyNumber 28 /* for &<# */ +#define RTBeforeStrategyNumber 29 /* for <<# */ +#define RTAfterStrategyNumber 30 /* for #>> */ +#define RTOverAfterStrategyNumber 31 /* for #&> */ +#define RTOverFrontStrategyNumber 32 /* for &> */ +#define RTOverBackStrategyNumber 35 /* for /&> */ + +/*****************************************************************************/ + +#endif /* __STRATNUM_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbool_ops.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbool_ops.h new file mode 100644 index 00000000..ed0a7cb7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbool_ops.h @@ -0,0 +1,55 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal Boolean operators (and, or, not). + */ + +#ifndef __TBOOL_BOOLOPS_H__ +#define __TBOOL_BOOLOPS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern Datum datum_and(Datum l, Datum r); +extern Datum datum_or(Datum l, Datum r); + +extern Temporal *boolop_tbool_bool(const Temporal *temp, Datum b, + datum_func2 func, bool invert); +extern Temporal *boolop_tbool_tbool(const Temporal *temp1, + const Temporal *temp2, datum_func2 func); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox.h new file mode 100644 index 00000000..305d99c8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox.h @@ -0,0 +1,67 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for temporal bounding boxes. + */ + +#ifndef __TBOX_H__ +#define __TBOX_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include + +/*****************************************************************************/ + +/* fmgr macros temporal types */ + +#define DatumGetTboxP(X) ((TBox *) DatumGetPointer(X)) +#define TboxPGetDatum(X) PointerGetDatum(X) +#define PG_GETARG_TBOX_P(n) DatumGetTboxP(PG_GETARG_DATUM(n)) +#define PG_RETURN_TBOX_P(x) return TboxPGetDatum(x) + +/*****************************************************************************/ + +/* Parameter tests */ + +extern bool ensure_same_dimensionality_tbox(const TBox *box1, const TBox *box2); + +/* Conversion */ + +extern TBox *set_tbox(const Set *s); +extern TBox *span_tbox(const Span *s); +extern Span *tbox_tstzspan(const TBox *box); +extern Span *tbox_intspan(const TBox *box); +extern Span *tbox_floatspan(const TBox *box); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox_index.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox_index.h new file mode 100644 index 00000000..44bee077 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tbox_index.h @@ -0,0 +1,54 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic routines for indexing temporal values + */ + +#ifndef __TBOX_INDEX_H__ +#define __TBOX_INDEX_H__ + +/* PostgreSQL */ +#include +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern bool tbox_index_leaf_consistent(const TBox *key, const TBox *query, + StrategyNumber strategy); +extern bool tbox_gist_inner_consistent(const TBox *key, const TBox *query, + StrategyNumber strategy); +extern bool tbox_index_recheck(StrategyNumber strategy); + +/*****************************************************************************/ + +#endif /* __TBOX_INDEX_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal.h new file mode 100644 index 00000000..ceff7374 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal.h @@ -0,0 +1,444 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for temporal types of any subtype. + */ + +#ifndef __TEMPORAL_H__ +#define __TEMPORAL_H__ + +/* PostgreSQL */ +#include +#if POSTGRESQL_VERSION_NUMBER >= 160000 + #include "varatt.h" +#endif +/* MEOS */ +#include +#include +#include +#include "temporal/doublen.h" +#include "temporal/meos_catalog.h" + +/* To avoid including pg_collation_d */ +#define DEFAULT_COLLATION_OID 100 +#define C_COLLATION_OID 950 +#define POSIX_COLLATION_OID 951 + +#ifndef FMGR_H + /* To avoid including fmgr.h However this implies that the text values must + * be ALWAYS detoasted */ + #define DatumGetTextP(X) ((text *) DatumGetPointer(X)) // ((text *) PG_DETOAST_DATUM(X)) +#endif /* FMGR_H */ + +/** + * Floating point precision + */ +#define MEOS_EPSILON 1.0e-06 +#define MEOS_FP_EQ(A, B) (fabs((A)-(B)) <= MEOS_EPSILON) +#define MEOS_FP_NE(A, B) (fabs((A)-(B)) > MEOS_EPSILON) +#define MEOS_FP_LT(A, B) (((A) + MEOS_EPSILON) < (B)) +#define MEOS_FP_LE(A, B) (((A) - MEOS_EPSILON) <= (B)) +#define MEOS_FP_GT(A, B) (((A) - MEOS_EPSILON) > (B)) +#define MEOS_FP_GE(A, B) (((A) + MEOS_EPSILON) >= (B)) + +/** + * Precision for distance operations + */ +#define DIST_EPSILON 1.0e-06 + +#define UNUSED __attribute__((unused)) + +/** Symbolic constants for lifting */ +#define DISCONTINUOUS true +#define CONTINUOUS false + +/** Symbolic constants for sets and for normalizing spans */ +#define ORDER true +#define ORDER_NO false + +/** Symbolic constants for the output of string elements */ +#define QUOTES true +#define QUOTES_NO false + +/** Symbolic constants for the output of string elements */ +#define SPACES true +#define SPACES_NO false + +/** Symbolic constants for lifting */ +#define INVERT true +#define INVERT_NO false + +/** Symbolic constants for the restriction functions */ +#define REST_AT true +#define REST_MINUS false + +/** Symbolic constants for the restriction functions with boxes */ +#define BORDER_INC true +#define BORDER_EXC false + +/** Symbolic constants for the ever/always functions */ +#define EVER true +#define ALWAYS false + +/** Symbolic constants for the temporal point/geo functions */ +#define TPOINT true +#define TGEO false + +/** Symbolic constants for the restriction and the aggregation functions */ +#define GET_MIN true +#define GET_MAX false + +/** Symbolic constants for the synchronization and the aggregation functions */ +#define CROSSINGS true +#define CROSSINGS_NO false + +/** Symbolic constants for the synchronization and the aggregation functions */ +#define BBOX_TEST true +#define BBOX_TEST_NO false + +/** Symbolic constants for the make functions */ +#define MERGE true +#define MERGE_NO false + +#define NORMALIZE true +#define NORMALIZE_NO false + +/** Symbolic constants for spatial relationships */ +#define WITH_Z true +#define NO_Z false + +/** Symbolic constants for the span selectivity functions */ +#define VALUE_SEL true +#define TIME_SEL false + +/** Symbolic constants for the restriction functions */ +#define UPPER_EXC true +#define TIME_SEL false + +/** Symbolic constants for trajectory function */ +#define UNARY_UNION true +#define UNARY_UNION_NO false + +/** Enumeration for the intersection/synchronization functions */ +typedef enum +{ + SYNCHRONIZE_NOCROSS, + SYNCHRONIZE_CROSS, +} SyncMode; + +/** Enumeration for the families of temporal types */ +typedef enum +{ + TEMPORALTYPE, + TNUMBERTYPE, + TSPATIALTYPE, +} TemporalFamily; + +/** Enumeration for the set operations of span and temporal types */ +typedef enum +{ + UNION, + INTER, + MINUS +} SetOper; + +/** Enumeration for the comparison operations */ +typedef enum +{ + EQ, + NE, + LT, + LE, + GT, + GE +} CompOper; + +/* PostgreSQL removed pg_atoi in version 15 */ +#if POSTGRESQL_VERSION_NUMBER >= 150000 + extern int32 pg_strtoint32(const char *s); +#else + /* To avoid including */ + extern int32 pg_atoi(const char *s, int size, int c); +#endif /* POSTGRESQL_VERSION_NUMBER >= 150000 */ + +/***************************************************************************** + * Additional operator strategy numbers used in the GiST and SP-GiST temporal + * opclasses with respect to those defined in the file stratnum.h + *****************************************************************************/ + +#define RTOverBeforeStrategyNumber 28 /* for &<# */ +#define RTBeforeStrategyNumber 29 /* for <<# */ +#define RTAfterStrategyNumber 30 /* for #>> */ +#define RTOverAfterStrategyNumber 31 /* for #&> */ +#define RTOverFrontStrategyNumber 32 /* for &> */ +#define RTOverBackStrategyNumber 35 /* for /&> */ + +/***************************************************************************** + * Well-Known Binary (WKB) + *****************************************************************************/ + +/* Data type size */ +#define MEOS_WKB_BYTE_SIZE 1 +#define MEOS_WKB_INT2_SIZE 2 +#define MEOS_WKB_INT4_SIZE 4 +#define MEOS_WKB_INT8_SIZE 8 +#define MEOS_WKB_DOUBLE_SIZE 8 +#define MEOS_WKB_DATE_SIZE 4 +#define MEOS_WKB_TIMESTAMP_SIZE 8 + +/* Temporal subtype */ +enum MEOS_WKB_TSUBTYPE +{ + MEOS_WKB_TINSTANT = 1, /**< temporal instant subtype */ + MEOS_WKB_TSEQUENCE = 2, /**< temporal sequence subtype */ + MEOS_WKB_TSEQUENCESET = 3, /**< temporal sequence set subtype */ +}; + +/* Span bounds */ +#define MEOS_WKB_LOWER_INC 0x01 +#define MEOS_WKB_UPPER_INC 0x02 + +/* Machine endianness */ +#define XDR 0 /* big endian */ +#define NDR 1 /* little endian */ + +/* Variation flags + * The first byte of the variation flag depends on the type we are sending + * - Set types: xxxO where O states whether the set is ordered or not + * - Box types: xxTX where X and T state whether the corresponding dimensions + * are present + * - Temporal types: xxSS where SS correspond to the subtype + * and x are unused bits + */ +#define MEOS_WKB_ORDERED 0x01 // 1 +#define MEOS_WKB_XFLAG 0x01 // 1 +#define MEOS_WKB_TFLAG 0x02 // 2 +#define MEOS_WKB_INTERPFLAGS 0x0C // 4 + 8 +#define MEOS_WKB_ZFLAG 0x10 // 16 +#define MEOS_WKB_GEODETICFLAG 0x20 // 32 +#define MEOS_WKB_SRIDFLAG 0x40 // 64 + +#define MEOS_WKB_GET_INTERP(flags) (((flags) & MEOS_WKB_INTERPFLAGS) >> 2) +#define MEOS_WKB_SET_INTERP(flags, value) ((flags) = (((flags) & ~MEOS_WKB_INTERPFLAGS) | ((value & 0x0003) << 2))) + +// #define MEOS_WKB_GET_LINEAR(flags) ((bool) (((flags) & MEOS_WKB_LINEARFLAG)>>3)) + +/***************************************************************************** + * Definitions for binning and tiling + *****************************************************************************/ + +/* + * The default origin is Monday 2000-01-03. We don't use PG epoch since it + * starts on a Saturday. This makes time bins by a week more intuitive and + * aligns it with date_trunc. + */ +#define JAN_3_2000 (2 * USECS_PER_DAY) +#define DEFAULT_TIME_ORIGIN (JAN_3_2000) +#define DEFAULT_FLOATSPAN_ORIGIN (0.0) +#define DEFAULT_INTSPAN_ORIGIN (0) +#define DEFAULT_BIGINTSPAN_ORIGIN (0) + +/***************************************************************************** + * Additional struct definitions for temporal types + *****************************************************************************/ + +/** + * Structure to represent all types of bounding boxes + */ +typedef union bboxunion +{ + Span p; /**< Span */ + TBox b; /**< Temporal box */ + STBox g; /**< Spatiotemporal box */ +} bboxunion; + +/***************************************************************************** + * Miscellaneous + *****************************************************************************/ + +/* Definition of output function */ +typedef char *(*outfunc)(Datum value, MeosType type, int maxdd); + +/* Definition of qsort comparator for integers */ +typedef int (*qsort_comparator) (const void *a, const void *b); + +/* Definition of a variadic function type for temporal lifting */ +typedef Datum (*varfunc) (Datum, ...); + +/* Definition of a turning point function for a unary temporal lift */ +typedef int (*tpfunc_unary)(Datum, Datum, TimestampTz, TimestampTz, + TimestampTz *, TimestampTz *); + +/* Definition of a turning point function for a temporal and a base types */ +typedef int (*tpfunc_base)(Datum, Datum, Datum, TimestampTz, TimestampTz, + TimestampTz *, TimestampTz *); + +/* Definition of a turning point function for two temporal types */ +typedef int (*tpfunc_temp)(Datum, Datum, Datum, Datum, Datum, TimestampTz, + TimestampTz, TimestampTz *, TimestampTz *); + +/***************************************************************************** + * fmgr macros temporal types + *****************************************************************************/ + +/* doubleN */ + +#define DatumGetDouble2P(X) ((double2 *) DatumGetPointer(X)) +#define Double2PGetDatum(X) PointerGetDatum(X) +#define DatumGetDouble3P(X) ((double3 *) DatumGetPointer(X)) +#define Double3PGetDatum(X) PointerGetDatum(X) +#define DatumGetDouble4P(X) ((double4 *) DatumGetPointer(X)) +#define Double4PGetDatum(X) PointerGetDatum(X) + +/* Temporal types */ + +#if MEOS + #define DatumGetTemporalP(X) ((Temporal *) DatumGetPointer(X)) + #define DatumGetTInstantP(X) ((TInstant *) DatumGetPointer(X)) + #define DatumGetTSequenceP(X) ((TSequence *) DatumGetPointer(X)) + #define DatumGetTSequenceSetP(X) ((TSequenceSet *) DatumGetPointer(X)) +#else + #define DatumGetTemporalP(X) ((Temporal *) PG_DETOAST_DATUM(X)) + #define DatumGetTInstantP(X) ((TInstant *) PG_DETOAST_DATUM(X)) + #define DatumGetTSequenceP(X) ((TSequence *) PG_DETOAST_DATUM(X)) + #define DatumGetTSequenceSetP(X) ((TSequenceSet *) PG_DETOAST_DATUM(X)) +#endif /* MEOS */ + +#define PG_GETARG_TEMPORAL_P(X) ((Temporal *) PG_GETARG_VARLENA_P(X)) +#define PG_GETARG_TINSTANT_P(X) ((TInstant *) PG_GETARG_VARLENA_P(X)) +#define PG_GETARG_TSEQUENCE_P(X) ((TSequence *) PG_GETARG_VARLENA_P(X)) +#define PG_GETARG_TSEQUENCESET_P(X) ((TSequenceSet *) PG_GETARG_VARLENA_P(X)) + +#define PG_RETURN_TEMPORAL_P(X) PG_RETURN_POINTER(X) +#define PG_RETURN_TINSTANT_P(X) PG_RETURN_POINTER(X) +#define PG_RETURN_TSEQUENCE_P(X) PG_RETURN_POINTER(X) +#define PG_RETURN_TSEQUENCESET_P(X) PG_RETURN_POINTER(X) + +#define TemporalPGetDatum(X) PointerGetDatum(X) +#define TInstantPGetDatum(X) PointerGetDatum(X) +#define TSequencePGetDatum(X) PointerGetDatum(X) +#define TSequenceSetPGetDatum(X) PointerGetDatum(X) + +#define DATUM_FREE(value, basetype) \ + do { \ + if (! basetype_byvalue(basetype)) \ + pfree(DatumGetPointer(value)); \ + } while (0) + +#define DATUM_FREE_IF_COPY(value, basetype, n) \ + do { \ + if (! basetype_byvalue(basetype) && DatumGetPointer(value) != PG_GETARG_POINTER(n)) \ + pfree(DatumGetPointer(value)); \ + } while (0) + +/** + * This macro is based on PG_FREE_IF_COPY, except that it accepts two pointers. + * See PG_FREE_IF_COPY comment in src/include/fmgr.h in postgres source code + * for more details. + * This macro is the same as POSTGIS_FREE_IF_COPY_P. + */ +#define PG_FREE_IF_COPY_P(ptrsrc, ptrori) \ + do { \ + if ((Pointer) (ptrsrc) != (Pointer) (ptrori)) \ + pfree(ptrsrc); \ + } while (0) + +#define PG_DATUM_NEEDS_DETOAST(datum) \ + (VARATT_IS_EXTENDED((datum)) || VARATT_IS_EXTERNAL((datum)) || \ + VARATT_IS_COMPRESSED((datum))) + +/*****************************************************************************/ + +/* Parameter tests */ + +extern bool ensure_has_X(MeosType type, int16 flags); +extern bool ensure_has_Z(MeosType type, int16 flags); +extern bool ensure_has_T(MeosType type, int16 flags); +extern bool ensure_has_not_Z(MeosType type, int16 flags); +extern bool ensure_not_null(void *ptr); +extern bool ensure_one_not_null(void *ptr1, void *ptr2); +extern bool ensure_one_true(bool hasshift, bool haswidth); +extern bool ensure_valid_interp(MeosType temptype, interpType interp); +extern bool ensure_continuous(const Temporal *temp); +extern bool ensure_same_interp(const Temporal *temp1, const Temporal *temp2); +extern bool ensure_same_continuous_interp(int16 flags1, int16 flags2); +extern bool ensure_linear_interp(int16 flags); +extern bool ensure_nonlinear_interp(int16 flags); +extern bool ensure_common_dimension(int16 flags1, int16 flags2); +extern bool ensure_temporal_isof_type(const Temporal *temp, MeosType type); +extern bool ensure_temporal_isof_basetype(const Temporal *temp, + MeosType basetype); +extern bool ensure_temporal_isof_subtype(const Temporal *temp, + tempSubtype type); +extern bool ensure_same_temporal_type(const Temporal *temp1, + const Temporal *temp2); + +extern bool ensure_valid_tnumber_numspan(const Temporal *temp, const Span *s); +extern bool ensure_valid_tnumber_numspanset(const Temporal *temp, + const SpanSet *ss); +extern bool ensure_valid_tnumber_tbox(const Temporal *temp, const TBox *box); +extern bool ensure_valid_temporal_set(const Temporal *temp, const Set *s); +extern bool ensure_valid_temporal_temporal(const Temporal *temp1, const Temporal *temp2); +extern bool ensure_valid_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2); +extern bool ensure_not_negative(int i); +extern bool ensure_positive(int i); +extern bool not_negative_datum(Datum size, MeosType basetype); +extern bool ensure_not_negative_datum(Datum size, MeosType basetype); +extern bool positive_datum(Datum size, MeosType basetype); +extern bool ensure_positive_datum(Datum size, MeosType basetype); +extern bool ensure_valid_day_duration(const Interval *duration); +extern bool positive_duration(const Interval *duration); +extern bool ensure_positive_duration(const Interval *duration); + +/* General functions */ + +extern void *temporal_bbox_ptr(const Temporal *temp); + +extern bool intersection_temporal_temporal(const Temporal *temp1, +const Temporal *temp2, SyncMode mode, Temporal **inter1, Temporal **inter2); + +/* Version functions */ + +extern char *mobilitydb_version(void); +extern char *mobilitydb_full_version(void); + +/* Transformations */ + +extern datum_func2 round_fn(MeosType basetype); + +/* Restriction functions */ + +extern bool temporal_bbox_restrict_value(const Temporal *temp, Datum value); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_aggfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_aggfuncs.h new file mode 100644 index 00000000..10812a99 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_aggfuncs.h @@ -0,0 +1,102 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal aggregate functions + */ + +#ifndef __TEMPORAL_AGGFUNCS_H__ +#define __TEMPORAL_AGGFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern Datum datum_min_int32(Datum l, Datum r); +extern Datum datum_max_int32(Datum l, Datum r); +extern Datum datum_min_float8(Datum l, Datum r); +extern Datum datum_max_float8(Datum l, Datum r); +extern Datum datum_sum_int32(Datum l, Datum r); +extern Datum datum_sum_float8(Datum l, Datum r); +extern Datum datum_min_text(Datum l, Datum r); +extern Datum datum_max_text(Datum l, Datum r); +extern Datum datum_sum_double2(Datum l, Datum r); +extern Datum datum_sum_double3(Datum l, Datum r); +extern Datum datum_sum_double4(Datum l, Datum r); + +/* Specific skiplist functions for temporal aggregations */ + +extern int temporal_skiplist_common(SkipList *list, void **values, int count, + int *lower, int *upper, int update[SKIPLIST_MAXLEVEL]); +extern void **temporal_skiplist_merge(void **spliced, int spliced_count, + void **values, int count, datum_func2 func, bool crossings, int *newcount, + void ***tofree, int *nfree); +extern void temporal_skiplist_splice(SkipList *list, void **values, int count, + datum_func2 func, bool crossings); + +/* Generic aggregation functions */ + +extern TInstant **tinstant_tagg(TInstant **instants1, int count1, + TInstant **instants2, int count2, datum_func2 func, int *newcount, + void ***tofree, int *nfree); +extern TSequence **tsequence_tagg(TSequence **sequences1, int count1, + TSequence **sequences2, int count2, datum_func2 func, bool crossings, + int *newcount); +extern SkipList *tcontseq_tagg_transfn(SkipList *state, const TSequence *seq, + datum_func2 func, bool interpoint); +extern SkipList *temporal_tagg_combinefn(SkipList *state1, SkipList *state2, + datum_func2 func, bool crossings); + +extern SkipList *tinstant_tagg_transfn(SkipList *state, const TInstant *inst, + datum_func2 func); +extern TSequence *tinstant_tavg_finalfn(TInstant **instants, int count); +extern TSequenceSet *tsequence_tavg_finalfn(TSequence **sequences, int count); +extern TInstant *tnumberinst_transform_tavg(const TInstant *inst); +extern Temporal **temporal_transform_tcount(const Temporal *temp, int *count); +extern Temporal **temporal_transform_tagg(const Temporal *temp, int *count, + TInstant *(*func)(const TInstant *)); +extern SkipList *tsequenceset_tagg_transfn(SkipList *state, + const TSequenceSet *ss, datum_func2 func, bool crossings); +extern SkipList *tdiscseq_tagg_transfn(SkipList *state, const TSequence *seq, + datum_func2 func); + +extern SkipList *temporal_tagg_transfn(SkipList *state, const Temporal *temp, + datum_func2, bool crossings); +extern SkipList *temporal_tagg_combinefn(SkipList *state1, SkipList *state2, + datum_func2 func, bool crossings); +extern SkipList *temporal_tagg_transform_transfn(SkipList *state, const Temporal *temp, + datum_func2 func, bool crossings, TInstant *(*transform)(const TInstant *)); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_analytics.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_analytics.h new file mode 100644 index 00000000..8c4374e5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_analytics.h @@ -0,0 +1,67 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +#ifndef __TEMPORAL_ANALYTICS_H__ +#define __TEMPORAL_ANALYTICS_H__ + +/* MEOS */ +#include + +/*****************************************************************************/ + +typedef enum +{ + FRECHET, + DYNTIMEWARP, + HAUSDORFF +} SimFunc; + +/** + * Struct for storing the state that persists across multiple calls generating + * the path + */ +typedef struct +{ + bool done; + int i; + int size; + Match *path; +} SimilarityPathState; + +/*****************************************************************************/ + +extern double temporal_similarity(const Temporal *temp1, const Temporal *temp2, + SimFunc simfunc); +extern Match *temporal_similarity_path(const Temporal *temp1, + const Temporal *temp2, int *count, SimFunc simfunc); + +/*****************************************************************************/ + +#endif /* __TEMPORAL_ANALYTICS_H__ */ + diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_boxops.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_boxops.h new file mode 100644 index 00000000..9145a4cc --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_boxops.h @@ -0,0 +1,82 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Bounding box operators for temporal types. + */ + +#ifndef __TEMPORAL_BOXOPS_H__ +#define __TEMPORAL_BOXOPS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/** + * @brief Return the size in bytes to read from toast to get the basic + * information from a temporal: Temporal struct (i.e., TInstant, TSequence, + * or TSequenceSet) and bounding box size +*/ +#define TEMPORAL_MAX_HEADER_SIZE \ + DOUBLE_PAD(Max(Max(sizeof(TInstant), sizeof(TSequence)), \ + sizeof(TSequenceSet))) + DOUBLE_PAD(sizeof(bboxunion)) + +/*****************************************************************************/ + +/* Compute the bounding box at the creation of temporal values */ + +extern size_t temporal_bbox_size(MeosType tempype); +extern void tinstant_set_bbox(const TInstant *inst, void *bbox); +extern void tinstarr_set_bbox(TInstant **instants, int count, + bool lower_inc, bool upper_inc, interpType interp, void *bbox); +extern void tsequence_compute_bbox(TSequence *seq); +extern void tseqarr_compute_bbox(TSequence **sequences, int count, void *bbox); +extern void tsequenceset_compute_bbox(TSequenceSet *ss); + +/* Bounding box operators for temporal types */ + +extern bool boxop_temporal_tstzspan(const Temporal *temp, const Span *s, + bool (*func)(const Span *, const Span *), bool invert); +extern bool boxop_temporal_temporal(const Temporal *temp1, + const Temporal *temp2, bool (*func)(const Span *, const Span *)); + +extern bool boxop_tnumber_numspan(const Temporal *temp, const Span *span, + bool (*func)(const Span *, const Span *), bool invert); +extern bool boxop_tnumber_tbox(const Temporal *temp, const TBox *box, + bool (*func)(const TBox *, const TBox *), bool invert); +extern bool boxop_tnumber_tnumber(const Temporal *temp1, const Temporal *temp2, + bool (*func)(const TBox *, const TBox *)); + +/*****************************************************************************/ + +#endif /* __TEMPORAL_BOXOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_compops.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_compops.h new file mode 100644 index 00000000..02a975ac --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_compops.h @@ -0,0 +1,64 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever comparison operators (?=, ?<>, ?<, ?>, ?<=, ?>=), + * always comparison operators (%=, %<>, %<, %>, %<=, %>=), and + * temporal comparison operators (#=, #<>, #<, #>, #<=, #>=). + */ + +#ifndef __TEMPORAL_COMPOPS_H__ +#define __TEMPORAL_COMPOPS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +extern int eacomp_base_temporal(Datum value, const Temporal *temp, + Datum (*func)(Datum, Datum, MeosType), bool ever); +extern int eacomp_temporal_base(const Temporal *temp, Datum value, + Datum (*func)(Datum, Datum, MeosType), bool ever); +extern int eacomp_temporal_temporal(const Temporal *temp1, + const Temporal *temp2, Datum (*func)(Datum, Datum, MeosType), bool ever); + +extern Temporal *tcomp_base_temporal(Datum value, const Temporal *temp, + Datum (*func)(Datum, Datum, MeosType)); +extern Temporal *tcomp_temporal_base(const Temporal *temp, Datum value, + Datum (*func)(Datum, Datum, MeosType)); +extern Temporal *tcomp_temporal_temporal(const Temporal *temp1, + const Temporal *temp2, Datum (*func)(Datum, Datum, MeosType)); + +/*****************************************************************************/ + +#endif /* __TEMPORAL_COMPOPS_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_restrict.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_restrict.h new file mode 100644 index 00000000..559ea97e --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_restrict.h @@ -0,0 +1,121 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Restriction functions for temporal value. + */ + +#ifndef __TEMPORAL_RESTRICT_H__ +#define __TEMPORAL_RESTRICT_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" +#include "temporal/temporal.h" + +/*****************************************************************************/ + +/* Restriction Functions */ + +extern TSequence *tcontseq_after_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tcontseq_before_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tdiscseq_after_timestamptz(const TSequence *seq, TimestampTz t, bool strict); +extern TSequence *tdiscseq_before_timestamptz(const TSequence *seq, TimestampTz t, bool strict); + +extern TInstant *tdiscseq_at_timestamptz(const TSequence *seq, TimestampTz t); +extern TSequence *tdiscseq_restrict_value(const TSequence *seq, Datum value, + bool atfunc); +extern TSequence *tdiscseq_restrict_values(const TSequence *seq, const Set *s, + bool atfunc); +extern TSequence *tdiscseq_restrict_minmax(const TSequence *seq, bool min, + bool atfunc); +extern TSequence *tdiscseq_minus_timestamptz(const TSequence *seq, + TimestampTz t); +extern TSequence *tdiscseq_restrict_tstzset(const TSequence *seq, + const Set *s, bool atfunc); +extern TSequence *tdiscseq_restrict_tstzspanset(const TSequence *seq, + const SpanSet *ss, bool atfunc); +extern int tcontseq_restrict_value_iter(const TSequence *seq, Datum value, + bool atfunc, TSequence **result); +extern TSequenceSet *tcontseq_restrict_minmax(const TSequence *seq, bool min, + bool atfunc); +extern TSequence *tcontseq_delete_timestamptz(const TSequence *seq, + TimestampTz t); +extern TSequence *tcontseq_delete_tstzset(const TSequence *seq, + const Set *s); +extern TSequence *tcontseq_delete_tstzspanset(const TSequence *seq, + const SpanSet *ss); +extern TSequence *tcontseq_at_tstzset(const TSequence *seq, const Set *s); +extern TSequenceSet *tcontseq_minus_timestamptz(const TSequence *seq, + TimestampTz t); +extern TSequenceSet *tcontseq_minus_tstzset(const TSequence *seq, + const Set *s); +extern TSequenceSet *tcontseq_minus_tstzspan(const TSequence *seq, + const Span *s); +extern TSequenceSet *tcontseq_restrict_value(const TSequence *seq, Datum value, + bool atfunc); +extern TSequenceSet *tcontseq_restrict_values(const TSequence *seq, + const Set *s, bool atfunc); +extern int tsequence_at_values_iter(const TSequence *seq, const Set *set, + TSequence **result); +extern int tnumberseq_cont_restrict_span_iter(const TSequence *seq, + const Span *span, bool atfunc, TSequence **result); +extern int tnumberseq_cont_restrict_spanset_iter(const TSequence *seq, + const SpanSet *ss, bool atfunc, TSequence **result); +extern TInstant *tsegment_at_timestamptz(const TInstant *inst1, + const TInstant *inst2, interpType interp, TimestampTz t); +extern int tcontseq_minus_timestamp_iter(const TSequence *seq, TimestampTz t, + TSequence **result); +extern int tcontseq_minus_tstzset_iter(const TSequence *seq, const Set *s, + TSequence **result); +extern int tcontseq_at_tstzspanset1(const TSequence *seq, const SpanSet *ss, + TSequence **result); +extern int tcontseq_minus_tstzspanset_iter(const TSequence *seq, const SpanSet *ss, + TSequence **result); +extern TSequence *tcontseq_at_tstzspan(const TSequence *seq, const Span *s); +extern TInstant *tcontseq_at_timestamptz(const TSequence *seq, TimestampTz t); +extern TSequenceSet *tcontseq_restrict_tstzspanset(const TSequence *seq, + const SpanSet *ss, bool atfunc); +extern bool tdiscseq_value_at_timestamptz(const TSequence *seq, TimestampTz t, + Datum *result); +extern TSequence *tnumberseq_disc_restrict_span(const TSequence *seq, + const Span *span, bool atfunc); +extern TSequence *tnumberseq_disc_restrict_spanset(const TSequence *seq, + const SpanSet *ss, bool atfunc); +extern TSequenceSet *tnumberseq_cont_restrict_span(const TSequence *seq, + const Span *span, bool atfunc); +extern TSequenceSet *tnumberseq_cont_restrict_spanset(const TSequence *seq, + const SpanSet *ss, bool atfunc); +extern double tnumberseq_cont_twavg(const TSequence *seq); + +/*****************************************************************************/ + +#endif /* __TEMPORAL_RESTRICT_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_rtree.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_rtree.h new file mode 100644 index 00000000..66d650e3 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_rtree.h @@ -0,0 +1,106 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief In memory index for STBox based on RTree + */ + +#ifndef __TEMPORAL_RTREE__ +#define __TEMPORAL_RTREE__ + +/* MEOS */ +#include + +#include "temporal/meos_catalog.h" + +/***************************************************************************** + * RTree + *****************************************************************************/ + +#define MAXITEMS 64 +#define MINITEMS_PERCENTAGE 10 +#define MINITEMS ((MAXITEMS) * (MINITEMS_PERCENTAGE) / 100 + 1) + +/** + * @brief Enumeration that defines the node types for an RTree. + */ +typedef enum +{ + RTREE_LEAF, + RTREE_INNER +} RTreeNodeType; + +/** + * @brief Internal representation of an RTree node. + */ +typedef struct RTreeNode +{ + size_t bboxsize; /**< Size of the bouding box */ + int count; /**< Number of bouding boxes */ + RTreeNodeType node_type; + union + { + struct RTreeNode *nodes[MAXITEMS]; + int ids[MAXITEMS]; + }; + /* The bounding boxes can be of type Span, TBox, or STBox */ + char boxes[]; +} RTreeNode; + +/** + * @brief Rtree in-memory index basic structure. + * @details It works based on Span, TBox and STBox. + * - The spliting criteria is based on the largest axis. + * - The inserting criteria is based on least enlarging square. + * - The get axis function makes it ease to implement with X,Y,Z and time or any + * combination that you may want. + */ +struct RTree +{ + size_t bboxsize; /**< Size of the bouding box */ + MeosType bboxtype; /**< Type of the bouding box */ + int dims; + RTreeNode *root; + double (*get_axis)(const void *, int, bool); + void (*bbox_expand)(const void *, void *); + bool (*bbox_contains)(const void *, const void *); + bool (*bbox_overlaps)(const void *, const void *); + char box[]; +}; + +/** + * @brief Return a pointer to the n-th bounding box of a node + * @details The bouding boxes of a node can be of type Span, TBox, or STBox + */ +#define RTREE_NODE_BBOX_N(node, n) ( (void *)( \ + ((char *) &((node)->boxes)) + (n) * (node)->bboxsize ) ) + +/*****************************************************************************/ + +#endif /* __TEMPORAL_RTREE__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_tile.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_tile.h new file mode 100644 index 00000000..276cec4e --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_tile.h @@ -0,0 +1,110 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +#ifndef __TEMPORAL_TILE_H__ +#define __TEMPORAL_TILE_H__ + +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +#define MAXDIMS 4 + +/*****************************************************************************/ + +/** + * Struct for storing the state that persists across multiple calls generating + * the bin list + */ +typedef struct SpanBinState +{ + bool done; /**< True when the state is consumed */ + uint8 basetype; /**< span basetype */ + int i; /**< Current tile number */ + Datum size; /**< Size of the values */ + Datum origin; /**< Origin of the values */ + Span span; /**< Bounding span */ + const void *to_split; /**< NULL when generating bins, used for splitting + * span sets or temporal values*/ + Datum value; /**< Current value */ + int nbins; /**< Total number of bins */ +} SpanBinState; + +/** + * @brief Struct for storing the state for tiling operations + */ +typedef struct TboxGridState +{ + bool done; /**< True when the state is consumed */ + int i; /**< Current tile number */ + Datum vsize; /**< Value size */ + int64 tunits; /**< Time size */ + TBox box; /**< Bounding box */ + const Temporal *temp; /**< Optional temporal number to be split */ + Datum value; /**< Current value */ + TimestampTz t; /**< Current time */ + int ntiles; /**< Total number of tiles */ + int max_coords[2]; /**< Maximum coordinates of the tiles */ + int coords[2]; /**< Coordinates of the current tile */ +} TboxGridState; + +/*****************************************************************************/ + +extern int span_num_bins(const Span *s, Datum size, Datum origin, + Datum *start_bin, Datum *end_bin); + +extern Span *span_bins(const Span *s, Datum size, Datum origin, int *count); +extern Span *spanset_bins(const SpanSet *ss, Datum size, Datum origin, int *count); + +extern SpanBinState *temporal_time_bin_init(const Temporal *temp, + const Interval *duration, TimestampTz torigin, int *nbins); + +extern TboxGridState *tbox_tile_state_make(const Temporal *temp, + const TBox *box, Datum vsize, const Interval *duration, Datum xorigin, + TimestampTz torigin); +extern void tbox_tile_state_next(TboxGridState *state); +extern void tbox_tile_state_set(Datum value, TimestampTz t, Datum vsize, + int64 tunits, MeosType basetype, MeosType spantype, TBox *box); + +/*****************************************************************************/ + +extern int64 interval_units(const Interval *interval); +extern TimestampTz timestamptz_bin_start(TimestampTz timestamp, int64 tunits, + TimestampTz torigin); +extern Datum datum_bin(Datum value, Datum size, Datum offset, + MeosType basetype); + +extern TboxGridState *tnumber_value_time_tile_init(const Temporal *temp, + Datum vsize, const Interval *duration, Datum vorigin, TimestampTz torigin, + int *ntiles); +extern bool tbox_tile_state_get(TboxGridState *state, TBox *box); + +/*****************************************************************************/ +#endif /* __TEMPORAL_TILE_H__ */ + diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_waggfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_waggfuncs.h new file mode 100644 index 00000000..ed14489d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/temporal_waggfuncs.h @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal aggregate functions + */ + +#ifndef __TEMPORAL_WAGGFUNCS_H__ +#define __TEMPORAL_WAGGFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern TSequence **temporal_transform_wcount(const Temporal *temp, + const Interval *interval, int *count); +extern TSequence **tnumber_transform_wavg(const Temporal *temp, + const Interval *interval, int *count); +extern SkipList *temporal_wagg_transfn(SkipList *state, const Temporal *temp, + const Interval *interval, datum_func2 func, bool min, bool crossings); +extern SkipList *temporal_wagg_transform_transfn(SkipList *state, + const Temporal *temp, const Interval *interval, datum_func2 func, + TSequence ** (*transform)(const Temporal *, const Interval *, int *)); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tinstant.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tinstant.h new file mode 100644 index 00000000..6a288971 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tinstant.h @@ -0,0 +1,75 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for temporal instants. + */ + +#ifndef __TINSTANT_H__ +#define __TINSTANT_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +/* General functions */ + +extern void tinstant_set(TInstant *inst, Datum value, TimestampTz t); +extern double tnumberinst_double(const TInstant *inst); + +/* Input/output functions */ + +extern char *tinstant_to_string(const TInstant *inst, int maxdd, + outfunc value_out); + +/* Restriction Functions */ + +extern bool tinstant_restrict_values_test(const TInstant *inst, + const Set *s, bool atfunc); +extern bool tnumberinst_restrict_span_test(const TInstant *inst, + const Span *s, bool atfunc); +extern bool tnumberinst_restrict_spanset_test(const TInstant *inst, + const SpanSet *ss, bool atfunc); +extern bool tinstant_restrict_tstzset_test(const TInstant *inst, + const Set *s, bool atfunc); +extern bool tinstant_restrict_tstzspanset_test(const TInstant *inst, + const SpanSet *ss, bool atfunc); + +/* Intersection function */ + +extern bool intersection_tinstant_tinstant(const TInstant *inst1, + const TInstant *inst2, TInstant **inter1, TInstant **inter2); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tnumber_mathfuncs.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tnumber_mathfuncs.h new file mode 100644 index 00000000..fb272ca7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tnumber_mathfuncs.h @@ -0,0 +1,72 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Mathematical operators (+, -, *, /) and functions (round, degrees, ...) + * for temporal numbers. + */ + +#ifndef __TEMPORAL_MATHFUNCS_H__ +#define __TEMPORAL_MATHFUNCS_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/** Enumeration for the arithmetic functions */ + +typedef enum +{ + ADD, + SUB, + MUL, + DIV, + DIST, +} TArithmetic; + +/*****************************************************************************/ + +extern int tfloat_arithop_turnpt(Datum start1, Datum end1, Datum start2, + Datum end2, Datum param UNUSED, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); + +extern Temporal *arithop_tnumber_number(const Temporal *temp, Datum value, + TArithmetic oper, Datum (*func)(Datum, Datum, MeosType), bool invert); +extern Temporal *arithop_tnumber_tnumber(const Temporal *temp1, + const Temporal *temp2, TArithmetic oper, + Datum (*func)(Datum, Datum, MeosType), tpfunc_temp tpfunc); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequence.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequence.h new file mode 100644 index 00000000..e5a0942a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequence.h @@ -0,0 +1,152 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for temporal sequences + */ + +#ifndef __TSEQUENCE_H__ +#define __TSEQUENCE_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/meos_catalog.h" +#include "temporal/temporal.h" + +/*****************************************************************************/ + +/* Collinear function */ + +extern bool float_collinear(double x1, double x2, double x3, double ratio); + +/* Interpolation functions */ + +extern double floatsegm_interpolate(double value1, double value2, + long double value); +extern long double floatsegm_locate(double value1, double value2, + double value); + +extern int tnumbersegm_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, MeosType basetype, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); + +/* Normalization functions */ + +extern bool tsequence_norm_test(Datum value1, Datum value2, Datum value3, + MeosType basetype, interpType interp, TimestampTz t1, TimestampTz t2, + TimestampTz t3); +extern bool tsequence_join_test(const TSequence *seq1, const TSequence *seq2, + bool *removelast, bool *removefirst); +extern TSequence *tsequence_join(const TSequence *seq1, const TSequence *seq2, + bool removelast, bool removefirst); +extern TInstant **tinstarr_normalize(TInstant **instants, interpType interp, + int count, int *newcount); + +/* General functions */ + +extern int tcontseq_find_timestamptz(const TSequence *seq, TimestampTz t); +extern int tdiscseq_find_timestamptz(const TSequence *seq, TimestampTz t); +extern TSequence **tseqarr2_to_tseqarr(TSequence ***sequences, int *countseqs, + int count, int totalseqs); + +extern bool ensure_valid_tinstarr_common(TInstant **instants, int count, + bool lower_inc, bool upper_inc, interpType interp); +extern TSequence *tsequence_make_exp1(TInstant **instants, int count, + int maxcount, bool lower_inc, bool upper_inc, interpType interp, + bool normalize, void *bbox); + +/* Synchronization functions */ + +extern bool synchronize_tsequence_tsequence(const TSequence *seq1, + const TSequence *seq2, TSequence **sync1, TSequence **sync2, + bool interpoint); + +/* Intersection functions */ + +extern int tfloatsegm_intersection_value(Datum start, Datum end, Datum value, + TimestampTz lower, TimestampTz upper, TimestampTz *t); +extern int tsegment_intersection_value(Datum start, Datum end, Datum value, + MeosType temptype, TimestampTz lower, TimestampTz upper, TimestampTz *t1, + TimestampTz *t2); +extern int tsegment_intersection(Datum start1, Datum end1, Datum start2, + Datum end2, MeosType temptype, TimestampTz lower, TimestampTz upper, + TimestampTz *t1, TimestampTz *t2); +extern Datum tsegment_value_at_timestamptz(Datum start, Datum end, + MeosType temptype, TimestampTz lower, TimestampTz upper, TimestampTz t); + +extern bool intersection_tdiscseq_tdiscseq(const TSequence *seq1, + const TSequence *seq2, TSequence **inter1, TSequence **inter2); +extern bool intersection_tcontseq_tdiscseq(const TSequence *seq1, + const TSequence *seq2, TSequence **inter1, TSequence **inter2); +extern bool intersection_tdiscseq_tcontseq(const TSequence *is, + const TSequence *seq2, TSequence **inter1, TSequence **inter2); + +extern bool intersection_tsequence_tinstant(const TSequence *seq, + const TInstant *inst, TInstant **inter1, TInstant **inter2); +extern bool intersection_tinstant_tsequence(const TInstant *inst, + const TSequence *seq, TInstant **inter1, TInstant **inter2); + +/* Input/output functions */ + +extern char *tsequence_to_string(const TSequence *seq, int maxdd, + bool component, outfunc value_out); + +/* Constructor functions */ + +extern bool ensure_increasing_timestamps(const TInstant *inst1, + const TInstant *inst2, bool strict); +extern void bbox_expand(const void *box1, void *box2, MeosType temptype); +extern bool ensure_valid_tinstarr(TInstant **instants, int count, bool merge, + interpType interp); +extern bool tsequence_make_valid(TInstant **instants, int count, + bool lower_inc, bool upper_inc, interpType interp); + +/* Transformation functions */ + +extern void tnumberseq_shift_scale_value_iter(TSequence *seq, Datum origin, + Datum delta, bool hasdelta, double scale); +extern void tsequence_shift_scale_time_iter(TSequence *seq, TimestampTz delta, + double scale); +extern int tstepseq_to_linear_iter(const TSequence *seq, TSequence **result); +extern TSequenceSet *tstepseq_to_linear(const TSequence *seq); + +/* Accessor functions */ + +extern int tsequence_segments_iter(const TSequence *seq, TSequence **result); +extern int tsequence_timestamps_iter(const TSequence *seq, TimestampTz *result); + +/* Local Aggregate Functions */ + +extern double tnumberseq_cont_twavg(const TSequence *seq); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequenceset.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequenceset.h new file mode 100644 index 00000000..30218e93 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/tsequenceset.h @@ -0,0 +1,87 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic functions for temporal sequence sets. + */ + +#ifndef __TSEQUENCESET_H__ +#define __TSEQUENCESET_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +/* General functions */ + +extern bool tsequenceset_find_timestamptz(const TSequenceSet *ss, + TimestampTz t, int *loc); +extern TSequence **tseqarr_normalize(TSequence **sequences, int count, + int *newcount); +extern double datum_distance(Datum value1, Datum value2, MeosType basetype, + int16 flags); +extern int *ensure_valid_tinstarr_gaps(TInstant **instants, int count, + bool merge, double maxdist, const Interval *maxt, int *nsplits); +extern bool ensure_valid_tseqarr(TSequence **sequences, int count); + +/* Synchronize functions */ + +extern bool synchronize_tsequenceset_tsequence(const TSequenceSet *ss, + const TSequence *seq, SyncMode mode, + TSequenceSet **inter1, TSequenceSet **inter2); +extern bool synchronize_tsequenceset_tsequenceset(const TSequenceSet *ss1, + const TSequenceSet *ss2, SyncMode mode, + TSequenceSet **inter1, TSequenceSet **inter2); + +/* Intersection functions */ + +extern bool intersection_tsequenceset_tinstant(const TSequenceSet *ss, + const TInstant *inst, TInstant **inter1, TInstant **inter2); +extern bool intersection_tinstant_tsequenceset(const TInstant *inst, + const TSequenceSet *ss, TInstant **inter1, TInstant **inter2); +extern bool intersection_tsequenceset_tdiscseq(const TSequenceSet *ss, + const TSequence *is, TSequence **inter1, TSequence **inter2); +extern bool intersection_tdiscseq_tsequenceset(const TSequence *is, + const TSequenceSet *ss, TSequence **inter1, TSequence **inter2); +extern bool intersection_tsequence_tsequenceset(const TSequence *seq, + const TSequenceSet *ss, SyncMode mode, + TSequenceSet **inter1, TSequenceSet **inter2); + +/* Input/output functions */ + +extern char *tsequenceset_to_string(const TSequenceSet *ss, int maxdd, + outfunc value_out); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/ttext_funcs.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/ttext_funcs.h new file mode 100644 index 00000000..ff14f39f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/ttext_funcs.h @@ -0,0 +1,59 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Temporal text functions: `textcat`, `lower`, `upper`. + */ + +#ifndef __TTEXT_TEXTFUNCS_H__ +#define __TTEXT_TEXTFUNCS_H__ + +/* PostgreSQL */ +#include +/* PostgreSQL */ +#include +#include "temporal/temporal.h" + +/*****************************************************************************/ + +extern Datum datum_textcat(Datum l, Datum r); +extern Datum datum_lower(Datum value); +extern Datum datum_upper(Datum value); +extern Datum datum_initcap(Datum value); + +extern Temporal *textfunc_ttext(const Temporal *temp, + datum_func1 func); +extern Temporal *textfunc_ttext_text(const Temporal *temp, Datum value, + datum_func2 func, bool invert); +extern Temporal *textfunc_ttext_ttext(const Temporal *temp1, + const Temporal *temp2, datum_func2 func); + +/*****************************************************************************/ + +#endif diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_inout.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_inout.h new file mode 100644 index 00000000..fead624d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_inout.h @@ -0,0 +1,75 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Basic routines for spans (a.k.a. ranges) composed of two `Datum` + * values and two Boolean values stating whether the bounds are inclusive. + */ + +#ifndef __TYPE_INOUT_H__ +#define __TYPE_INOUT_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include "temporal/meos_catalog.h" + +/***************************************************************************** + * Definitions taken from the file liblwgeom_internal.h + *****************************************************************************/ + +/* Any (absolute) values outside this range will be printed in scientific + * notation */ +#define OUT_MIN_DOUBLE 1E-8 +#define OUT_MAX_DOUBLE 1E15 +#define OUT_DEFAULT_DECIMAL_DIGITS 15 + +/* 17 digits are sufficient for round-tripping + * Then we might add up to 8 (from OUT_MIN_DOUBLE) max leading zeroes (or + * 2 digits for "e+") */ +#define OUT_MAX_DIGITS 17 + 8 + +/* Limit for the max amount of characters that a double can use, including dot + * and sign */ +#define OUT_MAX_BYTES_DOUBLE (1 /* Sign */ + 2 /* 0.x */ + OUT_MAX_DIGITS) +#define OUT_DOUBLE_BUFFER_SIZE OUT_MAX_BYTES_DOUBLE + 1 /* +1 including NULL */ + +/*****************************************************************************/ + +extern uint8_t *datum_as_wkb(Datum value, MeosType type, uint8_t variant, + size_t *size_out); +extern char *datum_as_hexwkb(Datum value, MeosType type, uint8_t variant, + size_t *size); + +extern Datum type_from_wkb(const uint8_t *wkb, size_t size, MeosType type); +extern Datum type_from_hexwkb(const char *hexwkb, size_t size, MeosType type); + +/*****************************************************************************/ + +#endif /* __TYPE_INOUT_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_parser.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_parser.h new file mode 100644 index 00000000..60f79eba --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_parser.h @@ -0,0 +1,77 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Functions for parsing temporal types. + */ + +#ifndef __TYPE_PARSER_H__ +#define __TYPE_PARSER_H__ + +/* MEOS */ +#include +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +extern bool ensure_end_input(const char **str, const char *type); +extern void p_whitespace(const char **str); +extern bool p_delimchar(const char **str, char delim); +extern bool p_obrace(const char **str); +extern bool ensure_obrace(const char **str, const char *type); +extern bool p_cbrace(const char **str); +extern bool ensure_cbrace(const char **str, const char *type); +extern bool p_obracket(const char **str); +extern bool p_cbracket(const char **str); +extern bool p_oparen(const char **str); +extern bool ensure_oparen(const char **str, const char *type); +extern bool p_cparen(const char **str); +extern bool ensure_cparen(const char **str, const char *type); +extern bool p_comma(const char **str); +extern bool basetype_parse(const char **str, MeosType basetypid, char delim, + Datum *result); +extern bool double_parse(const char **str, double *result); +extern bool elem_parse(const char **str, MeosType basetype, Datum *result); +extern Set *set_parse(const char **str, MeosType basetype); +extern bool span_parse(const char **str, MeosType spantype, bool end, + Span *span); +extern SpanSet *spanset_parse(const char **str, MeosType spantype); +extern TBox *tbox_parse(const char **str); +extern TimestampTz timestamp_parse(const char **str); +extern TInstant *tinstant_parse(const char **str, MeosType temptype, bool end); +extern TSequence *tdiscseq_parse(const char **str, MeosType temptype); +extern TSequence *tcontseq_parse(const char **str, MeosType temptype, + interpType interp, bool end); +extern TSequenceSet *tsequenceset_parse(const char **str, MeosType temptype, + interpType interp); +extern Temporal *temporal_parse(const char **str, MeosType temptype); + +/*****************************************************************************/ + +#endif /* __TYPE_PARSER_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_util.h b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_util.h new file mode 100644 index 00000000..0aaeb188 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/meos/include/temporal/type_util.h @@ -0,0 +1,120 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @brief Miscellaneous utility functions for temporal types. + */ + +#ifndef __TYPE_UTIL_H__ +#define __TYPE_UTIL_H__ + +/* PostgreSQL */ +#include +/* MEOS */ +#include +#include +#include +#include "temporal/doublen.h" +#include "temporal/meos_catalog.h" + +/*****************************************************************************/ + +/** Symbolic constants for the *_to_arr() functions */ +#define FREE_ALL true +#define FREE false + +/*****************************************************************************/ + +/* Miscellaneous functions */ + +extern Datum datum_copy(Datum value, MeosType typid); +extern double datum_double(Datum d, MeosType type); +extern Datum double_datum(double d, MeosType type); +extern bytea *bstring2bytea(const uint8_t *wkb, size_t size); + +/* Input/output functions */ + +extern bool basetype_in(const char *str, MeosType type, bool end, Datum *result); +extern char *basetype_out(Datum value, MeosType type, int maxdd); + +/* Array functions */ + +extern void pfree_array(void **array, int count); +extern char *stringarr_to_string(char **strings, int count, size_t outlen, + char *prefix, char open, char close, bool quotes, bool spaces); + +/* Sort functions */ + +extern void datumarr_sort(Datum *values, int count, MeosType basetype); +extern void tstzarr_sort(TimestampTz *times, int count); +extern void spanarr_sort(Span *spans, int count); +extern void tinstarr_sort(TInstant **instants, int count); +extern void tseqarr_sort(TSequence **sequences, int count); + +/* Remove duplicate functions */ + +extern int datumarr_remove_duplicates(Datum *values, int count, + MeosType basetype); +extern int tstzarr_remove_duplicates(TimestampTz *values, int count); +extern int tinstarr_remove_duplicates(TInstant **instants, int count); + +/* Text functions */ + + +/* Arithmetic functions */ + +extern Datum datum_add(Datum l, Datum r, MeosType type); +extern Datum datum_sub(Datum l, Datum r, MeosType type); +extern Datum datum_mul(Datum l, Datum r, MeosType type); +extern Datum datum_div(Datum l, Datum r, MeosType type); + +/* Comparison functions on datums */ + +extern int datum_cmp(Datum l, Datum r, MeosType type); +extern bool datum_eq(Datum l, Datum r, MeosType type); +extern bool datum_ne(Datum l, Datum r, MeosType type); +extern bool datum_lt(Datum l, Datum r, MeosType type); +extern bool datum_le(Datum l, Datum r, MeosType type); +extern bool datum_gt(Datum l, Datum r, MeosType type); +extern bool datum_ge(Datum l, Datum r, MeosType type); + +extern Datum datum2_eq(Datum l, Datum r, MeosType type); +extern Datum datum2_ne(Datum l, Datum r, MeosType type); +extern Datum datum2_lt(Datum l, Datum r, MeosType type); +extern Datum datum2_le(Datum l, Datum r, MeosType type); +extern Datum datum2_gt(Datum l, Datum r, MeosType type); +extern Datum datum2_ge(Datum l, Datum r, MeosType type); + +/* Hypothenuse functions */ + +extern double hypot3d(double x, double y, double z); + +/*****************************************************************************/ + +#endif /* __TYPE_UTIL_H__ */ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/CMakeLists.txt new file mode 100644 index 00000000..3613ede0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/CMakeLists.txt @@ -0,0 +1,101 @@ +set(MOBILITYDB_MODULE_PATHNAME "$libdir/lib${MOBILITYDB_LIB_NAME}") +set(extschema "@extschema@") + +configure_file(mobilitydb.in.control ${CMAKE_BINARY_DIR}/mobilitydb.control) + +macro(process_file f srcdir bindir) + file(READ ${srcdir}/${f}.in.sql CURR_CONTENTS) + + if (${POSTGRESQL_VERSION_NUMBER} GREATER_EQUAL 130000) + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 130000" "-- if POSTGRESQL_VERSION_NUMBER >= 130000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 130000" "-- endif POSTGRESQL_VERSION_NUMBER >= 130000" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 130000" "/* --if POSTGRESQL_VERSION_NUMBER < 130000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 130000" "-- endif POSTGRESQL_VERSION_NUMBER < 130000 */" CURR_CONTENTS "${CURR_CONTENTS}") + else() + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 130000" "/* -- if POSTGRESQL_VERSION_NUMBER >= 130000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 130000" "-- endif POSTGRESQL_VERSION_NUMBER >= 130000 */" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 130000" " -- if POSTGRESQL_VERSION_NUMBER >= 130000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 130000" "-- endif POSTGRESQL_VERSION_NUMBER >= 130000" CURR_CONTENTS "${CURR_CONTENTS}") + endif() + + if (${POSTGRESQL_VERSION_NUMBER} GREATER_EQUAL 140000) + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 140000" "-- if POSTGRESQL_VERSION_NUMBER >= 140000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 140000" "-- endif POSTGRESQL_VERSION_NUMBER >= 140000" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 140000" "/* --if POSTGRESQL_VERSION_NUMBER < 140000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 140000" "-- endif POSTGRESQL_VERSION_NUMBER < 140000 */" CURR_CONTENTS "${CURR_CONTENTS}") + else() + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 140000" "/* -- if POSTGRESQL_VERSION_NUMBER >= 140000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 140000" "-- endif POSTGRESQL_VERSION_NUMBER >= 140000 */" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 140000" " -- if POSTGRESQL_VERSION_NUMBER >= 140000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 140000" "-- endif POSTGRESQL_VERSION_NUMBER >= 140000" CURR_CONTENTS "${CURR_CONTENTS}") + endif() + + if (${POSTGRESQL_VERSION_NUMBER} GREATER_EQUAL 160000) + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 160000" "-- if POSTGRESQL_VERSION_NUMBER >= 160000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 160000" "-- endif POSTGRESQL_VERSION_NUMBER >= 160000" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 160000" "/* --if POSTGRESQL_VERSION_NUMBER < 160000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 160000" "-- endif POSTGRESQL_VERSION_NUMBER < 160000 */" CURR_CONTENTS "${CURR_CONTENTS}") + else() + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER >= 160000" "/* -- if POSTGRESQL_VERSION_NUMBER >= 160000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER >= 160000" "-- endif POSTGRESQL_VERSION_NUMBER >= 160000 */" CURR_CONTENTS "${CURR_CONTENTS}") + + string(REPLACE "#if POSTGRESQL_VERSION_NUMBER < 160000" " -- if POSTGRESQL_VERSION_NUMBER >= 160000" CURR_CONTENTS "${CURR_CONTENTS}") + string(REPLACE "#endif //POSTGRESQL_VERSION_NUMBER < 160000" "-- endif POSTGRESQL_VERSION_NUMBER >= 160000" CURR_CONTENTS "${CURR_CONTENTS}") + endif() + + file(WRITE ${bindir}/${f}.sql.in "${CURR_CONTENTS}") +endmacro() + +add_subdirectory(temporal) +add_subdirectory(geo) +if(CBUFFER) + add_subdirectory(cbuffer) +endif() +if(NPOINT) + add_subdirectory(npoint) +endif() +if(POSE) + add_subdirectory(pose) +endif() +if(RGEO) + add_subdirectory(rgeo) +endif() + +list(SORT PROJECT_SQL_FILES) + +add_custom_target(all_sql_files ALL + DEPENDS ${PROJECT_SQL_FILES}) + +if (PROJECT_VERBOSE) + message(STATUS "PROJECT_SQL_FILES=${PROJECT_SQL_FILES}") +endif() + +# Truncate first: without this, re-running cmake on an existing build +# directory keeps appending to the previous pass's file, duplicating every +# CREATE FUNCTION / TYPE / OPERATOR and making `CREATE EXTENSION mobilitydb` +# fail with 'already exists' errors on subsequent reconfigures. +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${MOBILITYDB_EXTENSION_FILE}.in "") +foreach (f ${PROJECT_SQL_FILES}) + file(READ ${f} CURR_CONTENTS) + file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/${MOBILITYDB_EXTENSION_FILE}.in "${CURR_CONTENTS}") +endforeach() + +configure_file(${CMAKE_CURRENT_BINARY_DIR}/${MOBILITYDB_EXTENSION_FILE}.in ${CMAKE_BINARY_DIR}/${MOBILITYDB_EXTENSION_FILE} COPYONLY) + +# Set the library name extension according to the platform +if(WIN32) + set(LIB_NAME_EXT ".dll") +else() + set(LIB_NAME_EXT ".so") +endif() +message(STATUS "Library name extension: '${LIB_NAME_EXT}'") + +file(READ "${CMAKE_BINARY_DIR}/${MOBILITYDB_EXTENSION_FILE}" sql_commands) +string(REPLACE "MODULE_PATHNAME" "${CMAKE_BINARY_DIR}/lib${MOBILITYDB_LIB_NAME}${LIB_NAME_EXT}" sql_commands "${sql_commands}") +message(STATUS "Substitution: ${CMAKE_BINARY_DIR}/lib${MOBILITYDB_LIB_NAME}${LIB_NAME_EXT}") +string(REPLACE "@extschema@" "public" sql_commands "${sql_commands}") diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/150_cbuffer.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/150_cbuffer.in.sql new file mode 100644 index 00000000..45933810 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/150_cbuffer.in.sql @@ -0,0 +1,313 @@ + + +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file cbuffer.sql + * @brief Static circular buffer type + */ + +CREATE TYPE cbuffer; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION cbuffer_in(cstring) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_in' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION cbuffer_out(cbuffer) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Cbuffer_out' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION cbuffer_recv(internal) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_recv' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION cbuffer_send(cbuffer) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Cbuffer_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE cbuffer ( + internallength = variable, + input = cbuffer_in, + output = cbuffer_out, + receive = cbuffer_recv, + send = cbuffer_send, + storage = plain, + alignment = double +); + +-- Input/output in WKT, WKB and HexWKB representation + +CREATE FUNCTION asText(cbuffer, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Cbuffer_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(cbuffer[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(cbuffer, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Cbuffer_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(cbuffer[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION cbuffer(geometry, double precision) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +CREATE FUNCTION geometry(cbuffer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Cbuffer_to_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer(geometry) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Geom_to_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (cbuffer AS geometry) WITH FUNCTION geometry(cbuffer); +CREATE CAST (geometry AS cbuffer) WITH FUNCTION cbuffer(geometry); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +CREATE FUNCTION point(cbuffer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Cbuffer_point' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION radius(cbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'Cbuffer_radius' + LANGUAGE C IMMUTABLE STRICT; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION round(cbuffer, integer DEFAULT 0) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * SRID functions + *****************************************************************************/ + +CREATE FUNCTION SRID(cbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Cbuffer_srid' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION setSRID(cbuffer, integer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(cbuffer, integer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(cbuffer, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Cbuffer_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Spatial relationships + *****************************************************************************/ + +CREATE FUNCTION cbuffer_contains(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_contains' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer_covers(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_covers' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer_disjoint(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_disjoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer_intersects(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_intersects' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer_touches(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_touches' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffer_dwithin(cbuffer, cbuffer, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_dwithin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION cbuffer_same(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = cbuffer_same, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/****************************************************************************** + * Comparisons + ******************************************************************************/ + +CREATE FUNCTION cbuffer_eq(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_ne(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_lt(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_le(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_ge(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_gt(cbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Cbuffer_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_cmp(cbuffer, cbuffer) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Cbuffer_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + PROCEDURE = cbuffer_eq, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = cbuffer_ne, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = cbuffer_lt, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = cbuffer_le, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarlesel, JOIN = scalarlejoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = cbuffer_ge, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargesel, JOIN = scalargejoinsel +); +CREATE OPERATOR > ( + PROCEDURE = cbuffer_gt, + LEFTARG = cbuffer, RIGHTARG = cbuffer, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS cbuffer_btree_ops + DEFAULT FOR TYPE cbuffer USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 cbuffer_cmp(cbuffer, cbuffer); + +/******************************************************************************/ + +CREATE FUNCTION cbuffer_hash(cbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Cbuffer_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbuffer_hash_extended(cbuffer, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Cbuffer_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS cbuffer_hash_ops + DEFAULT FOR TYPE cbuffer USING hash AS + OPERATOR 1 = , + FUNCTION 1 cbuffer_hash(cbuffer), + FUNCTION 2 cbuffer_hash_extended(cbuffer, bigint); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/151_cbufferset.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/151_cbufferset.in.sql new file mode 100644 index 00000000..a5cd44b4 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/151_cbufferset.in.sql @@ -0,0 +1,514 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for set of poses + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE cbufferset; + +CREATE FUNCTION cbufferset_in(cstring) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbufferset_out(cbufferset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbufferset_recv(internal) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cbufferset_send(cbufferset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE cbufferset ( + internallength = variable, + input = cbufferset_in, + output = cbufferset_out, + receive = cbufferset_recv, + send = cbufferset_send, + alignment = double, + storage = extended + -- , analyze = geoset_analyze +); + +/******************************************************************************/ + +-- Input/output in WKB and HexWKB representation + +CREATE FUNCTION cbuffersetFromBinary(bytea) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cbuffersetFromHexWKB(text) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(cbufferset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(cbufferset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(cbufferset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(cbufferset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION set(cbuffer[]) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION set(cbuffer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (cbuffer AS cbufferset) WITH FUNCTION set(cbuffer); + +CREATE FUNCTION stbox(cbufferset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Spatialset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (cbufferset AS stbox) WITH FUNCTION stbox(cbufferset); + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION round(cbufferset, integer DEFAULT 0) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION memSize(cbufferset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numValues(cbufferset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(cbufferset) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(cbufferset) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(cbufferset, integer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getValues(cbufferset) + RETURNS cbuffer[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * SRID + ******************************************************************************/ + +CREATE FUNCTION SRID(cbufferset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spatialset_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(cbufferset, integer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Spatialset_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(cbufferset, integer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Spatialset_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(cbufferset, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Spatialset_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation set of values <-> set + ******************************************************************************/ + +CREATE FUNCTION unnest(cbufferset) + RETURNS SETOF cbuffer + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, cbuffer) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, cbufferset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION cbufferset_union_finalfn(internal) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE setUnion(cbuffer) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = cbufferset_union_finalfn +); +CREATE AGGREGATE setUnion(cbufferset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = cbufferset_union_finalfn +); + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION set_eq(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(cbufferset, cbufferset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(cbufferset, cbufferset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >= + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = > + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = < + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = cbufferset, RIGHTARG = cbufferset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <= + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS cbufferset_btree_ops + DEFAULT FOR TYPE cbufferset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(cbufferset, cbufferset); + +/******************************************************************************/ + +CREATE FUNCTION set_hash(cbufferset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(cbufferset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS cbufferset_hash_ops + DEFAULT FOR TYPE cbufferset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(cbufferset), + FUNCTION 2 set_hash_extended(cbufferset, bigint); + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION set_contains(cbufferset, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(cbufferset, cbufferset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = cbufferset, RIGHTARG = cbuffer, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_contained(cbuffer, cbufferset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(cbufferset, cbufferset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = cbuffer, RIGHTARG = cbufferset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overlaps(cbufferset, cbufferset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = && + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION set_union(cbuffer, cbufferset) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(cbufferset, cbuffer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(cbufferset, cbufferset) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = cbuffer, RIGHTARG = cbufferset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = cbufferset, RIGHTARG = cbuffer, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION set_minus(cbuffer, cbufferset) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(cbufferset, cbuffer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(cbufferset, cbufferset) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = cbuffer, RIGHTARG = cbufferset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = cbufferset, RIGHTARG = cbuffer +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = cbufferset, RIGHTARG = cbufferset +); + +/*****************************************************************************/ + +CREATE FUNCTION set_intersection(cbuffer, cbufferset) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(cbufferset, cbuffer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(cbufferset, cbufferset) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = cbuffer, RIGHTARG = cbufferset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = cbufferset, RIGHTARG = cbuffer, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = * +); + +/*****************************************************************************/ + +CREATE FUNCTION set_distance(cbuffer, cbufferset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(cbufferset, cbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(cbufferset, cbufferset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = cbuffer, RIGHTARG = cbufferset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = cbufferset, RIGHTARG = cbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = cbufferset, RIGHTARG = cbufferset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/152_tcbuffer.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/152_tcbuffer.in.sql new file mode 100644 index 00000000..eb2bb753 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/152_tcbuffer.in.sql @@ -0,0 +1,715 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal circular buffers + */ + +CREATE TYPE tcbuffer; + +/***************************************************************************** + * Input/Output + *****************************************************************************/ + +CREATE FUNCTION tcbuffer_in(cstring, oid, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Temporal_out(tcbuffer) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tcbuffer_recv(internal, oid, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tcbuffer) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbuffer_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tcbuffer_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tcbuffer ( + internallength = variable, + input = tcbuffer_in, + output = temporal_out, + receive = tcbuffer_recv, + send = temporal_send, + typmod_in = tcbuffer_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tcbuffer(tcbuffer, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME','Tcbuffer_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tcbuffer AS tcbuffer) WITH FUNCTION tcbuffer(tcbuffer, integer) AS IMPLICIT; + +/***************************************************************************** + * Input/output from (E)WKT, (E)WKB, HexEWKB, and MFJSON representation + *****************************************************************************/ + +CREATE FUNCTION tcbufferFromText(text) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbufferFromEWKT(text) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbufferFromBinary(bytea) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbufferFromEWKB(bytea) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbufferFromHexEWKB(text) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asText(tcbuffer, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tcbuffer[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tcbuffer, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tcbuffer[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tcbuffer, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(tcbuffer, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(tcbuffer, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Constructors + *****************************************************************************/ + +CREATE FUNCTION tcbuffer(cbuffer, timestamptz) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbuffer(cbuffer, tstzset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbuffer(cbuffer, tstzspan, text DEFAULT 'linear') + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbuffer(cbuffer, tstzspanset, text DEFAULT 'linear') + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION tcbufferSeq(tcbuffer[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbufferSeqSet(tcbuffer[]) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tcbufferSeqSetGaps(tcbuffer[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION tcbuffer(tgeompoint, tfloat) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Conversions + *****************************************************************************/ + +CREATE FUNCTION timeSpan(tcbuffer) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeompoint(tcbuffer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tcbuffer_to_tgeompoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(tcbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tcbuffer_to_tfloat' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tcbuffer(tgeompoint) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tgeometry_to_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tcbuffer(tgeometry) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tgeometry_to_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tcbuffer AS tstzspan) WITH FUNCTION timeSpan(tcbuffer); +CREATE CAST (tcbuffer AS tgeompoint) WITH FUNCTION tgeompoint(tcbuffer); +CREATE CAST (tcbuffer AS tfloat) WITH FUNCTION tfloat(tcbuffer); +CREATE CAST (tgeompoint AS tcbuffer) WITH FUNCTION tcbuffer(tgeompoint); +CREATE CAST (tgeometry AS tcbuffer) WITH FUNCTION tcbuffer(tgeometry); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ +-- Specific accessors for temporal circular buffers + +CREATE FUNCTION points(tcbuffer) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Tcbuffer_points' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION radius(tcbuffer) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Tcbuffer_radius' + LANGUAGE C IMMUTABLE STRICT; + +/*****************************************************************************/ +-- Accessors for all temporal types + +CREATE FUNCTION tempSubtype(tcbuffer) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tcbuffer) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(tcbuffer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getTimestamp(tcbuffer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- values is a reserved word in SQL +CREATE FUNCTION getValues(tcbuffer) + RETURNS cbufferset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tcbuffer) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tcbuffer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tcbuffer) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tcbuffer, int) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tcbuffer, timestamptz) + RETURNS cbuffer + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tcbuffer, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tcbuffer, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tcbuffer) + RETURNS tcbuffer[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tcbuffer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tcbuffer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tcbuffer, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tcbuffer) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tcbuffer, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tcbuffer) + RETURNS tcbuffer[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tcbuffer) + RETURNS tcbuffer[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION expand(tcbuffer, float) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_expand' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ +-- Transformations for all temporal types + +CREATE FUNCTION tcbufferInst(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tcbufferSeq(tcbuffer, text DEFAULT NULL) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tcbufferSeqSet(tcbuffer, text DEFAULT NULL) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tcbuffer, text) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tcbuffer, integer DEFAULT 0) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tcbuffer[], integer DEFAULT 0) + RETURNS tcbuffer[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftTime(tcbuffer, interval) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tcbuffer, interval) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tcbuffer, interval, interval) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +CREATE FUNCTION atValues(tcbuffer, cbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tcbuffer, cbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tcbuffer, cbufferset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tcbuffer, cbufferset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tcbuffer, timestamptz) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tcbuffer, timestamptz) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tcbuffer, tstzset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tcbuffer, tstzset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tcbuffer, tstzspan) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tcbuffer, tstzspan) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tcbuffer, tstzspanset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tcbuffer, tstzspanset) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tcbuffer, timestamptz, strict bool DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tcbuffer, timestamptz, strict bool DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE TYPE cbuffer_tstzspanset AS ( + value cbuffer, + time tstzspanset +); + +CREATE FUNCTION unnest(tcbuffer) + RETURNS SETOF cbuffer_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stop Function + *****************************************************************************/ + +CREATE FUNCTION stops(tcbuffer, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tcbuffer, tcbuffer, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tcbuffer, tcbuffer, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tcbuffer, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tcbuffer, tstzset, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tcbuffer, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tcbuffer, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION merge(tcbuffer[]) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Multidimensional tiling + *****************************************************************************/ + +CREATE TYPE time_tcbuffer AS ( + time timestamptz, + temp tcbuffer +); + +CREATE FUNCTION timeSplit(tcbuffer, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Comparison functions and B-tree indexing + *****************************************************************************/ + +CREATE FUNCTION temporal_lt(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tcbuffer, tcbuffer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tcbuffer, tcbuffer) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS tcbuffer_btree_ops + DEFAULT FOR TYPE tcbuffer USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tcbuffer, tcbuffer); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_hash(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tcbuffer_hash_ops + DEFAULT FOR TYPE tcbuffer USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tcbuffer); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/154_tcbuffer_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/154_tcbuffer_compops.in.sql new file mode 100644 index 00000000..ae0365c3 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/154_tcbuffer_compops.in.sql @@ -0,0 +1,248 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever/always and temporal comparison functions and operators for + * temporal circular buffers + */ + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal equal + *****************************************************************************/ + +CREATE FUNCTION temporal_teq(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal not equal + *****************************************************************************/ + +CREATE FUNCTION temporal_tne(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = #<> +); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/155_tcbuffer_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/155_tcbuffer_spatialfuncs.in.sql new file mode 100644 index 00000000..fe69fa27 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/155_tcbuffer_spatialfuncs.in.sql @@ -0,0 +1,104 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial functions for temporal circular buffers + */ + +/***************************************************************************** + * SRID + *****************************************************************************/ + +CREATE FUNCTION SRID(tcbuffer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tcbuffer, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(tcbuffer, integer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(tcbuffer, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Traversed area + *****************************************************************************/ + +CREATE FUNCTION traversedArea(tcbuffer, bool DEFAULT true) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tcbuffer_traversed_area' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * AtGeometry and MinusGeometry + *****************************************************************************/ + +CREATE FUNCTION atValue(tcbuffer, cbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_at_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValue(tcbuffer, cbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_minus_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atGeometry(tcbuffer, geometry) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_at_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusGeometry(tcbuffer, geometry) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Tcbuffer_minus_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION atStbox(tcbuffer, stbox, bool DEFAULT TRUE) + -- RETURNS tcbuffer + -- AS 'MODULE_PATHNAME', 'Tcbuffer_at_stbox' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION minusStbox(tcbuffer, stbox, bool DEFAULT TRUE) + -- RETURNS tcbuffer + -- AS 'MODULE_PATHNAME', 'Tcbuffer_minus_stbox' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/158_tcbuffer_topops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/158_tcbuffer_topops.in.sql new file mode 100644 index 00000000..264dd90f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/158_tcbuffer_topops.in.sql @@ -0,0 +1,379 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal circular buffers + */ + +/***************************************************************************** + * Temporal cbuffer to stbox + *****************************************************************************/ + +CREATE FUNCTION stbox(cbuffer) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Cbuffer_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(cbuffer, timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Cbuffer_timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(cbuffer, tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Cbuffer_tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(tcbuffer) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (cbuffer AS stbox) WITH FUNCTION stbox(cbuffer); +CREATE CAST (tcbuffer AS stbox) WITH FUNCTION stbox(tcbuffer); + +/*****************************************************************************/ + +CREATE FUNCTION expandSpace(tcbuffer, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tcbuffer, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contains(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tcbuffer, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tcbuffer, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contained(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tcbuffer, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tcbuffer, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_overlaps(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tcbuffer, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tcbuffer, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_same(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tcbuffer, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tcbuffer, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_adjacent(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tcbuffer, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/159_tcbuffer_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/159_tcbuffer_posops.in.sql new file mode 100644 index 00000000..14a053b7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/159_tcbuffer_posops.in.sql @@ -0,0 +1,487 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for temporal circular buffers + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tcbuffer */ + +CREATE FUNCTION temporal_before(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tcbuffer + *****************************************************************************/ + +/* tcbuffer op tstzspan */ + +CREATE FUNCTION temporal_before(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tcbuffer, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tcbuffer, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* tcbuffer op stbox */ + +CREATE FUNCTION temporal_left(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tcbuffer, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tcbuffer op tcbuffer */ + +CREATE FUNCTION temporal_left(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/160_tcbuffer_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/160_tcbuffer_distance.in.sql new file mode 100644 index 00000000..72f8a588 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/160_tcbuffer_distance.in.sql @@ -0,0 +1,279 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal circular buffers + */ + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION distance(geometry, cbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_geo_cbuffer' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION distance(stbox, cbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_stbox_cbuffer' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION distance(cbuffer, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_cbuffer_geo' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION distance(cbuffer, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_cbuffer_stbox' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION distance(cbuffer, cbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Distance_cbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = distance, + LEFTARG = geometry, + RIGHTARG = cbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = distance, + LEFTARG = stbox, + RIGHTARG = cbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = distance, + LEFTARG = cbuffer, + RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = distance, + LEFTARG = cbuffer, + RIGHTARG = stbox, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = distance, + LEFTARG = cbuffer, + RIGHTARG = cbuffer, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Temporal distance functions + *****************************************************************************/ + +CREATE FUNCTION tdistance(geometry(Point), tcbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(cbuffer, tcbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tcbuffer, geometry(Point)) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tcbuffer, cbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tcbuffer, tcbuffer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geometry, + RIGHTARG = tcbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = cbuffer, + RIGHTARG = tcbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tcbuffer, + RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tcbuffer, + RIGHTARG = cbuffer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tcbuffer, + RIGHTARG = tcbuffer, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant/distance and shortest line functions + *****************************************************************************/ + +CREATE FUNCTION nearestApproachInstant(geometry, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'NAI_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(stbox, tcbuffer) + RETURNS tcbuffer + AS 'SELECT @extschema@.nearestApproachInstant(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(cbuffer, tcbuffer) + RETURNS tcbuffer + AS 'SELECT @extschema@.nearestApproachInstant(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tcbuffer, geometry) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'NAI_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tcbuffer, stbox) + RETURNS tcbuffer + AS 'SELECT @extschema@.nearestApproachInstant($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tcbuffer, cbuffer) + RETURNS tcbuffer + AS 'SELECT @extschema@.nearestApproachInstant($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'NAI_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION nearestApproachDistance(geometry, tcbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tcbuffer) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(cbuffer, tcbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tcbuffer, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tcbuffer, stbox) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tcbuffer, cbuffer) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tcbuffer, tcbuffer) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = tcbuffer, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tcbuffer, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tcbuffer, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tcbuffer, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = cbuffer, RIGHTARG = tcbuffer, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tcbuffer, RIGHTARG = cbuffer, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tcbuffer, RIGHTARG = tcbuffer, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +/*****************************************************************************/ + +CREATE FUNCTION shortestLine(geometry, tcbuffer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(stbox, tcbuffer) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(cbuffer, tcbuffer) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tcbuffer, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tcbuffer, stbox) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tcbuffer, cbuffer) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tcbuffer, tcbuffer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/161_tcbuffer_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/161_tcbuffer_aggfuncs.in.sql new file mode 100644 index 00000000..0cea9803 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/161_tcbuffer_aggfuncs.in.sql @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal circular buffers + */ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tcbuffer) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tcbuffer) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, tcbuffer, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(tcbuffer, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tcbuffer) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcbuffer_tagg_finalfn(internal) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(tcbuffer) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tcbuffer_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tcbuffer, tcbuffer, + interp text DEFAULT NULL) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tcbuffer, tcbuffer, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tcbuffer) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tcbuffer, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tcbuffer, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tcbuffer, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tcbuffer, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tcbuffer, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tcbuffer, tcbuffer) + RETURNS tcbuffer + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tcbuffer) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tcbuffer, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/162_tcbuffer_spatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/162_tcbuffer_spatialrels.in.sql new file mode 100644 index 00000000..1172008f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/162_tcbuffer_spatialrels.in.sql @@ -0,0 +1,364 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial relationships for temporal circular buffers + * @details These relationships are generalized to the temporal dimension with + * the "ever" and "always" semantics, and return a Boolean. + * + * The following relationships are supported: + * `eContains`, `aContains`, `eDisjoint`, `aDisjoint`, `eIntersects`, + * `aIntersects`, `eTouches`, `aTouches`, `eDwithin`, and `aDwithin` + * All these relationships, excepted `eDisjoint`, will automatically perform + * a bounding box comparison that will make use of any spatial, temporal, or + * spatiotemporal indexes that are available. + */ + +/***************************************************************************** + * eContains, aContains + *****************************************************************************/ + +/* eContains(geometry, tcbuffer) is not supported */ + +CREATE FUNCTION eContains(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eContains(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eContains(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aContains(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aContains(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aContains(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aContains(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eCovers, aCovers + *****************************************************************************/ + +/* eCovers(geometry, tcbuffer) is not supported */ + +CREATE FUNCTION eCovers(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eCovers(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eCovers(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aCovers(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aCovers(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aCovers(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aCovers(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDisjoint, aDisjoint + *****************************************************************************/ + +CREATE FUNCTION eDisjoint(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDisjoint(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDisjoint(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aDisjoint(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDisjoint(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDisjoint(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eIntersects, aIntersects + *****************************************************************************/ + +CREATE FUNCTION eintersects(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eintersects(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eIntersects(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eIntersects(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aIntersects(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aIntersects(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aIntersects(tcbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eTouches, aTouches + *****************************************************************************/ + +CREATE FUNCTION eTouches(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eTouches(tcbuffer, cbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eTouches(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eTouches(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aTouches(cbuffer, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aTouches(tcbuffer, cbuffer) + RETURNS boolean + SUPPORT tspatial_supportfn + AS 'MODULE_PATHNAME', 'Atouches_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aTouches(geometry, tcbuffer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aTouches(tcbuffer, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDwithin, aDwithin + *****************************************************************************/ + +CREATE FUNCTION eDwithin(cbuffer, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tcbuffer, cbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDwithin(geometry, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tcbuffer, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDwithin(tcbuffer, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aDwithin(cbuffer, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_cbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tcbuffer, cbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tcbuffer_cbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDwithin(geometry, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_geo_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tcbuffer, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tcbuffer_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDwithin(tcbuffer, tcbuffer, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tcbuffer_tcbuffer' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/164_tcbuffer_tempspatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/164_tcbuffer_tempspatialrels.in.sql new file mode 100644 index 00000000..60814347 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/164_tcbuffer_tempspatialrels.in.sql @@ -0,0 +1,186 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal spatial relationships for temporal circurlar buffers + */ + +/***************************************************************************** + * tContains + *****************************************************************************/ + +CREATE FUNCTION tContains(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(geometry, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(tcbuffer, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tContains + *****************************************************************************/ + +CREATE FUNCTION tCovers(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(geometry, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(tcbuffer, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDisjoint + *****************************************************************************/ + +CREATE FUNCTION tDisjoint(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(geometry, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tcbuffer, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tIntersects + *****************************************************************************/ + +CREATE FUNCTION tIntersects(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(geometry, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tcbuffer, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tTouches + *****************************************************************************/ + +CREATE FUNCTION tTouches(cbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tcbuffer, cbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(geometry, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_geo_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tcbuffer, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tcbuffer_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tcbuffer, tcbuffer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDwithin + *****************************************************************************/ + +CREATE FUNCTION tDwithin(cbuffer, tcbuffer, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_cbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tDwithin(tcbuffer, cbuffer, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tcbuffer_cbuffer' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- CREATE FUNCTION tDwithin(geometry, tcbuffer, dist float) + -- RETURNS tbool + -- AS 'MODULE_PATHNAME', 'Tdwithin_geo_tcbuffer' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION tDwithin(tcbuffer, geometry, dist float) + -- RETURNS tbool + -- AS 'MODULE_PATHNAME', 'Tdwithin_tcbuffer_geo' + -- LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tDwithin(tcbuffer, tcbuffer, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tcbuffer_tcbuffer' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/166_tcbuffer_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/166_tcbuffer_indexes.in.sql new file mode 100644 index 00000000..61dda3e3 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/166_tcbuffer_indexes.in.sql @@ -0,0 +1,266 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST and SP-GiST indexes for temporal circular buffers + */ + +/******************************************************************************/ + +CREATE FUNCTION tcbuffer_gist_consistent(internal, tcbuffer, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tcbuffer_rtree_ops + DEFAULT FOR TYPE tcbuffer USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (tcbuffer, stbox), + OPERATOR 1 << (tcbuffer, tcbuffer), + -- overlaps or left + OPERATOR 2 &< (tcbuffer, stbox), + OPERATOR 2 &< (tcbuffer, tcbuffer), + -- overlaps + OPERATOR 3 && (tcbuffer, tstzspan), + OPERATOR 3 && (tcbuffer, stbox), + OPERATOR 3 && (tcbuffer, tcbuffer), + -- overlaps or right + OPERATOR 4 &> (tcbuffer, stbox), + OPERATOR 4 &> (tcbuffer, tcbuffer), + -- strictly right + OPERATOR 5 >> (tcbuffer, stbox), + OPERATOR 5 >> (tcbuffer, tcbuffer), + -- same + OPERATOR 6 ~= (tcbuffer, tstzspan), + OPERATOR 6 ~= (tcbuffer, stbox), + OPERATOR 6 ~= (tcbuffer, tcbuffer), + -- contains + OPERATOR 7 @> (tcbuffer, tstzspan), + OPERATOR 7 @> (tcbuffer, stbox), + OPERATOR 7 @> (tcbuffer, tcbuffer), + -- contained by + OPERATOR 8 <@ (tcbuffer, tstzspan), + OPERATOR 8 <@ (tcbuffer, stbox), + OPERATOR 8 <@ (tcbuffer, tcbuffer), + -- overlaps or below + OPERATOR 9 &<| (tcbuffer, stbox), + OPERATOR 9 &<| (tcbuffer, tcbuffer), + -- strictly below + OPERATOR 10 <<| (tcbuffer, stbox), + OPERATOR 10 <<| (tcbuffer, tcbuffer), + -- strictly above + OPERATOR 11 |>> (tcbuffer, stbox), + OPERATOR 11 |>> (tcbuffer, tcbuffer), + -- overlaps or above + OPERATOR 12 |&> (tcbuffer, stbox), + OPERATOR 12 |&> (tcbuffer, tcbuffer), + -- adjacent + OPERATOR 17 -|- (tcbuffer, tstzspan), + OPERATOR 17 -|- (tcbuffer, stbox), + OPERATOR 17 -|- (tcbuffer, tcbuffer), + -- nearest approach distance +-- OPERATOR 25 |=| (tcbuffer, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tcbuffer, tstzspan), + OPERATOR 28 &<# (tcbuffer, stbox), + OPERATOR 28 &<# (tcbuffer, tcbuffer), + -- strictly before + OPERATOR 29 <<# (tcbuffer, tstzspan), + OPERATOR 29 <<# (tcbuffer, stbox), + OPERATOR 29 <<# (tcbuffer, tcbuffer), + -- strictly after + OPERATOR 30 #>> (tcbuffer, tstzspan), + OPERATOR 30 #>> (tcbuffer, stbox), + OPERATOR 30 #>> (tcbuffer, tcbuffer), + -- overlaps or after + OPERATOR 31 #&> (tcbuffer, tstzspan), + OPERATOR 31 #&> (tcbuffer, stbox), + OPERATOR 31 #&> (tcbuffer, tcbuffer), + -- functions + FUNCTION 1 tcbuffer_gist_consistent(internal, tcbuffer, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal); +-- FUNCTION 8 gist_tcbuffer_distance(internal, tcbuffer, smallint, oid, internal), + +/******************************************************************************/ + +CREATE OPERATOR CLASS tcbuffer_quadtree_ops + DEFAULT FOR TYPE tcbuffer USING spgist AS + -- strictly left + OPERATOR 1 << (tcbuffer, stbox), + OPERATOR 1 << (tcbuffer, tcbuffer), + -- overlaps or left + OPERATOR 2 &< (tcbuffer, stbox), + OPERATOR 2 &< (tcbuffer, tcbuffer), + -- overlaps + OPERATOR 3 && (tcbuffer, tstzspan), + OPERATOR 3 && (tcbuffer, stbox), + OPERATOR 3 && (tcbuffer, tcbuffer), + -- overlaps or right + OPERATOR 4 &> (tcbuffer, stbox), + OPERATOR 4 &> (tcbuffer, tcbuffer), + -- strictly right + OPERATOR 5 >> (tcbuffer, stbox), + OPERATOR 5 >> (tcbuffer, tcbuffer), + -- same + OPERATOR 6 ~= (tcbuffer, tstzspan), + OPERATOR 6 ~= (tcbuffer, stbox), + OPERATOR 6 ~= (tcbuffer, tcbuffer), + -- contains + OPERATOR 7 @> (tcbuffer, tstzspan), + OPERATOR 7 @> (tcbuffer, stbox), + OPERATOR 7 @> (tcbuffer, tcbuffer), + -- contained by + OPERATOR 8 <@ (tcbuffer, tstzspan), + OPERATOR 8 <@ (tcbuffer, stbox), + OPERATOR 8 <@ (tcbuffer, tcbuffer), + -- overlaps or below + OPERATOR 9 &<| (tcbuffer, stbox), + OPERATOR 9 &<| (tcbuffer, tcbuffer), + -- strictly below + OPERATOR 10 <<| (tcbuffer, stbox), + OPERATOR 10 <<| (tcbuffer, tcbuffer), + -- strictly above + OPERATOR 11 |>> (tcbuffer, stbox), + OPERATOR 11 |>> (tcbuffer, tcbuffer), + -- overlaps or above + OPERATOR 12 |&> (tcbuffer, stbox), + OPERATOR 12 |&> (tcbuffer, tcbuffer), + -- adjacent + OPERATOR 17 -|- (tcbuffer, tstzspan), + OPERATOR 17 -|- (tcbuffer, stbox), + OPERATOR 17 -|- (tcbuffer, tcbuffer), + -- nearest approach distance +-- OPERATOR 25 |=| (tcbuffer, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tcbuffer, tstzspan), + OPERATOR 28 &<# (tcbuffer, stbox), + OPERATOR 28 &<# (tcbuffer, tcbuffer), + -- strictly before + OPERATOR 29 <<# (tcbuffer, tstzspan), + OPERATOR 29 <<# (tcbuffer, stbox), + OPERATOR 29 <<# (tcbuffer, tcbuffer), + -- strictly after + OPERATOR 30 #>> (tcbuffer, tstzspan), + OPERATOR 30 #>> (tcbuffer, stbox), + OPERATOR 30 #>> (tcbuffer, tcbuffer), + -- overlaps or after + OPERATOR 31 #&> (tcbuffer, tstzspan), + OPERATOR 31 #&> (tcbuffer, stbox), + OPERATOR 31 #&> (tcbuffer, tcbuffer), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tcbuffer_kdtree_ops + FOR TYPE tcbuffer USING spgist AS + -- strictly left + OPERATOR 1 << (tcbuffer, stbox), + OPERATOR 1 << (tcbuffer, tcbuffer), + -- overlaps or left + OPERATOR 2 &< (tcbuffer, stbox), + OPERATOR 2 &< (tcbuffer, tcbuffer), + -- overlaps + OPERATOR 3 && (tcbuffer, tstzspan), + OPERATOR 3 && (tcbuffer, stbox), + OPERATOR 3 && (tcbuffer, tcbuffer), + -- overlaps or right + OPERATOR 4 &> (tcbuffer, stbox), + OPERATOR 4 &> (tcbuffer, tcbuffer), + -- strictly right + OPERATOR 5 >> (tcbuffer, stbox), + OPERATOR 5 >> (tcbuffer, tcbuffer), + -- same + OPERATOR 6 ~= (tcbuffer, tstzspan), + OPERATOR 6 ~= (tcbuffer, stbox), + OPERATOR 6 ~= (tcbuffer, tcbuffer), + -- contains + OPERATOR 7 @> (tcbuffer, tstzspan), + OPERATOR 7 @> (tcbuffer, stbox), + OPERATOR 7 @> (tcbuffer, tcbuffer), + -- contained by + OPERATOR 8 <@ (tcbuffer, tstzspan), + OPERATOR 8 <@ (tcbuffer, stbox), + OPERATOR 8 <@ (tcbuffer, tcbuffer), + -- overlaps or below + OPERATOR 9 &<| (tcbuffer, stbox), + OPERATOR 9 &<| (tcbuffer, tcbuffer), + -- strictly below + OPERATOR 10 <<| (tcbuffer, stbox), + OPERATOR 10 <<| (tcbuffer, tcbuffer), + -- strictly above + OPERATOR 11 |>> (tcbuffer, stbox), + OPERATOR 11 |>> (tcbuffer, tcbuffer), + -- overlaps or above + OPERATOR 12 |&> (tcbuffer, stbox), + OPERATOR 12 |&> (tcbuffer, tcbuffer), + -- adjacent + OPERATOR 17 -|- (tcbuffer, tstzspan), + OPERATOR 17 -|- (tcbuffer, stbox), + OPERATOR 17 -|- (tcbuffer, tcbuffer), + -- nearest approach distance +-- OPERATOR 25 |=| (tcbuffer, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tcbuffer, tstzspan), + OPERATOR 28 &<# (tcbuffer, stbox), + OPERATOR 28 &<# (tcbuffer, tcbuffer), + -- strictly before + OPERATOR 29 <<# (tcbuffer, tstzspan), + OPERATOR 29 <<# (tcbuffer, stbox), + OPERATOR 29 <<# (tcbuffer, tcbuffer), + -- strictly after + OPERATOR 30 #>> (tcbuffer, tstzspan), + OPERATOR 30 #>> (tcbuffer, stbox), + OPERATOR 30 #>> (tcbuffer, tcbuffer), + -- overlaps or after + OPERATOR 31 #&> (tcbuffer, tstzspan), + OPERATOR 31 #&> (tcbuffer, stbox), + OPERATOR 31 #&> (tcbuffer, tcbuffer), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/CMakeLists.txt new file mode 100644 index 00000000..7cade2db --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/cbuffer/CMakeLists.txt @@ -0,0 +1,23 @@ +SET(LOCAL_FILES + 150_cbuffer + 151_cbufferset + 152_tcbuffer + # 153_tcbuffer_inout + 154_tcbuffer_compops + 155_tcbuffer_spatialfuncs + 158_tcbuffer_topops + 159_tcbuffer_posops + 160_tcbuffer_distance + 161_tcbuffer_aggfuncs + 162_tcbuffer_spatialrels + 164_tcbuffer_tempspatialrels + 166_tcbuffer_indexes + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/050_geoset.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/050_geoset.in.sql new file mode 100644 index 00000000..2404117e --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/050_geoset.in.sql @@ -0,0 +1,944 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for set of geometry/geography values + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE geomset; +CREATE TYPE geogset; + +CREATE FUNCTION geomset_in(cstring) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomset_out(geomset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomset_recv(internal) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomset_send(geomset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geogset_in(cstring) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogset_out(geogset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogset_recv(internal) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogset_send(geogset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spatialset_analyze(internal) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spatialset_analyze' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE geomset ( + internallength = variable, + input = geomset_in, + output = geomset_out, + receive = geomset_recv, + send = geomset_send, + alignment = double, + storage = extended, + analyze = spatialset_analyze +); + +CREATE TYPE geogset ( + internallength = variable, + input = geogset_in, + output = geogset_out, + receive = geogset_recv, + send = geogset_send, + alignment = double, + storage = extended, + analyze = spatialset_analyze +); + +/******************************************************************************/ + +-- Input/output in WKB and HexWKB representation + +CREATE FUNCTION geomsetFromText(text) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomsetFromEWKT(text) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geogsetFromText(text) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogsetFromEWKT(text) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geomsetFromBinary(bytea) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomsetFromEWKB(bytea) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geomsetFromHexWKB(text) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geogsetFromBinary(bytea) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogsetFromEWKB(bytea) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geogsetFromHexWKB(text) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(geomset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(geomset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(geogset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(geogset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(geomset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(geomset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(geogset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(geogset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor + ******************************************************************************/ + +CREATE FUNCTION set(geometry[]) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(geography[]) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION set(geometry) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(geography) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (geometry AS geomset) WITH FUNCTION set(geometry); +CREATE CAST (geography AS geogset) WITH FUNCTION set(geography); + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION memSize(geomset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(geogset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numValues(geomset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(geogset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(geomset) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(geogset) + RETURNS geography + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(geomset) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(geogset) + RETURNS geography + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(geomset, integer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(geogset, integer) + RETURNS geography + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getValues(geomset) + RETURNS geometry[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(geogset) + RETURNS geography[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * SRID functions + *****************************************************************************/ + +CREATE FUNCTION SRID(geomset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spatialset_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION SRID(geogset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spatialset_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(geomset, integer) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Spatialset_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setSRID(geogset, integer) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Spatialset_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(geomset, integer) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Spatialset_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(geogset, integer) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Spatialset_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(geomset, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Spatialset_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(geogset, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Spatialset_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION round(geomset, integer DEFAULT 0) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(geogset, integer DEFAULT 0) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation set of values <-> set + ******************************************************************************/ + +CREATE FUNCTION unnest(geomset) + RETURNS SETOF geometry + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(geogset) + RETURNS SETOF geography + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, geometry) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, geography) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION set_union_transfn(internal, geomset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, geogset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION geomset_union_finalfn(internal) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION geogset_union_finalfn(internal) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE setUnion(geometry) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = geomset_union_finalfn +); +CREATE AGGREGATE setUnion(geography) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = geogset_union_finalfn +); + +CREATE AGGREGATE setUnion(geomset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = geomset_union_finalfn +); +CREATE AGGREGATE setUnion(geogset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = geogset_union_finalfn +); + +/***************************************************************************** + * Selectivity functions + *****************************************************************************/ + +-- CREATE FUNCTION spatialset_sel(internal, oid, internal, integer) + -- RETURNS float + -- AS 'MODULE_PATHNAME', 'Spatialset_sel' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION set_eq(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_ne(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_lt(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_le(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_ge(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gt(geomset, geomset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(geogset, geogset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_cmp(geomset, geomset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(geogset, geogset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); + +CREATE OPERATOR <> ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); + +CREATE OPERATOR < ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >= + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR < ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >= + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +CREATE OPERATOR <= ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = > + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = > + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +CREATE OPERATOR >= ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = < + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = < + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +CREATE OPERATOR > ( + LEFTARG = geomset, RIGHTARG = geomset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <= + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR > ( + LEFTARG = geogset, RIGHTARG = geogset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <= + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +CREATE OPERATOR CLASS geomset_btree_ops + DEFAULT FOR TYPE geomset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(geomset, geomset); +CREATE OPERATOR CLASS geogset_btree_ops + DEFAULT FOR TYPE geogset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(geogset, geogset); + +/******************************************************************************/ + +CREATE FUNCTION set_hash(geomset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(geogset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_hash_extended(geomset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(geogset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS geomset_hash_ops + DEFAULT FOR TYPE geomset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(geomset), + FUNCTION 2 set_hash_extended(geomset, bigint); +CREATE OPERATOR CLASS geogset_hash_ops + DEFAULT FOR TYPE geogset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(geogset), + FUNCTION 2 set_hash_extended(geogset, bigint); + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION set_contains(geomset, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(geomset, geomset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(geogset, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(geogset, geogset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = geomset, RIGHTARG = geometry, + COMMUTATOR = <@ + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = <@ + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = geogset, RIGHTARG = geography, + COMMUTATOR = <@ + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = <@ + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_contained(geometry, geomset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(geomset, geomset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(geography, geogset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(geogset, geogset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = geometry, RIGHTARG = geomset, + COMMUTATOR = @> + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = @> + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = geography, RIGHTARG = geogset, + COMMUTATOR = @> + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = @> + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overlaps(geomset, geomset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(geogset, geogset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = && + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = && + -- RESTRICT = stbox_sel, JOIN = stbox_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION set_union(geometry, geomset) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(geomset, geometry) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(geomset, geomset) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(geography, geogset) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(geogset, geography) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(geogset, geogset) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geometry, RIGHTARG = geomset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geomset, RIGHTARG = geometry, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geography, RIGHTARG = geogset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geogset, RIGHTARG = geography, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION set_minus(geometry, geomset) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(geomset, geometry) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(geomset, geomset) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(geography, geogset) + RETURNS geography + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(geogset, geography) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(geogset, geogset) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geometry, RIGHTARG = geomset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geomset, RIGHTARG = geometry +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geomset, RIGHTARG = geomset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geography, RIGHTARG = geogset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geogset, RIGHTARG = geography +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = geogset, RIGHTARG = geogset +); + +/*****************************************************************************/ + +CREATE FUNCTION set_intersection(geometry, geomset) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(geomset, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(geomset, geomset) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(geography, geogset) + RETURNS geography + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(geogset, geography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(geogset, geogset) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geometry, RIGHTARG = geomset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geomset, RIGHTARG = geometry, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geography, RIGHTARG = geogset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geogset, RIGHTARG = geography, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = * +); + +/*****************************************************************************/ + +CREATE FUNCTION set_distance(geometry, geomset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(geomset, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(geomset, geomset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_distance(geography, geogset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(geogset, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(geogset, geogset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geometry, RIGHTARG = geomset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geomset, RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geomset, RIGHTARG = geomset, + COMMUTATOR = <-> +); + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geography, RIGHTARG = geogset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geogset, RIGHTARG = geography, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = geogset, RIGHTARG = geogset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/051_stbox.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/051_stbox.in.sql new file mode 100644 index 00000000..5ad6fff8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/051_stbox.in.sql @@ -0,0 +1,763 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for spatiotemporal bounding boxes + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE stbox; + +CREATE FUNCTION stbox_in(cstring) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_out(stbox) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Stbox_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_recv(internal) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_send(stbox) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Stbox_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE stbox ( + internallength = 80, + input = stbox_in, + output = stbox_out, + receive = stbox_recv, + send = stbox_send, + storage = plain, + alignment = double +); + +-- Input/output in WKB and HexWKB representation + +CREATE FUNCTION stboxFromBinary(bytea) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stboxFromHexWKB(text) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(stbox, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Stbox_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(stbox, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Stbox_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(stbox, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Stbox_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION stboxX(float, float, float, float, srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_x' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxZ(float, float, float, float, float, float, + srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_z' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxT(timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_t' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxT(tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_t' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxXT(float, float, float, float, timestamptz, + srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_xt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxXT(float, float, float, float, tstzspan, + srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_xt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxZT(float, float, float, float, float, float, + timestamptz, srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_zt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxZT(float, float, float, float, float, float, + tstzspan, srid integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_constructor_zt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geodstboxT(timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geodstbox_constructor_t' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geodstboxT(tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geodstbox_constructor_t' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geodstboxZ(float, float, float, float, float, float, + srid integer DEFAULT 4326) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geodstbox_constructor_z' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geodstboxZT(float, float, float, float, float, float, + timestamptz, srid integer DEFAULT 4326) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geodstbox_constructor_zt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geodstboxZT(float, float, float, float, float, float, + tstzspan, srid integer DEFAULT 4326) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geodstbox_constructor_zt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION stbox(geometry, timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geography, timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geometry, tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geography, tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Conversion + *****************************************************************************/ + +CREATE FUNCTION stbox(box2d) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Box2d_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(box3d) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Box3d_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geometry) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geography) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Geo_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geomset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Spatialset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(geogset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Spatialset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(tstzset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tstzset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(tstzspanset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tstzspanset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (box2d AS stbox) WITH FUNCTION stbox(box2d); +CREATE CAST (box3d AS stbox) WITH FUNCTION stbox(box3d); +CREATE CAST (geometry AS stbox) WITH FUNCTION stbox(geometry); +CREATE CAST (geography AS stbox) WITH FUNCTION stbox(geography); +CREATE CAST (geomset AS stbox) WITH FUNCTION stbox(geomset); +CREATE CAST (geogset AS stbox) WITH FUNCTION stbox(geogset); +CREATE CAST (timestamptz AS stbox) WITH FUNCTION stbox(timestamptz); +CREATE CAST (tstzset AS stbox) WITH FUNCTION stbox(tstzset); +CREATE CAST (tstzspan AS stbox) WITH FUNCTION stbox(tstzspan); +CREATE CAST (tstzspanset AS stbox) WITH FUNCTION stbox(tstzspanset); + +/*****************************************************************************/ + +CREATE FUNCTION box2d(stbox) + RETURNS box2d + AS 'MODULE_PATHNAME', 'Stbox_to_box2d' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION box3d(stbox) + RETURNS box3d + AS 'MODULE_PATHNAME', 'Stbox_to_box3d' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geometry(stbox) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Stbox_to_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geography(stbox) + RETURNS geography + AS 'MODULE_PATHNAME', 'Stbox_to_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(stbox) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Stbox_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (stbox AS box2d) WITH FUNCTION box2d(stbox); +CREATE CAST (stbox AS box3d) WITH FUNCTION box3d(stbox); +CREATE CAST (stbox AS geometry) WITH FUNCTION geometry(stbox); +CREATE CAST (stbox AS geography) WITH FUNCTION geography(stbox); +CREATE CAST (stbox AS tstzspan) WITH FUNCTION timeSpan(stbox); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +CREATE FUNCTION hasX(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_hasx' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION hasZ(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_hasz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION hasT(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_hast' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION isGeodetic(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_isgeodetic' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION Xmin(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_xmin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Ymin(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_ymin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Zmin(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_zmin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Tmin(stbox) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Stbox_tmin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION TminInc(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_tmin_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION Xmax(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_xmax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Ymax(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_ymax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Zmax(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_zmax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Tmax(stbox) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Stbox_tmax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION TmaxInc(stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_tmax_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION area(stbox, spheroid bool DEFAULT true) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_area' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION volume(stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_volume' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION perimeter(stbox, spheroid bool DEFAULT true) + RETURNS float + AS 'MODULE_PATHNAME', 'Stbox_perimeter' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION shiftTime(stbox, interval) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(stbox, interval) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(stbox, interval, interval) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getSpace(stbox) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_get_space' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION expandSpace(stbox, float) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_expand_space' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expandTime(stbox, interval) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_expand_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Selectively functions for operators + *****************************************************************************/ + +CREATE FUNCTION tspatial_sel(internal, oid, internal, integer) + RETURNS float +AS 'MODULE_PATHNAME', 'Tspatial_sel' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION tspatial_joinsel(internal, oid, internal, smallint, internal) + RETURNS float +AS 'MODULE_PATHNAME', 'Tspatial_joinsel' + LANGUAGE C IMMUTABLE STRICT; + +/***************************************************************************** +* Topological operators +*****************************************************************************/ + +CREATE FUNCTION stbox_contains(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_contained(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overlaps(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_same(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_adjacent(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = stbox_contains, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = stbox_contained, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = stbox_overlaps, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = stbox_same, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = stbox_adjacent, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** +* Position operators +*****************************************************************************/ + +CREATE FUNCTION stbox_left(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overleft(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_right(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overright(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_below(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overbelow(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_above(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overabove(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_before(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overbefore(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_after(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overafter(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_front(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overfront(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_back(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_overback(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = stbox_left, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = stbox_overleft, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = stbox_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = stbox_overright, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + PROCEDURE = stbox_below, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + PROCEDURE = stbox_overbelow, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + PROCEDURE = stbox_above, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + PROCEDURE = stbox_overabove, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = stbox_back, + COMMUTATOR = < ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = stbox_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = stbox_before, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = stbox_overbefore, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = stbox_after, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = stbox_overafter, + LEFTARG = stbox, RIGHTARG = stbox, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Set operators + *****************************************************************************/ + +CREATE FUNCTION stbox_union(stbox, stbox) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Union_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_intersection(stbox, stbox) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Intersection_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = stbox_union, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = + +); +CREATE OPERATOR * ( + PROCEDURE = stbox_intersection, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = * +); + +/***************************************************************************** + * Split functions + *****************************************************************************/ + +CREATE FUNCTION quadSplit(stbox) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Stbox_quad_split' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Extent aggreation + *****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION stbox_extent_transfn(stbox, stbox) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION stbox_extent_combinefn(stbox, stbox) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(stbox) ( + SFUNC = stbox_extent_transfn, + STYPE = stbox, + COMBINEFUNC = stbox_extent_combinefn, + PARALLEL = safe +); + +/***************************************************************************** + * Comparison + *****************************************************************************/ + +CREATE FUNCTION stbox_eq(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_ne(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_lt(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_le(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_ge(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_gt(stbox, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Stbox_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_cmp(stbox, stbox) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Stbox_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = stbox_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = stbox_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = stbox_lt, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = stbox_le, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = stbox_ge, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR > ( + PROCEDURE = stbox_gt, + LEFTARG = stbox, RIGHTARG = stbox, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = areasel, JOIN = areajoinsel +); + +CREATE OPERATOR CLASS stbox_btree_ops + DEFAULT FOR TYPE stbox USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 stbox_cmp(stbox, stbox); + +/*****************************************************************************/ + +CREATE FUNCTION stbox_hash(stbox) + RETURNS integer + AS 'MODULE_PATHNAME', 'Stbox_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox_hash_extended(stbox, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Stbox_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS stbox_hash_ops + DEFAULT FOR TYPE stbox USING hash AS + OPERATOR 1 = , + FUNCTION 1 stbox_hash(stbox), + FUNCTION 2 stbox_hash_extended(stbox, bigint); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tgeo.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tgeo.in.sql new file mode 100644 index 00000000..b705b6bd --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tgeo.in.sql @@ -0,0 +1,1081 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal geometry/geographies + */ + +CREATE TYPE tgeometry; +CREATE TYPE tgeography; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION tgeometry_in(cstring, oid, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeo_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tgeometry) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeometry_recv(internal, oid, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tgeometry) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometry_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tgeometry_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tgeography_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tspatial_typmod_out(integer) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Tspatial_typmod_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tspatial_analyze(internal) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tspatial_analyze' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tgeometry ( + internallength = variable, + input = tgeometry_in, + output = temporal_out, + send = temporal_send, + receive = tgeometry_recv, + typmod_in = tgeometry_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +CREATE FUNCTION tgeography_in(cstring, oid, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tgeo_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tgeography) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography_recv(internal, oid, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tgeography) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tgeography ( + internallength = variable, + input = tgeography_in, + output = temporal_out, + send = temporal_send, + receive = tgeography_recv, + typmod_in = tgeography_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tgeometry(tgeometry, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(tgeography, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeometry AS tgeometry) WITH FUNCTION tgeometry(tgeometry, integer) AS IMPLICIT; +CREATE CAST (tgeography AS tgeography) WITH FUNCTION tgeography(tgeography, integer) AS IMPLICIT; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION tgeometry(geometry, timestamptz) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeoinst_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(geography, timestamptz) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tgeoinst_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometry(geometry, tstzset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(geography, tstzset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometry(geometry, tstzspan, text DEFAULT 'step') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(geography, tstzspan, text DEFAULT 'step') + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometry(geometry, tstzspanset, text DEFAULT 'step') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(geography, tstzspanset, text DEFAULT 'step') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tgeometrySeq(tgeometry[], text DEFAULT 'step', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographySeq(tgeography[], text DEFAULT 'step', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometrySeqSet(tgeometry[]) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographySeqSet(tgeography[]) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tgeometrySeqSetGaps(tgeometry[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'step') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tgeographySeqSetGaps(tgeography[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'step') + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/****************************************************************************** + * Conversions + ******************************************************************************/ + +CREATE FUNCTION timeSpan(tgeometry) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tgeography) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeometry AS tstzspan) WITH FUNCTION timeSpan(tgeometry); +CREATE CAST (tgeography AS tstzspan) WITH FUNCTION timeSpan(tgeography); + +/****************************************************************************** + * Transformations + ******************************************************************************/ + +CREATE FUNCTION tgeometryInst(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeometrySeq(tgeometry, text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeometrySeq(tgeometry) + RETURNS tgeometry + AS 'SELECT @extschema@.tgeometrySeq($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeometrySeqSet(tgeometry, text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeometrySeqSet(tgeometry) + RETURNS tgeometry + AS 'SELECT @extschema@.tgeometrySeqSet($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tgeographyInst(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeographySeq(tgeography, text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeographySeq(tgeography) + RETURNS tgeography + AS 'SELECT @extschema@.tgeographySeq($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeographySeqSet(tgeography, text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeographySeqSet(tgeography) + RETURNS tgeography + AS 'SELECT @extschema@.tgeographySeqSet($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tgeometry, text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setInterp(tgeography, text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION merge(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION merge(tgeometry[]) + RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tgeography[]) + RETURNS tgeography +AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor Functions + ******************************************************************************/ + +CREATE FUNCTION tempSubtype(tgeometry) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tempSubtype(tgeography) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tgeometry) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION interp(tgeography) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValue(tgeography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- There is no getValues() function for temporal geos, +-- it is called traversedArea() for temporal geos + +CREATE FUNCTION getTimestamp(tgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTimestamp(tgeography) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueSet(tgeometry) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueSet(tgeography) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tgeometry, integer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(tgeography, integer) + RETURNS geography + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tgeometry) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTime(tgeography) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(tgeography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(tgeography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tgeometry, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tgeography, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numInstants(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startInstant(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endInstant(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tgeometry, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instantN(tgeography, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tgeometry) + RETURNS tgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instants(tgeography) + RETURNS tgeography[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numTimestamps(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startTimestamp(tgeography) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endTimestamp(tgeography) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tgeometry, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestampN(tgeography, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tgeometry) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestamps(tgeography) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSequences(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSequence(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSequence(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tgeometry, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequenceN(tgeography, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tgeometry) + RETURNS tgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequences(tgeography) + RETURNS tgeography[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tgeometry) + RETURNS tgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segments(tgeography) + RETURNS tgeography[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Shift and scale functions + *****************************************************************************/ + +CREATE FUNCTION shiftTime(tgeometry, interval) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(tgeography, interval) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tgeometry, interval) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(tgeography, interval) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tgeometry, interval, interval) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(tgeography, interval, interval) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tprecision(tgeometry, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tprecision(tgeography, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tsample(tgeometry, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tsample(tgeography, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE FUNCTION unnest(tgeometry) + RETURNS SETOF geom_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(tgeography) + RETURNS SETOF geog_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction Functions + *****************************************************************************/ + +CREATE FUNCTION atValues(tgeometry, geometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tgeography, geography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tgeometry, geometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tgeography, geography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tgeometry, geomset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tgeography, geogset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tgeometry, geomset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tgeography, geogset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeometry, timestamptz) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeography, timestamptz) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeometry, timestamptz) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeography, timestamptz) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tgeometry, timestamptz) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueAtTimestamp(tgeography, timestamptz) + RETURNS geography + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeometry, tstzset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeography, tstzset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeometry, tstzset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeography, tstzset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeometry, tstzspan) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeography, tstzspan) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeometry, tstzspan) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeography, tstzspan) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeometry, tstzspanset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeography, tstzspanset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeometry, tstzspanset) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeography, tstzspanset) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tgeometry, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION beforeTimestamp(tgeography, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tgeometry, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION afterTimestamp(tgeography, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tgeometry, tgeometry, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION insert(tgeography, tgeometry, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tgeometry, tgeometry, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION update(tgeography, tgeography, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeometry, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeography, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeometry, tstzset, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeography, tstzset, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeometry, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeography, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeometry, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeography, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stops Function + *****************************************************************************/ + +-- CREATE FUNCTION stops(tgeometry, maxdist float DEFAULT 0.0, + -- minduration interval DEFAULT '0 minutes') + -- RETURNS tgeometry + -- AS 'MODULE_PATHNAME', 'Temporal_stops' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION stops(tgeography, maxdist float DEFAULT 0.0, + -- minduration interval DEFAULT '0 minutes') + -- RETURNS tgeography + -- AS 'MODULE_PATHNAME', 'Temporal_stops' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION stops(tgeometry, minduration interval DEFAULT '0 minutes') + -- RETURNS tgeometry + -- AS 'SELECT @extschema@.stops($1, 0.0, $2)' + -- LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION stops(tgeography, minduration interval DEFAULT '0 minutes') + -- RETURNS tgeography + -- AS 'SELECT @extschema@.stops($1, 0.0, $2)' + -- LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE time_tgeom AS ( + time timestamptz, + tgeom tgeometry +); +CREATE TYPE time_tgeog AS ( + time timestamptz, + tgeog tgeography +); + +CREATE FUNCTION timeSplit(tgeometry, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tgeom + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeSplit(tgeography, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tgeog + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tgeometry, tgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tgeometry, tgeometry) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE OPERATOR CLASS tgeometry_btree_ops + DEFAULT FOR TYPE tgeometry USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tgeometry, tgeometry); + +/******************************************************************************/ + +CREATE FUNCTION temporal_lt(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tgeography, tgeography) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tgeography, tgeography) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <> ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE OPERATOR CLASS tgeography_btree_ops + DEFAULT FOR TYPE tgeography USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tgeography, tgeography); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_hash(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tgeometry_hash_ops + DEFAULT FOR TYPE tgeometry USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tgeometry); +CREATE OPERATOR CLASS tgeography_hash_ops + DEFAULT FOR TYPE tgeography USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tgeography); + +/******************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tpoint.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tpoint.in.sql new file mode 100644 index 00000000..4d3383e7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/052_tpoint.in.sql @@ -0,0 +1,1082 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal geometry/geography points + */ + +CREATE TYPE tgeompoint; +CREATE TYPE tgeogpoint; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION tgeompoint_in(cstring, oid, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpoint_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tgeompoint) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeompoint_recv(internal, oid, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tgeompoint) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompoint_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tgeompoint_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tgeompoint ( + internallength = variable, + input = tgeompoint_in, + output = temporal_out, + send = temporal_send, + receive = tgeompoint_recv, + typmod_in = tgeompoint_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +CREATE FUNCTION tgeogpoint_in(cstring, oid, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tpoint_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tgeogpoint) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint_recv(internal, oid, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tgeogpoint) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeogpoint_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tgeogpoint_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tgeogpoint ( + internallength = variable, + input = tgeogpoint_in, + output = temporal_out, + send = temporal_send, + receive = tgeogpoint_recv, + typmod_in = tgeogpoint_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tgeompoint(tgeompoint, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(tgeogpoint, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeompoint AS tgeompoint) WITH FUNCTION tgeompoint(tgeompoint, integer) AS IMPLICIT; +CREATE CAST (tgeogpoint AS tgeogpoint) WITH FUNCTION tgeogpoint(tgeogpoint, integer) AS IMPLICIT; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION tgeompoint(geometry(Point), timestamptz) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpointinst_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(geography(Point), timestamptz) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tpointinst_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompoint(geometry, tstzset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(geography, tstzset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompoint(geometry, tstzspan, text DEFAULT 'linear') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(geography, tstzspan, text DEFAULT 'linear') + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompoint(geometry, tstzspanset, text DEFAULT 'linear') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(geography, tstzspanset, text DEFAULT 'linear') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tgeompointSeq(tgeompoint[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointSeq(tgeogpoint[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointSeqSet(tgeompoint[]) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointSeqSet(tgeogpoint[]) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tgeompointSeqSetGaps(tgeompoint[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tgeogpointSeqSetGaps(tgeogpoint[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/****************************************************************************** + * Conversions + ******************************************************************************/ + +CREATE FUNCTION timeSpan(tgeompoint) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tgeogpoint) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeompoint AS tstzspan) WITH FUNCTION timeSpan(tgeompoint); +CREATE CAST (tgeogpoint AS tstzspan) WITH FUNCTION timeSpan(tgeogpoint); + +/****************************************************************************** + * Transformations + ******************************************************************************/ + +CREATE FUNCTION tgeompointInst(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeompointSeq(tgeompoint, text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeompointSeq(tgeompoint) + RETURNS tgeompoint + AS 'SELECT @extschema@.tgeompointSeq($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeompointSeqSet(tgeompoint, text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeompointSeqSet(tgeompoint) + RETURNS tgeompoint + AS 'SELECT @extschema@.tgeompointSeqSet($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tgeogpointInst(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeogpointSeq(tgeogpoint, text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeogpointSeq(tgeogpoint) + RETURNS tgeogpoint + AS 'SELECT @extschema@.tgeogpointSeq($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeogpointSeqSet(tgeogpoint, text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tgeogpointSeqSet(tgeogpoint) + RETURNS tgeogpoint + AS 'SELECT @extschema@.tgeogpointSeqSet($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tgeompoint, text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setInterp(tgeogpoint, text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION merge(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION merge(tgeompoint[]) + RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tgeogpoint[]) + RETURNS tgeogpoint +AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor Functions + ******************************************************************************/ + +CREATE FUNCTION tempSubtype(tgeompoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tempSubtype(tgeogpoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tgeompoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION interp(tgeogpoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(tgeompoint) + RETURNS geometry(Point) + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValue(tgeogpoint) + RETURNS geography(Point) + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- There is no getValues() function for temporal points, +-- it is called trajectory() for temporal points + +CREATE FUNCTION getTimestamp(tgeompoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTimestamp(tgeogpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueSet(tgeompoint) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueSet(tgeogpoint) + RETURNS geogset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tgeompoint, integer) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(tgeogpoint, integer) + RETURNS geography + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tgeompoint) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTime(tgeogpoint) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tgeompoint) + RETURNS geometry(Point) + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(tgeogpoint) + RETURNS geography(Point) + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tgeompoint) + RETURNS geometry(Point) + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(tgeogpoint) + RETURNS geography(Point) + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tgeompoint, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tgeogpoint, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numInstants(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startInstant(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endInstant(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tgeompoint, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instantN(tgeogpoint, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tgeompoint) + RETURNS tgeompoint[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instants(tgeogpoint) + RETURNS tgeogpoint[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numTimestamps(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tgeompoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startTimestamp(tgeogpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tgeompoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endTimestamp(tgeogpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tgeompoint, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestampN(tgeogpoint, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tgeompoint) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestamps(tgeogpoint) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSequences(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSequence(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSequence(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tgeompoint, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequenceN(tgeogpoint, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tgeompoint) + RETURNS tgeompoint[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequences(tgeogpoint) + RETURNS tgeogpoint[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tgeompoint) + RETURNS tgeompoint[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segments(tgeogpoint) + RETURNS tgeogpoint[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Shift and scale functions + *****************************************************************************/ + +CREATE FUNCTION shiftTime(tgeompoint, interval) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(tgeogpoint, interval) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tgeompoint, interval) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(tgeogpoint, interval) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tgeompoint, interval, interval) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(tgeogpoint, interval, interval) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tprecision(tgeompoint, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tprecision(tgeogpoint, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tsample(tgeompoint, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tsample(tgeogpoint, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE TYPE geom_tstzspanset AS ( + value geometry, + time tstzspanset +); +CREATE TYPE geog_tstzspanset AS ( + value geography, + time tstzspanset +); + +CREATE FUNCTION unnest(tgeompoint) + RETURNS SETOF geom_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(tgeogpoint) + RETURNS SETOF geog_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction Functions + *****************************************************************************/ + +CREATE FUNCTION atValues(tgeompoint, geometry(Point)) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tgeogpoint, geography(Point)) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tgeompoint, geometry(Point)) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tgeogpoint, geography(Point)) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tgeompoint, geomset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tgeogpoint, geogset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tgeompoint, geomset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tgeogpoint, geogset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeompoint, timestamptz) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeogpoint, timestamptz) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeompoint, timestamptz) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeogpoint, timestamptz) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tgeompoint, timestamptz) + RETURNS geometry(Point) + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueAtTimestamp(tgeogpoint, timestamptz) + RETURNS geography(Point) + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeompoint, tstzset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeogpoint, tstzset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeompoint, tstzset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeogpoint, tstzset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeompoint, tstzspan) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeogpoint, tstzspan) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeompoint, tstzspan) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeogpoint, tstzspan) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tgeompoint, tstzspanset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tgeogpoint, tstzspanset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tgeompoint, tstzspanset) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tgeogpoint, tstzspanset) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tgeompoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION beforeTimestamp(tgeogpoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tgeompoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION afterTimestamp(tgeogpoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tgeompoint, tgeompoint, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION insert(tgeogpoint, tgeompoint, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tgeompoint, tgeompoint, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION update(tgeogpoint, tgeogpoint, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeompoint, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeogpoint, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeompoint, tstzset, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeogpoint, tstzset, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeompoint, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeogpoint, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tgeompoint, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tgeogpoint, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stops Function + *****************************************************************************/ + +CREATE FUNCTION stops(tgeompoint, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stops(tgeogpoint, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stops(tgeompoint, minduration interval) + RETURNS tgeompoint + AS 'SELECT @extschema@.stops($1, 0.0, $2)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stops(tgeogpoint, minduration interval) + RETURNS tgeogpoint + AS 'SELECT @extschema@.stops($1, 0.0, $2)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE time_tgeompoint AS ( + time timestamptz, + temp tgeompoint +); +CREATE TYPE time_tgeogpoint AS ( + time timestamptz, + temp tgeogpoint +); + +CREATE FUNCTION timeSplit(tgeompoint, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeSplit(tgeogpoint, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tgeompoint, tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tgeompoint, tgeompoint) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE OPERATOR CLASS tgeompoint_btree_ops + DEFAULT FOR TYPE tgeompoint USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tgeompoint, tgeompoint); + +/******************************************************************************/ + +CREATE FUNCTION temporal_lt(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tgeogpoint, tgeogpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tgeogpoint, tgeogpoint) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <> ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE OPERATOR CLASS tgeogpoint_btree_ops + DEFAULT FOR TYPE tgeogpoint USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tgeogpoint, tgeogpoint); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_hash(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tgeompoint_hash_ops + DEFAULT FOR TYPE tgeompoint USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tgeompoint); +CREATE OPERATOR CLASS tgeogpoint_hash_ops + DEFAULT FOR TYPE tgeogpoint USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tgeogpoint); + +/******************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tgeo_inout.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tgeo_inout.in.sql new file mode 100644 index 00000000..dd3ff9da --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tgeo_inout.in.sql @@ -0,0 +1,172 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Input/output of temporal geometries/geographies in WKT, EWKT, and + * MF-JSON representation + */ + +/***************************************************************************** + * Input + *****************************************************************************/ + +CREATE FUNCTION tgeometryFromText(text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromText(text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometryFromEWKT(text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromEWKT(text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometryFromMFJSON(text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromMFJSON(text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometryFromBinary(bytea) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromBinary(bytea) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometryFromEWKB(bytea) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromEWKB(bytea) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeometryFromHexEWKB(text) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeographyFromHexEWKB(text) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Output + *****************************************************************************/ + +CREATE FUNCTION asText(tgeometry, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tgeometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(tgeography, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tgeography[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tgeometry, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tgeometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tgeography, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tgeography[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asMFJSON(tgeometry, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asMFJSON(tgeography, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tgeometry, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tgeography, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(tgeometry, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKB(tgeography, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(tgeometry, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexEWKB(tgeography, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tpoint_inout.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tpoint_inout.in.sql new file mode 100644 index 00000000..ce4358d5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/053_tpoint_inout.in.sql @@ -0,0 +1,190 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Input/output of temporal points in WKT, EWKT, and MF-JSON + * representation + */ + +/***************************************************************************** + * Input + *****************************************************************************/ + +CREATE FUNCTION tgeompointFromText(text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromText(text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tpoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointFromEWKT(text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromEWKT(text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tpoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointFromMFJSON(text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromMFJSON(text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointFromBinary(bytea) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromBinary(bytea) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointFromEWKB(bytea) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromEWKB(bytea) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tgeompointFromHexEWKB(text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpointFromHexEWKB(text) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Output + *****************************************************************************/ + +CREATE FUNCTION asText(tgeompoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tgeompoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(tgeogpoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tgeogpoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(geometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(geography[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tgeompoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tgeompoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tgeogpoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tgeogpoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(geometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(geography[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asMFJSON(tgeompoint, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asMFJSON(tgeogpoint, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tgeompoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tgeogpoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(tgeompoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKB(tgeogpoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(tgeompoint, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexEWKB(tgeogpoint, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tgeo_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tgeo_compops.in.sql new file mode 100644 index 00000000..07c6c492 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tgeo_compops.in.sql @@ -0,0 +1,457 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever/always and temporal comparison functions and operators for + * temporal geometries/geographies + */ + +/***************************************************************************** + * Index Support Function + *****************************************************************************/ + +CREATE FUNCTION tspatial_supportfn(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tspatial_supportfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = geometry, RIGHTARG = tgeometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = geography, RIGHTARG = tgeography, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = geometry, RIGHTARG = tgeometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = geography, RIGHTARG = tgeography, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = geometry, RIGHTARG = tgeometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = geography, RIGHTARG = tgeography, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = geometry, RIGHTARG = tgeometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = geography, RIGHTARG = tgeography, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tgeometry, RIGHTARG = geometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tgeography, RIGHTARG = geography, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tgeometry, RIGHTARG = geometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tgeography, RIGHTARG = geography, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tgeometry, RIGHTARG = geometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tgeography, RIGHTARG = geography, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tgeometry, RIGHTARG = geometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tgeography, RIGHTARG = geography, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal equal + *****************************************************************************/ + +CREATE FUNCTION tgeo_teq(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = geometry, RIGHTARG = tgeometry, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeometry, RIGHTARG = geometry, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +CREATE FUNCTION tgeo_teq(geography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeography, geography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = geography, RIGHTARG = tgeography, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeography, RIGHTARG = geography, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal not equal + *****************************************************************************/ + +CREATE FUNCTION tgeo_tne(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = geometry, RIGHTARG = tgeometry, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeometry, RIGHTARG = geometry, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = #<> +); + +/*****************************************************************************/ + +CREATE FUNCTION tgeo_tne(geography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeography, geography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = geography, RIGHTARG = tgeography, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeography, RIGHTARG = geography, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = #<> +); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tpoint_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tpoint_compops.in.sql new file mode 100644 index 00000000..30ba5d36 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/054_tpoint_compops.in.sql @@ -0,0 +1,448 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever/always and temporal comparison functions and operators for + * temporal geometry/geography points + */ + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = geometry, RIGHTARG = tgeompoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = geography, RIGHTARG = tgeogpoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = geography, RIGHTARG = tgeogpoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = geometry, RIGHTARG = tgeompoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = geometry, RIGHTARG = tgeompoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = geography, RIGHTARG = tgeogpoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = geometry, RIGHTARG = tgeompoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = geography, RIGHTARG = tgeogpoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tgeompoint, RIGHTARG = geometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tgeogpoint, RIGHTARG = geography, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tgeogpoint, RIGHTARG = geography, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tgeompoint, RIGHTARG = geometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tgeompoint, RIGHTARG = geometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tgeogpoint, RIGHTARG = geography, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tgeompoint, RIGHTARG = geometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tgeogpoint, RIGHTARG = geography, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_eq(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal equal + *****************************************************************************/ + +CREATE FUNCTION tgeo_teq(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeompoint, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeompoint, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = geometry, RIGHTARG = tgeompoint, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeompoint, RIGHTARG = geometry, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +CREATE FUNCTION tgeo_teq(geography, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeogpoint, geography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_teq(tgeogpoint, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = geography, RIGHTARG = tgeogpoint, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeogpoint, RIGHTARG = geography, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = tgeo_teq, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal not equal + *****************************************************************************/ + +CREATE FUNCTION tgeo_tne(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeompoint, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeompoint, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = geometry, RIGHTARG = tgeompoint, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeompoint, RIGHTARG = geometry, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = #<> +); + +/*****************************************************************************/ + +CREATE FUNCTION tgeo_tne(geography, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeogpoint, geography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeo_tne(tgeogpoint, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = geography, RIGHTARG = tgeogpoint, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeogpoint, RIGHTARG = geography, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = tgeo_tne, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = #<> +); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tgeo_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tgeo_spatialfuncs.in.sql new file mode 100644 index 00000000..f2e859a2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tgeo_spatialfuncs.in.sql @@ -0,0 +1,182 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial functions for temporal geometries/gepgraphies + */ + +/*****************************************************************************/ + +CREATE FUNCTION SRID(tgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION SRID(tgeography) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tgeometry, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(tgeometry, integer) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(tgeometry, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tgeography, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(tgeography, integer) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(tgeography, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION tgeography(tgeometry) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tgeometry_to_tgeography' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeometry(tgeography) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeography_to_tgeometry' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeometry AS tgeography) WITH FUNCTION tgeography(tgeometry); +CREATE CAST (tgeography AS tgeometry) WITH FUNCTION tgeometry(tgeography); + +CREATE FUNCTION tgeompoint(tgeometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_to_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeometry(tgeompoint) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tpoint_to_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint(tgeography) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tgeo_to_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography(tgeogpoint) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Tpoint_to_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeometry AS tgeompoint) WITH FUNCTION tgeompoint(tgeometry); +CREATE CAST (tgeompoint AS tgeometry) WITH FUNCTION tgeometry(tgeompoint); +CREATE CAST (tgeography AS tgeogpoint) WITH FUNCTION tgeogpoint(tgeography); +CREATE CAST (tgeogpoint AS tgeography) WITH FUNCTION tgeography(tgeogpoint); + +/*****************************************************************************/ + +CREATE FUNCTION round(tgeometry, integer DEFAULT 0) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tgeography, integer DEFAULT 0) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tgeometry[], integer DEFAULT 0) + RETURNS tgeometry[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tgeography[], integer DEFAULT 0) + RETURNS tgeography[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION traversedArea(tgeometry, bool DEFAULT FALSE) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tgeo_traversed_area' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION traversedArea(tgeography, bool DEFAULT FALSE) + RETURNS geography + AS 'MODULE_PATHNAME', 'Tgeo_traversed_area' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION centroid(tgeometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_centroid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION centroid(tgeography) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tgeo_centroid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION convexHull(tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tgeo_convex_hull' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION tCentroid(tgeometry) + -- RETURNS tgeometry + -- AS 'MODULE_PATHNAME', 'Tgeo_tcentroid' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION atGeometry(tgeometry, geometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeo_at_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusGeometry(tgeometry, geometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeo_minus_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atStbox(tgeometry, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeo_at_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusStbox(tgeometry, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Tgeo_minus_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tpoint_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tpoint_spatialfuncs.in.sql new file mode 100644 index 00000000..03826056 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/056_tpoint_spatialfuncs.in.sql @@ -0,0 +1,354 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial functions for temporal points + */ + +/*****************************************************************************/ + +CREATE FUNCTION round(stbox, integer DEFAULT 0) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(stbox[], integer DEFAULT 0) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Stboxarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(geometry, integer DEFAULT 0) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Geo_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(geography, integer DEFAULT 0) + RETURNS geography + AS 'MODULE_PATHNAME', 'Geo_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION SRID(stbox) + RETURNS integer + AS 'MODULE_PATHNAME', 'Stbox_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setSRID(stbox, integer) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(stbox, integer) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(stbox, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION SRID(tgeompoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION SRID(tgeogpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tgeompoint, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(tgeompoint, integer) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(tgeompoint, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tgeogpoint, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transform(tgeogpoint, integer) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION transformPipeline(tgeogpoint, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- Gauss Kruger transformation + +CREATE FUNCTION transform_gk(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeompoint_transform_gk' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform_gk(geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Geometry_transform_gk' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION tgeogpoint(tgeompoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tgeometry_to_tgeography' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeompoint(tgeogpoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeography_to_tgeometry' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeompoint AS tgeogpoint) WITH FUNCTION tgeogpoint(tgeompoint); +CREATE CAST (tgeogpoint AS tgeompoint) WITH FUNCTION tgeompoint(tgeogpoint); + +CREATE FUNCTION getX(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_x' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getX(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_x' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getY(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_y' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getY(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_y' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getZ(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_z' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getZ(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_get_z' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tgeompoint, integer DEFAULT 0) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tgeogpoint, integer DEFAULT 0) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tgeompoint[], integer DEFAULT 0) + RETURNS tgeompoint[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tgeogpoint[], integer DEFAULT 0) + RETURNS tgeogpoint[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trajectory(tgeompoint, bool DEFAULT FALSE) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tpoint_trajectory' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trajectory(tgeogpoint, bool DEFAULT FALSE) + RETURNS geography + AS 'MODULE_PATHNAME', 'Tpoint_trajectory' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION length(tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tpoint_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION length(tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tpoint_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION cumulativeLength(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_cumulative_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION cumulativeLength(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_cumulative_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION convexHull(tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tgeo_convex_hull' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION speed(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_derivative' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION speed(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_derivative' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION twCentroid(tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tpoint_twcentroid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION direction(tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tpoint_direction' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION direction(tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tpoint_direction' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION tdirection(tgeompoint) + -- RETURNS tfloat + -- AS 'MODULE_PATHNAME', 'Tpoint_tdirection' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION tdirection(tgeogpoint) + -- RETURNS tfloat + -- AS 'MODULE_PATHNAME', 'Tpoint_tdirection' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION azimuth(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_azimuth' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION azimuth(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_azimuth' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION angularDifference(tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_angular_difference' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION angularDifference(tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpoint_angular_difference' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The following two functions are meant to be included in PostGIS one day +CREATE FUNCTION bearing(geometry, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'Bearing_point_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bearing(geography, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'Bearing_point_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION bearing(geometry, tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Bearing_point_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bearing(tgeompoint, geometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Bearing_tpoint_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bearing(tgeompoint, tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Bearing_tpoint_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION bearing(geography, tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Bearing_point_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bearing(tgeogpoint, geography) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Bearing_tpoint_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION bearing(tgeogpoint, tgeogpoint) + -- RETURNS tfloat + -- AS 'MODULE_PATHNAME', 'Bearing_tpoint_tpoint' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION isSimple(tgeompoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Tpoint_is_simple' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION makeSimple(tgeompoint) + RETURNS tgeompoint[] + AS 'MODULE_PATHNAME', 'Tpoint_make_simple' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION atGeometry(tgeompoint, geometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_at_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusGeometry(tgeompoint, geometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_minus_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atStbox(tgeompoint, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_at_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atStbox(tgeogpoint, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tgeo_at_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusStbox(tgeompoint, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_minus_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusStbox(tgeogpoint, stbox, borderInc bool DEFAULT TRUE) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Tgeo_minus_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atElevation(tgeompoint, floatspan) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_at_elevation' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusElevation(tgeompoint, floatspan) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tgeo_minus_elevation' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tgeo_tile.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tgeo_tile.in.sql new file mode 100644 index 00000000..312f50ff --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tgeo_tile.in.sql @@ -0,0 +1,141 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for spatial and spatiotemporal tiles + */ + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE FUNCTION spaceBoxes(tgeometry, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_space_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceBoxes(tgeometry, xsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceBoxes($1, $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceBoxes(tgeometry, xsize float, ysize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceBoxes($1, $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION timeBoxes(tgeometry, interval, + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION spaceTimeBoxes(tgeometry, xsize float, ysize float, + zsize float, interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_space_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceTimeBoxes(tgeometry, xsize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceTimeBoxes($1, $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceTimeBoxes(tgeometry, xsize float, ysize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceTimeBoxes($1, $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE TYPE point_tgeo AS ( + point geometry, + tgeo tgeometry +); + +CREATE FUNCTION spaceSplit(tgeometry, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tgeo + AS 'MODULE_PATHNAME', 'Tgeo_space_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceSplit(tgeometry, size float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tgeo + AS 'SELECT @extschema@.spaceSplit($1, $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceSplit(tgeometry, sizeX float, sizeY float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tgeo + AS 'SELECT @extschema@.spaceSplit($1, $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +CREATE TYPE point_time_tgeo AS ( + point geometry, + time timestamptz, + tgeo tgeometry +); + +CREATE FUNCTION spaceTimeSplit(tgeometry, xsize float, ysize float, + zsize float, interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tgeo + AS 'MODULE_PATHNAME', 'Tgeo_space_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceTimeSplit(tgeometry, size float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tgeo + AS 'SELECT @extschema@.spaceTimeSplit($1, $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION spaceTimeSplit(tgeometry, xsize float, ysize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tgeo + AS 'SELECT @extschema@.spaceTimeSplit($1, $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tpoint_tile.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tpoint_tile.in.sql new file mode 100644 index 00000000..733c95e8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/058_tpoint_tile.in.sql @@ -0,0 +1,280 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for spatial and spatiotemporal tiles + */ + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE index_stbox AS ( + index integer, + tile stbox +); + +CREATE FUNCTION spaceTiles(bounds stbox, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderIinc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'MODULE_PATHNAME', 'Stbox_space_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTiles(bounds stbox, xsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTiles($1, $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTiles(bounds stbox, xsize float, ysize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTiles($1, $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timeTiles(bounds stbox, duration interval, + timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'MODULE_PATHNAME', 'Stbox_time_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spaceTimeTiles(bounds stbox, xsize float, ysize float, zsize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'MODULE_PATHNAME', 'Stbox_space_time_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeTiles(bounds stbox, xsize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTimeTiles($1, $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeTiles(bounds stbox, xsize float, ysize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTimeTiles($1, $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Convenience overloads taking a tgeompoint directly: derive the bounding + * stbox via the existing stbox(tgeompoint) cast and delegate to the + * stbox-typed overloads above. + ******************************************************************************/ + +CREATE FUNCTION spaceTiles(tgeompoint, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTiles(@extschema@.stbox($1), $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTiles(tgeompoint, xsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTiles(@extschema@.stbox($1), $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTiles(tgeompoint, xsize float, ysize float, + sorigin geometry DEFAULT 'Point(0 0 0)', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTiles(@extschema@.stbox($1), $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timeTiles(tgeompoint, duration interval, + torigin timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.timeTiles(@extschema@.stbox($1), $2, $3, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spaceTimeTiles(tgeompoint, xsize float, ysize float, + zsize float, duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTimeTiles(@extschema@.stbox($1), $2, $3, $4, $5, $6, $7, $8)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeTiles(tgeompoint, xsize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTimeTiles(@extschema@.stbox($1), $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeTiles(tgeompoint, xsize float, ysize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', borderInc boolean DEFAULT TRUE) + RETURNS SETOF index_stbox + AS 'SELECT @extschema@.spaceTimeTiles(@extschema@.stbox($1), $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION getSpaceTile(point geometry, xsize float, ysize float, + zsize float, sorigin geometry DEFAULT 'Point(0 0 0)') + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_get_space_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getSpaceTile(point geometry, xsize float, + sorigin geometry DEFAULT 'Point(0 0 0)') + RETURNS stbox + AS 'SELECT @extschema@.getSpaceTile($1, $2, $2, $2, $3)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getSpaceTile(point geometry, xsize float, ysize float, + sorigin geometry DEFAULT 'Point(0 0 0)') + RETURNS stbox + AS 'SELECT @extschema@.getSpaceTile($1, $2, $3, $2, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getStboxTimeTile(t timestamptz, duration interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_get_time_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getSpaceTimeTile(point geometry, t timestamptz, xsize float, + ysize float, zsize float, duration interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03') + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_get_space_time_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getSpaceTimeTile(point geometry, t timestamptz, xsize float, + duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03') + RETURNS stbox + AS 'SELECT @extschema@.getSpaceTimeTile($1, $2, $3, $3, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getSpaceTimeTile(point geometry, t timestamptz, xsize float, + ysize float, duration interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03') + RETURNS stbox + AS 'SELECT @extschema@.getSpaceTimeTile($1, $2, $3, $4, $3, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION spaceBoxes(tgeompoint, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_space_boxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceBoxes(tgeompoint, xsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceBoxes($1, $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceBoxes(tgeompoint, xsize float, ysize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceBoxes($1, $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timeBoxes(tgeompoint, interval, + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_time_boxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spaceTimeBoxes(tgeompoint, xsize float, ysize float, + zsize float, interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_space_time_boxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeBoxes(tgeompoint, xsize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceTimeBoxes($1, $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeBoxes(tgeompoint, xsize float, ysize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS stbox[] + AS 'SELECT @extschema@.spaceTimeBoxes($1, $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE TYPE point_tpoint AS ( + point geometry, + tpoint tgeompoint +); + +CREATE FUNCTION spaceSplit(tgeompoint, xsize float, ysize float, zsize float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tpoint + AS 'MODULE_PATHNAME', 'Tgeo_space_split' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceSplit(tgeompoint, size float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tpoint + AS 'SELECT @extschema@.spaceSplit($1, $2, $2, $2, $3, $4)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceSplit(tgeompoint, sizeX float, sizeY float, + sorigin geometry DEFAULT 'Point(0 0 0)', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_tpoint + AS 'SELECT @extschema@.spaceSplit($1, $2, $3, $2, $4, $5)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE point_time_tpoint AS ( + point geometry, + time timestamptz, + tpoint tgeompoint +); + +CREATE FUNCTION spaceTimeSplit(tgeompoint, xsize float, ysize float, + zsize float, interval, sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tpoint + AS 'MODULE_PATHNAME', 'Tgeo_space_time_split' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeSplit(tgeompoint, size float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tpoint + AS 'SELECT @extschema@.spaceTimeSplit($1, $2, $2, $2, $3, $4, $5, $6)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spaceTimeSplit(tgeompoint, xsize float, ysize float, interval, + sorigin geometry DEFAULT 'Point(0 0 0)', + torigin timestamptz DEFAULT '2000-01-03', bitmatrix boolean DEFAULT TRUE, + borderInc boolean DEFAULT TRUE) + RETURNS SETOF point_time_tpoint + AS 'SELECT @extschema@.spaceTimeSplit($1, $2, $3, $2, $4, $5, $6, $7)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tgeo_boxops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tgeo_boxops.in.sql new file mode 100644 index 00000000..1e32cc90 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tgeo_boxops.in.sql @@ -0,0 +1,710 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal geometries/geographies + */ + +/***************************************************************************** + * Conversions + *****************************************************************************/ + +CREATE FUNCTION stbox(tgeometry) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(tgeography) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeometry AS stbox) WITH FUNCTION stbox(tgeometry); +CREATE CAST (tgeography AS stbox) WITH FUNCTION stbox(tgeography); + +/*****************************************************************************/ + +CREATE FUNCTION expandSpace(tgeometry, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION expandSpace(tgeography, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE FUNCTION spans(tgeometry) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tgeography) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxes(tgeometry) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stboxes(tgeography) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION splitNSpans(tgeometry, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tgeography, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNSpans(tgeometry, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tgeography, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNStboxes(tgeometry, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNStboxes(tgeography, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNStboxes(tgeometry, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNStboxes(tgeography, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tgeometry, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeometry, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tgeography, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeography, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tgeometry, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeometry, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tgeography, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeography, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tgeometry, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeometry, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tgeometry, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeometry, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tgeography, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeography, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tgeography, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeography, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tgeometry, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeometry, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tgeometry, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeometry, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tgeography, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeography, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tgeography, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeography, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tgeometry, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeometry, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tgeometry, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeometry, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tgeography, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeography, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tgeography, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeography, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tgeometry, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeometry, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tgeometry, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeometry, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tgeography, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeography, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tgeography, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeography, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tpoint_boxops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tpoint_boxops.in.sql new file mode 100644 index 00000000..6c689b3a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/060_tpoint_boxops.in.sql @@ -0,0 +1,746 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal points + */ + +/***************************************************************************** + * Conversions + *****************************************************************************/ + +CREATE FUNCTION stbox(tgeompoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(tgeogpoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeompoint AS stbox) WITH FUNCTION stbox(tgeompoint); +CREATE CAST (tgeogpoint AS stbox) WITH FUNCTION stbox(tgeogpoint); + +/*****************************************************************************/ + +CREATE FUNCTION expandSpace(geometry, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION expandSpace(geography, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION expandSpace(tgeompoint, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION expandSpace(tgeogpoint, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE FUNCTION spans(tgeompoint) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tgeogpoint) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxes(tgeompoint) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stboxes(tgeogpoint) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stboxes(geometry) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stboxes(geography) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION splitNSpans(tgeompoint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tgeogpoint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNSpans(tgeompoint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tgeogpoint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNStboxes(tgeompoint, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNStboxes(tgeogpoint, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNStboxes(tgeompoint, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNStboxes(tgeogpoint, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Tgeo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNStboxes(geometry, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNStboxes(geography, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_split_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNStboxes(geometry, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNStboxes(geography, integer) + RETURNS stbox[] + AS 'MODULE_PATHNAME', 'Geo_split_each_n_stboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tgeompoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeompoint, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tgeogpoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeogpoint, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tgeompoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeompoint, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tgeogpoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeogpoint, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tgeompoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeompoint, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tgeogpoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeogpoint, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tgeompoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeompoint, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tgeogpoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeogpoint, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tgeompoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeompoint, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tgeogpoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeogpoint, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tgeo_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tgeo_posops.in.sql new file mode 100644 index 00000000..eeaee6d2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tgeo_posops.in.sql @@ -0,0 +1,821 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for temporal geometries/geographies + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tgeometry */ + +CREATE FUNCTION temporal_before(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tstzspan op tgeography */ + +CREATE FUNCTION temporal_before(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tgeography, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tgeography, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tgeography, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tgeography, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_before(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tgeography, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tgeography, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tgeography, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tgeography, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tgeometry + *****************************************************************************/ + +/* tgeometry op tstzspan */ + +CREATE FUNCTION temporal_before(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeometry op stbox */ + +CREATE FUNCTION temporal_left(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeometry op tgeometry */ + +CREATE FUNCTION temporal_left(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(inst1 tgeometry, inst2 tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tgeography + *****************************************************************************/ + +/* tgeography op tstzspan */ + +CREATE FUNCTION temporal_before(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeography, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeography, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeography, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeography, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeography, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeography op stbox */ + +CREATE FUNCTION temporal_before(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeography, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeography, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeography, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeography, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeography, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeography op tgeography */ + +CREATE FUNCTION temporal_before(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tpoint_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tpoint_posops.in.sql new file mode 100644 index 00000000..99500421 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/062_tpoint_posops.in.sql @@ -0,0 +1,821 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for temporal geometry points. + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tgeompoint */ + +CREATE FUNCTION temporal_before(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tstzspan op tgeogpoint */ + +CREATE FUNCTION temporal_before(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_before(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tgeompoint + *****************************************************************************/ + +/* tgeompoint op tstzspan */ + +CREATE FUNCTION temporal_before(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeompoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeompoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeompoint op stbox */ + +CREATE FUNCTION temporal_left(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeompoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeompoint op tgeompoint */ + +CREATE FUNCTION temporal_left(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(inst1 tgeompoint, inst2 tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_below, + COMMUTATOR = |>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_above, + COMMUTATOR = <<|, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tgeogpoint + *****************************************************************************/ + +/* tgeogpoint op tstzspan */ + +CREATE FUNCTION temporal_before(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeogpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeogpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeogpoint op stbox */ + +CREATE FUNCTION temporal_before(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeogpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeogpoint, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeogpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeogpoint, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeogpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tgeogpoint op tgeogpoint */ + +CREATE FUNCTION temporal_before(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tgeo_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tgeo_distance.in.sql new file mode 100644 index 00000000..aaeb5cad --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tgeo_distance.in.sql @@ -0,0 +1,330 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal geometries/geographies + */ + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +CREATE FUNCTION tdistance(geometry, tgeometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeometry, geometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeometry, tgeometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geometry, RIGHTARG = tgeometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeometry, RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeometry, RIGHTARG = tgeometry, + COMMUTATOR = <-> +); + +/*****************************************************************************/ + +CREATE FUNCTION tdistance(geography, tgeography) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeography, geography) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeography, tgeography) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geography, RIGHTARG = tgeography, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeography, RIGHTARG = geography, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeography, RIGHTARG = tgeography, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant/distance and shortest line functions + *****************************************************************************/ + +CREATE FUNCTION nearestApproachInstant(geometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'NAI_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeometry, geometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'NAI_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'NAI_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachInstant(geography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'NAI_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeography, geography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'NAI_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'NAI_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachDistance(geometry, tgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeometry, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeometry, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeometry, tgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachDistance(geography, tgeography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeography, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tgeography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeography, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeography, tgeography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = tgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeometry, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeometry, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeometry, RIGHTARG = tgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +CREATE OPERATOR |=| ( + LEFTARG = geography, RIGHTARG = tgeography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeography, RIGHTARG = geography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tgeography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeography, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeography, RIGHTARG = tgeography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +CREATE FUNCTION shortestLine(geometry, tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeometry, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeometry, tgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shortestLine(geography, tgeography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeography, geography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeography, tgeography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Set-set spatial minimum distance + *****************************************************************************/ + +CREATE FUNCTION minDistance(tgeompoint[], tgeompoint[]) + RETURNS float + AS 'MODULE_PATHNAME', 'Tgeoarr_tgeoarr_mindist' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(tgeometry[], tgeometry[]) + RETURNS float + AS 'MODULE_PATHNAME', 'Tgeoarr_tgeoarr_mindist' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/* + * Scalar minDistance overloads where one side is a static geometry: + * spatial-min reduces to NAD (which is time-synchronous in general but + * is identical to spatial-min when one argument has no time dimension). + */ +CREATE FUNCTION minDistance(tgeompoint, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(geometry, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(tgeometry, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(geometry, tgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(tgeogpoint, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(geography, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(tgeography, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistance(geography, tgeography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/* + * 2-ary aggregate minDistance over pairs of temporal values. The + * scalar (tgeompoint, tgeompoint) form is replaced by this aggregate to + * keep the user-facing name unique (Solution 2 — no `Agg` suffix). On a + * one-row group the aggregate degenerates to the per-pair value, so any + * "scalar" use case is naturally covered. + */ +-- The function is not strict +CREATE FUNCTION minDistance_transfn(float, tgeompoint, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Mindistance_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION minDistance_transfn(float, tgeometry, tgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'Mindistance_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE minDistance(tgeompoint, tgeompoint) ( + SFUNC = minDistance_transfn, + STYPE = float, + COMBINEFUNC = float8smaller, + PARALLEL = SAFE +); +CREATE AGGREGATE minDistance(tgeometry, tgeometry) ( + SFUNC = minDistance_transfn, + STYPE = float, + COMBINEFUNC = float8smaller, + PARALLEL = SAFE +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tpoint_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tpoint_distance.in.sql new file mode 100644 index 00000000..6b48d03a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/064_tpoint_distance.in.sql @@ -0,0 +1,294 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal points + */ + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +CREATE FUNCTION tdistance(geometry(Point), tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeompoint, geometry(Point)) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeompoint, tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geometry, RIGHTARG = tgeompoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeompoint, RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + COMMUTATOR = <-> +); + +/*****************************************************************************/ + +CREATE FUNCTION tdistance(geography(Point), tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeogpoint, geography(Point)) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeogpoint, tgeogpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geography, RIGHTARG = tgeogpoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeogpoint, RIGHTARG = geography, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant/distance and shortest line functions + *****************************************************************************/ + +CREATE FUNCTION nearestApproachInstant(geometry, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'NAI_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeompoint, geometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'NAI_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'NAI_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachInstant(geography, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'NAI_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeogpoint, geography) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'NAI_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'NAI_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachDistance(geometry, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeompoint, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(geometry, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeompoint, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeompoint, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachDistance(geography, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeogpoint, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, geography) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(geography, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeogpoint, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeogpoint, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = tgeompoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeompoint, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tgeompoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeompoint, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeompoint, RIGHTARG = tgeompoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +CREATE OPERATOR |=| ( + LEFTARG = geography, RIGHTARG = tgeogpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeogpoint, RIGHTARG = geography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = geography, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = geography, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tgeogpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeogpoint, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeogpoint, RIGHTARG = tgeogpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +CREATE FUNCTION shortestLine(geometry, tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeompoint, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeompoint, tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shortestLine(geography, tgeogpoint) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeogpoint, geography) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeogpoint, tgeogpoint) + RETURNS geography + AS 'MODULE_PATHNAME', 'Shortestline_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/066_tpoint_similarity.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/066_tpoint_similarity.in.sql new file mode 100644 index 00000000..4bd4b7a4 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/066_tpoint_similarity.in.sql @@ -0,0 +1,88 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Similarity distance for temporal values. + * @note Currently, the discrete Hausdorff distance, the discrete Frechet + * distance and the Dynamic Time Warping (DTW) distance are implemented + */ + +CREATE FUNCTION frechetDistance(tgeompoint, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_frechet_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION frechetDistance(tgeogpoint, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_frechet_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION frechetDistancePath(tgeompoint, tgeompoint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_frechet_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION frechetDistancePath(tgeogpoint, tgeogpoint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_frechet_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION dynTimeWarpDistance(tgeompoint, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dynTimeWarpDistance(tgeogpoint, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dynTimeWarpPath(tgeompoint, tgeompoint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dynTimeWarpPath(tgeogpoint, tgeogpoint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION hausdorffDistance(tgeompoint, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_hausdorff_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION hausdorffDistance(tgeogpoint, tgeogpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_hausdorff_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tgeo_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tgeo_aggfuncs.in.sql new file mode 100644 index 00000000..72810a7a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tgeo_aggfuncs.in.sql @@ -0,0 +1,273 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal geometries/geographies + */ + +-- The function is not strict +CREATE FUNCTION tspatial_extent_transfn(stbox, tgeometry) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tspatial_extent_transfn(stbox, tgeography) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(tgeometry) ( + SFUNC = tspatial_extent_transfn, + STYPE = stbox, + COMBINEFUNC = stbox_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tgeography) ( + SFUNC = tspatial_extent_transfn, + STYPE = stbox, + COMBINEFUNC = stbox_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tgeometry) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tcount_transfn(internal, tgeography) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tgeometry) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tcount(tgeography) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, tgeometry, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wcount_transfn(internal, tgeography, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(tgeometry, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wcount(tgeography, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tgeometry) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_merge_transfn(internal, tgeography) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tgeometry_tagg_finalfn(internal) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography_tagg_finalfn(internal) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(tgeometry) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tgeometry_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); +CREATE AGGREGATE merge(tgeography) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tgeography_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeometry, tgeometry, + interp text DEFAULT NULL) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeography, tgeography, + interp text DEFAULT NULL) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeometry, tgeometry, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeography, tgeography, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_append_finalfn(tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tgeometry) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeography) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeography, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tgeometry, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeography, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeography, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tgeometry, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeography, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeography, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tgeometry, tgeometry) + RETURNS tgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tseq_transfn(tgeography, tgeography) + RETURNS tgeography + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tgeometry) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendSequence(tgeography) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tgeography, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tpoint_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tpoint_aggfuncs.in.sql new file mode 100644 index 00000000..6a0f1f26 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/068_tpoint_aggfuncs.in.sql @@ -0,0 +1,297 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal points + */ + +-- The function is not strict +CREATE FUNCTION tspatial_extent_transfn(stbox, tgeompoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tspatial_extent_transfn(stbox, tgeogpoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(tgeompoint) ( + SFUNC = tspatial_extent_transfn, + STYPE = stbox, + COMBINEFUNC = stbox_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tgeogpoint) ( + SFUNC = tspatial_extent_transfn, + STYPE = stbox, + COMBINEFUNC = stbox_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tgeompoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tcount_transfn(internal, tgeogpoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tgeompoint) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tcount(tgeogpoint) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, tgeompoint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wcount_transfn(internal, tgeogpoint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(tgeompoint, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wcount(tgeogpoint, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION tcentroid_transfn(internal, tgeompoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tpoint_tcentroid_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcentroid_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tpoint_tcentroid_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcentroid_finalfn(internal) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpoint_tcentroid_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE tcentroid(tgeompoint) ( + SFUNC = tcentroid_transfn, + STYPE = internal, + COMBINEFUNC = tcentroid_combinefn, + FINALFUNC = tcentroid_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tgeompoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_merge_transfn(internal, tgeogpoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tgeompoint_tagg_finalfn(internal) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint_tagg_finalfn(internal) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(tgeompoint) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tgeompoint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); +CREATE AGGREGATE merge(tgeogpoint) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tgeogpoint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeompoint, tgeompoint, + interp text DEFAULT NULL) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeogpoint, tgeogpoint, + interp text DEFAULT NULL) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tgeompoint, tgeompoint, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tgeogpoint, tgeogpoint, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_append_finalfn(tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tgeompoint) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeompoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeogpoint) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeogpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tgeompoint, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeompoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeogpoint, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeogpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tgeompoint, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeompoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tgeogpoint, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tgeogpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tgeompoint, tgeompoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tseq_transfn(tgeogpoint, tgeogpoint) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tgeompoint) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tgeompoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendSequence(tgeogpoint) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tgeogpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tgeo_spatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tgeo_spatialrels.in.sql new file mode 100644 index 00000000..5087a301 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tgeo_spatialrels.in.sql @@ -0,0 +1,411 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial relationships for temporal geometries/geographies + * @note Index support for these functions is enabled + */ + +/***************************************************************************** + * eContains, aContains + *****************************************************************************/ + +CREATE FUNCTION eContains(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eContains(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eContains(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aContains(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aContains(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aContains(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eCovers, aCovers + *****************************************************************************/ + +CREATE FUNCTION eCovers(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eCovers(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eCovers(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ecovers_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aCovers(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aCovers(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aCovers(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acovers_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDisjoint, aDisjoint + *****************************************************************************/ + +-- TODO implement the index support in the tspatial_supportfn + +CREATE FUNCTION _edisjoint(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(geometry, tgeometry) + RETURNS boolean + AS 'SELECT NOT(stbox($1) OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(tgeometry, geometry) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) stbox($2)) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(tgeometry, tgeometry) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +-- CREATE FUNCTION eDisjoint(geometry, tgeometry) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeometry, geometry) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeometry, tgeometry) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- TODO implement the index support in the tspatial_supportfn + +CREATE FUNCTION _edisjoint(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(geography, tgeography) + RETURNS boolean + AS 'SELECT NOT(stbox($1) OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(tgeography, geography) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) stbox($2)) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(tgeography, tgeography) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +-- CREATE FUNCTION eDisjoint(geography, tgeography) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeography, geography) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeography, tgeography) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aDisjoint(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDisjoint(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eIntersects, aIntersects + *****************************************************************************/ + +CREATE FUNCTION eIntersects(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eIntersects(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aIntersects(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aIntersects(geography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeography, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeography, tgeography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eTouches, aTouches + *****************************************************************************/ + +CREATE FUNCTION eTouches(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eTouches(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eTouches(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aTouches(geometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aTouches(tgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aTouches(tgeometry, tgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDwithin, aDwithin + *****************************************************************************/ + +CREATE FUNCTION eDwithin(geometry, tgeometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeometry, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeometry, tgeometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDwithin(geography, tgeography, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeography, geography, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeography, tgeography, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- NOTE: aDWithin for geograhies is not provided since it is based on the +-- PostGIS ST_Buffer() function which is performed by GEOS + +CREATE FUNCTION aDwithin(geometry, tgeometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tgeometry, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tgeometry, tgeometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDwithin(tgeography, tgeography, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tpoint_spatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tpoint_spatialrels.in.sql new file mode 100644 index 00000000..9130df71 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/070_tpoint_spatialrels.in.sql @@ -0,0 +1,341 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial relationships for temporal points + * @note Index support for these functions is enabled + */ + +/***************************************************************************** + * eContains, aContains + *****************************************************************************/ + +CREATE FUNCTION eContains(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Econtains_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aContains(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Acontains_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDisjoint, aDisjoint + *****************************************************************************/ + +-- TODO implement the index support in the tspatial_supportfn + +CREATE FUNCTION _edisjoint(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(geometry, tgeompoint) + RETURNS boolean + AS 'SELECT NOT(stbox($1) OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(tgeompoint, geometry) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) stbox($2)) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION edisjoint(tgeompoint, tgeompoint) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +-- CREATE FUNCTION eDisjoint(geometry, tgeompoint) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeompoint, geometry) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeompoint, tgeompoint) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(geography, tgeogpoint) + RETURNS boolean + AS 'SELECT NOT(stbox($1) OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(tgeogpoint, geography) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) stbox($2)) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION _edisjoint(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDisjoint(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'SELECT NOT($1 OPERATOR(@extschema@.&&) $2) OR @extschema@._edisjoint($1,$2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +-- CREATE FUNCTION eDisjoint(geography, tgeogpoint) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_geo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeogpoint, geography) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_geo' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- CREATE FUNCTION eDisjoint(tgeogpoint, tgeogpoint) + -- RETURNS boolean + -- AS 'MODULE_PATHNAME', 'Edisjoint_tgeo_tgeo' + -- SUPPORT tspatial_supportfn + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- TODO implement the index support in the tspatial_supportfn + +CREATE FUNCTION aDisjoint(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDisjoint(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDisjoint(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adisjoint_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eIntersects, aIntersects + *****************************************************************************/ + +CREATE FUNCTION eIntersects(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eIntersects(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eIntersects(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Eintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aIntersects(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeompoint, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aIntersects(geography, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeogpoint, geography) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aIntersects(tgeogpoint, tgeogpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Aintersects_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eTouches, aTouches + *****************************************************************************/ + +CREATE FUNCTION eTouches(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_geo_tpoint' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eTouches(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Etouches_tpoint_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION aTouches(geometry, tgeompoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_geo_tpoint' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aTouches(tgeompoint, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Atouches_tpoint_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * eDwithin, aDwithin + *****************************************************************************/ + +CREATE FUNCTION eDwithin(geometry, tgeompoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeompoint, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeompoint, tgeompoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION eDwithin(geography, tgeogpoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeogpoint, geography, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION eDwithin(tgeogpoint, tgeogpoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Edwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- NOTE: aDWithin for geograhies is not provided since it is based on the +-- PostGIS ST_Buffer() function which is performed by GEOS + +CREATE FUNCTION aDwithin(geometry, tgeompoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_geo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tgeompoint, geometry, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION aDwithin(tgeompoint, tgeompoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION aDwithin(tgeogpoint, tgeogpoint, dist float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adwithin_tgeo_tgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tgeo_tempspatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tgeo_tempspatialrels.in.sql new file mode 100644 index 00000000..654387a4 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tgeo_tempspatialrels.in.sql @@ -0,0 +1,148 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal spatial relationships for temporal geometries/geographies + */ + +/***************************************************************************** + * tContains + *****************************************************************************/ + +CREATE FUNCTION tContains(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tContains(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tCovers + *****************************************************************************/ + +CREATE FUNCTION tCovers(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tCovers(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcovers_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDisjoint + *****************************************************************************/ + +CREATE FUNCTION tDisjoint(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- Alias for temporal not equals, that is, geo_tne or #<> +CREATE FUNCTION tDisjoint(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tgeography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tIntersects + *****************************************************************************/ + +CREATE FUNCTION tIntersects(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- Alias for temporal equals, that is, tgeo_teq or #= +CREATE FUNCTION tIntersects(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tgeography, tgeography) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tTouches + *****************************************************************************/ + +CREATE FUNCTION tTouches(geometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tgeometry, tgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDwithin + *****************************************************************************/ + +CREATE FUNCTION tDwithin(geometry, tgeometry, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tDwithin(tgeometry, geometry, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tgeo_geo' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tDwithin(tgeometry, tgeometry, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tpoint_tempspatialrels.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tpoint_tempspatialrels.in.sql new file mode 100644 index 00000000..5b1fee63 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/072_tpoint_tempspatialrels.in.sql @@ -0,0 +1,118 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal spatial relationships for temporal geometries/geographies + */ + +/***************************************************************************** + * tContains + *****************************************************************************/ + +CREATE FUNCTION tContains(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tcontains_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDisjoint + *****************************************************************************/ + +CREATE FUNCTION tDisjoint(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tgeompoint, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- Alias for temporal not equals, that is, tgeo_tne or #<> +CREATE FUNCTION tDisjoint(tgeompoint, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDisjoint(tgeogpoint, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdisjoint_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tIntersects + *****************************************************************************/ + +CREATE FUNCTION tIntersects(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tgeompoint, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- Alias for temporal equals, that is, tgeo_teq or #= +CREATE FUNCTION tIntersects(tgeompoint, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tIntersects(tgeogpoint, tgeogpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tintersects_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tTouches + *****************************************************************************/ + +CREATE FUNCTION tTouches(geometry, tgeompoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tTouches(tgeompoint, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Ttouches_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * tDwithin + *****************************************************************************/ + +CREATE FUNCTION tDwithin(geometry, tgeompoint, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_geo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDwithin(tgeompoint, geometry, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDwithin(tgeompoint, tgeompoint, dist float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tdwithin_tgeo_tgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tgeo_gist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tgeo_gist.in.sql new file mode 100644 index 00000000..b00ed505 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tgeo_gist.in.sql @@ -0,0 +1,211 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST index for temporal geometries/geographies + */ + +/******************************************************************************/ + +CREATE FUNCTION tgeometry_gist_consistent(internal, tgeometry, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeography_gist_consistent(internal, tgeography, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox_gist_union(internal, internal) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Stbox_gist_union' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_gist_penalty(internal, internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Stbox_gist_penalty' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_gist_picksplit(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Stbox_gist_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_gist_same(stbox, stbox, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Stbox_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_gist_distance(internal, stbox, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Stbox_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tspatial_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tspatial_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeometry_rtree_ops + DEFAULT FOR TYPE tgeometry USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (tgeometry, stbox), + OPERATOR 1 << (tgeometry, tgeometry), + -- overlaps or left + OPERATOR 2 &< (tgeometry, stbox), + OPERATOR 2 &< (tgeometry, tgeometry), + -- overlaps + OPERATOR 3 && (tgeometry, tstzspan), + OPERATOR 3 && (tgeometry, stbox), + OPERATOR 3 && (tgeometry, tgeometry), + -- overlaps or right + OPERATOR 4 &> (tgeometry, stbox), + OPERATOR 4 &> (tgeometry, tgeometry), + -- strictly right + OPERATOR 5 >> (tgeometry, stbox), + OPERATOR 5 >> (tgeometry, tgeometry), + -- same + OPERATOR 6 ~= (tgeometry, tstzspan), + OPERATOR 6 ~= (tgeometry, stbox), + OPERATOR 6 ~= (tgeometry, tgeometry), + -- contains + OPERATOR 7 @> (tgeometry, tstzspan), + OPERATOR 7 @> (tgeometry, stbox), + OPERATOR 7 @> (tgeometry, tgeometry), + -- contained by + OPERATOR 8 <@ (tgeometry, tstzspan), + OPERATOR 8 <@ (tgeometry, stbox), + OPERATOR 8 <@ (tgeometry, tgeometry), + -- overlaps or below + OPERATOR 9 &<| (tgeometry, stbox), + OPERATOR 9 &<| (tgeometry, tgeometry), + -- strictly below + OPERATOR 10 <<| (tgeometry, stbox), + OPERATOR 10 <<| (tgeometry, tgeometry), + -- strictly above + OPERATOR 11 |>> (tgeometry, stbox), + OPERATOR 11 |>> (tgeometry, tgeometry), + -- overlaps or above + OPERATOR 12 |&> (tgeometry, stbox), + OPERATOR 12 |&> (tgeometry, tgeometry), + -- adjacent + OPERATOR 17 -|- (tgeometry, tstzspan), + OPERATOR 17 -|- (tgeometry, stbox), + OPERATOR 17 -|- (tgeometry, tgeometry), + -- nearest approach distance + OPERATOR 25 |=| (tgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeometry, tgeometry) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeometry, tstzspan), + OPERATOR 28 &<# (tgeometry, stbox), + OPERATOR 28 &<# (tgeometry, tgeometry), + -- strictly before + OPERATOR 29 <<# (tgeometry, tstzspan), + OPERATOR 29 <<# (tgeometry, stbox), + OPERATOR 29 <<# (tgeometry, tgeometry), + -- strictly after + OPERATOR 30 #>> (tgeometry, tstzspan), + OPERATOR 30 #>> (tgeometry, stbox), + OPERATOR 30 #>> (tgeometry, tgeometry), + -- overlaps or after + OPERATOR 31 #&> (tgeometry, tstzspan), + OPERATOR 31 #&> (tgeometry, stbox), + OPERATOR 31 #&> (tgeometry, tgeometry), + -- overlaps or front + OPERATOR 32 &> (tgeometry, stbox), + OPERATOR 34 />> (tgeometry, tgeometry), + -- overlaps or back + OPERATOR 35 /&> (tgeometry, stbox), + OPERATOR 35 /&> (tgeometry, tgeometry), + -- functions + FUNCTION 1 tgeometry_gist_consistent(internal, tgeometry, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal), + FUNCTION 8 stbox_gist_distance(internal, stbox, smallint, oid, internal); + +CREATE OPERATOR CLASS tgeography_rtree_ops + DEFAULT FOR TYPE tgeography USING gist AS + STORAGE stbox, + -- overlaps + OPERATOR 3 && (tgeography, tstzspan), + OPERATOR 3 && (tgeography, stbox), + OPERATOR 3 && (tgeography, tgeography), + -- same + OPERATOR 6 ~= (tgeography, tstzspan), + OPERATOR 6 ~= (tgeography, stbox), + OPERATOR 6 ~= (tgeography, tgeography), + -- contains + OPERATOR 7 @> (tgeography, tstzspan), + OPERATOR 7 @> (tgeography, stbox), + OPERATOR 7 @> (tgeography, tgeography), + -- contained by + OPERATOR 8 <@ (tgeography, tstzspan), + OPERATOR 8 <@ (tgeography, stbox), + OPERATOR 8 <@ (tgeography, tgeography), + -- adjacent + OPERATOR 17 -|- (tgeography, tstzspan), + OPERATOR 17 -|- (tgeography, stbox), + OPERATOR 17 -|- (tgeography, tgeography), + -- distance + OPERATOR 25 |=| (tgeography, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeography, tgeography) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeography, tstzspan), + OPERATOR 28 &<# (tgeography, stbox), + OPERATOR 28 &<# (tgeography, tgeography), + -- strictly before + OPERATOR 29 <<# (tgeography, tstzspan), + OPERATOR 29 <<# (tgeography, stbox), + OPERATOR 29 <<# (tgeography, tgeography), + -- strictly after + OPERATOR 30 #>> (tgeography, tstzspan), + OPERATOR 30 #>> (tgeography, stbox), + OPERATOR 30 #>> (tgeography, tgeography), + -- overlaps or after + OPERATOR 31 #&> (tgeography, tstzspan), + OPERATOR 31 #&> (tgeography, stbox), + OPERATOR 31 #&> (tgeography, tgeography), + -- functions + FUNCTION 1 tgeography_gist_consistent(internal, tgeography, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal), + FUNCTION 8 stbox_gist_distance(internal, stbox, smallint, oid, internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tpoint_gist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tpoint_gist.in.sql new file mode 100644 index 00000000..6b6a6a06 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/073_tpoint_gist.in.sql @@ -0,0 +1,276 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST index for temporal points + */ + +CREATE FUNCTION stbox_gist_consistent(internal, stbox, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS stbox_rtree_ops + DEFAULT FOR TYPE stbox USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (stbox, stbox), + OPERATOR 1 << (stbox, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (stbox, stbox), + OPERATOR 2 &< (stbox, tgeompoint), + -- overlaps + OPERATOR 3 && (stbox, stbox), + OPERATOR 3 && (stbox, tgeompoint), + OPERATOR 3 && (stbox, tgeogpoint), + -- overlaps or right + OPERATOR 4 &> (stbox, stbox), + OPERATOR 4 &> (stbox, tgeompoint), + -- strictly right + OPERATOR 5 >> (stbox, stbox), + OPERATOR 5 >> (stbox, tgeompoint), + -- same + OPERATOR 6 ~= (stbox, stbox), + OPERATOR 6 ~= (stbox, tgeompoint), + OPERATOR 6 ~= (stbox, tgeogpoint), + -- contains + OPERATOR 7 @> (stbox, stbox), + OPERATOR 7 @> (stbox, tgeompoint), + OPERATOR 7 @> (stbox, tgeogpoint), + -- contained by + OPERATOR 8 <@ (stbox, stbox), + OPERATOR 8 <@ (stbox, tgeompoint), + OPERATOR 8 <@ (stbox, tgeogpoint), + -- overlaps or below + OPERATOR 9 &<| (stbox, stbox), + OPERATOR 9 &<| (stbox, tgeompoint), + -- strictly below + OPERATOR 10 <<| (stbox, stbox), + OPERATOR 10 <<| (stbox, tgeompoint), + -- strictly above + OPERATOR 11 |>> (stbox, stbox), + OPERATOR 11 |>> (stbox, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (stbox, stbox), + OPERATOR 12 |&> (stbox, tgeompoint), + -- adjacent + OPERATOR 17 -|- (stbox, stbox), + OPERATOR 17 -|- (stbox, tgeompoint), + OPERATOR 17 -|- (stbox, tgeogpoint), + -- nearest approach distance + OPERATOR 25 |=| (stbox, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (stbox, tgeompoint) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (stbox, tgeogpoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (stbox, stbox), + OPERATOR 28 &<# (stbox, tgeompoint), + OPERATOR 28 &<# (stbox, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (stbox, stbox), + OPERATOR 29 <<# (stbox, tgeompoint), + OPERATOR 29 <<# (stbox, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (stbox, stbox), + OPERATOR 30 #>> (stbox, tgeompoint), + OPERATOR 30 #>> (stbox, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (stbox, stbox), + OPERATOR 31 #&> (stbox, tgeompoint), + OPERATOR 31 #&> (stbox, tgeogpoint), + -- overlaps or front + OPERATOR 32 &> (stbox, stbox), + OPERATOR 34 />> (stbox, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (stbox, stbox), + OPERATOR 35 /&> (stbox, tgeompoint), + -- functions + FUNCTION 1 stbox_gist_consistent(internal, stbox, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal), + FUNCTION 8 stbox_gist_distance(internal, stbox, smallint, oid, internal); + +/******************************************************************************/ + +CREATE FUNCTION tgeompoint_gist_consistent(internal, tgeompoint, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeogpoint_gist_consistent(internal, tgeogpoint, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tgeompoint_rtree_ops + DEFAULT FOR TYPE tgeompoint USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (tgeompoint, stbox), + OPERATOR 1 << (tgeompoint, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (tgeompoint, stbox), + OPERATOR 2 &< (tgeompoint, tgeompoint), + -- overlaps + OPERATOR 3 && (tgeompoint, tstzspan), + OPERATOR 3 && (tgeompoint, stbox), + OPERATOR 3 && (tgeompoint, tgeompoint), + -- overlaps or right + OPERATOR 4 &> (tgeompoint, stbox), + OPERATOR 4 &> (tgeompoint, tgeompoint), + -- strictly right + OPERATOR 5 >> (tgeompoint, stbox), + OPERATOR 5 >> (tgeompoint, tgeompoint), + -- same + OPERATOR 6 ~= (tgeompoint, tstzspan), + OPERATOR 6 ~= (tgeompoint, stbox), + OPERATOR 6 ~= (tgeompoint, tgeompoint), + -- contains + OPERATOR 7 @> (tgeompoint, tstzspan), + OPERATOR 7 @> (tgeompoint, stbox), + OPERATOR 7 @> (tgeompoint, tgeompoint), + -- contained by + OPERATOR 8 <@ (tgeompoint, tstzspan), + OPERATOR 8 <@ (tgeompoint, stbox), + OPERATOR 8 <@ (tgeompoint, tgeompoint), + -- overlaps or below + OPERATOR 9 &<| (tgeompoint, stbox), + OPERATOR 9 &<| (tgeompoint, tgeompoint), + -- strictly below + OPERATOR 10 <<| (tgeompoint, stbox), + OPERATOR 10 <<| (tgeompoint, tgeompoint), + -- strictly above + OPERATOR 11 |>> (tgeompoint, stbox), + OPERATOR 11 |>> (tgeompoint, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (tgeompoint, stbox), + OPERATOR 12 |&> (tgeompoint, tgeompoint), + -- adjacent + OPERATOR 17 -|- (tgeompoint, tstzspan), + OPERATOR 17 -|- (tgeompoint, stbox), + OPERATOR 17 -|- (tgeompoint, tgeompoint), + -- nearest approach distance + OPERATOR 25 |=| (tgeompoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeompoint, tgeompoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeompoint, tstzspan), + OPERATOR 28 &<# (tgeompoint, stbox), + OPERATOR 28 &<# (tgeompoint, tgeompoint), + -- strictly before + OPERATOR 29 <<# (tgeompoint, tstzspan), + OPERATOR 29 <<# (tgeompoint, stbox), + OPERATOR 29 <<# (tgeompoint, tgeompoint), + -- strictly after + OPERATOR 30 #>> (tgeompoint, tstzspan), + OPERATOR 30 #>> (tgeompoint, stbox), + OPERATOR 30 #>> (tgeompoint, tgeompoint), + -- overlaps or after + OPERATOR 31 #&> (tgeompoint, tstzspan), + OPERATOR 31 #&> (tgeompoint, stbox), + OPERATOR 31 #&> (tgeompoint, tgeompoint), + -- overlaps or front + OPERATOR 32 &> (tgeompoint, stbox), + OPERATOR 34 />> (tgeompoint, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (tgeompoint, stbox), + OPERATOR 35 /&> (tgeompoint, tgeompoint), + -- functions + FUNCTION 1 tgeompoint_gist_consistent(internal, tgeompoint, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal), + FUNCTION 8 stbox_gist_distance(internal, stbox, smallint, oid, internal); + +CREATE OPERATOR CLASS tgeogpoint_rtree_ops + DEFAULT FOR TYPE tgeogpoint USING gist AS + STORAGE stbox, + -- overlaps + OPERATOR 3 && (tgeogpoint, tstzspan), + OPERATOR 3 && (tgeogpoint, stbox), + OPERATOR 3 && (tgeogpoint, tgeogpoint), + -- same + OPERATOR 6 ~= (tgeogpoint, tstzspan), + OPERATOR 6 ~= (tgeogpoint, stbox), + OPERATOR 6 ~= (tgeogpoint, tgeogpoint), + -- contains + OPERATOR 7 @> (tgeogpoint, tstzspan), + OPERATOR 7 @> (tgeogpoint, stbox), + OPERATOR 7 @> (tgeogpoint, tgeogpoint), + -- contained by + OPERATOR 8 <@ (tgeogpoint, tstzspan), + OPERATOR 8 <@ (tgeogpoint, stbox), + OPERATOR 8 <@ (tgeogpoint, tgeogpoint), + -- adjacent + OPERATOR 17 -|- (tgeogpoint, tstzspan), + OPERATOR 17 -|- (tgeogpoint, stbox), + OPERATOR 17 -|- (tgeogpoint, tgeogpoint), + -- distance + OPERATOR 25 |=| (tgeogpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeogpoint, tgeogpoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeogpoint, tstzspan), + OPERATOR 28 &<# (tgeogpoint, stbox), + OPERATOR 28 &<# (tgeogpoint, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (tgeogpoint, tstzspan), + OPERATOR 29 <<# (tgeogpoint, stbox), + OPERATOR 29 <<# (tgeogpoint, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (tgeogpoint, tstzspan), + OPERATOR 30 #>> (tgeogpoint, stbox), + OPERATOR 30 #>> (tgeogpoint, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (tgeogpoint, tstzspan), + OPERATOR 31 #&> (tgeogpoint, stbox), + OPERATOR 31 #&> (tgeogpoint, tgeogpoint), + -- functions + FUNCTION 1 tgeogpoint_gist_consistent(internal, tgeogpoint, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal), + FUNCTION 8 stbox_gist_distance(internal, stbox, smallint, oid, internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tgeo_spgist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tgeo_spgist.in.sql new file mode 100644 index 00000000..b8626fc5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tgeo_spgist.in.sql @@ -0,0 +1,352 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Quad-tree and k-d tree SP-GiST index for temporal + * geometries/geographies + */ + +CREATE FUNCTION stbox_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_quadtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_quadtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_quadtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_quadtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_quadtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_quadtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_spgist_leaf_consistent(internal, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_spgist_leaf_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tspatial_spgist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tspatial_spgist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeometry_quadtree_ops + DEFAULT FOR TYPE tgeometry USING spgist AS + -- strictly left + OPERATOR 1 << (tgeometry, stbox), + OPERATOR 1 << (tgeometry, tgeometry), + -- overlaps or left + OPERATOR 2 &< (tgeometry, stbox), + OPERATOR 2 &< (tgeometry, tgeometry), + -- overlaps + OPERATOR 3 && (tgeometry, tstzspan), + OPERATOR 3 && (tgeometry, stbox), + OPERATOR 3 && (tgeometry, tgeometry), + -- overlaps or right + OPERATOR 4 &> (tgeometry, stbox), + OPERATOR 4 &> (tgeometry, tgeometry), + -- strictly right + OPERATOR 5 >> (tgeometry, stbox), + OPERATOR 5 >> (tgeometry, tgeometry), + -- same + OPERATOR 6 ~= (tgeometry, tstzspan), + OPERATOR 6 ~= (tgeometry, stbox), + OPERATOR 6 ~= (tgeometry, tgeometry), + -- contains + OPERATOR 7 @> (tgeometry, tstzspan), + OPERATOR 7 @> (tgeometry, stbox), + OPERATOR 7 @> (tgeometry, tgeometry), + -- contained by + OPERATOR 8 <@ (tgeometry, tstzspan), + OPERATOR 8 <@ (tgeometry, stbox), + OPERATOR 8 <@ (tgeometry, tgeometry), + -- overlaps or below + OPERATOR 9 &<| (tgeometry, stbox), + OPERATOR 9 &<| (tgeometry, tgeometry), + -- strictly below + OPERATOR 10 <<| (tgeometry, stbox), + OPERATOR 10 <<| (tgeometry, tgeometry), + -- strictly above + OPERATOR 11 |>> (tgeometry, stbox), + OPERATOR 11 |>> (tgeometry, tgeometry), + -- overlaps or above + OPERATOR 12 |&> (tgeometry, stbox), + OPERATOR 12 |&> (tgeometry, tgeometry), + -- adjacent + OPERATOR 17 -|- (tgeometry, tstzspan), + OPERATOR 17 -|- (tgeometry, stbox), + OPERATOR 17 -|- (tgeometry, tgeometry), + -- nearest approach distance + OPERATOR 25 |=| (tgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeometry, tgeometry) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeometry, tstzspan), + OPERATOR 28 &<# (tgeometry, stbox), + OPERATOR 28 &<# (tgeometry, tgeometry), + -- strictly before + OPERATOR 29 <<# (tgeometry, tstzspan), + OPERATOR 29 <<# (tgeometry, stbox), + OPERATOR 29 <<# (tgeometry, tgeometry), + -- strictly after + OPERATOR 30 #>> (tgeometry, tstzspan), + OPERATOR 30 #>> (tgeometry, stbox), + OPERATOR 30 #>> (tgeometry, tgeometry), + -- overlaps or after + OPERATOR 31 #&> (tgeometry, tstzspan), + OPERATOR 31 #&> (tgeometry, stbox), + OPERATOR 31 #&> (tgeometry, tgeometry), + -- overlaps or front + OPERATOR 32 &> (tgeometry, stbox), + OPERATOR 34 />> (tgeometry, tgeometry), + -- overlaps or back + OPERATOR 35 /&> (tgeometry, stbox), + OPERATOR 35 /&> (tgeometry, tgeometry), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE FUNCTION stbox_kdtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_kdtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_kdtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_kdtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox_kdtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Stbox_kdtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeometry_kdtree_ops + FOR TYPE tgeometry USING spgist AS + -- strictly left + OPERATOR 1 << (tgeometry, stbox), + OPERATOR 1 << (tgeometry, tgeometry), + -- overlaps or left + OPERATOR 2 &< (tgeometry, stbox), + OPERATOR 2 &< (tgeometry, tgeometry), + -- overlaps + OPERATOR 3 && (tgeometry, tstzspan), + OPERATOR 3 && (tgeometry, stbox), + OPERATOR 3 && (tgeometry, tgeometry), + -- overlaps or right + OPERATOR 4 &> (tgeometry, stbox), + OPERATOR 4 &> (tgeometry, tgeometry), + -- strictly right + OPERATOR 5 >> (tgeometry, stbox), + OPERATOR 5 >> (tgeometry, tgeometry), + -- same + OPERATOR 6 ~= (tgeometry, tstzspan), + OPERATOR 6 ~= (tgeometry, stbox), + OPERATOR 6 ~= (tgeometry, tgeometry), + -- contains + OPERATOR 7 @> (tgeometry, tstzspan), + OPERATOR 7 @> (tgeometry, stbox), + OPERATOR 7 @> (tgeometry, tgeometry), + -- contained by + OPERATOR 8 <@ (tgeometry, tstzspan), + OPERATOR 8 <@ (tgeometry, stbox), + OPERATOR 8 <@ (tgeometry, tgeometry), + -- overlaps or below + OPERATOR 9 &<| (tgeometry, stbox), + OPERATOR 9 &<| (tgeometry, tgeometry), + -- strictly below + OPERATOR 10 <<| (tgeometry, stbox), + OPERATOR 10 <<| (tgeometry, tgeometry), + -- strictly above + OPERATOR 11 |>> (tgeometry, stbox), + OPERATOR 11 |>> (tgeometry, tgeometry), + -- overlaps or above + OPERATOR 12 |&> (tgeometry, stbox), + OPERATOR 12 |&> (tgeometry, tgeometry), + -- adjacent + OPERATOR 17 -|- (tgeometry, tstzspan), + OPERATOR 17 -|- (tgeometry, stbox), + OPERATOR 17 -|- (tgeometry, tgeometry), + -- nearest approach distance + OPERATOR 25 |=| (tgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeometry, tgeometry) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeometry, tstzspan), + OPERATOR 28 &<# (tgeometry, stbox), + OPERATOR 28 &<# (tgeometry, tgeometry), + -- strictly before + OPERATOR 29 <<# (tgeometry, tstzspan), + OPERATOR 29 <<# (tgeometry, stbox), + OPERATOR 29 <<# (tgeometry, tgeometry), + -- strictly after + OPERATOR 30 #>> (tgeometry, tstzspan), + OPERATOR 30 #>> (tgeometry, stbox), + OPERATOR 30 #>> (tgeometry, tgeometry), + -- overlaps or after + OPERATOR 31 #&> (tgeometry, tstzspan), + OPERATOR 31 #&> (tgeometry, stbox), + OPERATOR 31 #&> (tgeometry, tgeometry), + -- overlaps or front + OPERATOR 32 &> (tgeometry, stbox), + OPERATOR 34 />> (tgeometry, tgeometry), + -- overlaps or back + OPERATOR 35 /&> (tgeometry, stbox), + OPERATOR 35 /&> (tgeometry, tgeometry), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeography_quadtree_ops + DEFAULT FOR TYPE tgeography USING spgist AS + -- overlaps + OPERATOR 3 && (tgeography, tstzspan), + OPERATOR 3 && (tgeography, stbox), + OPERATOR 3 && (tgeography, tgeography), + -- same + OPERATOR 6 ~= (tgeography, tstzspan), + OPERATOR 6 ~= (tgeography, stbox), + OPERATOR 6 ~= (tgeography, tgeography), + -- contains + OPERATOR 7 @> (tgeography, tstzspan), + OPERATOR 7 @> (tgeography, stbox), + OPERATOR 7 @> (tgeography, tgeography), + -- contained by + OPERATOR 8 <@ (tgeography, tstzspan), + OPERATOR 8 <@ (tgeography, stbox), + OPERATOR 8 <@ (tgeography, tgeography), + -- adjacent + OPERATOR 17 -|- (tgeography, tstzspan), + OPERATOR 17 -|- (tgeography, stbox), + OPERATOR 17 -|- (tgeography, tgeography), + -- nearest approach distance + OPERATOR 25 |=| (tgeography, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeography, tgeography) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeography, tstzspan), + OPERATOR 28 &<# (tgeography, stbox), + OPERATOR 28 &<# (tgeography, tgeography), + -- strictly before + OPERATOR 29 <<# (tgeography, tstzspan), + OPERATOR 29 <<# (tgeography, stbox), + OPERATOR 29 <<# (tgeography, tgeography), + -- strictly after + OPERATOR 30 #>> (tgeography, tstzspan), + OPERATOR 30 #>> (tgeography, stbox), + OPERATOR 30 #>> (tgeography, tgeography), + -- overlaps or after + OPERATOR 31 #&> (tgeography, tstzspan), + OPERATOR 31 #&> (tgeography, stbox), + OPERATOR 31 #&> (tgeography, tgeography), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeography_kdtree_ops + FOR TYPE tgeography USING spgist AS + -- overlaps + OPERATOR 3 && (tgeography, tstzspan), + OPERATOR 3 && (tgeography, tgeography), + -- same + OPERATOR 6 ~= (tgeography, tstzspan), + OPERATOR 6 ~= (tgeography, stbox), + OPERATOR 6 ~= (tgeography, tgeography), + -- contains + OPERATOR 7 @> (tgeography, tstzspan), + OPERATOR 7 @> (tgeography, stbox), + OPERATOR 7 @> (tgeography, tgeography), + -- contained by + OPERATOR 8 <@ (tgeography, tstzspan), + OPERATOR 8 <@ (tgeography, stbox), + OPERATOR 8 <@ (tgeography, tgeography), + -- adjacent + OPERATOR 17 -|- (tgeography, tstzspan), + OPERATOR 17 -|- (tgeography, stbox), + OPERATOR 17 -|- (tgeography, tgeography), + -- nearest approach distance + OPERATOR 25 |=| (tgeography, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeography, tgeography) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeography, tstzspan), + OPERATOR 28 &<# (tgeography, stbox), + OPERATOR 28 &<# (tgeography, tgeography), + -- strictly before + OPERATOR 29 <<# (tgeography, tstzspan), + OPERATOR 29 <<# (tgeography, stbox), + OPERATOR 29 <<# (tgeography, tgeography), + -- strictly after + OPERATOR 30 #>> (tgeography, tstzspan), + OPERATOR 30 #>> (tgeography, stbox), + OPERATOR 30 #>> (tgeography, tgeography), + -- overlaps or after + OPERATOR 31 #&> (tgeography, tstzspan), + OPERATOR 31 #&> (tgeography, stbox), + OPERATOR 31 #&> (tgeography, tgeography), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tpoint_spgist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tpoint_spgist.in.sql new file mode 100644 index 00000000..980403d7 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/074_tpoint_spgist.in.sql @@ -0,0 +1,476 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Quad-tree and k-d tree SP-GiST index for temporal points + */ + +/******************************************************************************/ + +CREATE OPERATOR CLASS stbox_quadtree_ops + DEFAULT FOR TYPE stbox USING spgist AS + -- strictly left + OPERATOR 1 << (stbox, stbox), + OPERATOR 1 << (stbox, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (stbox, stbox), + OPERATOR 2 &< (stbox, tgeompoint), + -- overlaps + OPERATOR 3 && (stbox, stbox), + OPERATOR 3 && (stbox, tgeompoint), + OPERATOR 3 && (stbox, tgeogpoint), + -- overlaps or right + OPERATOR 4 &> (stbox, stbox), + OPERATOR 4 &> (stbox, tgeompoint), + -- strictly right + OPERATOR 5 >> (stbox, stbox), + OPERATOR 5 >> (stbox, tgeompoint), + -- same + OPERATOR 6 ~= (stbox, stbox), + OPERATOR 6 ~= (stbox, tgeompoint), + OPERATOR 6 ~= (stbox, tgeogpoint), + -- contains + OPERATOR 7 @> (stbox, stbox), + OPERATOR 7 @> (stbox, tgeompoint), + OPERATOR 7 @> (stbox, tgeogpoint), + -- contained by + OPERATOR 8 <@ (stbox, stbox), + OPERATOR 8 <@ (stbox, tgeompoint), + OPERATOR 8 <@ (stbox, tgeogpoint), + -- overlaps or below + OPERATOR 9 &<| (stbox, stbox), + OPERATOR 9 &<| (stbox, tgeompoint), + -- strictly below + OPERATOR 10 <<| (stbox, stbox), + OPERATOR 10 <<| (stbox, tgeompoint), + -- strictly above + OPERATOR 11 |>> (stbox, stbox), + OPERATOR 11 |>> (stbox, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (stbox, stbox), + OPERATOR 12 |&> (stbox, tgeompoint), + -- adjacent + OPERATOR 17 -|- (stbox, stbox), + OPERATOR 17 -|- (stbox, tgeompoint), + OPERATOR 17 -|- (stbox, tgeogpoint), + -- overlaps or before + OPERATOR 28 &<# (stbox, stbox), + OPERATOR 28 &<# (stbox, tgeompoint), + OPERATOR 28 &<# (stbox, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (stbox, stbox), + OPERATOR 29 <<# (stbox, tgeompoint), + OPERATOR 29 <<# (stbox, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (stbox, stbox), + OPERATOR 30 #>> (stbox, tgeompoint), + OPERATOR 30 #>> (stbox, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (stbox, stbox), + OPERATOR 31 #&> (stbox, tgeompoint), + OPERATOR 31 #&> (stbox, tgeogpoint), + -- overlaps or front + OPERATOR 32 &> (stbox, stbox), + OPERATOR 34 />> (stbox, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (stbox, stbox), + OPERATOR 35 /&> (stbox, tgeompoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal); + +/*****************************************************************************/ + +CREATE OPERATOR CLASS stbox_kdtree_ops + FOR TYPE stbox USING spgist AS + -- strictly left + OPERATOR 1 << (stbox, stbox), + OPERATOR 1 << (stbox, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (stbox, stbox), + OPERATOR 2 &< (stbox, tgeompoint), + -- overlaps + OPERATOR 3 && (stbox, stbox), + OPERATOR 3 && (stbox, tgeompoint), + OPERATOR 3 && (stbox, tgeogpoint), + -- overlaps or right + OPERATOR 4 &> (stbox, stbox), + OPERATOR 4 &> (stbox, tgeompoint), + -- strictly right + OPERATOR 5 >> (stbox, stbox), + OPERATOR 5 >> (stbox, tgeompoint), + -- same + OPERATOR 6 ~= (stbox, stbox), + OPERATOR 6 ~= (stbox, tgeompoint), + OPERATOR 6 ~= (stbox, tgeogpoint), + -- contains + OPERATOR 7 @> (stbox, stbox), + OPERATOR 7 @> (stbox, tgeompoint), + OPERATOR 7 @> (stbox, tgeogpoint), + -- contained by + OPERATOR 8 <@ (stbox, stbox), + OPERATOR 8 <@ (stbox, tgeompoint), + OPERATOR 8 <@ (stbox, tgeogpoint), + -- overlaps or below + OPERATOR 9 &<| (stbox, stbox), + OPERATOR 9 &<| (stbox, tgeompoint), + -- strictly below + OPERATOR 10 <<| (stbox, stbox), + OPERATOR 10 <<| (stbox, tgeompoint), + -- strictly above + OPERATOR 11 |>> (stbox, stbox), + OPERATOR 11 |>> (stbox, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (stbox, stbox), + OPERATOR 12 |&> (stbox, tgeompoint), + -- adjacent + OPERATOR 17 -|- (stbox, stbox), + OPERATOR 17 -|- (stbox, tgeompoint), + OPERATOR 17 -|- (stbox, tgeogpoint), + -- overlaps or before + OPERATOR 28 &<# (stbox, stbox), + OPERATOR 28 &<# (stbox, tgeompoint), + OPERATOR 28 &<# (stbox, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (stbox, stbox), + OPERATOR 29 <<# (stbox, tgeompoint), + OPERATOR 29 <<# (stbox, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (stbox, stbox), + OPERATOR 30 #>> (stbox, tgeompoint), + OPERATOR 30 #>> (stbox, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (stbox, stbox), + OPERATOR 31 #&> (stbox, tgeompoint), + OPERATOR 31 #&> (stbox, tgeogpoint), + -- overlaps or front + OPERATOR 32 &> (stbox, stbox), + OPERATOR 34 />> (stbox, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (stbox, stbox), + OPERATOR 35 /&> (stbox, tgeompoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeompoint_quadtree_ops + DEFAULT FOR TYPE tgeompoint USING spgist AS + -- strictly left + OPERATOR 1 << (tgeompoint, stbox), + OPERATOR 1 << (tgeompoint, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (tgeompoint, stbox), + OPERATOR 2 &< (tgeompoint, tgeompoint), + -- overlaps + OPERATOR 3 && (tgeompoint, tstzspan), + OPERATOR 3 && (tgeompoint, stbox), + OPERATOR 3 && (tgeompoint, tgeompoint), + -- overlaps or right + OPERATOR 4 &> (tgeompoint, stbox), + OPERATOR 4 &> (tgeompoint, tgeompoint), + -- strictly right + OPERATOR 5 >> (tgeompoint, stbox), + OPERATOR 5 >> (tgeompoint, tgeompoint), + -- same + OPERATOR 6 ~= (tgeompoint, tstzspan), + OPERATOR 6 ~= (tgeompoint, stbox), + OPERATOR 6 ~= (tgeompoint, tgeompoint), + -- contains + OPERATOR 7 @> (tgeompoint, tstzspan), + OPERATOR 7 @> (tgeompoint, stbox), + OPERATOR 7 @> (tgeompoint, tgeompoint), + -- contained by + OPERATOR 8 <@ (tgeompoint, tstzspan), + OPERATOR 8 <@ (tgeompoint, stbox), + OPERATOR 8 <@ (tgeompoint, tgeompoint), + -- overlaps or below + OPERATOR 9 &<| (tgeompoint, stbox), + OPERATOR 9 &<| (tgeompoint, tgeompoint), + -- strictly below + OPERATOR 10 <<| (tgeompoint, stbox), + OPERATOR 10 <<| (tgeompoint, tgeompoint), + -- strictly above + OPERATOR 11 |>> (tgeompoint, stbox), + OPERATOR 11 |>> (tgeompoint, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (tgeompoint, stbox), + OPERATOR 12 |&> (tgeompoint, tgeompoint), + -- adjacent + OPERATOR 17 -|- (tgeompoint, tstzspan), + OPERATOR 17 -|- (tgeompoint, stbox), + OPERATOR 17 -|- (tgeompoint, tgeompoint), + -- nearest approach distance + OPERATOR 25 |=| (tgeompoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeompoint, tgeompoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeompoint, tstzspan), + OPERATOR 28 &<# (tgeompoint, stbox), + OPERATOR 28 &<# (tgeompoint, tgeompoint), + -- strictly before + OPERATOR 29 <<# (tgeompoint, tstzspan), + OPERATOR 29 <<# (tgeompoint, stbox), + OPERATOR 29 <<# (tgeompoint, tgeompoint), + -- strictly after + OPERATOR 30 #>> (tgeompoint, tstzspan), + OPERATOR 30 #>> (tgeompoint, stbox), + OPERATOR 30 #>> (tgeompoint, tgeompoint), + -- overlaps or after + OPERATOR 31 #&> (tgeompoint, tstzspan), + OPERATOR 31 #&> (tgeompoint, stbox), + OPERATOR 31 #&> (tgeompoint, tgeompoint), + -- overlaps or front + OPERATOR 32 &> (tgeompoint, stbox), + OPERATOR 34 />> (tgeompoint, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (tgeompoint, stbox), + OPERATOR 35 /&> (tgeompoint, tgeompoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeompoint_kdtree_ops + FOR TYPE tgeompoint USING spgist AS + -- strictly left + OPERATOR 1 << (tgeompoint, stbox), + OPERATOR 1 << (tgeompoint, tgeompoint), + -- overlaps or left + OPERATOR 2 &< (tgeompoint, stbox), + OPERATOR 2 &< (tgeompoint, tgeompoint), + -- overlaps + OPERATOR 3 && (tgeompoint, tstzspan), + OPERATOR 3 && (tgeompoint, stbox), + OPERATOR 3 && (tgeompoint, tgeompoint), + -- overlaps or right + OPERATOR 4 &> (tgeompoint, stbox), + OPERATOR 4 &> (tgeompoint, tgeompoint), + -- strictly right + OPERATOR 5 >> (tgeompoint, stbox), + OPERATOR 5 >> (tgeompoint, tgeompoint), + -- same + OPERATOR 6 ~= (tgeompoint, tstzspan), + OPERATOR 6 ~= (tgeompoint, stbox), + OPERATOR 6 ~= (tgeompoint, tgeompoint), + -- contains + OPERATOR 7 @> (tgeompoint, tstzspan), + OPERATOR 7 @> (tgeompoint, stbox), + OPERATOR 7 @> (tgeompoint, tgeompoint), + -- contained by + OPERATOR 8 <@ (tgeompoint, tstzspan), + OPERATOR 8 <@ (tgeompoint, stbox), + OPERATOR 8 <@ (tgeompoint, tgeompoint), + -- overlaps or below + OPERATOR 9 &<| (tgeompoint, stbox), + OPERATOR 9 &<| (tgeompoint, tgeompoint), + -- strictly below + OPERATOR 10 <<| (tgeompoint, stbox), + OPERATOR 10 <<| (tgeompoint, tgeompoint), + -- strictly above + OPERATOR 11 |>> (tgeompoint, stbox), + OPERATOR 11 |>> (tgeompoint, tgeompoint), + -- overlaps or above + OPERATOR 12 |&> (tgeompoint, stbox), + OPERATOR 12 |&> (tgeompoint, tgeompoint), + -- adjacent + OPERATOR 17 -|- (tgeompoint, tstzspan), + OPERATOR 17 -|- (tgeompoint, stbox), + OPERATOR 17 -|- (tgeompoint, tgeompoint), + -- nearest approach distance + OPERATOR 25 |=| (tgeompoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeompoint, tgeompoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeompoint, tstzspan), + OPERATOR 28 &<# (tgeompoint, stbox), + OPERATOR 28 &<# (tgeompoint, tgeompoint), + -- strictly before + OPERATOR 29 <<# (tgeompoint, tstzspan), + OPERATOR 29 <<# (tgeompoint, stbox), + OPERATOR 29 <<# (tgeompoint, tgeompoint), + -- strictly after + OPERATOR 30 #>> (tgeompoint, tstzspan), + OPERATOR 30 #>> (tgeompoint, stbox), + OPERATOR 30 #>> (tgeompoint, tgeompoint), + -- overlaps or after + OPERATOR 31 #&> (tgeompoint, tstzspan), + OPERATOR 31 #&> (tgeompoint, stbox), + OPERATOR 31 #&> (tgeompoint, tgeompoint), + -- overlaps or front + OPERATOR 32 &> (tgeompoint, stbox), + OPERATOR 34 />> (tgeompoint, tgeompoint), + -- overlaps or back + OPERATOR 35 /&> (tgeompoint, stbox), + OPERATOR 35 /&> (tgeompoint, tgeompoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeogpoint_quadtree_ops + DEFAULT FOR TYPE tgeogpoint USING spgist AS + -- overlaps + OPERATOR 3 && (tgeogpoint, tstzspan), + OPERATOR 3 && (tgeogpoint, stbox), + OPERATOR 3 && (tgeogpoint, tgeogpoint), + -- same + OPERATOR 6 ~= (tgeogpoint, tstzspan), + OPERATOR 6 ~= (tgeogpoint, stbox), + OPERATOR 6 ~= (tgeogpoint, tgeogpoint), + -- contains + OPERATOR 7 @> (tgeogpoint, tstzspan), + OPERATOR 7 @> (tgeogpoint, stbox), + OPERATOR 7 @> (tgeogpoint, tgeogpoint), + -- contained by + OPERATOR 8 <@ (tgeogpoint, tstzspan), + OPERATOR 8 <@ (tgeogpoint, stbox), + OPERATOR 8 <@ (tgeogpoint, tgeogpoint), + -- adjacent + OPERATOR 17 -|- (tgeogpoint, tstzspan), + OPERATOR 17 -|- (tgeogpoint, stbox), + OPERATOR 17 -|- (tgeogpoint, tgeogpoint), + -- nearest approach distance + OPERATOR 25 |=| (tgeogpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeogpoint, tgeogpoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeogpoint, tstzspan), + OPERATOR 28 &<# (tgeogpoint, stbox), + OPERATOR 28 &<# (tgeogpoint, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (tgeogpoint, tstzspan), + OPERATOR 29 <<# (tgeogpoint, stbox), + OPERATOR 29 <<# (tgeogpoint, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (tgeogpoint, tstzspan), + OPERATOR 30 #>> (tgeogpoint, stbox), + OPERATOR 30 #>> (tgeogpoint, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (tgeogpoint, tstzspan), + OPERATOR 31 #&> (tgeogpoint, stbox), + OPERATOR 31 #&> (tgeogpoint, tgeogpoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tgeogpoint_kdtree_ops + FOR TYPE tgeogpoint USING spgist AS + -- overlaps + OPERATOR 3 && (tgeogpoint, tstzspan), + OPERATOR 3 && (tgeogpoint, tgeogpoint), + -- same + OPERATOR 6 ~= (tgeogpoint, tstzspan), + OPERATOR 6 ~= (tgeogpoint, stbox), + OPERATOR 6 ~= (tgeogpoint, tgeogpoint), + -- contains + OPERATOR 7 @> (tgeogpoint, tstzspan), + OPERATOR 7 @> (tgeogpoint, stbox), + OPERATOR 7 @> (tgeogpoint, tgeogpoint), + -- contained by + OPERATOR 8 <@ (tgeogpoint, tstzspan), + OPERATOR 8 <@ (tgeogpoint, stbox), + OPERATOR 8 <@ (tgeogpoint, tgeogpoint), + -- adjacent + OPERATOR 17 -|- (tgeogpoint, tstzspan), + OPERATOR 17 -|- (tgeogpoint, stbox), + OPERATOR 17 -|- (tgeogpoint, tgeogpoint), + -- nearest approach distance + OPERATOR 25 |=| (tgeogpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tgeogpoint, tgeogpoint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tgeogpoint, tstzspan), + OPERATOR 28 &<# (tgeogpoint, stbox), + OPERATOR 28 &<# (tgeogpoint, tgeogpoint), + -- strictly before + OPERATOR 29 <<# (tgeogpoint, tstzspan), + OPERATOR 29 <<# (tgeogpoint, stbox), + OPERATOR 29 <<# (tgeogpoint, tgeogpoint), + -- strictly after + OPERATOR 30 #>> (tgeogpoint, tstzspan), + OPERATOR 30 #>> (tgeogpoint, stbox), + OPERATOR 30 #>> (tgeogpoint, tgeogpoint), + -- overlaps or after + OPERATOR 31 #&> (tgeogpoint, tstzspan), + OPERATOR 31 #&> (tgeogpoint, stbox), + OPERATOR 31 #&> (tgeogpoint, tgeogpoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tgeo_analytics.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tgeo_analytics.in.sql new file mode 100644 index 00000000..b30dc848 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tgeo_analytics.in.sql @@ -0,0 +1,149 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Analytic functions for temporal geometries + */ + +/*****************************************************************************/ +-- Affine transforms + +CREATE OR REPLACE FUNCTION affine(tgeometry,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Tgeo_affine' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION affine(tgeometry,float8,float8,float8,float8,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, $2, $3, 0, $4, $5, 0, 0, 0, 1, $6, $7, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeometry,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeometry,float8,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, $3 - cos($2) * $3 + sin($2) * $4, $4 - sin($2) * $3 - cos($2) * $4, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeometry,float8,geometry) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, @extschema@.ST_X($3) - cos($2) * @extschema@.ST_X($3) + sin($2) * @extschema@.ST_Y($3), @extschema@.ST_Y($3) - sin($2) * @extschema@.ST_X($3) - cos($2) * @extschema@.ST_Y($3), 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateZ(tgeometry,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.rotate($1, $2)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateX(tgeometry,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, 1, 0, 0, 0, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateY(tgeometry,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, cos($2), 0, sin($2), 0, 1, 0, -sin($2), 0, cos($2), 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION translate(tgeometry,float8,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, 1, 0, 0, 0, 1, 0, 0, 0, 1, $2, $3, $4)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION translate(tgeometry,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.translate($1, $2, $3, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION transscale(tgeometry,float8,float8,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.affine($1, $4, 0, 0, 0, $5, 0, 0, 0, 1, $2 * $4, $3 * $5, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeometry,geometry) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Tgeo_scale' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeometry,geometry,origin geometry) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Tgeo_scale' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeometry,float8,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.scale($1, @extschema@.ST_MakePoint($2, $3, $4))' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeometry,float8,float8) +RETURNS tgeometry +AS 'SELECT @extschema@.scale($1, $2, $3, 1)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION minDistSimplify(tgeometry, float) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistSimplify(tgeography, float) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minTimeDeltaSimplify(tgeometry, interval) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_tdelta' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minTimeDeltaSimplify(tgeography, interval) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_tdelta' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION maxDistSimplify(tgeometry, float, boolean DEFAULT TRUE) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_max_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION douglasPeuckerSimplify(tgeometry, float, boolean DEFAULT TRUE) +RETURNS tgeometry +AS 'MODULE_PATHNAME', 'Temporal_simplify_dp' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION asMVTGeom(tgeo tgeometry, bounds stbox, + -- extent int4 DEFAULT 4096, buffer int4 DEFAULT 256, clip bool DEFAULT TRUE) +-- RETURNS geom_times +-- AS 'MODULE_PATHNAME','Tgeo_AsMVTGeom' +-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tpoint_analytics.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tpoint_analytics.in.sql new file mode 100644 index 00000000..017b404b --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/076_tpoint_analytics.in.sql @@ -0,0 +1,208 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Analytic functions for temporal points + */ + +/*****************************************************************************/ +-- There are two versions of the functions since the single-argument version +-- is required for defining the casting + +CREATE FUNCTION geometry(tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tpoint_to_geomeas' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geometry(tgeompoint, boolean DEFAULT FALSE) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tpoint_to_geomeas' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeompoint AS geometry) WITH FUNCTION geometry(tgeompoint); + +CREATE FUNCTION geography(tgeogpoint) + RETURNS geography + AS 'MODULE_PATHNAME', 'Tpoint_to_geomeas' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION geography(tgeogpoint, boolean DEFAULT FALSE) + RETURNS geography + AS 'MODULE_PATHNAME', 'Tpoint_to_geomeas' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tgeogpoint AS geography) WITH FUNCTION geography(tgeogpoint); + +CREATE FUNCTION tgeompoint(geometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Geomeas_to_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (geometry AS tgeompoint) WITH FUNCTION tgeompoint(geometry); + +CREATE FUNCTION tgeogpoint(geography) + RETURNS tgeogpoint + AS 'MODULE_PATHNAME', 'Geomeas_to_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (geography AS tgeogpoint) WITH FUNCTION tgeogpoint(geography); + +/*****************************************************************************/ + +CREATE FUNCTION geoMeasure(tgeompoint, tfloat, boolean DEFAULT FALSE) +RETURNS geometry +AS 'MODULE_PATHNAME', 'Tpoint_tfloat_to_geomeas' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION geoMeasure(tgeogpoint, tfloat, boolean DEFAULT FALSE) +RETURNS geography +AS 'MODULE_PATHNAME', 'Tpoint_tfloat_to_geomeas' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ +-- Affine transforms + +CREATE OR REPLACE FUNCTION affine(tgeompoint,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8,float8) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Tgeo_affine' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION affine(tgeompoint,float8,float8,float8,float8,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, $2, $3, 0, $4, $5, 0, 0, 0, 1, $6, $7, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeompoint,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeompoint,float8,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, $3 - cos($2) * $3 + sin($2) * $4, $4 - sin($2) * $3 - cos($2) * $4, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotate(tgeompoint,float8,geometry) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0, 1, @extschema@.ST_X($3) - cos($2) * @extschema@.ST_X($3) + sin($2) * @extschema@.ST_Y($3), @extschema@.ST_Y($3) - sin($2) * @extschema@.ST_X($3) - cos($2) * @extschema@.ST_Y($3), 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateZ(tgeompoint,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.rotate($1, $2)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateX(tgeompoint,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, 1, 0, 0, 0, cos($2), -sin($2), 0, sin($2), cos($2), 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION rotateY(tgeompoint,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, cos($2), 0, sin($2), 0, 1, 0, -sin($2), 0, cos($2), 0, 0, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION translate(tgeompoint,float8,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, 1, 0, 0, 0, 1, 0, 0, 0, 1, $2, $3, $4)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION translate(tgeompoint,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.translate($1, $2, $3, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION transscale(tgeompoint,float8,float8,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.affine($1, $4, 0, 0, 0, $5, 0, 0, 0, 1, $2 * $4, $3 * $5, 0)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeompoint,geometry) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Tgeo_scale' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeompoint,geometry,origin geometry) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Tgeo_scale' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeompoint,float8,float8,float8) +RETURNS tgeompoint +--AS 'SELECT affine($1, $2, 0, 0, 0, $3, 0, 0, 0, $4, 0, 0, 0)' +AS 'SELECT @extschema@.scale($1, @extschema@.ST_MakePoint($2, $3, $4))' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OR REPLACE FUNCTION scale(tgeompoint,float8,float8) +RETURNS tgeompoint +AS 'SELECT @extschema@.scale($1, $2, $3, 1)' +LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION minDistSimplify(tgeompoint, float) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minDistSimplify(tgeogpoint, float) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minTimeDeltaSimplify(tgeompoint, interval) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_tdelta' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minTimeDeltaSimplify(tgeogpoint, interval) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_tdelta' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION maxDistSimplify(tgeompoint, float, boolean DEFAULT TRUE) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_max_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION douglasPeuckerSimplify(tgeompoint, float, boolean DEFAULT TRUE) +RETURNS tgeompoint +AS 'MODULE_PATHNAME', 'Temporal_simplify_dp' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE geom_times AS ( + geom geometry, + times bigint[] +); + +CREATE FUNCTION asMVTGeom(tpoint tgeompoint, bounds stbox, + extent int4 DEFAULT 4096, buffer int4 DEFAULT 256, clip bool DEFAULT TRUE) +-- RETURNS tgeompoint +RETURNS geom_times +AS 'MODULE_PATHNAME','Tpoint_AsMVTGeom' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/078_tpoint_datagen.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/078_tpoint_datagen.in.sql new file mode 100644 index 00000000..2284e6d1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/078_tpoint_datagen.in.sql @@ -0,0 +1,40 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Data generator for MobilityDB + */ + +CREATE FUNCTION create_trip(record[], timestamptz, boolean, text) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Create_trip' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/CMakeLists.txt new file mode 100644 index 00000000..1fc2fc24 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/geo/CMakeLists.txt @@ -0,0 +1,47 @@ +SET(LOCAL_FILES + 050_geoset + 051_stbox + 052_tpoint + 053_tpoint_inout + 054_tpoint_compops + 056_tpoint_spatialfuncs + 058_tpoint_tile + 060_tpoint_boxops + 062_tpoint_posops + 064_tpoint_distance + 066_tpoint_similarity + 068_tpoint_aggfuncs + 070_tpoint_spatialrels + 072_tpoint_tempspatialrels + 073_tpoint_gist + 074_tpoint_spgist + 076_tpoint_analytics + 078_tpoint_datagen + ) + +# Files added for temporal geometries +# TODO These files should be added to the list above +list(APPEND LOCAL_FILES + 052_tgeo + 053_tgeo_inout + 054_tgeo_compops + 056_tgeo_spatialfuncs + 058_tgeo_tile + 060_tgeo_boxops + 062_tgeo_posops + 064_tgeo_distance + 068_tgeo_aggfuncs + 070_tgeo_spatialrels + 072_tgeo_tempspatialrels + 073_tgeo_gist + 074_tgeo_spgist + 076_tgeo_analytics + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/mobilitydb.in.control b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/mobilitydb.in.control new file mode 100644 index 00000000..2841a477 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/mobilitydb.in.control @@ -0,0 +1,5 @@ +comment = 'MobilityDB geospatial trajectory data management & analysis platform' +default_version = '${MOBILITYDB_VERSION}' +module_pathname = '${MOBILITYDB_MODULE_PATHNAME}' +relocatable = false +requires = 'postgis' diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/081_npoint.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/081_npoint.in.sql new file mode 100644 index 00000000..3c1aadb5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/081_npoint.in.sql @@ -0,0 +1,424 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Network-based static point and segment types + */ + +CREATE TYPE npoint; +CREATE TYPE nsegment; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION npoint_in(cstring) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_in' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION npoint_out(npoint) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Npoint_out' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION npoint_recv(internal) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_recv' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION npoint_send(npoint) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Npoint_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE npoint ( + internallength = 16, + input = npoint_in, + output = npoint_out, + receive = npoint_recv, + send = npoint_send, + alignment = double +); + +CREATE FUNCTION nsegment_in(cstring) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Nsegment_in' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION nsegment_out(nsegment) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Nsegment_out' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION nsegment_recv(internal) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Nsegment_recv' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION nsegment_send(nsegment) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Nsegment_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE nsegment ( + internallength = 24, + input = nsegment_in, + output = nsegment_out, + receive = nsegment_recv, + send = nsegment_send, + alignment = double +); + +/***************************************************************************** + * Input/output from (E)WKT, (E)WKB and HexEWKB representation + *****************************************************************************/ + +CREATE FUNCTION npointFromText(text) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION npointFromEWKT(text) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION npointFromBinary(bytea) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION npointFromEWKB(bytea) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION npointFromHexEWKB(text) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asText(npoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Npoint_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(npoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(npoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Npoint_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(npoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(npoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Npoint_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(npoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Npoint_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(npoint, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Npoint_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION npoint(bigint, double precision) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nsegment(bigint, double precision DEFAULT 0, double precision DEFAULT 1) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Nsegment_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nsegment(npoint) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Npoint_to_nsegment' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (npoint AS nsegment) WITH FUNCTION nsegment(npoint); + +/***************************************************************************** + * Conversion between network and space + *****************************************************************************/ + +CREATE FUNCTION geometry(npoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Npoint_to_geompoint' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION npoint(geometry) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Geompoint_to_npoint' + LANGUAGE C IMMUTABLE STRICT; + +CREATE CAST (npoint AS geometry) WITH FUNCTION geometry(npoint); +CREATE CAST (geometry AS npoint) WITH FUNCTION npoint(geometry); + +CREATE FUNCTION geometry(nsegment) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Nsegment_to_geom' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION nsegment(geometry) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Geom_to_nsegment' + LANGUAGE C IMMUTABLE STRICT; + +CREATE CAST (nsegment AS geometry) WITH FUNCTION geometry(nsegment); +CREATE CAST (geometry AS nsegment) WITH FUNCTION nsegment(geometry); + +/***************************************************************************** + * Accessors + *****************************************************************************/ + +CREATE FUNCTION route(npoint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Npoint_route' + LANGUAGE C IMMUTABLE STRICT; + +-- position is a reserved word in SQL +CREATE FUNCTION getPosition(npoint) + RETURNS double precision + AS 'MODULE_PATHNAME', 'Npoint_position' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION srid(npoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Npoint_srid' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION route(nsegment) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Nsegment_route' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION startPosition(nsegment) + RETURNS double precision + AS 'MODULE_PATHNAME', 'Nsegment_start_position' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION endPosition(nsegment) + RETURNS double precision + AS 'MODULE_PATHNAME', 'Nsegment_end_position' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION srid(nsegment) + RETURNS integer + AS 'MODULE_PATHNAME', 'Nsegment_srid' + LANGUAGE C IMMUTABLE STRICT; + +/***************************************************************************** + * Modification functions + *****************************************************************************/ + +CREATE FUNCTION round(npoint, integer DEFAULT 0) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Npoint_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(nsegment, integer DEFAULT 0) + RETURNS nsegment + AS 'MODULE_PATHNAME', 'Nsegment_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Comparisons + ******************************************************************************/ + +CREATE FUNCTION npoint_eq(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_ne(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_lt(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_le(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_ge(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_gt(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npoint_cmp(npoint, npoint) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Npoint_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + PROCEDURE = npoint_eq, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = npoint_ne, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = npoint_lt, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = npoint_le, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarlesel, JOIN = scalarlejoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = npoint_ge, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargesel, JOIN = scalargejoinsel +); +CREATE OPERATOR > ( + PROCEDURE = npoint_gt, + LEFTARG = npoint, RIGHTARG = npoint, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS npoint_btree_ops + DEFAULT FOR TYPE npoint USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 npoint_cmp(npoint, npoint); + +/******************************************************************************/ + +CREATE FUNCTION nsegment_eq(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_ne(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_lt(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_le(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_ge(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_gt(nsegment, nsegment) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Nsegment_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nsegment_cmp(nsegment, nsegment) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Nsegment_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + PROCEDURE = nsegment_eq, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = nsegment_ne, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = nsegment_lt, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = nsegment_le, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarlesel, JOIN = scalarlejoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = nsegment_ge, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargesel, JOIN = scalargejoinsel +); +CREATE OPERATOR > ( + PROCEDURE = nsegment_gt, + LEFTARG = nsegment, RIGHTARG = nsegment, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS nsegment_btree_ops + DEFAULT FOR TYPE nsegment USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 nsegment_cmp(nsegment, nsegment); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/082_npointset.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/082_npointset.in.sql new file mode 100644 index 00000000..4d11ece2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/082_npointset.in.sql @@ -0,0 +1,507 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for set of network point values + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE npointset; + +CREATE FUNCTION npointset_in(cstring) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointset_out(npointset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointset_recv(internal) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointset_send(npointset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE npointset ( + internallength = variable, + input = npointset_in, + output = npointset_out, + receive = npointset_recv, + send = npointset_send, + alignment = double, + storage = extended + -- , analyze = geoset_analyze +); + +/******************************************************************************/ + +-- Input/output in WKT, WKB, and HexWKB representation + +CREATE FUNCTION npointsetFromText(text) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointsetFromEWKT(text) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION npointsetFromBinary(bytea) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointsetFromEWKB(bytea) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION npointsetFromHexWKB(text) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(npointset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(npointset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(npointset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKB(npointset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(npointset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor + ******************************************************************************/ + +CREATE FUNCTION set(npoint[]) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversions + ******************************************************************************/ + +CREATE FUNCTION set(npoint) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION stbox(npointset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Spatialset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (npoint AS npointset) WITH FUNCTION set(npoint); +CREATE CAST (npointset AS stbox) WITH FUNCTION stbox(npointset); + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION round(npointset, integer DEFAULT 0) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION memSize(npointset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numValues(npointset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(npointset) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(npointset) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(npointset, integer) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getValues(npointset) + RETURNS npoint[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION routes(npointset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Npointset_routes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation set of values <-> set + ******************************************************************************/ + +CREATE FUNCTION unnest(npointset) + RETURNS SETOF npoint + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, npoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, npointset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION npointset_union_finalfn(internal) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE setUnion(npoint) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = npointset_union_finalfn +); +CREATE AGGREGATE setUnion(npointset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = npointset_union_finalfn +); + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION set_eq(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(npointset, npointset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(npointset, npointset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >= + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = > + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = < + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = npointset, RIGHTARG = npointset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <= + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS npointset_btree_ops + DEFAULT FOR TYPE npointset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(npointset, npointset); + +/******************************************************************************/ + +CREATE FUNCTION set_hash(npointset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(npointset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS npointset_hash_ops + DEFAULT FOR TYPE npointset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(npointset), + FUNCTION 2 set_hash_extended(npointset, bigint); + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION set_contains(npointset, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(npointset, npointset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = npointset, RIGHTARG = npoint, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_contained(npoint, npointset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(npointset, npointset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = npoint, RIGHTARG = npointset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overlaps(npointset, npointset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = && + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION set_union(npoint, npointset) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(npointset, npoint) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(npointset, npointset) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = npoint, RIGHTARG = npointset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = npointset, RIGHTARG = npoint, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION set_minus(npoint, npointset) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(npointset, npoint) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(npointset, npointset) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = npoint, RIGHTARG = npointset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = npointset, RIGHTARG = npoint +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = npointset, RIGHTARG = npointset +); + +/*****************************************************************************/ + +CREATE FUNCTION set_intersection(npoint, npointset) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(npointset, npoint) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(npointset, npointset) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = npoint, RIGHTARG = npointset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = npointset, RIGHTARG = npoint, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = * +); + +/*****************************************************************************/ + +CREATE FUNCTION set_distance(npoint, npointset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(npointset, npoint) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(npointset, npointset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = npoint, RIGHTARG = npointset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = npointset, RIGHTARG = npoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = npointset, RIGHTARG = npointset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/083_tnpoint.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/083_tnpoint.in.sql new file mode 100644 index 00000000..efea630c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/083_tnpoint.in.sql @@ -0,0 +1,664 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal network points + */ + +CREATE TYPE tnpoint; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION tnpoint_in(cstring, oid, integer) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Temporal_out(tnpoint) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpoint_recv(internal, oid, integer) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tnpoint) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tnpoint ( + internallength = variable, + input = tnpoint_in, + output = temporal_out, + receive = tnpoint_recv, + send = temporal_send, + typmod_in = temporal_typmod_in, + typmod_out = temporal_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tnpoint(tnpoint, integer) + RETURNS tnpoint + AS 'MODULE_PATHNAME','Temporal_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tnpoint AS tnpoint) WITH FUNCTION tnpoint(tnpoint, integer) AS IMPLICIT; + +/***************************************************************************** + * Input/output from (E)WKT, (E)WKB, and HexEWKB + *****************************************************************************/ + +CREATE FUNCTION tnpointFromBinary(bytea) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpointFromHexWKB(text) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asText(tnpoint, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tnpoint[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tnpoint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(tnpoint, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION tnpoint(npoint, timestamptz) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpoint(npoint, tstzset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpoint(npoint, tstzspan, text DEFAULT 'linear') + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpoint(npoint, tstzspanset, text DEFAULT 'linear') + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tnpointSeq(tnpoint[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpointSeqSet(tnpoint[]) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tnpointSeqSetGaps(tnpoint[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/****************************************************************************** + * Cast functions + ******************************************************************************/ + +CREATE FUNCTION tgeompoint(tnpoint) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tnpoint_to_tgeompoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnpoint(tgeompoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tgeompoint_to_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tnpoint) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tnpoint AS tgeompoint) WITH FUNCTION tgeompoint(tnpoint); +CREATE CAST (tgeompoint AS tnpoint) WITH FUNCTION tnpoint(tgeompoint); +CREATE CAST (tnpoint AS tstzspan) WITH FUNCTION timeSpan(tnpoint); + +/****************************************************************************** + * Transformation functions + ******************************************************************************/ + +CREATE FUNCTION tnpointInst(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tnpointSeq(tnpoint, text) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tnpointSeq(tnpoint) + RETURNS tnpoint + AS 'SELECT @extschema@.tnpointSeq($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tnpointSeqSet(tnpoint, text) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tnpointSeqSet(tnpoint) + RETURNS tnpoint + AS 'SELECT @extschema@.tnpointSeqSet($1, NULL)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tnpoint, text) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tnpoint, integer DEFAULT 0) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tnpoint[], integer DEFAULT 0) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Append functions + ******************************************************************************/ + +CREATE FUNCTION appendInstant(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tnpoint[]) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION tempSubtype(tnpoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tnpoint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(tnpoint) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- values is a reserved word in SQL +CREATE FUNCTION getValues(tnpoint) + RETURNS npointset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION positions(tnpoint) + RETURNS nsegment[] + AS 'MODULE_PATHNAME', 'Tnpoint_positions' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION route(tnpoint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Tnpoint_route' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION routes(tnpoint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Tnpoint_routes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tnpoint) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getTimestamp(tnpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tnpoint) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tnpoint) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tnpoint, int) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tnpoint, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tnpoint, integer) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tnpoint) + RETURNS tnpoint[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tnpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tnpoint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tnpoint, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tnpoint) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tnpoint, integer) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tnpoint) + RETURNS tnpoint[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tnpoint) + RETURNS tnpoint[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION shiftTime(tnpoint, interval) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tnpoint, interval) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tnpoint, interval, interval) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE TYPE npoint_tstzspanset AS ( + value npoint, + time tstzspanset +); + +CREATE FUNCTION unnest(tnpoint) + RETURNS SETOF npoint_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Restriction functions + ******************************************************************************/ + +CREATE FUNCTION atValues(tnpoint, npoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_at_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tnpoint, npoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_minus_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tnpoint, npointset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_at_npointset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tnpoint, npointset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_minus_npointset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tnpoint, timestamptz) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tnpoint, timestamptz) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tnpoint, timestamptz) + RETURNS npoint + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tnpoint, tstzset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tnpoint, tstzset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tnpoint, tstzspan) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tnpoint, tstzspan) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tnpoint, tstzspanset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tnpoint, tstzspanset) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tnpoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tnpoint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stop Function + *****************************************************************************/ + +CREATE FUNCTION stops(tnpoint, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tnpoint, tnpoint, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tnpoint, tnpoint, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tnpoint, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tnpoint, tstzset, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tnpoint, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tnpoint, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE time_tnpoint AS ( + time timestamptz, + temp tnpoint +); + +CREATE FUNCTION timeSplit(tnpoint, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tnpoint + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tnpoint, tnpoint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tnpoint, tnpoint) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS tnpoint_btree_ops + DEFAULT FOR TYPE tnpoint USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tnpoint, tnpoint); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tnpoint_hash_ops + DEFAULT FOR TYPE tnpoint USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tnpoint); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/085_tnpoint_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/085_tnpoint_compops.in.sql new file mode 100644 index 00000000..033ae3cc --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/085_tnpoint_compops.in.sql @@ -0,0 +1,233 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever/always and temporal comparisons for temporal network points + */ + +/***************************************************************************** + * Ever/Always comparisons + *****************************************************************************/ + +CREATE FUNCTION ever_eq(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = npoint, RIGHTARG = tnpoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tnpoint, RIGHTARG = npoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = npoint, RIGHTARG = tnpoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tnpoint, RIGHTARG = npoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION always_eq(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = npoint, RIGHTARG = tnpoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tnpoint, RIGHTARG = npoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION always_ne(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = npoint, RIGHTARG = tnpoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tnpoint, RIGHTARG = npoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal comparisons + *****************************************************************************/ + +CREATE FUNCTION temporal_teq(npoint, tnpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tnpoint, npoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tnpoint, tnpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = npoint, RIGHTARG = tnpoint, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tnpoint, RIGHTARG = npoint, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_tne(npoint, tnpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tnpoint, npoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tnpoint, tnpoint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = npoint, RIGHTARG = tnpoint, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tnpoint, RIGHTARG = npoint, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = #<> +); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/087_tnpoint_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/087_tnpoint_spatialfuncs.in.sql new file mode 100644 index 00000000..fb43524c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/087_tnpoint_spatialfuncs.in.sql @@ -0,0 +1,148 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Geometric functions for temporal network points + */ + +/***************************************************************************** + * SRID + *****************************************************************************/ + +CREATE FUNCTION SRID(tnpoint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Trajectory + *****************************************************************************/ + +CREATE FUNCTION trajectory(tnpoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tnpoint_trajectory' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * AtGeometry and MinusGeometry + *****************************************************************************/ + +CREATE FUNCTION atGeometry(tnpoint, geometry) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_at_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusGeometry(tnpoint, geometry) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_minus_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atStbox(tnpoint, stbox, bool DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_at_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusStbox(tnpoint, stbox, bool DEFAULT TRUE) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Tnpoint_minus_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Equals + *****************************************************************************/ + +CREATE FUNCTION same(npoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Npoint_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Length + *****************************************************************************/ + +CREATE FUNCTION length(tnpoint) + RETURNS double precision + AS 'MODULE_PATHNAME', 'Tnpoint_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Cumulative length + *****************************************************************************/ + +CREATE FUNCTION cumulativeLength(tnpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnpoint_cumulative_length' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Speed + *****************************************************************************/ + +CREATE FUNCTION speed(tnpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnpoint_speed' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Time-weighted centroid + *****************************************************************************/ + +CREATE FUNCTION twCentroid(tnpoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Tnpoint_twcentroid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Shortest line + *****************************************************************************/ + +CREATE FUNCTION shortestLine(geometry, tnpoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tnpoint, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tnpoint_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(npoint, tnpoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tnpoint, npoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tnpoint, tnpoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/089_tnpoint_topops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/089_tnpoint_topops.in.sql new file mode 100644 index 00000000..6c8a0eed --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/089_tnpoint_topops.in.sql @@ -0,0 +1,385 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal network points + */ + +/***************************************************************************** + * Temporal npoint to stbox + *****************************************************************************/ + +CREATE FUNCTION stbox(npoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Npoint_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(nsegment) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Nsegment_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(npoint, timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Npoint_timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(npoint, tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Npoint_tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(tnpoint) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (npoint AS stbox) WITH FUNCTION stbox(npoint); +CREATE CAST (nsegment AS stbox) WITH FUNCTION stbox(nsegment); +CREATE CAST (tnpoint AS stbox) WITH FUNCTION stbox(tnpoint); + +/*****************************************************************************/ + +CREATE FUNCTION expandSpace(tnpoint, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tnpoint, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tnpoint, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tnpoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contains(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tnpoint, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tnpoint, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tnpoint, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tnpoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contained(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tnpoint, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tnpoint, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tnpoint, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tnpoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_overlaps(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tnpoint, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tnpoint, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tnpoint, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tnpoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_same(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tnpoint, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tnpoint, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tnpoint, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tnpoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_adjacent(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tnpoint, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/090_tnpoint_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/090_tnpoint_posops.in.sql new file mode 100644 index 00000000..b75fdf70 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/090_tnpoint_posops.in.sql @@ -0,0 +1,487 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for temporal network points + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tnpoint */ + +CREATE FUNCTION temporal_before(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tnpoint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tnpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tnpoint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tnpoint, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tnpoint + *****************************************************************************/ + +/* tnpoint op tstzspan */ + +CREATE FUNCTION temporal_before(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tnpoint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tnpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tnpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tnpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tnpoint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* tnpoint op stbox */ + +CREATE FUNCTION temporal_left(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tnpoint, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tnpoint op tnpoint */ + +CREATE FUNCTION temporal_left(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/091_tnpoint_routeops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/091_tnpoint_routeops.in.sql new file mode 100644 index 00000000..4a59f222 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/091_tnpoint_routeops.in.sql @@ -0,0 +1,267 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Route operators for temporal network points + */ + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION overlaps_rid(bigintset, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_rid_bigintset_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @@ ( + PROCEDURE = overlaps_rid, + LEFTARG = bigintset, RIGHTARG = tnpoint, + COMMUTATOR = @@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION overlaps_rid(tnpoint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_rid_tnpoint_bigintset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION overlaps_rid(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_rid_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @@ ( + PROCEDURE = overlaps_rid, + LEFTARG = tnpoint, RIGHTARG = bigintset, + COMMUTATOR = @@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @@ ( + PROCEDURE = overlaps_rid, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = @@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION contains_rid(bigintset, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_rid_bigintset_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @? ( + PROCEDURE = contains_rid, + LEFTARG = bigintset, RIGHTARG = tnpoint, + COMMUTATOR = ?@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION contains_rid(tnpoint, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_rid_tnpoint_bigint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contains_rid(tnpoint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_rid_tnpoint_bigintset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contains_rid(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_rid_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contains_rid(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_rid_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @? ( + PROCEDURE = contains_rid, + LEFTARG = tnpoint, RIGHTARG = bigint, + COMMUTATOR = ?@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @? ( + PROCEDURE = contains_rid, + LEFTARG = tnpoint, RIGHTARG = bigintset, + COMMUTATOR = ?@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @? ( + PROCEDURE = contains_rid, + LEFTARG = tnpoint, RIGHTARG = npoint, + COMMUTATOR = ?@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @? ( + PROCEDURE = contains_rid, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = ?@ + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION contained_rid(bigint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_rid_bigint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contained_rid(bigintset, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_rid_bigintset_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contained_rid(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_rid_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?@ ( + PROCEDURE = contained_rid, + LEFTARG = bigint, RIGHTARG = tnpoint, + COMMUTATOR = @? + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?@ ( + PROCEDURE = contained_rid, + LEFTARG = bigintset, RIGHTARG = tnpoint, + COMMUTATOR = @? + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?@ ( + PROCEDURE = contained_rid, + LEFTARG = npoint, RIGHTARG = tnpoint, + COMMUTATOR = @? + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION contained_rid(tnpoint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_rid_tnpoint_bigintset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION contained_rid(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_rid_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?@ ( + PROCEDURE = contained_rid, + LEFTARG = tnpoint, RIGHTARG = bigintset, + COMMUTATOR = @? + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ?@ ( + PROCEDURE = contained_rid, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = @? + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION same_rid(bigint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_bigint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION same_rid(bigintset, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_bigintset_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION same_rid(npoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = bigint, RIGHTARG = tnpoint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = bigintset, RIGHTARG = tnpoint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = npoint, RIGHTARG = tnpoint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION same_rid(tnpoint, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_tnpoint_bigint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION same_rid(tnpoint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_tnpoint_bigintset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION same_rid(tnpoint, npoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION same_rid(tnpoint, tnpoint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_rid_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = tnpoint, RIGHTARG = bigint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = tnpoint, RIGHTARG = bigintset, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = tnpoint, RIGHTARG = npoint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @= ( + PROCEDURE = same_rid, + LEFTARG = tnpoint, RIGHTARG = tnpoint, + COMMUTATOR = @= + -- , RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/092_tnpoint_gin.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/092_tnpoint_gin.in.sql new file mode 100644 index 00000000..ddd66740 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/092_tnpoint_gin.in.sql @@ -0,0 +1,80 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief GIN index for temporal network points + */ + +/******************************************************************************/ + +CREATE FUNCTION tnpoint_gin_extract_value(bigint, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Tnpoint_gin_extract_value' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tnpoint_gin_extract_query(bigint, internal, int2, internal, internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Tnpoint_gin_extract_query' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tnpoint_gin_triconsistent(internal, int2, bigint, int4, internal, internal, internal) +RETURNS char +AS 'MODULE_PATHNAME', 'Set_gin_triconsistent' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tnpoint_gin_ops + DEFAULT FOR TYPE tnpoint USING gin AS + STORAGE bigint, + -- overlap set + OPERATOR 10 @@ (tnpoint, bigintset), + -- overlap tnpoint + OPERATOR 11 @@ (tnpoint, tnpoint), + -- contains value + OPERATOR 20 @? (tnpoint, bigint), + -- contains set + OPERATOR 21 @? (tnpoint, bigintset), + -- contains tnpoint + OPERATOR 22 @? (tnpoint, tnpoint), + -- contained set + OPERATOR 30 ?@ (tnpoint, bigintset), + -- contained tnpoint + OPERATOR 31 ?@ (tnpoint, tnpoint), + -- equal set + OPERATOR 40 @= (tnpoint, bigintset), + -- equal tnpoint + OPERATOR 41 @= (tnpoint, tnpoint), + -- functions + FUNCTION 2 tnpoint_gin_extract_value(bigint, internal), + FUNCTION 3 tnpoint_gin_extract_query(bigint, internal, int2, internal, internal, internal, internal), + FUNCTION 6 tnpoint_gin_triconsistent(internal, int2, bigint, int4, internal, internal, internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/093_tnpoint_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/093_tnpoint_distance.in.sql new file mode 100644 index 00000000..d5f54bf9 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/093_tnpoint_distance.in.sql @@ -0,0 +1,187 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal network points + */ + +/***************************************************************************** + * Temporal distance + *****************************************************************************/ + +CREATE FUNCTION tDistance(geometry(Point), tnpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_point_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(npoint, tnpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tnpoint, geometry(Point)) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tnpoint_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tnpoint, npoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tnpoint, tnpoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = geometry, + RIGHTARG = tnpoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = npoint, + RIGHTARG = tnpoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tnpoint, + RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tnpoint, + RIGHTARG = npoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tnpoint, + RIGHTARG = tnpoint, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant + *****************************************************************************/ + +CREATE FUNCTION NearestApproachInstant(geometry, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'NAI_geo_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION NearestApproachInstant(tnpoint, geometry) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'NAI_tnpoint_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION NearestApproachInstant(npoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'NAI_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION NearestApproachInstant(tnpoint, npoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'NAI_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION NearestApproachInstant(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'NAI_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Nearest approach distance + *****************************************************************************/ + +CREATE FUNCTION nearestApproachDistance(geometry, tnpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tnpoint, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnpoint_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tnpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tnpoint, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnpoint_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION NearestApproachDistance(npoint, tnpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_npoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION NearestApproachDistance(tnpoint, npoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnpoint_npoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tnpoint, tnpoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnpoint_tnpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = tnpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tnpoint, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tnpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tnpoint, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = npoint, RIGHTARG = tnpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tnpoint, RIGHTARG = npoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tnpoint, RIGHTARG = tnpoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/095_tnpoint_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/095_tnpoint_aggfuncs.in.sql new file mode 100644 index 00000000..e10f8eb8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/095_tnpoint_aggfuncs.in.sql @@ -0,0 +1,171 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal network points + */ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tnpoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tnpoint) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, tnpoint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(tnpoint, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION tcentroid_transfn(internal, tnpoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnpoint_tcentroid_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcentroid(tnpoint) ( + SFUNC = tcentroid_transfn, + STYPE = internal, + COMBINEFUNC = tcentroid_combinefn, + FINALFUNC = tcentroid_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tnpoint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tnpoint_tagg_finalfn(internal) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(tnpoint) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tnpoint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tnpoint, tnpoint, + interp text DEFAULT NULL) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tnpoint, tnpoint, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tnpoint) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tnpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tnpoint, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tnpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tnpoint, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tnpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tnpoint, tnpoint) + RETURNS tnpoint + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tnpoint) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tnpoint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/098_tnpoint_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/098_tnpoint_indexes.in.sql new file mode 100644 index 00000000..58d6e157 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/098_tnpoint_indexes.in.sql @@ -0,0 +1,267 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST, Quad-tree SP-GiST, and k-d tree SP-GiST indexes for + * temporal network points + */ + +/******************************************************************************/ + +CREATE FUNCTION tnpoint_gist_consistent(internal, tnpoint, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tnpoint_rtree_ops + DEFAULT FOR TYPE tnpoint USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (tnpoint, stbox), + OPERATOR 1 << (tnpoint, tnpoint), + -- overlaps or left + OPERATOR 2 &< (tnpoint, stbox), + OPERATOR 2 &< (tnpoint, tnpoint), + -- overlaps + OPERATOR 3 && (tnpoint, tstzspan), + OPERATOR 3 && (tnpoint, stbox), + OPERATOR 3 && (tnpoint, tnpoint), + -- overlaps or right + OPERATOR 4 &> (tnpoint, stbox), + OPERATOR 4 &> (tnpoint, tnpoint), + -- strictly right + OPERATOR 5 >> (tnpoint, stbox), + OPERATOR 5 >> (tnpoint, tnpoint), + -- same + OPERATOR 6 ~= (tnpoint, tstzspan), + OPERATOR 6 ~= (tnpoint, stbox), + OPERATOR 6 ~= (tnpoint, tnpoint), + -- contains + OPERATOR 7 @> (tnpoint, tstzspan), + OPERATOR 7 @> (tnpoint, stbox), + OPERATOR 7 @> (tnpoint, tnpoint), + -- contained by + OPERATOR 8 <@ (tnpoint, tstzspan), + OPERATOR 8 <@ (tnpoint, stbox), + OPERATOR 8 <@ (tnpoint, tnpoint), + -- overlaps or below + OPERATOR 9 &<| (tnpoint, stbox), + OPERATOR 9 &<| (tnpoint, tnpoint), + -- strictly below + OPERATOR 10 <<| (tnpoint, stbox), + OPERATOR 10 <<| (tnpoint, tnpoint), + -- strictly above + OPERATOR 11 |>> (tnpoint, stbox), + OPERATOR 11 |>> (tnpoint, tnpoint), + -- overlaps or above + OPERATOR 12 |&> (tnpoint, stbox), + OPERATOR 12 |&> (tnpoint, tnpoint), + -- adjacent + OPERATOR 17 -|- (tnpoint, tstzspan), + OPERATOR 17 -|- (tnpoint, stbox), + OPERATOR 17 -|- (tnpoint, tnpoint), + -- nearest approach distance +-- OPERATOR 25 |=| (tnpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tnpoint, tstzspan), + OPERATOR 28 &<# (tnpoint, stbox), + OPERATOR 28 &<# (tnpoint, tnpoint), + -- strictly before + OPERATOR 29 <<# (tnpoint, tstzspan), + OPERATOR 29 <<# (tnpoint, stbox), + OPERATOR 29 <<# (tnpoint, tnpoint), + -- strictly after + OPERATOR 30 #>> (tnpoint, tstzspan), + OPERATOR 30 #>> (tnpoint, stbox), + OPERATOR 30 #>> (tnpoint, tnpoint), + -- overlaps or after + OPERATOR 31 #&> (tnpoint, tstzspan), + OPERATOR 31 #&> (tnpoint, stbox), + OPERATOR 31 #&> (tnpoint, tnpoint), + -- functions + FUNCTION 1 tnpoint_gist_consistent(internal, tnpoint, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal); +-- FUNCTION 8 gist_tnpoint_distance(internal, tnpoint, smallint, oid, internal), + +/******************************************************************************/ + +CREATE OPERATOR CLASS tnpoint_quadtree_ops + DEFAULT FOR TYPE tnpoint USING spgist AS + -- strictly left + OPERATOR 1 << (tnpoint, stbox), + OPERATOR 1 << (tnpoint, tnpoint), + -- overlaps or left + OPERATOR 2 &< (tnpoint, stbox), + OPERATOR 2 &< (tnpoint, tnpoint), + -- overlaps + OPERATOR 3 && (tnpoint, tstzspan), + OPERATOR 3 && (tnpoint, stbox), + OPERATOR 3 && (tnpoint, tnpoint), + -- overlaps or right + OPERATOR 4 &> (tnpoint, stbox), + OPERATOR 4 &> (tnpoint, tnpoint), + -- strictly right + OPERATOR 5 >> (tnpoint, stbox), + OPERATOR 5 >> (tnpoint, tnpoint), + -- same + OPERATOR 6 ~= (tnpoint, tstzspan), + OPERATOR 6 ~= (tnpoint, stbox), + OPERATOR 6 ~= (tnpoint, tnpoint), + -- contains + OPERATOR 7 @> (tnpoint, tstzspan), + OPERATOR 7 @> (tnpoint, stbox), + OPERATOR 7 @> (tnpoint, tnpoint), + -- contained by + OPERATOR 8 <@ (tnpoint, tstzspan), + OPERATOR 8 <@ (tnpoint, stbox), + OPERATOR 8 <@ (tnpoint, tnpoint), + -- overlaps or below + OPERATOR 9 &<| (tnpoint, stbox), + OPERATOR 9 &<| (tnpoint, tnpoint), + -- strictly below + OPERATOR 10 <<| (tnpoint, stbox), + OPERATOR 10 <<| (tnpoint, tnpoint), + -- strictly above + OPERATOR 11 |>> (tnpoint, stbox), + OPERATOR 11 |>> (tnpoint, tnpoint), + -- overlaps or above + OPERATOR 12 |&> (tnpoint, stbox), + OPERATOR 12 |&> (tnpoint, tnpoint), + -- adjacent + OPERATOR 17 -|- (tnpoint, tstzspan), + OPERATOR 17 -|- (tnpoint, stbox), + OPERATOR 17 -|- (tnpoint, tnpoint), + -- nearest approach distance +-- OPERATOR 25 |=| (tnpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tnpoint, tstzspan), + OPERATOR 28 &<# (tnpoint, stbox), + OPERATOR 28 &<# (tnpoint, tnpoint), + -- strictly before + OPERATOR 29 <<# (tnpoint, tstzspan), + OPERATOR 29 <<# (tnpoint, stbox), + OPERATOR 29 <<# (tnpoint, tnpoint), + -- strictly after + OPERATOR 30 #>> (tnpoint, tstzspan), + OPERATOR 30 #>> (tnpoint, stbox), + OPERATOR 30 #>> (tnpoint, tnpoint), + -- overlaps or after + OPERATOR 31 #&> (tnpoint, tstzspan), + OPERATOR 31 #&> (tnpoint, stbox), + OPERATOR 31 #&> (tnpoint, tnpoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tnpoint_kdtree_ops + FOR TYPE tnpoint USING spgist AS + -- strictly left + OPERATOR 1 << (tnpoint, stbox), + OPERATOR 1 << (tnpoint, tnpoint), + -- overlaps or left + OPERATOR 2 &< (tnpoint, stbox), + OPERATOR 2 &< (tnpoint, tnpoint), + -- overlaps + OPERATOR 3 && (tnpoint, tstzspan), + OPERATOR 3 && (tnpoint, stbox), + OPERATOR 3 && (tnpoint, tnpoint), + -- overlaps or right + OPERATOR 4 &> (tnpoint, stbox), + OPERATOR 4 &> (tnpoint, tnpoint), + -- strictly right + OPERATOR 5 >> (tnpoint, stbox), + OPERATOR 5 >> (tnpoint, tnpoint), + -- same + OPERATOR 6 ~= (tnpoint, tstzspan), + OPERATOR 6 ~= (tnpoint, stbox), + OPERATOR 6 ~= (tnpoint, tnpoint), + -- contains + OPERATOR 7 @> (tnpoint, tstzspan), + OPERATOR 7 @> (tnpoint, stbox), + OPERATOR 7 @> (tnpoint, tnpoint), + -- contained by + OPERATOR 8 <@ (tnpoint, tstzspan), + OPERATOR 8 <@ (tnpoint, stbox), + OPERATOR 8 <@ (tnpoint, tnpoint), + -- overlaps or below + OPERATOR 9 &<| (tnpoint, stbox), + OPERATOR 9 &<| (tnpoint, tnpoint), + -- strictly below + OPERATOR 10 <<| (tnpoint, stbox), + OPERATOR 10 <<| (tnpoint, tnpoint), + -- strictly above + OPERATOR 11 |>> (tnpoint, stbox), + OPERATOR 11 |>> (tnpoint, tnpoint), + -- overlaps or above + OPERATOR 12 |&> (tnpoint, stbox), + OPERATOR 12 |&> (tnpoint, tnpoint), + -- adjacent + OPERATOR 17 -|- (tnpoint, tstzspan), + OPERATOR 17 -|- (tnpoint, stbox), + OPERATOR 17 -|- (tnpoint, tnpoint), + -- nearest approach distance +-- OPERATOR 25 |=| (tnpoint, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tnpoint, tstzspan), + OPERATOR 28 &<# (tnpoint, stbox), + OPERATOR 28 &<# (tnpoint, tnpoint), + -- strictly before + OPERATOR 29 <<# (tnpoint, tstzspan), + OPERATOR 29 <<# (tnpoint, stbox), + OPERATOR 29 <<# (tnpoint, tnpoint), + -- strictly after + OPERATOR 30 #>> (tnpoint, tstzspan), + OPERATOR 30 #>> (tnpoint, stbox), + OPERATOR 30 #>> (tnpoint, tnpoint), + -- overlaps or after + OPERATOR 31 #&> (tnpoint, tstzspan), + OPERATOR 31 #&> (tnpoint, stbox), + OPERATOR 31 #&> (tnpoint, tnpoint), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/CMakeLists.txt new file mode 100644 index 00000000..c67c17e5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/npoint/CMakeLists.txt @@ -0,0 +1,24 @@ +# No Postgres version dependant files + +SET(LOCAL_FILES + 081_npoint + 082_npointset + 083_tnpoint + 085_tnpoint_compops + 087_tnpoint_spatialfuncs + 089_tnpoint_topops + 090_tnpoint_posops + 091_tnpoint_routeops + 092_tnpoint_gin + 093_tnpoint_distance + 095_tnpoint_aggfuncs + 098_tnpoint_indexes + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/100_pose.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/100_pose.in.sql new file mode 100644 index 00000000..f5fc22fd --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/100_pose.in.sql @@ -0,0 +1,346 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for the static pose type + */ + +CREATE TYPE pose; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION pose_in(cstring) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_in' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION pose_out(pose) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Pose_out' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION pose_recv(internal) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_recv' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION pose_send(pose) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Pose_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE pose ( + internallength = variable, + input = pose_in, + output = pose_out, + receive = pose_recv, + send = pose_send, + storage = plain, + alignment = double +); + +/***************************************************************************** + * Input/output from (E)WKT, (E)WKB, and HexEWKB + *****************************************************************************/ + +CREATE FUNCTION poseFromText(text) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION poseFromEWKT(text) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION poseFromBinary(bytea) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION poseFromEWKB(bytea) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION poseFromHexEWKB(text) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asText(pose, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Pose_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(pose[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(pose, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Pose_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(pose[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(pose, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Pose_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(pose, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Pose_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(pose, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Pose_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION pose(double precision, double precision, double precision, + srid integer DEFAULT 0) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION pose(double precision, double precision, double precision, + double precision, double precision, double precision, double precision, + srid integer DEFAULT 0) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION pose(geometry, double precision) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_constructor_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION pose(geometry, double precision, double precision, + double precision, double precision) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_constructor_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Conversions + *****************************************************************************/ + +CREATE FUNCTION geometry(pose) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Pose_to_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (pose AS geometry) WITH FUNCTION geometry(pose); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +CREATE FUNCTION point(pose) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Pose_point' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION rotation(pose) + RETURNS float + AS 'MODULE_PATHNAME', 'Pose_rotation' + LANGUAGE C IMMUTABLE STRICT; + +CREATE TYPE quaternion AS ( + W float, + X float, + Y float, + Z float +); + +CREATE FUNCTION orientation(pose) + RETURNS quaternion + AS 'MODULE_PATHNAME', 'Pose_orientation' + LANGUAGE C IMMUTABLE STRICT; + +/***************************************************************************** + * Modification functions + *****************************************************************************/ + +CREATE FUNCTION round(pose, integer DEFAULT 0) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * SRID functions + *****************************************************************************/ + +CREATE FUNCTION SRID(pose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Pose_srid' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION setSRID(pose, integer) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(pose, integer) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(pose, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS pose + AS 'MODULE_PATHNAME', 'Pose_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION pose_same(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = pose_same, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/****************************************************************************** + * Comparisons + ******************************************************************************/ + +CREATE FUNCTION pose_eq(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_ne(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_lt(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_le(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_ge(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_gt(pose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Pose_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_cmp(pose, pose) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Pose_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + PROCEDURE = pose_eq, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = pose_ne, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = pose_lt, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = pose_le, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarlesel, JOIN = scalarlejoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = pose_ge, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargesel, JOIN = scalargejoinsel +); +CREATE OPERATOR > ( + PROCEDURE = pose_gt, + LEFTARG = pose, RIGHTARG = pose, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS pose_btree_ops + DEFAULT FOR TYPE pose USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 pose_cmp(pose, pose); + +/******************************************************************************/ + +CREATE FUNCTION pose_hash(pose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Pose_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION pose_hash_extended(pose, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Pose_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS pose_hash_ops + DEFAULT FOR TYPE pose USING hash AS + OPERATOR 1 = , + FUNCTION 1 pose_hash(pose), + FUNCTION 2 pose_hash_extended(pose, bigint); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/101_poseset.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/101_poseset.in.sql new file mode 100644 index 00000000..6ce5bf0d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/101_poseset.in.sql @@ -0,0 +1,529 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for set of circular buffers + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE poseset; + +CREATE FUNCTION poseset_in(cstring) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION poseset_out(poseset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION poseset_recv(internal) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION poseset_send(poseset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE poseset ( + internallength = variable, + input = poseset_in, + output = poseset_out, + receive = poseset_recv, + send = poseset_send, + alignment = double, + storage = extended + -- , analyze = geoset_analyze +); + +/******************************************************************************/ + +-- Input/output in WKT, WKB, and HexWKB representation + +CREATE FUNCTION posesetFromText(text) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION posesetFromEWKT(text) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Spatialset_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION posesetFromBinary(bytea) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION posesetFromEWKB(bytea) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION posesetFromHexWKB(text) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(poseset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(poseset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(poseset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKB(poseset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spatialset_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(poseset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION set(pose[]) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION set(pose) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (pose AS poseset) WITH FUNCTION set(pose); + +CREATE FUNCTION stbox(poseset) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Spatialset_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (poseset AS stbox) WITH FUNCTION stbox(poseset); + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION round(poseset, integer DEFAULT 0) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION memSize(poseset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numValues(poseset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(poseset) + RETURNS pose + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(poseset) + RETURNS pose + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(poseset, integer) + RETURNS pose + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getValues(poseset) + RETURNS pose[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * SRID + ******************************************************************************/ + +CREATE FUNCTION SRID(poseset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spatialset_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(poseset, integer) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Spatialset_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(poseset, integer) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Spatialset_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(poseset, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Spatialset_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation set of values <-> set + ******************************************************************************/ + +CREATE FUNCTION unnest(poseset) + RETURNS SETOF pose + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, pose) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, poseset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION poseset_union_finalfn(internal) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE setUnion(pose) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = poseset_union_finalfn +); +CREATE AGGREGATE setUnion(poseset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = poseset_union_finalfn +); + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION set_eq(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(poseset, poseset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(poseset, poseset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >= + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = > + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = < + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = poseset, RIGHTARG = poseset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <= + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS poseset_btree_ops + DEFAULT FOR TYPE poseset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(poseset, poseset); + +/******************************************************************************/ + +CREATE FUNCTION set_hash(poseset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(poseset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS poseset_hash_ops + DEFAULT FOR TYPE poseset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(poseset), + FUNCTION 2 set_hash_extended(poseset, bigint); + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION set_contains(poseset, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(poseset, poseset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = poseset, RIGHTARG = pose, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = <@ + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_contained(pose, poseset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(poseset, poseset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = pose, RIGHTARG = poseset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = @> + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overlaps(poseset, poseset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = && + -- RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION set_union(pose, poseset) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(poseset, pose) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(poseset, poseset) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = pose, RIGHTARG = poseset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = poseset, RIGHTARG = pose, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION set_minus(pose, poseset) + RETURNS pose + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(poseset, pose) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(poseset, poseset) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = pose, RIGHTARG = poseset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = poseset, RIGHTARG = pose +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = poseset, RIGHTARG = poseset +); + +/*****************************************************************************/ + +CREATE FUNCTION set_intersection(pose, poseset) + RETURNS pose + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(poseset, pose) + RETURNS pose + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(poseset, poseset) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = pose, RIGHTARG = poseset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = poseset, RIGHTARG = pose, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = * +); + +/*****************************************************************************/ + +CREATE FUNCTION set_distance(pose, poseset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(poseset, pose) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(poseset, poseset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = pose, RIGHTARG = poseset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = poseset, RIGHTARG = pose, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = poseset, RIGHTARG = poseset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/102_tpose.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/102_tpose.in.sql new file mode 100644 index 00000000..20fc6d30 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/102_tpose.in.sql @@ -0,0 +1,703 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal poses + */ + +CREATE TYPE tpose; + +/****************************************************************************** + * Input/output + ******************************************************************************/ + +CREATE FUNCTION tpose_in(cstring, oid, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tpose_in' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION tpose_out(tpose) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION tpose_recv(internal, oid, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION tpose_send(tpose) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION tpose_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tpose_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tpose ( + internallength = variable, + input = tpose_in, + output = tpose_out, + receive = tpose_recv, + send = tpose_send, + typmod_in = tpose_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tpose(tpose, integer) + RETURNS tpose + AS 'MODULE_PATHNAME','Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tpose AS tpose) WITH FUNCTION tpose(tpose, integer) AS IMPLICIT; + + /***************************************************************************** + * Input/output from (E)WKT, (E)WKB, HexEWKB, and MFJSON representation + *****************************************************************************/ + +CREATE FUNCTION tposeFromText(text) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeFromEWKT(text) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tspatial_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeFromMFJSON(text) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeFromBinary(bytea) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeFromEWKB(bytea) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeFromHexEWKB(text) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asText(tpose, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tpose[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(tpose, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(tpose[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asMFJSON(tpose, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tpose, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(tpose, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(tpose, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION tpose(pose, timestamptz) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tpose(pose, tstzset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tpose(pose, tstzspan, text DEFAULT 'linear') + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tpose(pose, tstzspanset, text DEFAULT 'linear') + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tposeSeq(tpose[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tposeSeqSet(tpose[]) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tposeSeqSetGaps(tpose[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'step') + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/****************************************************************************** + * Conversions + ******************************************************************************/ + +CREATE FUNCTION timeSpan(tpose) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeompoint(tpose) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Tpose_to_tgeompoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tpose AS tstzspan) WITH FUNCTION timeSpan(tpose); +CREATE CAST (tpose AS tgeompoint) WITH FUNCTION tgeompoint(tpose); + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ +-- Specific accessors for temporal poses + +CREATE FUNCTION points(tpose) + RETURNS geomset + AS 'MODULE_PATHNAME', 'Tpose_points' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION rotation(tpose) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tpose_rotation' + LANGUAGE C IMMUTABLE STRICT; + +-- CREATE FUNCTION orientation(tpose) + -- RETURNS quaternion[] + -- AS 'MODULE_PATHNAME', 'Tpose_orientation' + -- LANGUAGE C IMMUTABLE STRICT; + +/******************************************************************************/ +-- Accessors for all temporal types + +CREATE FUNCTION tempSubtype(tpose) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tpose) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(tpose) + RETURNS pose + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getTimestamp(tpose) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- values is a reserved word in SQL +CREATE FUNCTION getValues(tpose) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tpose) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tpose) + RETURNS pose + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tpose) + RETURNS pose + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tpose, int) + RETURNS pose + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tpose, timestamptz) + RETURNS pose + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tpose, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tpose, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tpose) + RETURNS tpose[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tpose) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tpose) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tpose, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tpose) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tpose, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tpose) + RETURNS tpose[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tpose) + RETURNS tpose[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation functions + ******************************************************************************/ + +CREATE FUNCTION tposeInst(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tposeSeq(tpose, text DEFAULT NULL) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tposeSeqSet(tpose, text DEFAULT NULL) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tpose, text) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tpose, integer DEFAULT 0) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tpose[], integer DEFAULT 0) + RETURNS tpose[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftTime(tpose, interval) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tpose, interval) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tpose, interval, interval) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction Functions + *****************************************************************************/ + +CREATE FUNCTION atValues(tpose, pose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tpose, pose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tpose, poseset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tpose, poseset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tpose, timestamptz) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tpose, timestamptz) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tpose, tstzset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tpose, tstzset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tpose, tstzspan) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tpose, tstzspan) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tpose, tstzspanset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tpose, tstzspanset) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tpose, timestamptz, strict bool DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tpose, timestamptz, strict bool DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE TYPE pose_tstzspanset AS ( + value pose, + time tstzspanset +); + +CREATE FUNCTION unnest(tpose) + RETURNS SETOF pose_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stop Function + *****************************************************************************/ + +CREATE FUNCTION stops(tpose, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tpose, tpose, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tpose, tpose, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tpose, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tpose, tstzset, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tpose, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tpose, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION merge(tpose[]) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE time_tpose AS ( + time timestamptz, + temp tpose +); + +CREATE FUNCTION timeSplit(tpose, bin_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_tpose + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tpose, tpose) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tpose, tpose) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS tpose_btree_ops + DEFAULT FOR TYPE tpose USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tpose, tpose); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tpose_hash_ops + DEFAULT FOR TYPE tpose USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tpose); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/104_tpose_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/104_tpose_compops.in.sql new file mode 100644 index 00000000..298da786 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/104_tpose_compops.in.sql @@ -0,0 +1,248 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Ever/always and temporal comparison functions and operators for + * temporal poses + */ + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(pose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_pose_tpose' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(pose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_pose_tpose' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = pose, RIGHTARG = tpose, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = pose, RIGHTARG = tpose, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(pose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(pose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = pose, RIGHTARG = tpose, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = pose, RIGHTARG = tpose, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tpose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_tpose_pose' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tpose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_tpose_pose' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tpose, RIGHTARG = pose, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tpose, RIGHTARG = pose, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tpose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_tpose_pose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tpose, pose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_tpose_pose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tpose, RIGHTARG = pose, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tpose, RIGHTARG = pose, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_temporal' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_temporal' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal equal + *****************************************************************************/ + +CREATE FUNCTION temporal_teq(pose, tpose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tpose, pose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_tpose_pose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tpose, tpose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = pose, RIGHTARG = tpose, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tpose, RIGHTARG = pose, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal not equal + *****************************************************************************/ + +CREATE FUNCTION temporal_tne(pose, tpose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tpose, pose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_tpose_pose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tpose, tpose) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = pose, RIGHTARG = tpose, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tpose, RIGHTARG = pose, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = #<> +); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/105_tpose_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/105_tpose_spatialfuncs.in.sql new file mode 100644 index 00000000..52460d9d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/105_tpose_spatialfuncs.in.sql @@ -0,0 +1,84 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial functions for temporal poses + */ + +/***************************************************************************** + * SRID + *****************************************************************************/ + +CREATE FUNCTION SRID(tpose) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(tpose, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(tpose, integer) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(tpose, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * AtGeometry and MinusGeometry + *****************************************************************************/ + +CREATE FUNCTION atGeometry(tpose, geometry) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tpose_at_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusGeometry(tpose, geometry) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tpose_minus_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atStbox(tpose, stbox, bool DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tpose_at_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusStbox(tpose, stbox, bool DEFAULT TRUE) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Tpose_minus_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/108_tpose_topops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/108_tpose_topops.in.sql new file mode 100644 index 00000000..c7df6ef5 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/108_tpose_topops.in.sql @@ -0,0 +1,379 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box operators for temporal poses + */ + +/***************************************************************************** + * Temporal pose to stbox + *****************************************************************************/ + +CREATE FUNCTION stbox(pose) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Pose_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(pose, timestamptz) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Pose_timestamptz_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(pose, tstzspan) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Pose_tstzspan_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stbox(tpose) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (pose AS stbox) WITH FUNCTION stbox(pose); +CREATE CAST (tpose AS stbox) WITH FUNCTION stbox(tpose); + +/*****************************************************************************/ + +CREATE FUNCTION expandSpace(tpose, float) + RETURNS stbox + AS 'SELECT @extschema@.expandSpace($1::stbox, $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tpose, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tpose, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = tpose, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contains(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tpose, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tpose, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tpose, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = tpose, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contained(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tpose, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tpose, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tpose, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = tpose, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_overlaps(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tpose, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tpose, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tpose, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = tpose, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_same(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tpose, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tpose, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tpose, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = tpose, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_adjacent(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tpose, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tpose, RIGHTARG = tpose, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/109_tpose_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/109_tpose_posops.in.sql new file mode 100644 index 00000000..2554216c --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/109_tpose_posops.in.sql @@ -0,0 +1,601 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for temporal poses + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tpose */ + +CREATE FUNCTION temporal_before(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tpose, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tpose, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tpose, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tpose, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_back, + COMMUTATOR = < ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * tpose + *****************************************************************************/ + +/* tpose op tstzspan */ + +CREATE FUNCTION temporal_before(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tpose, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tpose, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tpose, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tpose, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tpose, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* tpose op stbox */ + +CREATE FUNCTION temporal_left(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tpose, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_back, + COMMUTATOR = '< ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* tpose op tpose */ + +CREATE FUNCTION temporal_left(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_front(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Front_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overfront(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overfront_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_back(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Back_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overback(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overback_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tpose, tpose) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_back, + COMMUTATOR = '< ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overback, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/111_tpose_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/111_tpose_aggfuncs.in.sql new file mode 100644 index 00000000..ae09b4e8 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/111_tpose_aggfuncs.in.sql @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal poses + */ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tpose) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tpose) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, tpose, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(tpose, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tpose) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tpose_tagg_finalfn(internal) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(tpose) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tpose_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tpose, tpose, + interp text DEFAULT NULL) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(tpose, tpose, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tpose) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tpose, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tpose, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tpose, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tpose, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = tpose, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tpose) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tpose, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/113_tpose_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/113_tpose_distance.in.sql new file mode 100644 index 00000000..88c44176 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/113_tpose_distance.in.sql @@ -0,0 +1,218 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal distance for temporal poses + */ + +CREATE FUNCTION tDistance(geometry(Point), tpose) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_point_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(pose, tpose) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tpose, geometry(Point)) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tpose_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tpose, pose) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tpose_pose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tpose, tpose) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tpose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = geometry, + RIGHTARG = tpose, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = pose, + RIGHTARG = tpose, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tpose, + RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tpose, + RIGHTARG = pose, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tpose, + RIGHTARG = tpose, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant/distance and shortest line functions + *****************************************************************************/ + +CREATE FUNCTION nearestApproachInstant(geometry, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'NAI_geo_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(stbox, tpose) + RETURNS tpose + AS 'SELECT @extschema@.nearestApproachInstant(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(pose, tpose) + RETURNS tpose + AS 'SELECT @extschema@.nearestApproachInstant(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tpose, geometry) + RETURNS tpose + AS 'MODULE_PATHNAME', 'NAI_tpose_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tpose, stbox) + RETURNS tpose + AS 'SELECT @extschema@.nearestApproachInstant($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tpose, pose) + RETURNS tpose + AS 'SELECT @extschema@.nearestApproachInstant($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(tpose, tpose) + RETURNS tpose + AS 'MODULE_PATHNAME', 'NAI_tpose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION nearestApproachDistance(geometry, tpose) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, tpose) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(pose, tpose) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_pose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tpose, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tpose_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tpose, stbox) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tpose, pose) + RETURNS float + AS 'SELECT @extschema@.nearestApproachDistance($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tpose, tpose) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tpose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = tpose, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tpose, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = tpose, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tpose, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = pose, RIGHTARG = tpose, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tpose, RIGHTARG = pose, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tpose, RIGHTARG = tpose, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +/*****************************************************************************/ + +CREATE FUNCTION shortestLine(geometry, tpose) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(stbox, tpose) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(pose, tpose) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine(geometry($1), $2)' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tpose, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tpose_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tpose, stbox) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tpose, pose) + RETURNS geometry + AS 'SELECT @extschema@.shortestLine($1, geometry($2))' + LANGUAGE SQL IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION shortestLine(tpose, tpose) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tpose_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/114_tpose_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/114_tpose_indexes.in.sql new file mode 100644 index 00000000..3e6a1fe4 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/114_tpose_indexes.in.sql @@ -0,0 +1,266 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST and SP-GiST indexes for temporal poses + */ + +/******************************************************************************/ + +CREATE FUNCTION tpose_gist_consistent(internal, tpose, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tpose_rtree_ops + DEFAULT FOR TYPE tpose USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (tpose, stbox), + OPERATOR 1 << (tpose, tpose), + -- overlaps or left + OPERATOR 2 &< (tpose, stbox), + OPERATOR 2 &< (tpose, tpose), + -- overlaps + OPERATOR 3 && (tpose, tstzspan), + OPERATOR 3 && (tpose, stbox), + OPERATOR 3 && (tpose, tpose), + -- overlaps or right + OPERATOR 4 &> (tpose, stbox), + OPERATOR 4 &> (tpose, tpose), + -- strictly right + OPERATOR 5 >> (tpose, stbox), + OPERATOR 5 >> (tpose, tpose), + -- same + OPERATOR 6 ~= (tpose, tstzspan), + OPERATOR 6 ~= (tpose, stbox), + OPERATOR 6 ~= (tpose, tpose), + -- contains + OPERATOR 7 @> (tpose, tstzspan), + OPERATOR 7 @> (tpose, stbox), + OPERATOR 7 @> (tpose, tpose), + -- contained by + OPERATOR 8 <@ (tpose, tstzspan), + OPERATOR 8 <@ (tpose, stbox), + OPERATOR 8 <@ (tpose, tpose), + -- overlaps or below + OPERATOR 9 &<| (tpose, stbox), + OPERATOR 9 &<| (tpose, tpose), + -- strictly below + OPERATOR 10 <<| (tpose, stbox), + OPERATOR 10 <<| (tpose, tpose), + -- strictly above + OPERATOR 11 |>> (tpose, stbox), + OPERATOR 11 |>> (tpose, tpose), + -- overlaps or above + OPERATOR 12 |&> (tpose, stbox), + OPERATOR 12 |&> (tpose, tpose), + -- adjacent + OPERATOR 17 -|- (tpose, tstzspan), + OPERATOR 17 -|- (tpose, stbox), + OPERATOR 17 -|- (tpose, tpose), + -- nearest approach distance +-- OPERATOR 25 |=| (tpose, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tpose, tstzspan), + OPERATOR 28 &<# (tpose, stbox), + OPERATOR 28 &<# (tpose, tpose), + -- strictly before + OPERATOR 29 <<# (tpose, tstzspan), + OPERATOR 29 <<# (tpose, stbox), + OPERATOR 29 <<# (tpose, tpose), + -- strictly after + OPERATOR 30 #>> (tpose, tstzspan), + OPERATOR 30 #>> (tpose, stbox), + OPERATOR 30 #>> (tpose, tpose), + -- overlaps or after + OPERATOR 31 #&> (tpose, tstzspan), + OPERATOR 31 #&> (tpose, stbox), + OPERATOR 31 #&> (tpose, tpose), + -- functions + FUNCTION 1 tpose_gist_consistent(internal, tpose, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal); +-- FUNCTION 8 gist_tpose_distance(internal, tpose, smallint, oid, internal), + +/******************************************************************************/ + +CREATE OPERATOR CLASS tpose_quadtree_ops + DEFAULT FOR TYPE tpose USING spgist AS + -- strictly left + OPERATOR 1 << (tpose, stbox), + OPERATOR 1 << (tpose, tpose), + -- overlaps or left + OPERATOR 2 &< (tpose, stbox), + OPERATOR 2 &< (tpose, tpose), + -- overlaps + OPERATOR 3 && (tpose, tstzspan), + OPERATOR 3 && (tpose, stbox), + OPERATOR 3 && (tpose, tpose), + -- overlaps or right + OPERATOR 4 &> (tpose, stbox), + OPERATOR 4 &> (tpose, tpose), + -- strictly right + OPERATOR 5 >> (tpose, stbox), + OPERATOR 5 >> (tpose, tpose), + -- same + OPERATOR 6 ~= (tpose, tstzspan), + OPERATOR 6 ~= (tpose, stbox), + OPERATOR 6 ~= (tpose, tpose), + -- contains + OPERATOR 7 @> (tpose, tstzspan), + OPERATOR 7 @> (tpose, stbox), + OPERATOR 7 @> (tpose, tpose), + -- contained by + OPERATOR 8 <@ (tpose, tstzspan), + OPERATOR 8 <@ (tpose, stbox), + OPERATOR 8 <@ (tpose, tpose), + -- overlaps or below + OPERATOR 9 &<| (tpose, stbox), + OPERATOR 9 &<| (tpose, tpose), + -- strictly below + OPERATOR 10 <<| (tpose, stbox), + OPERATOR 10 <<| (tpose, tpose), + -- strictly above + OPERATOR 11 |>> (tpose, stbox), + OPERATOR 11 |>> (tpose, tpose), + -- overlaps or above + OPERATOR 12 |&> (tpose, stbox), + OPERATOR 12 |&> (tpose, tpose), + -- adjacent + OPERATOR 17 -|- (tpose, tstzspan), + OPERATOR 17 -|- (tpose, stbox), + OPERATOR 17 -|- (tpose, tpose), + -- nearest approach distance +-- OPERATOR 25 |=| (tpose, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tpose, tstzspan), + OPERATOR 28 &<# (tpose, stbox), + OPERATOR 28 &<# (tpose, tpose), + -- strictly before + OPERATOR 29 <<# (tpose, tstzspan), + OPERATOR 29 <<# (tpose, stbox), + OPERATOR 29 <<# (tpose, tpose), + -- strictly after + OPERATOR 30 #>> (tpose, tstzspan), + OPERATOR 30 #>> (tpose, stbox), + OPERATOR 30 #>> (tpose, tpose), + -- overlaps or after + OPERATOR 31 #&> (tpose, tstzspan), + OPERATOR 31 #&> (tpose, stbox), + OPERATOR 31 #&> (tpose, tpose), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tpose_kdtree_ops + FOR TYPE tpose USING spgist AS + -- strictly left + OPERATOR 1 << (tpose, stbox), + OPERATOR 1 << (tpose, tpose), + -- overlaps or left + OPERATOR 2 &< (tpose, stbox), + OPERATOR 2 &< (tpose, tpose), + -- overlaps + OPERATOR 3 && (tpose, tstzspan), + OPERATOR 3 && (tpose, stbox), + OPERATOR 3 && (tpose, tpose), + -- overlaps or right + OPERATOR 4 &> (tpose, stbox), + OPERATOR 4 &> (tpose, tpose), + -- strictly right + OPERATOR 5 >> (tpose, stbox), + OPERATOR 5 >> (tpose, tpose), + -- same + OPERATOR 6 ~= (tpose, tstzspan), + OPERATOR 6 ~= (tpose, stbox), + OPERATOR 6 ~= (tpose, tpose), + -- contains + OPERATOR 7 @> (tpose, tstzspan), + OPERATOR 7 @> (tpose, stbox), + OPERATOR 7 @> (tpose, tpose), + -- contained by + OPERATOR 8 <@ (tpose, tstzspan), + OPERATOR 8 <@ (tpose, stbox), + OPERATOR 8 <@ (tpose, tpose), + -- overlaps or below + OPERATOR 9 &<| (tpose, stbox), + OPERATOR 9 &<| (tpose, tpose), + -- strictly below + OPERATOR 10 <<| (tpose, stbox), + OPERATOR 10 <<| (tpose, tpose), + -- strictly above + OPERATOR 11 |>> (tpose, stbox), + OPERATOR 11 |>> (tpose, tpose), + -- overlaps or above + OPERATOR 12 |&> (tpose, stbox), + OPERATOR 12 |&> (tpose, tpose), + -- adjacent + OPERATOR 17 -|- (tpose, tstzspan), + OPERATOR 17 -|- (tpose, stbox), + OPERATOR 17 -|- (tpose, tpose), + -- nearest approach distance +-- OPERATOR 25 |=| (tpose, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tpose, tstzspan), + OPERATOR 28 &<# (tpose, stbox), + OPERATOR 28 &<# (tpose, tpose), + -- strictly before + OPERATOR 29 <<# (tpose, tstzspan), + OPERATOR 29 <<# (tpose, stbox), + OPERATOR 29 <<# (tpose, tpose), + -- strictly after + OPERATOR 30 #>> (tpose, tstzspan), + OPERATOR 30 #>> (tpose, stbox), + OPERATOR 30 #>> (tpose, tpose), + -- overlaps or after + OPERATOR 31 #&> (tpose, tstzspan), + OPERATOR 31 #&> (tpose, stbox), + OPERATOR 31 #&> (tpose, tpose), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/CMakeLists.txt new file mode 100644 index 00000000..a59f998d --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/pose/CMakeLists.txt @@ -0,0 +1,20 @@ +SET(LOCAL_FILES + 100_pose + 101_poseset + 102_tpose + 104_tpose_compops + 105_tpose_spatialfuncs + 108_tpose_topops + 109_tpose_posops + 111_tpose_aggfuncs + 113_tpose_distance + 114_tpose_indexes + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/122_trgeo.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/122_trgeo.in.sql new file mode 100644 index 00000000..aa5be6ea --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/122_trgeo.in.sql @@ -0,0 +1,704 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal rigid geometries + */ + +CREATE TYPE trgeometry; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION trgeometry_in(cstring, oid, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_in' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION trgeometry_out(trgeometry) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Trgeometry_out' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION trgeometry_recv(internal) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_recv' + LANGUAGE C IMMUTABLE STRICT; +CREATE FUNCTION trgeometry_send(trgeometry) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Trgeometry_send' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION trgeo_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Trgeometry_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE trgeometry ( + internallength = variable, + input = trgeometry_in, + output = trgeometry_out, + receive = trgeometry_recv, + send = trgeometry_send, + typmod_in = trgeo_typmod_in, + typmod_out = tspatial_typmod_out, + storage = extended, + alignment = double, + analyze = tspatial_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION trgeometry(trgeometry, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME','Tspatial_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (trgeometry AS trgeometry) WITH FUNCTION trgeometry(trgeometry, integer) AS IMPLICIT; + +/***************************************************************************** + * Input/output from (E)WKT, (E)WKB, HexEWKB, and MFJSON representation + *****************************************************************************/ + +CREATE FUNCTION trgeometryFromText(text) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometryFromEWKT(text) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_from_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometryFromMFJSON(text) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometryFromBinary(bytea) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometryFromEWKB(bytea) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometryFromHexEWKB(text) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION asText(trgeometry, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Trgeometry_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(trgeometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKT(trgeometry, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Trgeometry_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asEWKT(trgeometry[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Spatialarr_as_ewkt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asMFJSON(trgeometry, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(trgeometry, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asEWKB(trgeometry, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tspatial_as_ewkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexEWKB(trgeometry, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructors + ******************************************************************************/ + +CREATE FUNCTION trgeometry(geometry, pose, timestamptz) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_inst_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometrySeq(trgeometry[], text DEFAULT 'linear', + lower_inc boolean DEFAULT true, upper_inc boolean DEFAULT true) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_seq_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trgeometrySeqSet(trgeometry[]) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_seqset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION trgeometrySeqSetGaps(trgeometry[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_seqset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION trgeometry(geometry, tpose) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION timeSpan(trgeometry) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (trgeometry AS tstzspan) WITH FUNCTION timeSpan(trgeometry); + +CREATE FUNCTION tpose(trgeometry) + RETURNS tpose + AS 'MODULE_PATHNAME', 'Trgeometry_to_tpose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tgeompoint(trgeometry) + RETURNS tgeompoint + AS 'MODULE_PATHNAME', 'Trgeometry_to_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (trgeometry AS tpose) WITH FUNCTION tpose(trgeometry); +CREATE CAST (trgeometry AS tgeompoint) WITH FUNCTION tgeompoint(trgeometry); + +CREATE FUNCTION stbox(trgeometry) + RETURNS stbox + AS 'MODULE_PATHNAME', 'Tspatial_to_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (trgeometry AS stbox) WITH FUNCTION stbox(trgeometry); + +CREATE FUNCTION geometry(trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Trgeometry_to_geom' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (trgeometry AS geometry) WITH FUNCTION geometry(trgeometry); + +/****************************************************************************** + * Accessor Functions + ******************************************************************************/ + +/******************************************************************************/ + +CREATE FUNCTION tempSubtype(trgeometry) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(trgeometry) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(trgeometry) + RETURNS int + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- value is a reserved word in SQL +CREATE FUNCTION getValue(trgeometry) + RETURNS pose + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getTimestamp(trgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getValues(trgeometry) + RETURNS poseset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(trgeometry) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Trgeometry_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Trgeometry_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(trgeometry, int) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Trgeometry_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(trgeometry, timestamptz) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Trgeometry_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(trgeometry, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(trgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(trgeometry, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(trgeometry) + RETURNS trgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(trgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(trgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(trgeometry) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(trgeometry, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(trgeometry) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(trgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(trgeometry, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(trgeometry) + RETURNS trgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(trgeometry) + RETURNS trgeometry[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation functions + ******************************************************************************/ + +CREATE FUNCTION trgeometryInst(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION trgeometrySeq(trgeometry, text DEFAULT NULL) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION trgeometrySeqSet(trgeometry, text DEFAULT NULL) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Trgeometry_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(trgeometry, text) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(trgeometry, integer DEFAULT 0) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(trgeometry[], integer DEFAULT 0) + RETURNS trgeometry[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftTime(trgeometry, interval) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(trgeometry, interval) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(trgeometry, interval, interval) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION tprecision(trgeometry, duration interval, +-- origin timestamptz DEFAULT '2000-01-03') +-- RETURNS trgeometry +-- AS 'MODULE_PATHNAME', 'Temporal_tprecision' +-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION tsample(trgeometry, duration interval, +-- origin timestamptz DEFAULT '2000-01-03') +-- RETURNS trgeometry +-- AS 'MODULE_PATHNAME', 'Temporal_tsample' +-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction Functions + *****************************************************************************/ + +-- CREATE FUNCTION atValues(trgeometry, geometry) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Temporal_at_value' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION minusValues(trgeometry, geometry) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Temporal_minus_value' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION atValues(trgeometry, geomset) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Temporal_at_values' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION minusValues(trgeometry, geomset) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Temporal_minus_values' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(trgeometry, timestamptz) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(trgeometry, timestamptz) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(trgeometry, tstzset) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(trgeometry, tstzset) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(trgeometry, tstzspan) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(trgeometry, tstzspan) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(trgeometry, tstzspanset) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(trgeometry, tstzspanset) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(trgeometry, timestamptz, strict bool DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(trgeometry, timestamptz, strict bool DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Unnest Function + *****************************************************************************/ + +CREATE FUNCTION unnest(trgeometry) + RETURNS SETOF geom_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stops Function + *****************************************************************************/ + +CREATE FUNCTION stops(trgeometry, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(trgeometry, trgeometry, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(trgeometry, trgeometry, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(trgeometry, timestamptz, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(trgeometry, tstzset, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(trgeometry, tstzspan, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(trgeometry, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION merge(trgeometry[]) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Multidimensional tiling + ******************************************************************************/ + +CREATE TYPE time_trgeometry AS ( + time timestamptz, + temp trgeometry +); + +CREATE FUNCTION timeSplit(trgeometry, bucket_width interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS setof time_trgeometry + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(trgeometry, trgeometry) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(trgeometry, trgeometry) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = scalargtsel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS trgeometry_btree_ops + DEFAULT FOR TYPE trgeometry USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(trgeometry, trgeometry); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(trgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS trgeometry_hash_ops + DEFAULT FOR TYPE trgeometry USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(trgeometry); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/124_trgeo_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/124_trgeo_compops.in.sql new file mode 100644 index 00000000..9a95c4cf --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/124_trgeo_compops.in.sql @@ -0,0 +1,247 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Ever, always, and temporal comparisons for temporal rigid geometries + */ + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(geometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_geo_trgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(geometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_geo_trgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = geometry, RIGHTARG = trgeometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = geometry, RIGHTARG = trgeometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(geometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(geometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = geometry, RIGHTARG = trgeometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = geometry, RIGHTARG = trgeometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(trgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_trgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(trgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_trgeo_geo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = trgeometry, RIGHTARG = geometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = trgeometry, RIGHTARG = geometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(trgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(trgeometry, geometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = trgeometry, RIGHTARG = geometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = trgeometry, RIGHTARG = geometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_trgeo_trgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_trgeo_trgeo' + SUPPORT tspatial_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION ever_ne(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Temporal equal + *****************************************************************************/ + +CREATE FUNCTION temporal_teq(geometry, trgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(trgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(trgeometry, trgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = geometry, RIGHTARG = trgeometry, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = trgeometry, RIGHTARG = geometry, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal not equal + *****************************************************************************/ + +CREATE FUNCTION temporal_tne(geometry, trgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(trgeometry, geometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(trgeometry, trgeometry) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = geometry, RIGHTARG = trgeometry, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = trgeometry, RIGHTARG = geometry, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = #<> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/125_trgeo_spatialfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/125_trgeo_spatialfuncs.in.sql new file mode 100644 index 00000000..5acd4453 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/125_trgeo_spatialfuncs.in.sql @@ -0,0 +1,84 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Spatial functions for temporal poses + */ + +/***************************************************************************** + * SRID + *****************************************************************************/ + +CREATE FUNCTION SRID(trgeometry) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tspatial_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION setSRID(trgeometry, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Tspatial_set_srid' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transform(trgeometry, integer) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Tspatial_transform' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION transformPipeline(trgeometry, text, srid integer DEFAULT 0, + is_forward boolean DEFAULT true) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Tspatial_transform_pipeline' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * AtGeometry and MinusGeometry + *****************************************************************************/ + +-- CREATE FUNCTION atGeometry(trgeometry, geometry) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Trgeo_at_geom' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION minusGeometry(trgeometry, geometry) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Trgeo_minus_geom' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION atStbox(trgeometry, stbox, bool DEFAULT TRUE) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Trgeo_at_stbox' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- CREATE FUNCTION minusStbox(trgeometry, stbox, bool DEFAULT TRUE) + -- RETURNS trgeometry + -- AS 'MODULE_PATHNAME', 'Trgeo_minus_stbox' + -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/128_trgeo_topops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/128_trgeo_topops.in.sql new file mode 100644 index 00000000..dc35d3ea --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/128_trgeo_topops.in.sql @@ -0,0 +1,345 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box topological operators for temporal rigid geometries + */ + +/***************************************************************************** + * Contains + *****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = trgeometry, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = trgeometry, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = stbox, RIGHTARG = trgeometry, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contains(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = trgeometry, RIGHTARG = stbox, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = <@, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Contained + *****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = trgeometry, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = trgeometry, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = stbox, RIGHTARG = trgeometry, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_contained(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = trgeometry, RIGHTARG = stbox, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = @>, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Overlaps + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = trgeometry, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = trgeometry, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = stbox, RIGHTARG = trgeometry, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_overlaps(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = trgeometry, RIGHTARG = stbox, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = &&, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * Same + *****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = trgeometry, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = trgeometry, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = stbox, RIGHTARG = trgeometry, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_same(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = trgeometry, RIGHTARG = stbox, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = ~=, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * adjacent + *****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = trgeometry, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = trgeometry, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = stbox, RIGHTARG = trgeometry, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +CREATE FUNCTION temporal_adjacent(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = trgeometry, RIGHTARG = stbox, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = -|-, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/129_trgeo_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/129_trgeo_posops.in.sql new file mode 100644 index 00000000..dc3dd46a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/129_trgeo_posops.in.sql @@ -0,0 +1,487 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding box relative position operators for temporal rigid geomtries + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op trgeometry */ + +CREATE FUNCTION temporal_before(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = trgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = trgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = trgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = trgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * stbox + *****************************************************************************/ + +CREATE FUNCTION temporal_left(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(stbox, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_stbox_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/***************************************************************************** + * trgeometry + *****************************************************************************/ + +/* trgeometry op tstzspan */ + +CREATE FUNCTION temporal_before(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(trgeometry, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = trgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = trgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = trgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = trgeometry, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* trgeometry op stbox */ + +CREATE FUNCTION temporal_left(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(trgeometry, stbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ + +/* trgeometry op trgeometry */ + +CREATE FUNCTION temporal_left(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_below(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Below_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbelow(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbelow_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_above(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Above_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overabove(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overabove_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(trgeometry, trgeometry) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tspatial_tspatial' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_left, + COMMUTATOR = '>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overleft, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_right, + COMMUTATOR = '<<', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overright, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<| ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_below, + COMMUTATOR = '|>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<| ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overbelow, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |>> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_above, + COMMUTATOR = '<<|', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR |&> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overabove, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_before, + COMMUTATOR = '#>>', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overbefore, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_after, + COMMUTATOR = '<<#', + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = temporal_overafter, + RESTRICT = tspatial_sel, JOIN = tspatial_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/131_trgeo_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/131_trgeo_aggfuncs.in.sql new file mode 100644 index 00000000..4d19a736 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/131_trgeo_aggfuncs.in.sql @@ -0,0 +1,155 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for temporal rigid geometries + */ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, trgeometry) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(trgeometry) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION wcount_transfn(internal, trgeometry, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wcount(trgeometry, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, trgeometry) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION trgeometry_tagg_finalfn(internal) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE merge(trgeometry) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = trgeometry_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append tinstant aggregate functions + *****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(trgeometry, trgeometry, + interp text DEFAULT NULL) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tinst_transfn(trgeometry, trgeometry, + interp text DEFAULT NULL, maxdist float DEFAULT NULL, + maxt interval DEFAULT NULL) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(trgeometry) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = trgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(trgeometry, text) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = trgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(trgeometry, text, float, interval) ( + SFUNC = temporal_app_tinst_transfn, + STYPE = trgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(trgeometry) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = trgeometry, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_distance.in.sql new file mode 100644 index 00000000..8f837975 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_distance.in.sql @@ -0,0 +1,200 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal rigid geometries + */ + +/***************************************************************************** + * Distance functions + *****************************************************************************/ + +CREATE FUNCTION tdistance(trgeometry, geometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(geometry, trgeometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(trgeometry, tgeompoint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_trgeo_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(tgeompoint, trgeometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tpoint_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tdistance(trgeometry, trgeometry) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = trgeometry, RIGHTARG = geometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = geometry, RIGHTARG = trgeometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = trgeometry, RIGHTARG = tgeompoint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = tgeompoint, RIGHTARG = trgeometry, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tdistance, + LEFTARG = trgeometry, RIGHTARG = trgeometry, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach instant/distance and shortest line functions + *****************************************************************************/ + +CREATE FUNCTION nearestApproachInstant(trgeometry, geometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'NAI_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(geometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'NAI_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(trgeometry, tgeompoint) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'NAI_trgeo_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +/* TODO: Maybe change output type here. + * Currently we return a trgeometry instant + * even if the left argument is a tgeompoint */ +CREATE FUNCTION nearestApproachInstant(tgeompoint, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'NAI_tpoint_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachInstant(trgeometry, trgeometry) + RETURNS trgeometry + AS 'MODULE_PATHNAME', 'NAI_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION nearestApproachDistance(trgeometry, geometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(geometry, trgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(trgeometry, stbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_trgeo_stbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(stbox, trgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_stbox_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(trgeometry, tgeompoint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_trgeo_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tgeompoint, trgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tpoint_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(trgeometry, trgeometry) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + LEFTARG = trgeometry, RIGHTARG = geometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = geometry, RIGHTARG = trgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = trgeometry, RIGHTARG = stbox, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = stbox, RIGHTARG = trgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = trgeometry, RIGHTARG = tgeompoint, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = tgeompoint, RIGHTARG = trgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); +CREATE OPERATOR |=| ( + LEFTARG = trgeometry, RIGHTARG = trgeometry, + PROCEDURE = nearestApproachDistance, + COMMUTATOR = '|=|' +); + +CREATE FUNCTION shortestLine(trgeometry, geometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_trgeo_geo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(geometry, trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_geo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(trgeometry, tgeompoint) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_trgeo_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(tgeompoint, trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_tpoint_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shortestLine(trgeometry, trgeometry) + RETURNS geometry + AS 'MODULE_PATHNAME', 'Shortestline_trgeo_trgeo' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_vclip.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_vclip.in.sql new file mode 100644 index 00000000..51d92d04 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/133_trgeo_vclip.in.sql @@ -0,0 +1,69 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.  + * + *****************************************************************************/ + +/** + * @file + * @brief V-Clip distance functions for temporal rigid geometries + */ + +/***************************************************************************** + * V-clip functions + *****************************************************************************/ + +CREATE FUNCTION v_clip_poly_point(geometry(Polygon), geometry(Point)) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_poly_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION v_clip_poly_poly(geometry(Polygon), geometry(Polygon)) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_poly_poly' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION v_clip_tpoly_point(trgeometry, geometry(Point), timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_tpoly_point' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION v_clip_tpoly_poly(trgeometry, geometry(Polygon), timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_tpoly_poly' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION v_clip_tpoly_tpoint(trgeometry, tgeompoint, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_tpoly_tpoint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION v_clip_tpoly_tpoly(trgeometry, trgeometry, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'VClip_tpoly_tpoly' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/134_trgeo_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/134_trgeo_indexes.in.sql new file mode 100644 index 00000000..38e14b2f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/134_trgeo_indexes.in.sql @@ -0,0 +1,266 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST and SP-GiST indexes for temporal rigid geometries + */ + +/******************************************************************************/ + +CREATE FUNCTION trgeometry_gist_consistent(internal, trgeometry, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Stbox_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS trgeometry_rtree_ops + DEFAULT FOR TYPE trgeometry USING gist AS + STORAGE stbox, + -- strictly left + OPERATOR 1 << (trgeometry, stbox), + OPERATOR 1 << (trgeometry, trgeometry), + -- overlaps or left + OPERATOR 2 &< (trgeometry, stbox), + OPERATOR 2 &< (trgeometry, trgeometry), + -- overlaps + OPERATOR 3 && (trgeometry, tstzspan), + OPERATOR 3 && (trgeometry, stbox), + OPERATOR 3 && (trgeometry, trgeometry), + -- overlaps or right + OPERATOR 4 &> (trgeometry, stbox), + OPERATOR 4 &> (trgeometry, trgeometry), + -- strictly right + OPERATOR 5 >> (trgeometry, stbox), + OPERATOR 5 >> (trgeometry, trgeometry), + -- same + OPERATOR 6 ~= (trgeometry, tstzspan), + OPERATOR 6 ~= (trgeometry, stbox), + OPERATOR 6 ~= (trgeometry, trgeometry), + -- contains + OPERATOR 7 @> (trgeometry, tstzspan), + OPERATOR 7 @> (trgeometry, stbox), + OPERATOR 7 @> (trgeometry, trgeometry), + -- contained by + OPERATOR 8 <@ (trgeometry, tstzspan), + OPERATOR 8 <@ (trgeometry, stbox), + OPERATOR 8 <@ (trgeometry, trgeometry), + -- overlaps or below + OPERATOR 9 &<| (trgeometry, stbox), + OPERATOR 9 &<| (trgeometry, trgeometry), + -- strictly below + OPERATOR 10 <<| (trgeometry, stbox), + OPERATOR 10 <<| (trgeometry, trgeometry), + -- strictly above + OPERATOR 11 |>> (trgeometry, stbox), + OPERATOR 11 |>> (trgeometry, trgeometry), + -- overlaps or above + OPERATOR 12 |&> (trgeometry, stbox), + OPERATOR 12 |&> (trgeometry, trgeometry), + -- adjacent + OPERATOR 17 -|- (trgeometry, tstzspan), + OPERATOR 17 -|- (trgeometry, stbox), + OPERATOR 17 -|- (trgeometry, trgeometry), + -- nearest approach distance +-- OPERATOR 25 |=| (trgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (trgeometry, tstzspan), + OPERATOR 28 &<# (trgeometry, stbox), + OPERATOR 28 &<# (trgeometry, trgeometry), + -- strictly before + OPERATOR 29 <<# (trgeometry, tstzspan), + OPERATOR 29 <<# (trgeometry, stbox), + OPERATOR 29 <<# (trgeometry, trgeometry), + -- strictly after + OPERATOR 30 #>> (trgeometry, tstzspan), + OPERATOR 30 #>> (trgeometry, stbox), + OPERATOR 30 #>> (trgeometry, trgeometry), + -- overlaps or after + OPERATOR 31 #&> (trgeometry, tstzspan), + OPERATOR 31 #&> (trgeometry, stbox), + OPERATOR 31 #&> (trgeometry, trgeometry), + -- functions + FUNCTION 1 trgeometry_gist_consistent(internal, trgeometry, smallint, oid, internal), + FUNCTION 2 stbox_gist_union(internal, internal), + FUNCTION 3 tspatial_gist_compress(internal), + FUNCTION 5 stbox_gist_penalty(internal, internal, internal), + FUNCTION 6 stbox_gist_picksplit(internal, internal), + FUNCTION 7 stbox_gist_same(stbox, stbox, internal); +-- FUNCTION 8 gist_trgeometry_distance(internal, trgeometry, smallint, oid, internal), + +/******************************************************************************/ + +CREATE OPERATOR CLASS trgeometry_quadtree_ops + DEFAULT FOR TYPE trgeometry USING spgist AS + -- strictly left + OPERATOR 1 << (trgeometry, stbox), + OPERATOR 1 << (trgeometry, trgeometry), + -- overlaps or left + OPERATOR 2 &< (trgeometry, stbox), + OPERATOR 2 &< (trgeometry, trgeometry), + -- overlaps + OPERATOR 3 && (trgeometry, tstzspan), + OPERATOR 3 && (trgeometry, stbox), + OPERATOR 3 && (trgeometry, trgeometry), + -- overlaps or right + OPERATOR 4 &> (trgeometry, stbox), + OPERATOR 4 &> (trgeometry, trgeometry), + -- strictly right + OPERATOR 5 >> (trgeometry, stbox), + OPERATOR 5 >> (trgeometry, trgeometry), + -- same + OPERATOR 6 ~= (trgeometry, tstzspan), + OPERATOR 6 ~= (trgeometry, stbox), + OPERATOR 6 ~= (trgeometry, trgeometry), + -- contains + OPERATOR 7 @> (trgeometry, tstzspan), + OPERATOR 7 @> (trgeometry, stbox), + OPERATOR 7 @> (trgeometry, trgeometry), + -- contained by + OPERATOR 8 <@ (trgeometry, tstzspan), + OPERATOR 8 <@ (trgeometry, stbox), + OPERATOR 8 <@ (trgeometry, trgeometry), + -- overlaps or below + OPERATOR 9 &<| (trgeometry, stbox), + OPERATOR 9 &<| (trgeometry, trgeometry), + -- strictly below + OPERATOR 10 <<| (trgeometry, stbox), + OPERATOR 10 <<| (trgeometry, trgeometry), + -- strictly above + OPERATOR 11 |>> (trgeometry, stbox), + OPERATOR 11 |>> (trgeometry, trgeometry), + -- overlaps or above + OPERATOR 12 |&> (trgeometry, stbox), + OPERATOR 12 |&> (trgeometry, trgeometry), + -- adjacent + OPERATOR 17 -|- (trgeometry, tstzspan), + OPERATOR 17 -|- (trgeometry, stbox), + OPERATOR 17 -|- (trgeometry, trgeometry), + -- nearest approach distance +-- OPERATOR 25 |=| (trgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (trgeometry, tstzspan), + OPERATOR 28 &<# (trgeometry, stbox), + OPERATOR 28 &<# (trgeometry, trgeometry), + -- strictly before + OPERATOR 29 <<# (trgeometry, tstzspan), + OPERATOR 29 <<# (trgeometry, stbox), + OPERATOR 29 <<# (trgeometry, trgeometry), + -- strictly after + OPERATOR 30 #>> (trgeometry, tstzspan), + OPERATOR 30 #>> (trgeometry, stbox), + OPERATOR 30 #>> (trgeometry, trgeometry), + -- overlaps or after + OPERATOR 31 #&> (trgeometry, tstzspan), + OPERATOR 31 #&> (trgeometry, stbox), + OPERATOR 31 #&> (trgeometry, trgeometry), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_quadtree_choose(internal, internal), + FUNCTION 3 stbox_quadtree_picksplit(internal, internal), + FUNCTION 4 stbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS trgeometry_kdtree_ops + FOR TYPE trgeometry USING spgist AS + -- strictly left + OPERATOR 1 << (trgeometry, stbox), + OPERATOR 1 << (trgeometry, trgeometry), + -- overlaps or left + OPERATOR 2 &< (trgeometry, stbox), + OPERATOR 2 &< (trgeometry, trgeometry), + -- overlaps + OPERATOR 3 && (trgeometry, tstzspan), + OPERATOR 3 && (trgeometry, stbox), + OPERATOR 3 && (trgeometry, trgeometry), + -- overlaps or right + OPERATOR 4 &> (trgeometry, stbox), + OPERATOR 4 &> (trgeometry, trgeometry), + -- strictly right + OPERATOR 5 >> (trgeometry, stbox), + OPERATOR 5 >> (trgeometry, trgeometry), + -- same + OPERATOR 6 ~= (trgeometry, tstzspan), + OPERATOR 6 ~= (trgeometry, stbox), + OPERATOR 6 ~= (trgeometry, trgeometry), + -- contains + OPERATOR 7 @> (trgeometry, tstzspan), + OPERATOR 7 @> (trgeometry, stbox), + OPERATOR 7 @> (trgeometry, trgeometry), + -- contained by + OPERATOR 8 <@ (trgeometry, tstzspan), + OPERATOR 8 <@ (trgeometry, stbox), + OPERATOR 8 <@ (trgeometry, trgeometry), + -- overlaps or below + OPERATOR 9 &<| (trgeometry, stbox), + OPERATOR 9 &<| (trgeometry, trgeometry), + -- strictly below + OPERATOR 10 <<| (trgeometry, stbox), + OPERATOR 10 <<| (trgeometry, trgeometry), + -- strictly above + OPERATOR 11 |>> (trgeometry, stbox), + OPERATOR 11 |>> (trgeometry, trgeometry), + -- overlaps or above + OPERATOR 12 |&> (trgeometry, stbox), + OPERATOR 12 |&> (trgeometry, trgeometry), + -- adjacent + OPERATOR 17 -|- (trgeometry, tstzspan), + OPERATOR 17 -|- (trgeometry, stbox), + OPERATOR 17 -|- (trgeometry, trgeometry), + -- nearest approach distance +-- OPERATOR 25 |=| (trgeometry, stbox) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (trgeometry, tstzspan), + OPERATOR 28 &<# (trgeometry, stbox), + OPERATOR 28 &<# (trgeometry, trgeometry), + -- strictly before + OPERATOR 29 <<# (trgeometry, tstzspan), + OPERATOR 29 <<# (trgeometry, stbox), + OPERATOR 29 <<# (trgeometry, trgeometry), + -- strictly after + OPERATOR 30 #>> (trgeometry, tstzspan), + OPERATOR 30 #>> (trgeometry, stbox), + OPERATOR 30 #>> (trgeometry, trgeometry), + -- overlaps or after + OPERATOR 31 #&> (trgeometry, tstzspan), + OPERATOR 31 #&> (trgeometry, stbox), + OPERATOR 31 #&> (trgeometry, trgeometry), + -- functions + FUNCTION 1 stbox_spgist_config(internal, internal), + FUNCTION 2 stbox_kdtree_choose(internal, internal), + FUNCTION 3 stbox_kdtree_picksplit(internal, internal), + FUNCTION 4 stbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 stbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tspatial_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/CMakeLists.txt new file mode 100644 index 00000000..cf0fa190 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/rgeo/CMakeLists.txt @@ -0,0 +1,20 @@ +# No Postgres version dependant files + +SET(LOCAL_FILES + 122_trgeo + 124_trgeo_compops + 125_trgeo_spatialfuncs + 128_trgeo_topops + 129_trgeo_posops + 133_trgeo_distance + 133_trgeo_vclip + 134_trgeo_indexes + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/001_set.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/001_set.in.sql new file mode 100644 index 00000000..90a96d3b --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/001_set.in.sql @@ -0,0 +1,1446 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for sets of values + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE intset; +CREATE TYPE bigintset; +CREATE TYPE floatset; +CREATE TYPE textset; +CREATE TYPE dateset; +CREATE TYPE tstzset; + +CREATE FUNCTION intset_in(cstring) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intset_out(intset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intset_recv(internal) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intset_send(intset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION bigintset_in(cstring) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintset_out(bigintset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintset_recv(internal) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintset_send(bigintset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floatset_in(cstring) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatset_out(floatset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatset_recv(internal) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatset_send(floatset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION textset_in(cstring) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textset_out(textset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textset_recv(internal) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textset_send(textset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dateset_in(cstring) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dateset_out(dateset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dateset_recv(internal) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dateset_send(dateset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tstzset_in(cstring) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzset_out(tstzset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Set_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzset_recv(internal) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzset_send(tstzset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_analyze(internal) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_analyze' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE intset ( + internallength = variable, + input = intset_in, + output = intset_out, + receive = intset_recv, + send = intset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); + +CREATE TYPE bigintset ( + internallength = variable, + input = bigintset_in, + output = bigintset_out, + receive = bigintset_recv, + send = bigintset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); + +CREATE TYPE floatset ( + internallength = variable, + input = floatset_in, + output = floatset_out, + receive = floatset_recv, + send = floatset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); + +CREATE TYPE textset ( + internallength = variable, + input = textset_in, + output = textset_out, + receive = textset_recv, + send = textset_send, + alignment = double, + storage = extended +); + +CREATE TYPE dateset ( + internallength = variable, + input = dateset_in, + output = dateset_out, + receive = dateset_recv, + send = dateset_send, + alignment = double, + storage = extended +); + +CREATE TYPE tstzset ( + internallength = variable, + input = tstzset_in, + output = tstzset_out, + receive = tstzset_recv, + send = tstzset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); + +/******************************************************************************/ + +-- Input/output in WKT, WKB, and HexWKB representation + +CREATE FUNCTION intsetFromBinary(bytea) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintsetFromBinary(bytea) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatsetFromBinary(bytea) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textsetFromBinary(bytea) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datesetFromBinary(bytea) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzsetFromBinary(bytea) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intsetFromHexWKB(text) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintsetFromHexWKB(text) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatsetFromHexWKB(text) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textsetFromHexWKB(text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datesetFromHexWKB(text) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzsetFromHexWKB(text) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(intset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(bigintset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(floatset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(textset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(dateset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tstzset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(intset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(bigintset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(floatset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(textset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(dateset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tstzset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Set_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(intset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(bigintset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(floatset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(textset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(dateset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(tstzset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Set_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor functions + ******************************************************************************/ + +CREATE FUNCTION set(integer[]) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(bigint[]) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(float[]) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(text[]) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(date[]) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(timestamptz[]) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION set(integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(date) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set(timestamptz) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Value_to_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (integer AS intset) WITH FUNCTION set(integer); +CREATE CAST (bigint AS bigintset) WITH FUNCTION set(bigint); +CREATE CAST (float AS floatset) WITH FUNCTION set(float); +CREATE CAST (text AS textset) WITH FUNCTION set(text); +CREATE CAST (date AS dateset) WITH FUNCTION set(date); +CREATE CAST (timestamptz AS tstzset) WITH FUNCTION set(timestamptz); + +CREATE FUNCTION floatset(intset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Intset_to_floatset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intset(floatset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Floatset_to_intset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intset AS floatset) WITH FUNCTION floatset(intset); +CREATE CAST (floatset AS intset) WITH FUNCTION intset(floatset); + +CREATE FUNCTION tstzset(dateset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Dateset_to_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dateset(tstzset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Tstzset_to_dateset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (dateset AS tstzset) WITH FUNCTION tstzset(dateset); +CREATE CAST (tstzset AS dateset) WITH FUNCTION dateset(tstzset); + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION memSize(intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(bigintset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(floatset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(textset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tstzset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numValues(intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(bigintset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(floatset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(textset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numValues(tstzset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_num_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(bigintset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(floatset) + RETURNS float + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(textset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(dateset) + RETURNS date + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(tstzset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Set_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(bigintset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(floatset) + RETURNS float + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(textset) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(dateset) + RETURNS date + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(tstzset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Set_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(intset, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(bigintset, integer) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(floatset, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(textset, integer) + RETURNS text + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(dateset, integer) + RETURNS date + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(tstzset, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Set_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/* Values is a reserved word in SQL */ +CREATE FUNCTION getValues(intset) + RETURNS integer[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(bigintset) + RETURNS bigint[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(floatset) + RETURNS float[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(textset) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(dateset) + RETURNS date[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(tstzset) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Set_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION shift(intset, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Numset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(bigintset, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Numset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(floatset, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Numset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(dateset, integer) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Numset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(tstzset, interval) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Tstzset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scale(intset, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Numset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(bigintset, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Numset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(floatset, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Numset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(dateset, integer) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Numset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(tstzset, interval) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Tstzset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScale(intset, integer, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Numset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(bigintset, bigint, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Numset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(floatset, float, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Numset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(dateset, integer, integer) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Numset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(tstzset, interval, interval) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Tstzset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floor(floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Floatset_floor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ceil(floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Floatset_ceil' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(floatset, integer DEFAULT 0) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION degrees(floatset, bool DEFAULT FALSE) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Floatset_degrees' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION radians(floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Floatset_radians' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lower(textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Textset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Textset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION initcap(textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Textset_initcap' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transform a set to a set of values + ******************************************************************************/ + +CREATE FUNCTION unnest(intset) + RETURNS SETOF integer + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(bigintset) + RETURNS SETOF bigint + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(floatset) + RETURNS SETOF float + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(textset) + RETURNS SETOF text + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(dateset) + RETURNS SETOF date + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(tstzset) + RETURNS SETOF timestamptz + AS 'MODULE_PATHNAME', 'Set_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Temporal text concatenation + *****************************************************************************/ + +CREATE FUNCTION textset_cat(text, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Textcat_text_textset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION textset_cat(textset, text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Textcat_textset_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR || ( + PROCEDURE = textset_cat, + LEFTARG = text, RIGHTARG = textset +); +CREATE OPERATOR || ( + PROCEDURE = textset_cat, + LEFTARG = textset, RIGHTARG = text +); + +/****************************************************************************** + * Aggregate functions + ******************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, integer) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, bigint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, float) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, text) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, date) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, timestamptz) + RETURNS internal + AS 'MODULE_PATHNAME', 'Value_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not STRICT +CREATE FUNCTION set_union_transfn(internal, intset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, bigintset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, floatset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, textset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, dateset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_union_transfn(internal, tstzset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION intset_union_finalfn(internal) + RETURNS intset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION bigintset_union_finalfn(internal) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION floatset_union_finalfn(internal) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION dateset_union_finalfn(internal) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tstzset_union_finalfn(internal) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION textset_union_finalfn(internal) + RETURNS textset + AS 'MODULE_PATHNAME', 'Set_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE setUnion(integer) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = intset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(bigint) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = bigintset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(float) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = floatset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(text) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = textset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(date) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = dateset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(timestamptz) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = tstzset_union_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE setUnion(intset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = intset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(bigintset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = bigintset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(floatset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = floatset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(textset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = textset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(dateset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = dateset_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE setUnion(tstzset) ( + SFUNC = set_union_transfn, + STYPE = internal, + FINALFUNC = tstzset_union_finalfn, + PARALLEL = safe +); + +/***************************************************************************** + * Selectivity functions + *****************************************************************************/ + +CREATE FUNCTION span_sel(internal, oid, internal, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'Span_sel' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_joinsel(internal, oid, internal, smallint, internal) + RETURNS float + AS 'MODULE_PATHNAME', 'Span_joinsel' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Comparison functions for defining B-tree indexes + ******************************************************************************/ + +CREATE FUNCTION set_eq(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_eq(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_ne(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ne(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_lt(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_lt(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_le(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_le(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_ge(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_ge(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gt(intset, intset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(bigintset, bigintset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(floatset, floatset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(textset, textset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(dateset, dateset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gt(tstzset, tstzset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Set_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_cmp(intset, intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(bigintset, bigintset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(floatset, floatset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(textset, textset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(dateset, dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_cmp(tstzset, tstzset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); + +CREATE OPERATOR <> ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); + +CREATE OPERATOR < ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR <= ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR >= ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR > ( + LEFTARG = intset, RIGHTARG = intset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = bigintset, RIGHTARG = bigintset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = floatset, RIGHTARG = floatset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = textset, RIGHTARG = textset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = dateset, RIGHTARG = dateset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tstzset, RIGHTARG = tstzset, + PROCEDURE = set_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS intset_btree_ops + DEFAULT FOR TYPE intset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(intset, intset); +CREATE OPERATOR CLASS bigintset_btree_ops + DEFAULT FOR TYPE bigintset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(bigintset, bigintset); +CREATE OPERATOR CLASS floatset_btree_ops + DEFAULT FOR TYPE floatset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(floatset, floatset); +CREATE OPERATOR CLASS textset_btree_ops + DEFAULT FOR TYPE textset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(textset, textset); +CREATE OPERATOR CLASS dateset_btree_ops + DEFAULT FOR TYPE dateset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(dateset, dateset); +CREATE OPERATOR CLASS tstzset_btree_ops + DEFAULT FOR TYPE tstzset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 set_cmp(tstzset, tstzset); + +/****************************************************************************** + * Hash functions for defining hash indexes + ******************************************************************************/ + +CREATE FUNCTION set_hash(intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(bigintset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(floatset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(textset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash(tstzset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Set_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_hash_extended(intset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(bigintset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(floatset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(textset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(dateset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_hash_extended(tstzset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Set_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS intset_hash_ops + DEFAULT FOR TYPE intset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(intset), + FUNCTION 2 set_hash_extended(intset, bigint); +CREATE OPERATOR CLASS bigintset_hash_ops + DEFAULT FOR TYPE bigintset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(bigintset), + FUNCTION 2 set_hash_extended(bigintset, bigint); +CREATE OPERATOR CLASS floatset_hash_ops + DEFAULT FOR TYPE floatset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(floatset), + FUNCTION 2 set_hash_extended(floatset, bigint); +CREATE OPERATOR CLASS textset_hash_ops + DEFAULT FOR TYPE textset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(textset), + FUNCTION 2 set_hash_extended(textset, bigint); +CREATE OPERATOR CLASS dateset_hash_ops + DEFAULT FOR TYPE dateset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(dateset), + FUNCTION 2 set_hash_extended(dateset, bigint); +CREATE OPERATOR CLASS tstzset_hash_ops + DEFAULT FOR TYPE tstzset USING hash AS + OPERATOR 1 = , + FUNCTION 1 set_hash(tstzset), + FUNCTION 2 set_hash_extended(tstzset, bigint); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/002_set_ops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/002_set_ops.in.sql new file mode 100644 index 00000000..b449b0c1 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/002_set_ops.in.sql @@ -0,0 +1,1720 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Operators for set types + */ + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION set_contains(intset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(bigintset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(floatset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(textset, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(dateset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(tstzset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contains(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = textset, RIGHTARG = text, + COMMUTATOR = <@ +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = <@ +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = <@ +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = <@ +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = set_contains, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_contained(integer, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(bigint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(float, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(text, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(date, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(timestamptz, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_contained(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = text, RIGHTARG = textset, + COMMUTATOR = @> +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = @> +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = @> +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = @> +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = set_contained, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overlaps(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overlaps(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = && +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = && +); +CREATE OPERATOR && ( + PROCEDURE = set_overlaps, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_left(integer, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(intset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(bigint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(bigintset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(float, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(floatset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(text, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(textset, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(date, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(dateset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(timestamptz, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(tstzset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_left(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = text, RIGHTARG = textset, + COMMUTATOR = >> +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = textset, RIGHTARG = text, + COMMUTATOR = >> +); +CREATE OPERATOR << ( + PROCEDURE = set_left, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = >> +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = #>> +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = #>> +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = #>> +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = set_left, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_right(integer, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(intset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(bigint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(bigintset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(float, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(floatset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(text, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(textset, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(date, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(dateset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(timestamptz, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(tstzset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_right(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = text, RIGHTARG = textset, + COMMUTATOR = << +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = textset, RIGHTARG = text, + COMMUTATOR = << +); +CREATE OPERATOR >> ( + PROCEDURE = set_right, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = << +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = <<# +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = <<# +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = <<# +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = set_right, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overleft(integer, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(intset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(bigint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(bigintset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(float, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(floatset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(text, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(textset, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(date, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(dateset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(timestamptz, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(tstzset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overleft(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = integer, RIGHTARG = intset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = intset, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = intset, RIGHTARG = intset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = bigint, RIGHTARG = bigintset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = bigintset, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = bigintset, RIGHTARG = bigintset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = float, RIGHTARG = floatset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = floatset, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = floatset, RIGHTARG = floatset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = text, RIGHTARG = textset +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = textset, RIGHTARG = text +); +CREATE OPERATOR &< ( + PROCEDURE = set_overleft, + LEFTARG = textset, RIGHTARG = textset +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = date, RIGHTARG = dateset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = dateset, RIGHTARG = date, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = dateset, RIGHTARG = dateset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = timestamptz, RIGHTARG = tstzset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = tstzset, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = set_overleft, + LEFTARG = tstzset, RIGHTARG = tstzset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION set_overright(integer, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(intset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(intset, intset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(bigint, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(bigintset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(bigintset, bigintset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(float, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(floatset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(floatset, floatset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(text, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(textset, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(textset, textset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(date, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(dateset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(dateset, dateset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(timestamptz, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(tstzset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_overright(tstzset, tstzset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = integer, RIGHTARG = intset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = intset, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = intset, RIGHTARG = intset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = bigint, RIGHTARG = bigintset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = bigintset, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = bigintset, RIGHTARG = bigintset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = float, RIGHTARG = floatset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = floatset, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = floatset, RIGHTARG = floatset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = text, RIGHTARG = textset +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = textset, RIGHTARG = text +); +CREATE OPERATOR &> ( + PROCEDURE = set_overright, + LEFTARG = textset, RIGHTARG = textset +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = date, RIGHTARG = dateset +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = dateset, RIGHTARG = date +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = dateset, RIGHTARG = dateset +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = timestamptz, RIGHTARG = tstzset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = tstzset, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = set_overright, + LEFTARG = tstzset, RIGHTARG = tstzset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION set_union(integer, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(intset, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(intset, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(bigint, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(bigintset, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(bigintset, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(float, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(floatset, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(floatset, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(text, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(textset, text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(textset, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(date, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(dateset, date) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(dateset, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_union(timestamptz, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Union_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(tstzset, timestamptz) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Union_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_union(tstzset, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Union_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = text, RIGHTARG = textset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = textset, RIGHTARG = text, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = + +); + +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = set_union, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION set_minus(integer, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(intset, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(intset, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(bigint, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(bigintset, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(bigintset, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(float, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(floatset, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(floatset, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(text, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(textset, text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(textset, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(date, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(dateset, date) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(dateset, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_minus(timestamptz, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Minus_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(tstzset, timestamptz) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Minus_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_minus(tstzset, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Minus_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = integer, RIGHTARG = intset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = intset, RIGHTARG = integer +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = intset, RIGHTARG = intset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = bigint, RIGHTARG = bigintset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = bigintset, RIGHTARG = bigint +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = bigintset, RIGHTARG = bigintset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = float, RIGHTARG = floatset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = floatset, RIGHTARG = float +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = floatset, RIGHTARG = floatset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = text, RIGHTARG = textset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = textset, RIGHTARG = text +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = textset, RIGHTARG = textset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = date, RIGHTARG = dateset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = dateset, RIGHTARG = date +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = dateset, RIGHTARG = dateset +); + +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = timestamptz, RIGHTARG = tstzset +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = tstzset, RIGHTARG = timestamptz +); +CREATE OPERATOR - ( + PROCEDURE = set_minus, + LEFTARG = tstzset, RIGHTARG = tstzset +); + +/*****************************************************************************/ + +CREATE FUNCTION set_intersection(integer, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(intset, integer) + RETURNS intset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(intset, intset) + RETURNS intset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(bigint, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(bigintset, bigint) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(bigintset, bigintset) + RETURNS bigintset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(float, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(floatset, float) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(floatset, floatset) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(text, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(textset, text) + RETURNS textset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(textset, textset) + RETURNS textset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(date, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(dateset, date) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(dateset, dateset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_intersection(timestamptz, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Intersection_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(tstzset, timestamptz) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Intersection_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_intersection(tstzset, tstzset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Intersection_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = text, RIGHTARG = textset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = textset, RIGHTARG = text, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = textset, RIGHTARG = textset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = * +); + +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = set_intersection, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = * +); + +/*****************************************************************************/ + +CREATE FUNCTION set_distance(integer, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(integer, intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(intset, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(intset, intset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_distance(bigint, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_value_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(bigint, bigintset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(bigintset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(bigintset, bigintset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_distance(float, float) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(float, floatset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(floatset, float) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(floatset, floatset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_distance(date, date) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(date, dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(dateset, date) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(dateset, dateset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_distance(timestamptz, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(timestamptz, tstzset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(tstzset, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_distance(tstzset, tstzset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_set_set' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = integer, RIGHTARG = integer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = integer, RIGHTARG = intset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = intset, RIGHTARG = integer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = intset, RIGHTARG = intset, + COMMUTATOR = <-> +); + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = bigint, RIGHTARG = bigint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = bigint, RIGHTARG = bigintset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = bigintset, RIGHTARG = bigint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = bigintset, RIGHTARG = bigintset, + COMMUTATOR = <-> +); + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = float, RIGHTARG = float, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = float, RIGHTARG = floatset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = floatset, RIGHTARG = float, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = floatset, RIGHTARG = floatset, + COMMUTATOR = <-> +); + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = date, RIGHTARG = date, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = date, RIGHTARG = dateset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = dateset, RIGHTARG = date, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = dateset, RIGHTARG = dateset, + COMMUTATOR = <-> +); + +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = timestamptz, RIGHTARG = timestamptz, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = timestamptz, RIGHTARG = tstzset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = tstzset, RIGHTARG = timestamptz, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = set_distance, + LEFTARG = tstzset, RIGHTARG = tstzset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/003_span.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/003_span.in.sql new file mode 100644 index 00000000..93388833 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/003_span.in.sql @@ -0,0 +1,1233 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief SQL definitions for spans of values, which are fixed-size version of + * PostgreSQL ranges + */ + +CREATE TYPE intspan; +CREATE TYPE bigintspan; +CREATE TYPE floatspan; +CREATE TYPE datespan; +CREATE TYPE tstzspan; + +/* Forward reference of the types needed for the result of set operations */ +CREATE TYPE intspanset; +CREATE TYPE bigintspanset; +CREATE TYPE floatspanset; +CREATE TYPE datespanset; +CREATE TYPE tstzspanset; + +CREATE FUNCTION intspan_in(cstring) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intspan_out(intspan) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Span_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intspan_recv(internal) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION intspan_send(intspan) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION bigintspan_in(cstring) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspan_out(bigintspan) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Span_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspan_recv(internal) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspan_send(bigintspan) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floatspan_in(cstring) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan_out(floatspan) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Span_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan_recv(internal) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan_send(floatspan) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION datespan_in(cstring) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespan_out(datespan) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Span_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespan_recv(internal) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespan_send(datespan) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tstzspan_in(cstring) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspan_out(tstzspan) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Span_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspan_recv(internal) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspan_send(tstzspan) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/* The span_analyze function is defined in file 001_set.in.sql */ + +CREATE TYPE intspan ( + internallength = 24, + input = intspan_in, + output = intspan_out, + receive = intspan_recv, + send = intspan_send, + alignment = double, + analyze = span_analyze +); + +CREATE TYPE bigintspan ( + internallength = 24, + input = bigintspan_in, + output = bigintspan_out, + receive = bigintspan_recv, + send = bigintspan_send, + alignment = double, + analyze = span_analyze +); + +CREATE TYPE floatspan ( + internallength = 24, + input = floatspan_in, + output = floatspan_out, + receive = floatspan_recv, + send = floatspan_send, + alignment = double, + analyze = span_analyze +); + +CREATE TYPE datespan ( + internallength = 24, + input = datespan_in, + output = datespan_out, + receive = datespan_recv, + send = datespan_send, + alignment = double, + analyze = span_analyze +); + +CREATE TYPE tstzspan ( + internallength = 24, + input = tstzspan_in, + output = tstzspan_out, + receive = tstzspan_recv, + send = tstzspan_send, + alignment = double, + analyze = span_analyze +); + +/******************************************************************************/ + +-- Input/output in WKT, WKB and HexWKB representation + +CREATE FUNCTION intspanFromBinary(bytea) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanFromBinary(bytea) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanFromBinary(bytea) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanFromBinary(bytea) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanFromBinary(bytea) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspanFromHexWKB(text) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanFromHexWKB(text) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanFromHexWKB(text) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanFromHexWKB(text) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanFromHexWKB(text) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(intspan) + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(bigintspan) + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(floatspan, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(datespan) + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tstzspan) + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(intspan, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(bigintspan, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(floatspan, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(datespan, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tstzspan, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Span_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(intspan, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(bigintspan, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(floatspan, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(datespan, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(tstzspan, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Span_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor functions + ******************************************************************************/ + +CREATE FUNCTION span(integer, integer, boolean DEFAULT true, boolean DEFAULT false) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(bigint, bigint, boolean DEFAULT true, boolean DEFAULT false) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(float, float, boolean DEFAULT true, boolean DEFAULT false) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(date, date, boolean DEFAULT true, boolean DEFAULT false) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(timestamptz, timestamptz, boolean DEFAULT true, boolean DEFAULT false) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION span(integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Value_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Value_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Value_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(date) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Value_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(timestamptz) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Value_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (integer AS intspan) WITH FUNCTION span(integer); +CREATE CAST (bigint AS bigintspan) WITH FUNCTION span(bigint); +CREATE CAST (float AS floatspan) WITH FUNCTION span(float); +CREATE CAST (date AS datespan) WITH FUNCTION span(date); +CREATE CAST (timestamptz AS tstzspan) WITH FUNCTION span(timestamptz); + +CREATE FUNCTION span(intset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Set_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(bigintset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Set_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(floatset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Set_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(dateset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Set_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(tstzset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Set_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intset AS intspan) WITH FUNCTION span(intset); +CREATE CAST (bigintset AS bigintspan) WITH FUNCTION span(bigintset); +CREATE CAST (floatset AS floatspan) WITH FUNCTION span(floatset); +CREATE CAST (dateset AS datespan) WITH FUNCTION span(dateset); +CREATE CAST (tstzset AS tstzspan) WITH FUNCTION span(tstzset); + +CREATE FUNCTION spans(intset) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Set_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(bigintset) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Set_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(floatset) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Set_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(dateset) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Set_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tstzset) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Set_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNSpans(intset, integer) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Set_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(bigintset, integer) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Set_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(floatset, integer) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Set_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(dateset, integer) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Set_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tstzset, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Set_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNSpans(intset, integer) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Set_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(bigintset, integer) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Set_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(floatset, integer) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Set_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(dateset, integer) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Set_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tstzset, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Set_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspan(floatspan) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Floatspan_to_intspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan(intspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Intspan_to_floatspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intspan AS floatspan) WITH FUNCTION floatspan(intspan); +CREATE CAST (floatspan AS intspan) WITH FUNCTION intspan(floatspan); + +CREATE FUNCTION datespan(tstzspan) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Tstzspan_to_datespan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspan(datespan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Datespan_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (datespan AS tstzspan) WITH FUNCTION tstzspan(datespan); +CREATE CAST (tstzspan AS datespan) WITH FUNCTION datespan(tstzspan); + +CREATE FUNCTION span(int4range) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Range_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(int8range) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Range_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(daterange) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Range_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(tstzrange) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Range_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION range(intspan) + RETURNS int4range + AS 'MODULE_PATHNAME', 'Span_to_range' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION range(bigintspan) + RETURNS int8range + AS 'MODULE_PATHNAME', 'Span_to_range' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION range(datespan) + RETURNS daterange + AS 'MODULE_PATHNAME', 'Span_to_range' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION range(tstzspan) + RETURNS tstzrange + AS 'MODULE_PATHNAME', 'Span_to_range' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (int4range AS intspan) WITH FUNCTION span(int4range); +CREATE CAST (int8range AS bigintspan) WITH FUNCTION span(int8range); +CREATE CAST (daterange AS datespan) WITH FUNCTION span(daterange); +CREATE CAST (tstzrange AS tstzspan) WITH FUNCTION span(tstzrange); +CREATE CAST (intspan AS int4range) WITH FUNCTION range(intspan); +CREATE CAST (bigintspan AS int8range) WITH FUNCTION range(bigintspan); +CREATE CAST (datespan AS daterange) WITH FUNCTION range(datespan); +CREATE CAST (tstzspan AS tstzrange) WITH FUNCTION range(tstzspan); + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION lower(intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Span_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(datespan) + RETURNS date + AS 'MODULE_PATHNAME', 'Span_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(tstzspan) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Span_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upper(intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Span_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(datespan) + RETURNS date + AS 'MODULE_PATHNAME', 'Span_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(tstzspan) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Span_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION width(intspan) + RETURNS int + AS 'MODULE_PATHNAME', 'Numspan_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION width(bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Numspan_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION width(floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Numspan_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(datespan) + RETURNS interval + AS 'MODULE_PATHNAME', 'Datespan_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tstzspan) + RETURNS interval + AS 'MODULE_PATHNAME', 'Tstzspan_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION expand(intspan, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Numspan_expand' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expand(bigintspan, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Numspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expand(floatspan, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Numspan_expand' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expand(datespan, integer) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Numspan_expand' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expand(tstzspan, interval) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tstzspan_expand' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shift(timestamptz, interval) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Timestamptz_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shift(intspan, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Numspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(bigintspan, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Numspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(floatspan, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Numspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(datespan, integer) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Numspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(tstzspan, interval) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tstzspan_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scale(intspan, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Numspan_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(bigintspan, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Numspan_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(floatspan, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Numspan_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(datespan, integer) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Numspan_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(tstzspan, interval) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tstzspan_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScale(intspan, integer, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Numspan_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(bigintspan, bigint, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Numspan_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(floatspan, float, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Numspan_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(datespan, integer, integer) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Numspan_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(tstzspan, interval, interval) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tstzspan_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floor(floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Floatspan_floor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ceil(floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Floatspan_ceil' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(float, integer DEFAULT 0) + RETURNS float + AS 'MODULE_PATHNAME', 'Float_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(floatspan, integer DEFAULT 0) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Floatspan_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION degrees(floatspan, bool DEFAULT FALSE) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Floatspan_degrees' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION radians(floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Floatspan_radians' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Selectivity functions + *****************************************************************************/ + +-- Functions span_sel and span_joinsel are defined in the file defining the +-- set type + +-- Functions for debugging the selectivity code + +-- Given a table, column, and span returns the estimate of what proportion +-- of the table would be returned by a query using the given operator. +CREATE FUNCTION _mobdb_span_sel(tbl regclass, col text, oper regoper, + i intspan) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION _mobdb_span_sel(tbl regclass, col text, oper regoper, + b bigintspan) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION _mobdb_span_sel(tbl regclass, col text, oper regoper, + f floatspan) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION _mobdb_span_sel(tbl regclass, col text, oper regoper, + p datespan) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION _mobdb_span_sel(tbl regclass, col text, oper regoper, + p tstzspan) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- Given two tables and columns, returns estimate of the proportion of rows a +-- given join operator will return relative to the number of rows an +-- unconstrained table join would return +CREATE OR REPLACE FUNCTION _mobdb_span_joinsel(tbl1 regclass, col1 text, + tbl2 regclass, col2 text, oper regoper) + RETURNS float + AS 'MODULE_PATHNAME' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Comparison operators + ******************************************************************************/ + +CREATE FUNCTION span_eq(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_eq(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_eq(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_eq(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_eq(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_ne(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ne(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ne(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ne(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ne(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_lt(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_lt(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_lt(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_lt(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_lt(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_le(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_le(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_le(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_le(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_le(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_ge(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ge(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ge(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ge(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_ge(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_gt(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gt(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gt(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gt(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gt(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Span_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_cmp(intspan, intspan) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Span_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_cmp(bigintspan, bigintspan) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Span_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_cmp(floatspan, floatspan) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Span_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_cmp(datespan, datespan) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Span_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_cmp(tstzspan, tstzspan) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Span_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + PROCEDURE = span_eq, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + PROCEDURE = span_eq, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + PROCEDURE = span_eq, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + PROCEDURE = span_eq, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + PROCEDURE = span_eq, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); + +CREATE OPERATOR <> ( + PROCEDURE = span_ne, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = span_ne, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = span_ne, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = span_ne, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + PROCEDURE = span_ne, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); + +CREATE OPERATOR < ( + PROCEDURE = span_lt, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + PROCEDURE = span_lt, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + PROCEDURE = span_lt, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + PROCEDURE = span_lt, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + PROCEDURE = span_lt, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR <= ( + PROCEDURE = span_le, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + PROCEDURE = span_le, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + PROCEDURE = span_le, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + PROCEDURE = span_le, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + PROCEDURE = span_le, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR >= ( + PROCEDURE = span_ge, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + PROCEDURE = span_ge, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + PROCEDURE = span_ge, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + PROCEDURE = span_ge, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + PROCEDURE = span_ge, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR > ( + PROCEDURE = span_gt, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + PROCEDURE = span_gt, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + PROCEDURE = span_gt, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + PROCEDURE = span_gt, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + PROCEDURE = span_gt, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS intspan_btree_ops + DEFAULT FOR TYPE intspan USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 span_cmp(intspan, intspan); +CREATE OPERATOR CLASS bigintspan_btree_ops + DEFAULT FOR TYPE bigintspan USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 span_cmp(bigintspan, bigintspan); +CREATE OPERATOR CLASS floatspan_btree_ops + DEFAULT FOR TYPE floatspan USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 span_cmp(floatspan, floatspan); +CREATE OPERATOR CLASS datespan_btree_ops + DEFAULT FOR TYPE datespan USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 span_cmp(datespan, datespan); +CREATE OPERATOR CLASS tstzspan_btree_ops + DEFAULT FOR TYPE tstzspan USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 span_cmp(tstzspan, tstzspan); + +/******************************************************************************/ + +CREATE FUNCTION span_hash(intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash(bigintspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash(floatspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash(datespan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash(tstzspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Span_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_hash_extended(intspan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash_extended(bigintspan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash_extended(floatspan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash_extended(datespan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_hash_extended(tstzspan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Span_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS intspan_hash_ops + DEFAULT FOR TYPE intspan USING hash AS + OPERATOR 1 = , + FUNCTION 1 span_hash(intspan), + FUNCTION 2 span_hash_extended(intspan, bigint); +CREATE OPERATOR CLASS bigintspan_hash_ops + DEFAULT FOR TYPE bigintspan USING hash AS + OPERATOR 1 = , + FUNCTION 1 span_hash(bigintspan), + FUNCTION 2 span_hash_extended(bigintspan, bigint); +CREATE OPERATOR CLASS floatspan_hash_ops + DEFAULT FOR TYPE floatspan USING hash AS + OPERATOR 1 = , + FUNCTION 1 span_hash(floatspan), + FUNCTION 2 span_hash_extended(floatspan, bigint); +CREATE OPERATOR CLASS datespan_hash_ops + DEFAULT FOR TYPE datespan USING hash AS + OPERATOR 1 = , + FUNCTION 1 span_hash(datespan), + FUNCTION 2 span_hash_extended(datespan, bigint); +CREATE OPERATOR CLASS tstzspan_hash_ops + DEFAULT FOR TYPE tstzspan USING hash AS + OPERATOR 1 = , + FUNCTION 1 span_hash(tstzspan), + FUNCTION 2 span_hash_extended(tstzspan, bigint); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/005_span_ops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/005_span_ops.in.sql new file mode 100644 index 00000000..8305567f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/005_span_ops.in.sql @@ -0,0 +1,1694 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Operators for span types + */ + +/****************************************************************************** + * Topological operators + ******************************************************************************/ + +CREATE FUNCTION span_contains(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_contained(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_overlaps(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_adjacent(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/****************************************************************************** + * Position operators + ******************************************************************************/ + +CREATE FUNCTION span_left(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_right(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_overleft(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = integer, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspan, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspan, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigint, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspan, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = float, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspan, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspan, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = date, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespan, RIGHTARG = date, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespan, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/******************************************************************************/ + +CREATE FUNCTION span_overright(integer, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspan, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspan, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = integer, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspan, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspan, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(bigint, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspan, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspan, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigint, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspan, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(float, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspan, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspan, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = float, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspan, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspan, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(date, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespan, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespan, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = date, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespan, RIGHTARG = date, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespan, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(timestamptz, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspan, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspan, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/***************************************************************************** + * Set operators + *****************************************************************************/ + +CREATE FUNCTION span_union(integer, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspan, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspan, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(bigint, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspan, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspan, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(float, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspan, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspan, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(date, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespan, date) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespan, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(timestamptz, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspan, timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspan, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = + +); + +/******************************************************************************/ + +CREATE FUNCTION span_intersection(integer, intspan) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Intersection_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspan, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Intersection_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspan, intspan) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Intersection_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(bigint, bigintspan) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Intersection_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspan, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Intersection_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspan, bigintspan) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Intersection_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(float, floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Intersection_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspan, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Intersection_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspan, floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Intersection_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(date, datespan) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Intersection_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespan, date) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Intersection_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespan, datespan) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Intersection_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(timestamptz, tstzspan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Intersection_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspan, timestamptz) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Intersection_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspan, tstzspan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Intersection_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = * +); + +/******************************************************************************/ + +CREATE FUNCTION span_minus(integer, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspan, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspan, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = - +); + +CREATE FUNCTION span_minus(bigint, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspan, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspan, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = - +); + +CREATE FUNCTION span_minus(float, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspan, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspan, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = - +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = - +); + +CREATE FUNCTION span_minus(date, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespan, date) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespan, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = date, RIGHTARG = datespan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespan, RIGHTARG = date +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespan, RIGHTARG = datespan +); + +CREATE FUNCTION span_minus(timestamptz, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspan, timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspan, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = timestamptz, RIGHTARG = tstzspan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspan, RIGHTARG = timestamptz +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspan, RIGHTARG = tstzspan +); + +/***************************************************************************** + * Distance operators + *****************************************************************************/ + +CREATE FUNCTION span_distance(integer, intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspan, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspan, intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = integer, RIGHTARG = intspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspan, RIGHTARG = integer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspan, RIGHTARG = intspan, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(bigint, bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspan, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspan, bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigint, RIGHTARG = bigintspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspan, RIGHTARG = bigint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspan, RIGHTARG = bigintspan, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(float, floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspan, float) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspan, floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = float, RIGHTARG = floatspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspan, RIGHTARG = float, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspan, RIGHTARG = floatspan, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(date, datespan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespan, date) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespan, datespan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = date, RIGHTARG = datespan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespan, RIGHTARG = date, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespan, RIGHTARG = datespan, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(timestamptz, tstzspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(tstzspan, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(tstzspan, tstzspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = timestamptz, RIGHTARG = tstzspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = tstzspan, RIGHTARG = timestamptz, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = tstzspan, RIGHTARG = tstzspan, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/007_spanset.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/007_spanset.in.sql new file mode 100644 index 00000000..6d472ceb --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/007_spanset.in.sql @@ -0,0 +1,1364 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for set of spans of values, which are fixed-size versions + * of PostgreSQL multiranges + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION intspanset_in(cstring) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Spanset_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanset_in(cstring) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Spanset_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanset_in(cstring) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Spanset_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanset_in(cstring) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Spanset_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanset_in(cstring) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Spanset_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspanset_out(intspanset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Spanset_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanset_out(bigintspanset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Spanset_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanset_out(floatspanset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Spanset_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanset_out(datespanset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Spanset_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanset_out(tstzspanset) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Spanset_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspanset_recv(internal) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Spanset_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanset_recv(internal) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Spanset_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanset_recv(internal) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Spanset_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanset_recv(internal) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Spanset_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanset_recv(internal) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Spanset_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspanset_send(intspanset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspanset_send(bigintspanset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanset_send(floatspanset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespanset_send(datespanset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanset_send(tstzspanset) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/* The span_analyze function is defined in file 001_set.in.sql */ + +CREATE TYPE intspanset ( + internallength = variable, + input = intspanset_in, + output = intspanset_out, + receive = intspanset_recv, + send = intspanset_send, + alignment = double, +-- The following line makes NULL if size < 128 + storage = extended, + analyze = span_analyze +); +CREATE TYPE bigintspanset ( + internallength = variable, + input = bigintspanset_in, + output = bigintspanset_out, + receive = bigintspanset_recv, + send = bigintspanset_send, + alignment = double, +-- The following line makes NULL if size < 128 + storage = extended, + analyze = span_analyze +); +CREATE TYPE floatspanset ( + internallength = variable, + input = floatspanset_in, + output = floatspanset_out, + receive = floatspanset_recv, + send = floatspanset_send, + alignment = double, +-- The following line makes NULL if size < 128 + storage = extended, + analyze = span_analyze +); +CREATE TYPE datespanset ( + internallength = variable, + input = datespanset_in, + output = datespanset_out, + receive = datespanset_recv, + send = datespanset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); +CREATE TYPE tstzspanset ( + internallength = variable, + input = tstzspanset_in, + output = tstzspanset_out, + receive = tstzspanset_recv, + send = tstzspanset_send, + alignment = double, + storage = extended, + analyze = span_analyze +); + +/******************************************************************************/ + +-- Input/output in WKB and HexWKB representation + +CREATE FUNCTION intspansetFromBinary(bytea) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Spanset_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspansetFromBinary(bytea) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Spanset_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspansetFromBinary(bytea) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Spanset_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespansetFromBinary(bytea) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Spanset_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspansetFromBinary(bytea) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Spanset_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION intspansetFromHexWKB(text) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Spanset_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspansetFromHexWKB(text) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Spanset_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspansetFromHexWKB(text) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Spanset_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespansetFromHexWKB(text) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Spanset_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspansetFromHexWKB(text) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Spanset_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(intspanset) + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(bigintspanset) + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(floatspanset, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(datespanset) + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tstzspanset) + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(intspanset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(bigintspanset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(floatspanset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(datespanset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tstzspanset, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Spanset_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(intspanset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(bigintspanset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(floatspanset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(datespanset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(tstzspanset, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Spanset_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor functions + ******************************************************************************/ + +CREATE FUNCTION spanset(intspan[]) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Spanset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(bigintspan[]) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Spanset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(floatspan[]) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Spanset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(datespan[]) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Spanset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(tstzspan[]) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Spanset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION spanset(integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Value_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Value_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Value_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(date) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Value_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Value_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (integer AS intspanset) WITH FUNCTION spanset(integer); +CREATE CAST (bigint AS bigintspanset) WITH FUNCTION spanset(bigint); +CREATE CAST (float AS floatspanset) WITH FUNCTION spanset(float); +CREATE CAST (date AS datespanset) WITH FUNCTION spanset(date); +CREATE CAST (timestamptz AS tstzspanset) WITH FUNCTION spanset(timestamptz); + +CREATE FUNCTION spanset(intset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Set_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(bigintset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Set_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(floatset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Set_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(dateset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Set_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(tstzset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Set_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intset AS intspanset) WITH FUNCTION spanset(intset); +CREATE CAST (bigintset AS bigintspanset) WITH FUNCTION spanset(bigintset); +CREATE CAST (floatset AS floatspanset) WITH FUNCTION spanset(floatset); +CREATE CAST (dateset AS datespanset) WITH FUNCTION spanset(dateset); +CREATE CAST (tstzset AS tstzspanset) WITH FUNCTION spanset(tstzset); + +CREATE FUNCTION spanset(intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Span_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Span_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Span_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Span_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Span_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intspan AS intspanset) WITH FUNCTION spanset(intspan); +CREATE CAST (bigintspan AS bigintspanset) WITH FUNCTION spanset(bigintspan); +CREATE CAST (floatspan AS floatspanset) WITH FUNCTION spanset(floatspan); +CREATE CAST (datespan AS datespanset) WITH FUNCTION spanset(datespan); +CREATE CAST (tstzspan AS tstzspanset) WITH FUNCTION spanset(tstzspan); + +CREATE FUNCTION span(intspanset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanset_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(bigintspanset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanset_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(floatspanset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanset_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(datespanset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanset_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span(tstzspanset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanset_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intspanset AS intspan) WITH FUNCTION span(intspanset); +CREATE CAST (bigintspanset AS bigintspan) WITH FUNCTION span(bigintspanset); +CREATE CAST (floatspanset AS floatspan) WITH FUNCTION span(floatspanset); +CREATE CAST (datespanset AS datespan) WITH FUNCTION span(datespanset); +CREATE CAST (tstzspanset AS tstzspan) WITH FUNCTION span(tstzspanset); + +CREATE FUNCTION intspanset(floatspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Floatspanset_to_intspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspanset(intspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intspanset_to_floatspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intspanset AS floatspanset) WITH FUNCTION floatspanset(intspanset); +CREATE CAST (floatspanset AS intspanset) WITH FUNCTION intspanset(floatspanset); + +CREATE FUNCTION datespanset(tstzspanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Tstzspanset_to_datespanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspanset(datespanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Datespanset_to_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (datespanset AS tstzspanset) WITH FUNCTION tstzspanset(datespanset); +CREATE CAST (tstzspanset AS datespanset) WITH FUNCTION datespanset(tstzspanset); + +#if POSTGRESQL_VERSION_NUMBER >= 140000 +CREATE FUNCTION multirange(intspanset) + RETURNS int4multirange + AS 'MODULE_PATHNAME', 'Spanset_to_multirange' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION multirange(bigintspanset) + RETURNS int8multirange + AS 'MODULE_PATHNAME', 'Spanset_to_multirange' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION multirange(datespanset) + RETURNS datemultirange + AS 'MODULE_PATHNAME', 'Spanset_to_multirange' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION multirange(tstzspanset) + RETURNS tstzmultirange + AS 'MODULE_PATHNAME', 'Spanset_to_multirange' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset(int4multirange) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Multirange_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(int8multirange) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Multirange_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(datemultirange) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Multirange_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset(tstzmultirange) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Multirange_to_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (intspanset AS int4multirange) WITH FUNCTION multirange(intspanset); +CREATE CAST (bigintspanset AS int8multirange) WITH FUNCTION multirange(bigintspanset); +CREATE CAST (datespanset AS datemultirange) WITH FUNCTION multirange(datespanset); +CREATE CAST (tstzspanset AS tstzmultirange) WITH FUNCTION multirange(tstzspanset); +CREATE CAST (int4multirange AS intspanset) WITH FUNCTION spanset(int4multirange); +CREATE CAST (int8multirange AS bigintspanset) WITH FUNCTION spanset(int8multirange); +CREATE CAST (datemultirange AS datespanset) WITH FUNCTION spanset(datemultirange); +CREATE CAST (tstzmultirange AS tstzspanset) WITH FUNCTION spanset(tstzmultirange); +#endif //POSTGRESQL_VERSION_NUMBER >= 140000 + +/****************************************************************************** + * Accessor Functions + ******************************************************************************/ + +CREATE FUNCTION memSize(intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(bigintspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(floatspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tstzspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lower(intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(bigintspanset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(floatspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Spanset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(datespanset) + RETURNS date + AS 'MODULE_PATHNAME', 'Spanset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lower(tstzspanset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Spanset_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upper(intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(bigintspanset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(floatspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Spanset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(datespanset) + RETURNS date + AS 'MODULE_PATHNAME', 'Spanset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upper(tstzspanset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Spanset_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Spanset_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION width(intspanset, boundspan boolean DEFAULT FALSE) + RETURNS int + AS 'MODULE_PATHNAME', 'Numspanset_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION width(bigintspanset, boundspan boolean DEFAULT FALSE) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Numspanset_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION width(floatspanset, boundspan boolean DEFAULT FALSE) + RETURNS float + AS 'MODULE_PATHNAME', 'Numspanset_width' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(datespanset, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Datespanset_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tstzspanset, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Tstzspanset_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSpans(intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_num_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSpans(bigintspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_num_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSpans(floatspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_num_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSpans(datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_num_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSpans(tstzspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_num_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSpan(intspanset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanset_start_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSpan(bigintspanset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanset_start_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSpan(floatspanset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanset_start_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSpan(datespanset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanset_start_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSpan(tstzspanset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanset_start_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSpan(intspanset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanset_end_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSpan(bigintspanset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanset_end_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSpan(floatspanset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanset_end_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSpan(datespanset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanset_end_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSpan(tstzspanset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanset_end_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanN(intspanset, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanset_span_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanN(bigintspanset, integer) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanset_span_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanN(floatspanset, integer) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanset_span_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanN(datespanset, integer) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanset_span_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanN(tstzspanset, integer) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanset_span_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numDates(datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Datespanset_num_dates' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startDate(datespanset) + RETURNS date + AS 'MODULE_PATHNAME', 'Datespanset_start_date' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endDate(datespanset) + RETURNS date + AS 'MODULE_PATHNAME', 'Datespanset_end_date' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dateN(datespanset, integer) + RETURNS date + AS 'MODULE_PATHNAME', 'Datespanset_date_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dates(datespanset) + RETURNS dateset + AS 'MODULE_PATHNAME', 'Datespanset_dates' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tstzspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tstzspanset_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tstzspanset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tstzspanset_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tstzspanset) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tstzspanset_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tstzspanset, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tstzspanset_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tstzspanset) + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Tstzspanset_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION shift(intspanset, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(bigintspanset, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(floatspanset, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(datespanset, integer) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Numspanset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shift(tstzspanset, interval) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Tstzspanset_shift' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scale(intspanset, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Numspanset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(bigintspanset, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Numspanset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(floatspanset, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Numspanset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(datespanset, integer) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Numspanset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scale(tstzspanset, interval) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Tstzspanset_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScale(intspanset, integer, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(bigintspanset, bigint, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(floatspanset, float, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Numspanset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(datespanset, integer, integer) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Numspanset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScale(tstzspanset, interval, interval) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Tstzspanset_shift_scale' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floor(floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Floatspanset_floor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ceil(floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Floatspanset_ceil' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(floatspanset, integer DEFAULT 0) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Floatspanset_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION degrees(floatspanset, bool DEFAULT FALSE) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Floatspanset_degrees' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION radians(floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Floatspanset_radians' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION spans(intspanset) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Spanset_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(bigintspanset) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Spanset_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(floatspanset) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Spanset_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(datespanset) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Spanset_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tstzspanset) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Spanset_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNSpans(intspanset, integer) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(bigintspanset, integer) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(floatspanset, integer) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(datespanset, integer) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Spanset_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tstzspanset, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNSpans(intspanset, integer) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(bigintspanset, integer) + RETURNS bigintspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(floatspanset, integer) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(datespanset, integer) + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Spanset_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tstzspanset, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Spanset_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Comparison operators + ******************************************************************************/ + +CREATE FUNCTION spanset_eq(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_eq(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_eq(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_eq(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_eq(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_ne(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ne(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ne(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ne(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ne(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_lt(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_lt(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_lt(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_lt(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_lt(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_le(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_le(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_le(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_le(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_le(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_ge(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ge(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ge(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ge(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_ge(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_gt(intspanset, intspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_gt(bigintspanset, bigintspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_gt(floatspanset, floatspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_gt(datespanset, datespanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_gt(tstzspanset, tstzspanset) + RETURNS bool + AS 'MODULE_PATHNAME', 'Spanset_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_cmp(intspanset, intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_cmp(bigintspanset, bigintspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_cmp(floatspanset, floatspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_cmp(datespanset, datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_cmp(tstzspanset, tstzspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); + +CREATE OPERATOR <> ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); + +CREATE OPERATOR < ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR < ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR <= ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR >= ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >= ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR > ( + LEFTARG = intspanset, RIGHTARG = intspanset, + PROCEDURE = spanset_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + PROCEDURE = spanset_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = floatspanset, RIGHTARG = floatspanset, + PROCEDURE = spanset_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = datespanset, RIGHTARG = datespanset, + PROCEDURE = spanset_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + PROCEDURE = spanset_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE OPERATOR CLASS intspanset_btree_ops + DEFAULT FOR TYPE intspanset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 spanset_cmp(intspanset, intspanset); +CREATE OPERATOR CLASS bigintspanset_btree_ops + DEFAULT FOR TYPE bigintspanset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 spanset_cmp(bigintspanset, bigintspanset); +CREATE OPERATOR CLASS floatspanset_btree_ops + DEFAULT FOR TYPE floatspanset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 spanset_cmp(floatspanset, floatspanset); +CREATE OPERATOR CLASS datespanset_btree_ops + DEFAULT FOR TYPE datespanset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 spanset_cmp(datespanset, datespanset); +CREATE OPERATOR CLASS tstzspanset_btree_ops + DEFAULT FOR TYPE tstzspanset USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 spanset_cmp(tstzspanset, tstzspanset); + +/******************************************************************************/ + +CREATE FUNCTION spanset_hash(intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash(bigintspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash(floatspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash(datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash(tstzspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Spanset_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION spanset_hash_extended(intspanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash_extended(bigintspanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash_extended(floatspanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash_extended(datespanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_hash_extended(tstzspanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Spanset_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS intspanset_hash_ops + DEFAULT FOR TYPE intspanset USING hash AS + OPERATOR 1 = , + FUNCTION 1 spanset_hash(intspanset), + FUNCTION 2 spanset_hash_extended(intspanset, bigint); +CREATE OPERATOR CLASS bigintspanset_hash_ops + DEFAULT FOR TYPE bigintspanset USING hash AS + OPERATOR 1 = , + FUNCTION 1 spanset_hash(bigintspanset), + FUNCTION 2 spanset_hash_extended(bigintspanset, bigint); +CREATE OPERATOR CLASS floatspanset_hash_ops + DEFAULT FOR TYPE floatspanset USING hash AS + OPERATOR 1 = , + FUNCTION 1 spanset_hash(floatspanset), + FUNCTION 2 spanset_hash_extended(floatspanset, bigint); +CREATE OPERATOR CLASS datespanset_hash_ops + DEFAULT FOR TYPE datespanset USING hash AS + OPERATOR 1 = , + FUNCTION 1 spanset_hash(datespanset), + FUNCTION 2 spanset_hash_extended(datespanset, bigint); +CREATE OPERATOR CLASS tstzspanset_hash_ops + DEFAULT FOR TYPE tstzspanset USING hash AS + OPERATOR 1 = , + FUNCTION 1 spanset_hash(tstzspanset), + FUNCTION 2 spanset_hash_extended(tstzspanset, bigint); + + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/009_spanset_ops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/009_spanset_ops.in.sql new file mode 100644 index 00000000..cfa8fc8f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/009_spanset_ops.in.sql @@ -0,0 +1,2829 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Operators for span set types + */ + +CREATE FUNCTION tprecision(timestamptz, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Timestamptz_tprecision' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION tprecision(tstzset, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tstzset + AS 'MODULE_PATHNAME', 'Tstzset_tprecision' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION tprecision(tstzspan, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tstzspan_tprecision' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION tprecision(tstzspanset, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Tstzspanset_tprecision' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/****************************************************************************** + * Operators + ******************************************************************************/ + +CREATE FUNCTION span_contains(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contains(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contains(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = span_contains, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = <@, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_contained(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_contained(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_contained(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = span_contained, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = @>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_overlaps(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overlaps(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overlaps(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = span_overlaps, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = &&, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_left(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR << ( + PROCEDURE = span_left, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = >>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_left(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_left(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = span_left, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = #>>, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_right(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR >> ( + PROCEDURE = span_right, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = <<, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_right(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_right(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = span_right, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = <<#, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_overleft(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = integer, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspan, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspanset, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspanset, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = intspanset, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigint, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspanset, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = float, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspan, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspanset, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspanset, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = span_overleft, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = date, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespan, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespanset, RIGHTARG = date, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespanset, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = datespanset, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overleft(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overleft(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = span_overleft, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_overright(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = integer, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspan, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspanset, RIGHTARG = integer, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspanset, RIGHTARG = intspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = intspanset, RIGHTARG = intspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigint, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspanset, RIGHTARG = bigint, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = float, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspan, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspanset, RIGHTARG = float, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspanset, RIGHTARG = floatspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = span_overright, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = date, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespan, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespanset, RIGHTARG = date, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespanset, RIGHTARG = datespan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = datespanset, RIGHTARG = datespanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_overright(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_overright(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = span_overright, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_adjacent(integer, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspan, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspanset, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspanset, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(intspanset, intspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(bigint, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspan, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspanset, bigint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspanset, bigintspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(bigintspanset, bigintspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(float, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspan, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspanset, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspanset, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(floatspanset, floatspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(date, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespan, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespanset, date) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespanset, datespan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(datespanset, datespanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +CREATE FUNCTION span_adjacent(timestamptz, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspan, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspanset, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspanset, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_adjacent(tstzspanset, tstzspanset) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = span_adjacent, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = -|-, + RESTRICT = span_sel, JOIN = span_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION span_union(integer, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspan, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspanset, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspanset, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(intspanset, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Union_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(bigint, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspan, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspanset, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspanset, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(bigintspanset, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Union_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(float, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspan, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspanset, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspanset, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(floatspanset, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Union_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(date, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespan, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespanset, date) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespanset, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(datespanset, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Union_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = + +); + +CREATE FUNCTION span_union(timestamptz, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspan, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspanset, timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspanset, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_union(tstzspanset, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Union_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = span_union, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = + +); + +/*****************************************************************************/ + +CREATE FUNCTION span_minus(integer, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspan, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspanset, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspanset, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(intspanset, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = integer, RIGHTARG = intspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspan, RIGHTARG = intspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspanset, RIGHTARG = integer +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspanset, RIGHTARG = intspan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = intspanset, RIGHTARG = intspanset +); + +CREATE FUNCTION span_minus(bigint, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspan, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspanset, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspanset, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(bigintspanset, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigint, RIGHTARG = bigintspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspan, RIGHTARG = bigintspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspanset, RIGHTARG = bigint +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspanset, RIGHTARG = bigintspan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset +); + +CREATE FUNCTION span_minus(float, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspan, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspanset, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspanset, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(floatspanset, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = float, RIGHTARG = floatspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspan, RIGHTARG = floatspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspanset, RIGHTARG = float +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspanset, RIGHTARG = floatspan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = floatspanset, RIGHTARG = floatspanset +); + +CREATE FUNCTION span_minus(date, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespan, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespanset, date) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespanset, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(datespanset, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Minus_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = date, RIGHTARG = datespanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespan, RIGHTARG = datespanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespanset, RIGHTARG = date +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespanset, RIGHTARG = datespan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = datespanset, RIGHTARG = datespanset +); + +CREATE FUNCTION span_minus(timestamptz, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspan, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspanset, timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspanset, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_minus(tstzspanset, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Minus_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = timestamptz, RIGHTARG = tstzspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspan, RIGHTARG = tstzspanset +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspanset, RIGHTARG = timestamptz +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspanset, RIGHTARG = tstzspan +); +CREATE OPERATOR - ( + PROCEDURE = span_minus, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset +); + +/*****************************************************************************/ + +CREATE FUNCTION span_intersection(integer, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Intersection_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspan, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Intersection_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspanset, integer) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspanset, intspan) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(intspanset, intspanset) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(bigint, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Intersection_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspan, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Intersection_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspanset, bigint) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspanset, bigintspan) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(bigintspanset, bigintspanset) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(float, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intersection_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspan, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intersection_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspanset, float) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspanset, floatspan) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(floatspanset, floatspanset) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(date, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Intersection_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespan, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Intersection_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespanset, date) + RETURNS date + AS 'MODULE_PATHNAME', 'Intersection_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespanset, datespan) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(datespanset, datespanset) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = * +); + +CREATE FUNCTION span_intersection(timestamptz, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Intersection_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspan, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Intersection_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspanset, timestamptz) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspanset, tstzspan) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_intersection(tstzspanset, tstzspanset) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Intersection_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = span_intersection, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = * +); + +/***************************************************************************** + * Distance operators + *****************************************************************************/ + +CREATE FUNCTION span_distance(integer, intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspan, intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspanset, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspanset, intspan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(intspanset, intspanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = integer, RIGHTARG = intspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspan, RIGHTARG = intspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspanset, RIGHTARG = integer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspanset, RIGHTARG = intspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = intspanset, RIGHTARG = intspanset, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(bigint, bigintspanset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspan, bigintspanset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspanset, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspanset, bigintspan) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(bigintspanset, bigintspanset) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Distance_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigint, RIGHTARG = bigintspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspan, RIGHTARG = bigintspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspanset, RIGHTARG = bigint, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspanset, RIGHTARG = bigintspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = bigintspanset, RIGHTARG = bigintspanset, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(float, floatspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspan, floatspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspanset, float) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspanset, floatspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(floatspanset, floatspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = float, RIGHTARG = floatspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspan, RIGHTARG = floatspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspanset, RIGHTARG = float, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspanset, RIGHTARG = floatspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = floatspanset, RIGHTARG = floatspanset, + COMMUTATOR = <-> +); + +CREATE FUNCTION span_distance(date, datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespan, datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespanset, date) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespanset, datespan) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_distance(datespanset, datespanset) + RETURNS integer + AS 'MODULE_PATHNAME', 'Distance_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = date, RIGHTARG = datespanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespan, RIGHTARG = datespanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespanset, RIGHTARG = date, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespanset, RIGHTARG = datespan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = span_distance, + LEFTARG = datespanset, RIGHTARG = datespanset, + COMMUTATOR = <-> +); + +CREATE FUNCTION time_distance(timestamptz, tstzspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_value_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION time_distance(tstzspan, tstzspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_span_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION time_distance(tstzspanset, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION time_distance(tstzspanset, tstzspan) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION time_distance(tstzspanset, tstzspanset) + RETURNS float + AS 'MODULE_PATHNAME', 'Distance_spanset_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = time_distance, + LEFTARG = timestamptz, RIGHTARG = tstzspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = time_distance, + LEFTARG = tstzspan, RIGHTARG = tstzspanset, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = time_distance, + LEFTARG = tstzspanset, RIGHTARG = timestamptz, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = time_distance, + LEFTARG = tstzspanset, RIGHTARG = tstzspan, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = time_distance, + LEFTARG = tstzspanset, RIGHTARG = tstzspanset, + COMMUTATOR = <-> +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/011_span_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/011_span_indexes.in.sql new file mode 100644 index 00000000..50ce8194 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/011_span_indexes.in.sql @@ -0,0 +1,889 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST, Quad-tree SP-GiST, and Kd-tree SP-GiST indexes for span + * types + */ + +/****************************************************************************** + * R-tree GiST indexes + ******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, intspan, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_union(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_union' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_penalty(internal, internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_penalty' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_picksplit(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_same(intspan, intspan, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, intspan, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_fetch(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_fetch' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intspan_rtree_ops + DEFAULT FOR TYPE intspan USING gist AS + -- strictly left + OPERATOR 1 << (intspan, integer), + OPERATOR 1 << (intspan, intspan), + OPERATOR 1 << (intspan, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspan, integer), + OPERATOR 2 &< (intspan, intspan), + OPERATOR 2 &< (intspan, intspanset), + -- overlaps + OPERATOR 3 && (intspan, intspan), + OPERATOR 3 && (intspan, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspan, integer), + OPERATOR 4 &> (intspan, intspan), + OPERATOR 4 &> (intspan, intspanset), + -- strictly right + OPERATOR 5 >> (intspan, integer), + OPERATOR 5 >> (intspan, intspan), + OPERATOR 5 >> (intspan, intspanset), + -- contains + OPERATOR 7 @> (intspan, integer), + OPERATOR 7 @> (intspan, intspan), + OPERATOR 7 @> (intspan, intspanset), + -- contained by + OPERATOR 8 <@ (intspan, intspan), + OPERATOR 8 <@ (intspan, intspanset), + -- adjacent + OPERATOR 17 -|- (intspan, intspan), + OPERATOR 17 -|- (intspan, intspanset), + -- equals + OPERATOR 18 = (intspan, intspan), + -- nearest approach distance + OPERATOR 25 <-> (intspan, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, intspan, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(intspan, intspan, internal), + FUNCTION 8 span_gist_distance(internal, intspan, smallint, oid, internal), + FUNCTION 9 span_gist_fetch(internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, bigintspan, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_same(bigintspan, bigintspan, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, bigintspan, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspan_rtree_ops + DEFAULT FOR TYPE bigintspan USING gist AS + -- strictly left + OPERATOR 1 << (bigintspan, bigint), + OPERATOR 1 << (bigintspan, bigintspan), + OPERATOR 1 << (bigintspan, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspan, bigint), + OPERATOR 2 &< (bigintspan, bigintspan), + OPERATOR 2 &< (bigintspan, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspan, bigintspan), + OPERATOR 3 && (bigintspan, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspan, bigint), + OPERATOR 4 &> (bigintspan, bigintspan), + OPERATOR 4 &> (bigintspan, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspan, bigint), + OPERATOR 5 >> (bigintspan, bigintspan), + OPERATOR 5 >> (bigintspan, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspan, bigint), + OPERATOR 7 @> (bigintspan, bigintspan), + OPERATOR 7 @> (bigintspan, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspan, bigintspan), + OPERATOR 8 <@ (bigintspan, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspan, bigintspan), + OPERATOR 17 -|- (bigintspan, bigintspanset), + -- equals + OPERATOR 18 = (bigintspan, bigintspan), + -- nearest approach distance + OPERATOR 25 <-> (bigintspan, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, bigintspan, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(bigintspan, bigintspan, internal), + FUNCTION 8 span_gist_distance(internal, bigintspan, smallint, oid, internal), + FUNCTION 9 span_gist_fetch(internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, floatspan, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_same(floatspan, floatspan, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, floatspan, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspan_rtree_ops + DEFAULT FOR TYPE floatspan USING gist AS + -- strictly left + OPERATOR 1 << (floatspan, float), + OPERATOR 1 << (floatspan, floatspan), + OPERATOR 1 << (floatspan, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspan, float), + OPERATOR 2 &< (floatspan, floatspan), + OPERATOR 2 &< (floatspan, floatspanset), + -- overlaps + OPERATOR 3 && (floatspan, floatspan), + OPERATOR 3 && (floatspan, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspan, float), + OPERATOR 4 &> (floatspan, floatspan), + OPERATOR 4 &> (floatspan, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspan, float), + OPERATOR 5 >> (floatspan, floatspan), + OPERATOR 5 >> (floatspan, floatspanset), + -- contains + OPERATOR 7 @> (floatspan, float), + OPERATOR 7 @> (floatspan, floatspan), + OPERATOR 7 @> (floatspan, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspan, floatspan), + OPERATOR 8 <@ (floatspan, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspan, floatspan), + OPERATOR 17 -|- (floatspan, floatspanset), + -- equals + OPERATOR 18 = (floatspan, floatspan), + -- nearest approach distance + OPERATOR 25 <-> (floatspan, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, floatspan, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(floatspan, floatspan, internal), + FUNCTION 8 span_gist_distance(internal, floatspan, smallint, oid, internal), + FUNCTION 9 span_gist_fetch(internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, datespan, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_same(datespan, datespan, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, datespan, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespan_rtree_ops + DEFAULT FOR TYPE datespan USING gist AS + -- strictly left + OPERATOR 1 <<# (datespan, date), + OPERATOR 1 <<# (datespan, datespan), + OPERATOR 1 <<# (datespan, datespanset), + -- overlaps or left + OPERATOR 2 &<# (datespan, date), + OPERATOR 2 &<# (datespan, datespan), + OPERATOR 2 &<# (datespan, datespanset), + -- overlaps + OPERATOR 3 && (datespan, datespan), + OPERATOR 3 && (datespan, datespanset), + -- overlaps or right + OPERATOR 4 #&> (datespan, date), + OPERATOR 4 #&> (datespan, datespan), + OPERATOR 4 #&> (datespan, datespanset), + -- strictly right + OPERATOR 5 #>> (datespan, date), + OPERATOR 5 #>> (datespan, datespan), + OPERATOR 5 #>> (datespan, datespanset), + -- contains + OPERATOR 7 @> (datespan, date), + OPERATOR 7 @> (datespan, datespan), + OPERATOR 7 @> (datespan, datespanset), + -- contained by + OPERATOR 8 <@ (datespan, datespan), + OPERATOR 8 <@ (datespan, datespanset), + -- adjacent + OPERATOR 17 -|- (datespan, datespan), + OPERATOR 17 -|- (datespan, datespanset), + -- equals + OPERATOR 18 = (datespan, datespan), + -- nearest approach distance + OPERATOR 25 <-> (datespan, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, datespan, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(datespan, datespan, internal), + FUNCTION 8 span_gist_distance(internal, datespan, smallint, oid, internal), + FUNCTION 9 span_gist_fetch(internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, tstzspan, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_same(tstzspan, tstzspan, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, tstzspan, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspan_rtree_ops + DEFAULT FOR TYPE tstzspan USING gist AS + -- overlaps + OPERATOR 3 && (tstzspan, tstzspan), + OPERATOR 3 && (tstzspan, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspan, timestamptz), + OPERATOR 7 @> (tstzspan, tstzspan), + OPERATOR 7 @> (tstzspan, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspan, tstzspan), + OPERATOR 8 <@ (tstzspan, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspan, tstzspan), + OPERATOR 17 -|- (tstzspan, tstzspanset), + -- equals + OPERATOR 18 = (tstzspan, tstzspan), + -- nearest approach distance + OPERATOR 25 <-> (tstzspan, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspan, timestamptz), + OPERATOR 28 &<# (tstzspan, tstzspan), + OPERATOR 28 &<# (tstzspan, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspan, timestamptz), + OPERATOR 29 <<# (tstzspan, tstzspan), + OPERATOR 29 <<# (tstzspan, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspan, timestamptz), + OPERATOR 30 #>> (tstzspan, tstzspan), + OPERATOR 30 #>> (tstzspan, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspan, timestamptz), + OPERATOR 31 #&> (tstzspan, tstzspan), + OPERATOR 31 #&> (tstzspan, tstzspanset), + -- functions + FUNCTION 1 span_gist_consistent(internal, tstzspan, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(tstzspan, tstzspan, internal), + FUNCTION 8 span_gist_distance(internal, tstzspan, smallint, oid, internal), + FUNCTION 9 span_gist_fetch(internal); + +/****************************************************************************** + * Quad-tree SP-GiST indexes + ******************************************************************************/ + +CREATE FUNCTION intspan_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Intspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintspan_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Bigintspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Floatspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION datespan_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Datespan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tstzspan_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tstzspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION span_quadtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_quadtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_quadtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_quadtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_quadtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_quadtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_spgist_leaf_consistent(internal, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_spgist_leaf_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intspan_quadtree_ops + DEFAULT FOR TYPE intspan USING spgist AS + -- strictly left + OPERATOR 1 << (intspan, integer), + OPERATOR 1 << (intspan, intspan), + OPERATOR 1 << (intspan, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspan, integer), + OPERATOR 2 &< (intspan, intspan), + OPERATOR 2 &< (intspan, intspanset), + -- overlaps + OPERATOR 3 && (intspan, intspan), + OPERATOR 3 && (intspan, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspan, integer), + OPERATOR 4 &> (intspan, intspan), + OPERATOR 4 &> (intspan, intspanset), + -- strictly right + OPERATOR 5 >> (intspan, integer), + OPERATOR 5 >> (intspan, intspan), + OPERATOR 5 >> (intspan, intspanset), + -- contains + OPERATOR 7 @> (intspan, integer), + OPERATOR 7 @> (intspan, intspan), + OPERATOR 7 @> (intspan, intspanset), + -- contained by + OPERATOR 8 <@ (intspan, intspan), + OPERATOR 8 <@ (intspan, intspanset), + -- adjacent + OPERATOR 17 -|- (intspan, intspan), + OPERATOR 17 -|- (intspan, intspanset), + -- equals + OPERATOR 18 = (intspan, intspan), + -- nearest approach distance + OPERATOR 25 <-> (intspan, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspan_quadtree_ops + DEFAULT FOR TYPE bigintspan USING spgist AS + -- strictly left + OPERATOR 1 << (bigintspan, bigint), + OPERATOR 1 << (bigintspan, bigintspan), + OPERATOR 1 << (bigintspan, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspan, bigint), + OPERATOR 2 &< (bigintspan, bigintspan), + OPERATOR 2 &< (bigintspan, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspan, bigintspan), + OPERATOR 3 && (bigintspan, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspan, bigint), + OPERATOR 4 &> (bigintspan, bigintspan), + OPERATOR 4 &> (bigintspan, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspan, bigint), + OPERATOR 5 >> (bigintspan, bigintspan), + OPERATOR 5 >> (bigintspan, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspan, bigint), + OPERATOR 7 @> (bigintspan, bigintspan), + OPERATOR 7 @> (bigintspan, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspan, bigintspan), + OPERATOR 8 <@ (bigintspan, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspan, bigintspan), + OPERATOR 17 -|- (bigintspan, bigintspanset), + -- equals + OPERATOR 18 = (bigintspan, bigintspan), + -- nearest approach distance + OPERATOR 25 <-> (bigintspan, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 bigintspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspan_quadtree_ops + DEFAULT FOR TYPE floatspan USING spgist AS + -- strictly left + OPERATOR 1 << (floatspan, float), + OPERATOR 1 << (floatspan, floatspan), + OPERATOR 1 << (floatspan, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspan, float), + OPERATOR 2 &< (floatspan, floatspan), + OPERATOR 2 &< (floatspan, floatspanset), + -- overlaps + OPERATOR 3 && (floatspan, floatspan), + OPERATOR 3 && (floatspan, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspan, float), + OPERATOR 4 &> (floatspan, floatspan), + OPERATOR 4 &> (floatspan, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspan, float), + OPERATOR 5 >> (floatspan, floatspan), + OPERATOR 5 >> (floatspan, floatspanset), + -- contains + OPERATOR 7 @> (floatspan, float), + OPERATOR 7 @> (floatspan, floatspan), + OPERATOR 7 @> (floatspan, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspan, floatspan), + OPERATOR 8 <@ (floatspan, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspan, floatspan), + OPERATOR 17 -|- (floatspan, floatspanset), + -- equals + OPERATOR 18 = (floatspan, floatspan), + -- nearest approach distance + OPERATOR 25 <-> (floatspan, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespan_quadtree_ops + DEFAULT FOR TYPE datespan USING spgist AS + -- overlaps + OPERATOR 3 && (datespan, datespan), + OPERATOR 3 && (datespan, datespanset), + -- contains + OPERATOR 7 @> (datespan, date), + OPERATOR 7 @> (datespan, datespan), + OPERATOR 7 @> (datespan, datespanset), + -- contained by + OPERATOR 8 <@ (datespan, datespan), + OPERATOR 8 <@ (datespan, datespanset), + -- adjacent + OPERATOR 17 -|- (datespan, datespan), + OPERATOR 17 -|- (datespan, datespanset), + -- equals + OPERATOR 18 = (datespan, datespan), + -- nearest approach distance + OPERATOR 25 <-> (datespan, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (datespan, date), + OPERATOR 28 &<# (datespan, datespan), + OPERATOR 28 &<# (datespan, datespanset), + -- strictly before + OPERATOR 29 <<# (datespan, date), + OPERATOR 29 <<# (datespan, datespan), + OPERATOR 29 <<# (datespan, datespanset), + -- strictly after + OPERATOR 30 #>> (datespan, date), + OPERATOR 30 #>> (datespan, datespan), + OPERATOR 30 #>> (datespan, datespanset), + -- overlaps or after + OPERATOR 31 #&> (datespan, date), + OPERATOR 31 #&> (datespan, datespan), + OPERATOR 31 #&> (datespan, datespanset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspan_quadtree_ops + DEFAULT FOR TYPE tstzspan USING spgist AS + -- overlaps + OPERATOR 3 && (tstzspan, tstzspan), + OPERATOR 3 && (tstzspan, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspan, timestamptz), + OPERATOR 7 @> (tstzspan, tstzspan), + OPERATOR 7 @> (tstzspan, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspan, tstzspan), + OPERATOR 8 <@ (tstzspan, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspan, tstzspan), + OPERATOR 17 -|- (tstzspan, tstzspanset), + -- equals + OPERATOR 18 = (tstzspan, tstzspan), + -- nearest approach distance + OPERATOR 25 <-> (tstzspan, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspan, timestamptz), + OPERATOR 28 &<# (tstzspan, tstzspan), + OPERATOR 28 &<# (tstzspan, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspan, timestamptz), + OPERATOR 29 <<# (tstzspan, tstzspan), + OPERATOR 29 <<# (tstzspan, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspan, timestamptz), + OPERATOR 30 #>> (tstzspan, tstzspan), + OPERATOR 30 #>> (tstzspan, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspan, timestamptz), + OPERATOR 31 #&> (tstzspan, tstzspan), + OPERATOR 31 #&> (tstzspan, tstzspanset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/****************************************************************************** + * Kd-tree SP-GiST indexes + ******************************************************************************/ + +CREATE FUNCTION span_kdtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_kdtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_kdtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_kdtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_kdtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Span_kdtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intspan_kdtree_ops + FOR TYPE intspan USING spgist AS + -- strictly left + OPERATOR 1 << (intspan, integer), + OPERATOR 1 << (intspan, intspan), + OPERATOR 1 << (intspan, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspan, integer), + OPERATOR 2 &< (intspan, intspan), + OPERATOR 2 &< (intspan, intspanset), + -- overlaps + OPERATOR 3 && (intspan, intspan), + OPERATOR 3 && (intspan, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspan, integer), + OPERATOR 4 &> (intspan, intspan), + OPERATOR 4 &> (intspan, intspanset), + -- strictly right + OPERATOR 5 >> (intspan, integer), + OPERATOR 5 >> (intspan, intspan), + OPERATOR 5 >> (intspan, intspanset), + -- contains + OPERATOR 7 @> (intspan, integer), + OPERATOR 7 @> (intspan, intspan), + OPERATOR 7 @> (intspan, intspanset), + -- contained by + OPERATOR 8 <@ (intspan, intspan), + OPERATOR 8 <@ (intspan, intspanset), + -- adjacent + OPERATOR 17 -|- (intspan, intspan), + OPERATOR 17 -|- (intspan, intspanset), + -- equals + OPERATOR 18 = (intspan, intspan), + -- nearest approach distance + OPERATOR 25 <-> (intspan, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspan, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspan_kdtree_ops + FOR TYPE bigintspan USING spgist AS + -- strictly left + OPERATOR 1 << (bigintspan, bigint), + OPERATOR 1 << (bigintspan, bigintspan), + OPERATOR 1 << (bigintspan, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspan, bigint), + OPERATOR 2 &< (bigintspan, bigintspan), + OPERATOR 2 &< (bigintspan, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspan, bigintspan), + OPERATOR 3 && (bigintspan, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspan, bigint), + OPERATOR 4 &> (bigintspan, bigintspan), + OPERATOR 4 &> (bigintspan, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspan, bigint), + OPERATOR 5 >> (bigintspan, bigintspan), + OPERATOR 5 >> (bigintspan, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspan, bigint), + OPERATOR 7 @> (bigintspan, bigintspan), + OPERATOR 7 @> (bigintspan, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspan, bigintspan), + OPERATOR 8 <@ (bigintspan, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspan, bigintspan), + OPERATOR 17 -|- (bigintspan, bigintspanset), + -- equals + OPERATOR 18 = (bigintspan, bigintspan), + -- nearest approach distance + OPERATOR 25 <-> (bigintspan, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspan, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 bigintspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspan_kdtree_ops + FOR TYPE floatspan USING spgist AS + -- strictly left + OPERATOR 1 << (floatspan, float), + OPERATOR 1 << (floatspan, floatspan), + OPERATOR 1 << (floatspan, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspan, float), + OPERATOR 2 &< (floatspan, floatspan), + OPERATOR 2 &< (floatspan, floatspanset), + -- overlaps + OPERATOR 3 && (floatspan, floatspan), + OPERATOR 3 && (floatspan, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspan, float), + OPERATOR 4 &> (floatspan, floatspan), + OPERATOR 4 &> (floatspan, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspan, float), + OPERATOR 5 >> (floatspan, floatspan), + OPERATOR 5 >> (floatspan, floatspanset), + -- contains + OPERATOR 7 @> (floatspan, float), + OPERATOR 7 @> (floatspan, floatspan), + OPERATOR 7 @> (floatspan, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspan, floatspan), + OPERATOR 8 <@ (floatspan, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspan, floatspan), + OPERATOR 17 -|- (floatspan, floatspanset), + -- equals + OPERATOR 18 = (floatspan, floatspan), + -- nearest approach distance + OPERATOR 25 <-> (floatspan, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspan, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespan_kdtree_ops + FOR TYPE datespan USING spgist AS + -- overlaps + OPERATOR 3 && (datespan, datespan), + OPERATOR 3 && (datespan, datespanset), + -- contains + OPERATOR 7 @> (datespan, date), + OPERATOR 7 @> (datespan, datespan), + OPERATOR 7 @> (datespan, datespanset), + -- contained by + OPERATOR 8 <@ (datespan, datespan), + OPERATOR 8 <@ (datespan, datespanset), + -- adjacent + OPERATOR 17 -|- (datespan, datespan), + OPERATOR 17 -|- (datespan, datespanset), + -- equals + OPERATOR 18 = (datespan, datespan), + -- nearest approach distance + OPERATOR 25 <-> (datespan, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespan, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (datespan, date), + OPERATOR 28 &<# (datespan, datespan), + OPERATOR 28 &<# (datespan, datespanset), + -- strictly before + OPERATOR 29 <<# (datespan, date), + OPERATOR 29 <<# (datespan, datespan), + OPERATOR 29 <<# (datespan, datespanset), + -- strictly after + OPERATOR 30 #>> (datespan, date), + OPERATOR 30 #>> (datespan, datespan), + OPERATOR 30 #>> (datespan, datespanset), + -- overlaps or after + OPERATOR 31 #&> (datespan, date), + OPERATOR 31 #&> (datespan, datespan), + OPERATOR 31 #&> (datespan, datespanset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspan_kdtree_ops + FOR TYPE tstzspan USING spgist AS + -- overlaps + OPERATOR 3 && (tstzspan, tstzspan), + OPERATOR 3 && (tstzspan, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspan, timestamptz), + OPERATOR 7 @> (tstzspan, tstzspan), + OPERATOR 7 @> (tstzspan, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspan, tstzspan), + OPERATOR 8 <@ (tstzspan, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspan, tstzspan), + OPERATOR 17 -|- (tstzspan, tstzspanset), + -- equals + OPERATOR 18 = (tstzspan, tstzspan), + -- nearest approach distance + OPERATOR 25 <-> (tstzspan, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspan, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspan, timestamptz), + OPERATOR 28 &<# (tstzspan, tstzspan), + OPERATOR 28 &<# (tstzspan, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspan, timestamptz), + OPERATOR 29 <<# (tstzspan, tstzspan), + OPERATOR 29 <<# (tstzspan, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspan, timestamptz), + OPERATOR 30 #>> (tstzspan, tstzspan), + OPERATOR 30 #>> (tstzspan, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspan, timestamptz), + OPERATOR 31 #&> (tstzspan, tstzspan), + OPERATOR 31 #&> (tstzspan, tstzspanset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/012_spanset_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/012_spanset_indexes.in.sql new file mode 100644 index 00000000..806570f6 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/012_spanset_indexes.in.sql @@ -0,0 +1,789 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST and Quad-tree SP-GiST, and Kd-tree SP-GiST indexes for + * span set types + */ + +/****************************************************************************** + * R-tree GiST indexes + ******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, intspanset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_consistent(internal, bigintspanset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_consistent(internal, floatspanset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_consistent(internal, datespanset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_consistent(internal, tstzspanset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spanset_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intspanset_rtree_ops + DEFAULT FOR TYPE intspanset USING gist AS + STORAGE intspan, + -- strictly left + OPERATOR 1 << (intspanset, integer), + OPERATOR 1 << (intspanset, intspan), + OPERATOR 1 << (intspanset, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspanset, integer), + OPERATOR 2 &< (intspanset, intspan), + OPERATOR 2 &< (intspanset, intspanset), + -- overlaps + OPERATOR 3 && (intspanset, intspan), + OPERATOR 3 && (intspanset, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspanset, integer), + OPERATOR 4 &> (intspanset, intspan), + OPERATOR 4 &> (intspanset, intspanset), + -- strictly right + OPERATOR 5 >> (intspanset, integer), + OPERATOR 5 >> (intspanset, intspan), + OPERATOR 5 >> (intspanset, intspanset), + -- contains + OPERATOR 7 @> (intspanset, integer), + OPERATOR 7 @> (intspanset, intspan), + OPERATOR 7 @> (intspanset, intspanset), + -- contained by + OPERATOR 8 <@ (intspanset, intspan), + OPERATOR 8 <@ (intspanset, intspanset), + -- adjacent + OPERATOR 17 -|- (intspanset, intspan), + OPERATOR 17 -|- (intspanset, intspanset), + -- equals + OPERATOR 18 = (intspanset, intspanset), + -- nearest approach distance + OPERATOR 25 <-> (intspanset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, intspanset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 spanset_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(intspan, intspan, internal), + FUNCTION 8 span_gist_distance(internal, intspan, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspanset_rtree_ops + DEFAULT FOR TYPE bigintspanset USING gist AS + STORAGE bigintspan, + -- strictly left + OPERATOR 1 << (bigintspanset, bigint), + OPERATOR 1 << (bigintspanset, bigintspan), + OPERATOR 1 << (bigintspanset, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspanset, bigint), + OPERATOR 2 &< (bigintspanset, bigintspan), + OPERATOR 2 &< (bigintspanset, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspanset, bigintspan), + OPERATOR 3 && (bigintspanset, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspanset, bigint), + OPERATOR 4 &> (bigintspanset, bigintspan), + OPERATOR 4 &> (bigintspanset, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspanset, bigint), + OPERATOR 5 >> (bigintspanset, bigintspan), + OPERATOR 5 >> (bigintspanset, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspanset, bigint), + OPERATOR 7 @> (bigintspanset, bigintspan), + OPERATOR 7 @> (bigintspanset, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspanset, bigintspan), + OPERATOR 8 <@ (bigintspanset, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspanset, bigintspan), + OPERATOR 17 -|- (bigintspanset, bigintspanset), + -- equals + OPERATOR 18 = (bigintspanset, bigintspanset), + -- nearest approach distance + OPERATOR 25 <-> (bigintspanset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, bigintspanset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 spanset_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(bigintspan, bigintspan, internal), + FUNCTION 8 span_gist_distance(internal, bigintspan, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspanset_rtree_ops + DEFAULT FOR TYPE floatspanset USING gist AS + STORAGE floatspan, + -- strictly left + OPERATOR 1 << (floatspanset, float), + OPERATOR 1 << (floatspanset, floatspan), + OPERATOR 1 << (floatspanset, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspanset, float), + OPERATOR 2 &< (floatspanset, floatspan), + OPERATOR 2 &< (floatspanset, floatspanset), + -- overlaps + OPERATOR 3 && (floatspanset, floatspan), + OPERATOR 3 && (floatspanset, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspanset, float), + OPERATOR 4 &> (floatspanset, floatspan), + OPERATOR 4 &> (floatspanset, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspanset, float), + OPERATOR 5 >> (floatspanset, floatspan), + OPERATOR 5 >> (floatspanset, floatspanset), + -- contains + OPERATOR 7 @> (floatspanset, float), + OPERATOR 7 @> (floatspanset, floatspan), + OPERATOR 7 @> (floatspanset, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspanset, floatspan), + OPERATOR 8 <@ (floatspanset, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspanset, floatspan), + OPERATOR 17 -|- (floatspanset, floatspanset), + -- equals + OPERATOR 18 = (floatspanset, floatspanset), + -- nearest approach distance + OPERATOR 25 <-> (floatspanset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, floatspanset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 spanset_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(floatspan, floatspan, internal), + FUNCTION 8 span_gist_distance(internal, floatspan, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespanset_rtree_ops + DEFAULT FOR TYPE datespanset USING gist AS + STORAGE datespan, + -- overlaps + OPERATOR 3 && (datespanset, datespan), + OPERATOR 3 && (datespanset, datespanset), + -- contains + OPERATOR 7 @> (datespanset, date), + OPERATOR 7 @> (datespanset, datespan), + OPERATOR 7 @> (datespanset, datespanset), + -- contained by + OPERATOR 8 <@ (datespanset, datespan), + OPERATOR 8 <@ (datespanset, datespanset), + -- adjacent + OPERATOR 17 -|- (datespanset, datespan), + OPERATOR 17 -|- (datespanset, datespanset), + -- equals + OPERATOR 18 = (datespanset, datespanset), + -- nearest approach distance + OPERATOR 25 <-> (datespanset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (datespanset, date), + OPERATOR 28 &<# (datespanset, datespan), + OPERATOR 28 &<# (datespanset, datespanset), + -- strictly before + OPERATOR 29 <<# (datespanset, date), + OPERATOR 29 <<# (datespanset, datespan), + OPERATOR 29 <<# (datespanset, datespanset), + -- strictly after + OPERATOR 30 #>> (datespanset, date), + OPERATOR 30 #>> (datespanset, datespan), + OPERATOR 30 #>> (datespanset, datespanset), + -- overlaps or after + OPERATOR 31 #&> (datespanset, date), + OPERATOR 31 #&> (datespanset, datespan), + OPERATOR 31 #&> (datespanset, datespanset), + -- functions + FUNCTION 1 span_gist_consistent(internal, datespanset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 spanset_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(datespan, datespan, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspanset_rtree_ops + DEFAULT FOR TYPE tstzspanset USING gist AS + STORAGE tstzspan, + -- overlaps + OPERATOR 3 && (tstzspanset, tstzspan), + OPERATOR 3 && (tstzspanset, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspanset, timestamptz), + OPERATOR 7 @> (tstzspanset, tstzspan), + OPERATOR 7 @> (tstzspanset, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspanset, tstzspan), + OPERATOR 8 <@ (tstzspanset, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspanset, tstzspan), + OPERATOR 17 -|- (tstzspanset, tstzspanset), + -- equals + OPERATOR 18 = (tstzspanset, tstzspanset), + -- nearest approach distance + OPERATOR 25 <-> (tstzspanset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspanset, timestamptz), + OPERATOR 28 &<# (tstzspanset, tstzspan), + OPERATOR 28 &<# (tstzspanset, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspanset, timestamptz), + OPERATOR 29 <<# (tstzspanset, tstzspan), + OPERATOR 29 <<# (tstzspanset, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspanset, timestamptz), + OPERATOR 30 #>> (tstzspanset, tstzspan), + OPERATOR 30 #>> (tstzspanset, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspanset, timestamptz), + OPERATOR 31 #&> (tstzspanset, tstzspan), + OPERATOR 31 #&> (tstzspanset, tstzspanset), + -- functions + FUNCTION 1 span_gist_consistent(internal, tstzspanset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 spanset_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(tstzspan, tstzspan, internal); + +/****************************************************************************** + * Quad-tree SP-GiST indexes + ******************************************************************************/ + +CREATE FUNCTION spanset_spgist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_spgist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intspanset_quadtree_ops + DEFAULT FOR TYPE intspanset USING spgist AS + -- strictly left + OPERATOR 1 << (intspanset, integer), + OPERATOR 1 << (intspanset, intspan), + OPERATOR 1 << (intspanset, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspanset, integer), + OPERATOR 2 &< (intspanset, intspan), + OPERATOR 2 &< (intspanset, intspanset), + -- overlaps + OPERATOR 3 && (intspanset, intspan), + OPERATOR 3 && (intspanset, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspanset, integer), + OPERATOR 4 &> (intspanset, intspan), + OPERATOR 4 &> (intspanset, intspanset), + -- strictly right + OPERATOR 5 >> (intspanset, integer), + OPERATOR 5 >> (intspanset, intspan), + OPERATOR 5 >> (intspanset, intspanset), + -- contains + OPERATOR 7 @> (intspanset, integer), + OPERATOR 7 @> (intspanset, intspan), + OPERATOR 7 @> (intspanset, intspanset), + -- contained by + OPERATOR 8 <@ (intspanset, intspan), + OPERATOR 8 <@ (intspanset, intspanset), + -- adjacent + OPERATOR 17 -|- (intspanset, intspan), + OPERATOR 17 -|- (intspanset, intspanset), + -- equals + OPERATOR 18 = (intspanset, intspanset), + -- nearest approach distance + OPERATOR 25 <-> (intspanset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspanset_quadtree_ops + DEFAULT FOR TYPE bigintspanset USING spgist AS + -- strictly left + OPERATOR 1 << (bigintspanset, bigint), + OPERATOR 1 << (bigintspanset, bigintspan), + OPERATOR 1 << (bigintspanset, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspanset, bigint), + OPERATOR 2 &< (bigintspanset, bigintspan), + OPERATOR 2 &< (bigintspanset, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspanset, bigintspan), + OPERATOR 3 && (bigintspanset, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspanset, bigint), + OPERATOR 4 &> (bigintspanset, bigintspan), + OPERATOR 4 &> (bigintspanset, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspanset, bigint), + OPERATOR 5 >> (bigintspanset, bigintspan), + OPERATOR 5 >> (bigintspanset, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspanset, bigint), + OPERATOR 7 @> (bigintspanset, bigintspan), + OPERATOR 7 @> (bigintspanset, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspanset, bigintspan), + OPERATOR 8 <@ (bigintspanset, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspanset, bigintspan), + OPERATOR 17 -|- (bigintspanset, bigintspanset), + -- equals + OPERATOR 18 = (bigintspanset, bigintspanset), + -- nearest approach distance + OPERATOR 25 <-> (bigintspanset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspanset_quadtree_ops + DEFAULT FOR TYPE floatspanset USING spgist AS + -- strictly left + OPERATOR 1 << (floatspanset, float), + OPERATOR 1 << (floatspanset, floatspan), + OPERATOR 1 << (floatspanset, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspanset, float), + OPERATOR 2 &< (floatspanset, floatspan), + OPERATOR 2 &< (floatspanset, floatspanset), + -- overlaps + OPERATOR 3 && (floatspanset, floatspan), + OPERATOR 3 && (floatspanset, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspanset, float), + OPERATOR 4 &> (floatspanset, floatspan), + OPERATOR 4 &> (floatspanset, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspanset, float), + OPERATOR 5 >> (floatspanset, floatspan), + OPERATOR 5 >> (floatspanset, floatspanset), + -- contains + OPERATOR 7 @> (floatspanset, float), + OPERATOR 7 @> (floatspanset, floatspan), + OPERATOR 7 @> (floatspanset, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspanset, floatspan), + OPERATOR 8 <@ (floatspanset, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspanset, floatspan), + OPERATOR 17 -|- (floatspanset, floatspanset), + -- equals + OPERATOR 18 = (floatspanset, floatspanset), + -- nearest approach distance + OPERATOR 25 <-> (floatspanset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespanset_quadtree_ops + DEFAULT FOR TYPE datespanset USING spgist AS + -- overlaps + OPERATOR 3 && (datespanset, datespan), + OPERATOR 3 && (datespanset, datespanset), + -- contains + OPERATOR 7 @> (datespanset, date), + OPERATOR 7 @> (datespanset, datespan), + OPERATOR 7 @> (datespanset, datespanset), + -- contained by + OPERATOR 8 <@ (datespanset, datespan), + OPERATOR 8 <@ (datespanset, datespanset), + -- adjacent + OPERATOR 17 -|- (datespanset, datespan), + OPERATOR 17 -|- (datespanset, datespanset), +-- equals + OPERATOR 18 = (datespanset, datespanset), + -- nearest approach distance + OPERATOR 25 <-> (datespanset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (datespanset, date), + OPERATOR 28 &<# (datespanset, datespan), + OPERATOR 28 &<# (datespanset, datespanset), + -- strictly before + OPERATOR 29 <<# (datespanset, date), + OPERATOR 29 <<# (datespanset, datespan), + OPERATOR 29 <<# (datespanset, datespanset), + -- strictly after + OPERATOR 30 #>> (datespanset, date), + OPERATOR 30 #>> (datespanset, datespan), + OPERATOR 30 #>> (datespanset, datespanset), + -- overlaps or after + OPERATOR 31 #&> (datespanset, date), + OPERATOR 31 #&> (datespanset, datespan), + OPERATOR 31 #&> (datespanset, datespanset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspanset_quadtree_ops + DEFAULT FOR TYPE tstzspanset USING spgist AS + -- overlaps + OPERATOR 3 && (tstzspanset, tstzspan), + OPERATOR 3 && (tstzspanset, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspanset, timestamptz), + OPERATOR 7 @> (tstzspanset, tstzspan), + OPERATOR 7 @> (tstzspanset, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspanset, tstzspan), + OPERATOR 8 <@ (tstzspanset, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspanset, tstzspan), + OPERATOR 17 -|- (tstzspanset, tstzspanset), +-- equals + OPERATOR 18 = (tstzspanset, tstzspanset), + -- nearest approach distance + OPERATOR 25 <-> (tstzspanset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspanset, timestamptz), + OPERATOR 28 &<# (tstzspanset, tstzspan), + OPERATOR 28 &<# (tstzspanset, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspanset, timestamptz), + OPERATOR 29 <<# (tstzspanset, tstzspan), + OPERATOR 29 <<# (tstzspanset, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspanset, timestamptz), + OPERATOR 30 #>> (tstzspanset, tstzspan), + OPERATOR 30 #>> (tstzspanset, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspanset, timestamptz), + OPERATOR 31 #&> (tstzspanset, tstzspan), + OPERATOR 31 #&> (tstzspanset, tstzspanset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/****************************************************************************** + * Kd-tree SP-GiST indexes + ******************************************************************************/ + +CREATE OPERATOR CLASS intspanset_kdtree_ops + FOR TYPE intspanset USING spgist AS + -- strictly left + OPERATOR 1 << (intspanset, integer), + OPERATOR 1 << (intspanset, intspan), + OPERATOR 1 << (intspanset, intspanset), + -- overlaps or left + OPERATOR 2 &< (intspanset, integer), + OPERATOR 2 &< (intspanset, intspan), + OPERATOR 2 &< (intspanset, intspanset), + -- overlaps + OPERATOR 3 && (intspanset, intspan), + OPERATOR 3 && (intspanset, intspanset), + -- overlaps or right + OPERATOR 4 &> (intspanset, integer), + OPERATOR 4 &> (intspanset, intspan), + OPERATOR 4 &> (intspanset, intspanset), + -- strictly right + OPERATOR 5 >> (intspanset, integer), + OPERATOR 5 >> (intspanset, intspan), + OPERATOR 5 >> (intspanset, intspanset), + -- contains + OPERATOR 7 @> (intspanset, integer), + OPERATOR 7 @> (intspanset, intspan), + OPERATOR 7 @> (intspanset, intspanset), + -- contained by + OPERATOR 8 <@ (intspanset, intspan), + OPERATOR 8 <@ (intspanset, intspanset), + -- adjacent + OPERATOR 17 -|- (intspanset, intspan), + OPERATOR 17 -|- (intspanset, intspanset), + -- equals + OPERATOR 18 = (intspanset, intspanset), + -- nearest approach distance + OPERATOR 25 <-> (intspanset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intspanset, intspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintspanset_kdtree_ops + FOR TYPE bigintspanset USING spgist AS + -- strictly left + OPERATOR 1 << (bigintspanset, bigint), + OPERATOR 1 << (bigintspanset, bigintspan), + OPERATOR 1 << (bigintspanset, bigintspanset), + -- overlaps or left + OPERATOR 2 &< (bigintspanset, bigint), + OPERATOR 2 &< (bigintspanset, bigintspan), + OPERATOR 2 &< (bigintspanset, bigintspanset), + -- overlaps + OPERATOR 3 && (bigintspanset, bigintspan), + OPERATOR 3 && (bigintspanset, bigintspanset), + -- overlaps or right + OPERATOR 4 &> (bigintspanset, bigint), + OPERATOR 4 &> (bigintspanset, bigintspan), + OPERATOR 4 &> (bigintspanset, bigintspanset), + -- strictly right + OPERATOR 5 >> (bigintspanset, bigint), + OPERATOR 5 >> (bigintspanset, bigintspan), + OPERATOR 5 >> (bigintspanset, bigintspanset), + -- contains + OPERATOR 7 @> (bigintspanset, bigint), + OPERATOR 7 @> (bigintspanset, bigintspan), + OPERATOR 7 @> (bigintspanset, bigintspanset), + -- contained by + OPERATOR 8 <@ (bigintspanset, bigintspan), + OPERATOR 8 <@ (bigintspanset, bigintspanset), + -- adjacent + OPERATOR 17 -|- (bigintspanset, bigintspan), + OPERATOR 17 -|- (bigintspanset, bigintspanset), + -- equals + OPERATOR 18 = (bigintspanset, bigintspanset), + -- nearest approach distance + OPERATOR 25 <-> (bigintspanset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintspanset, bigintspanset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatspanset_kdtree_ops + FOR TYPE floatspanset USING spgist AS + -- strictly left + OPERATOR 1 << (floatspanset, float), + OPERATOR 1 << (floatspanset, floatspan), + OPERATOR 1 << (floatspanset, floatspanset), + -- overlaps or left + OPERATOR 2 &< (floatspanset, float), + OPERATOR 2 &< (floatspanset, floatspan), + OPERATOR 2 &< (floatspanset, floatspanset), + -- overlaps + OPERATOR 3 && (floatspanset, floatspan), + OPERATOR 3 && (floatspanset, floatspanset), + -- overlaps or right + OPERATOR 4 &> (floatspanset, float), + OPERATOR 4 &> (floatspanset, floatspan), + OPERATOR 4 &> (floatspanset, floatspanset), + -- strictly right + OPERATOR 5 >> (floatspanset, float), + OPERATOR 5 >> (floatspanset, floatspan), + OPERATOR 5 >> (floatspanset, floatspanset), + -- contains + OPERATOR 7 @> (floatspanset, float), + OPERATOR 7 @> (floatspanset, floatspan), + OPERATOR 7 @> (floatspanset, floatspanset), + -- contained by + OPERATOR 8 <@ (floatspanset, floatspan), + OPERATOR 8 <@ (floatspanset, floatspanset), + -- adjacent + OPERATOR 17 -|- (floatspanset, floatspan), + OPERATOR 17 -|- (floatspanset, floatspanset), + -- equals + OPERATOR 18 = (floatspanset, floatspanset), + -- nearest approach distance + OPERATOR 25 <-> (floatspanset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatspanset, floatspanset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS datespanset_kdtree_ops + FOR TYPE datespanset USING spgist AS + -- overlaps + OPERATOR 3 && (datespanset, datespan), + OPERATOR 3 && (datespanset, datespanset), + -- contains + OPERATOR 7 @> (datespanset, date), + OPERATOR 7 @> (datespanset, datespan), + OPERATOR 7 @> (datespanset, datespanset), + -- contained by + OPERATOR 8 <@ (datespanset, datespan), + OPERATOR 8 <@ (datespanset, datespanset), + -- adjacent + OPERATOR 17 -|- (datespanset, datespan), + OPERATOR 17 -|- (datespanset, datespanset), +-- equals + OPERATOR 18 = (datespanset, datespanset), + -- nearest approach distance + OPERATOR 25 <-> (datespanset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespan) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (datespanset, datespanset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (datespanset, date), + OPERATOR 28 &<# (datespanset, datespan), + OPERATOR 28 &<# (datespanset, datespanset), + -- strictly before + OPERATOR 29 <<# (datespanset, date), + OPERATOR 29 <<# (datespanset, datespan), + OPERATOR 29 <<# (datespanset, datespanset), + -- strictly after + OPERATOR 30 #>> (datespanset, date), + OPERATOR 30 #>> (datespanset, datespan), + OPERATOR 30 #>> (datespanset, datespanset), + -- overlaps or after + OPERATOR 31 #&> (datespanset, date), + OPERATOR 31 #&> (datespanset, datespan), + OPERATOR 31 #&> (datespanset, datespanset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzspanset_kdtree_ops + FOR TYPE tstzspanset USING spgist AS + -- overlaps + OPERATOR 3 && (tstzspanset, tstzspan), + OPERATOR 3 && (tstzspanset, tstzspanset), + -- contains + OPERATOR 7 @> (tstzspanset, timestamptz), + OPERATOR 7 @> (tstzspanset, tstzspan), + OPERATOR 7 @> (tstzspanset, tstzspanset), + -- contained by + OPERATOR 8 <@ (tstzspanset, tstzspan), + OPERATOR 8 <@ (tstzspanset, tstzspanset), + -- adjacent + OPERATOR 17 -|- (tstzspanset, tstzspan), + OPERATOR 17 -|- (tstzspanset, tstzspanset), +-- equals + OPERATOR 18 = (tstzspanset, tstzspanset), + -- nearest approach distance + OPERATOR 25 <-> (tstzspanset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspan) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzspanset, tstzspanset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzspanset, timestamptz), + OPERATOR 28 &<# (tstzspanset, tstzspan), + OPERATOR 28 &<# (tstzspanset, tstzspanset), + -- strictly before + OPERATOR 29 <<# (tstzspanset, timestamptz), + OPERATOR 29 <<# (tstzspanset, tstzspan), + OPERATOR 29 <<# (tstzspanset, tstzspanset), + -- strictly after + OPERATOR 30 #>> (tstzspanset, timestamptz), + OPERATOR 30 #>> (tstzspanset, tstzspan), + OPERATOR 30 #>> (tstzspanset, tstzspanset), + -- overlaps or after + OPERATOR 31 #&> (tstzspanset, timestamptz), + OPERATOR 31 #&> (tstzspanset, tstzspan), + OPERATOR 31 #&> (tstzspanset, tstzspanset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 spanset_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/013_set_indexes.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/013_set_indexes.in.sql new file mode 100644 index 00000000..a1869c67 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/013_set_indexes.in.sql @@ -0,0 +1,774 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST, Quad-tree SP-GiST, and Kd-tree SP-GiST indexes for set + * types + */ + +/****************************************************************************** + * R-tree GiST indexes + ******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, intset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, intset, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intset_rtree_ops + DEFAULT FOR TYPE intset USING gist AS + STORAGE intspan, + -- strictly left + OPERATOR 1 << (intset, integer), + OPERATOR 1 << (intset, intset), + -- overlaps or left + OPERATOR 2 &< (intset, integer), + OPERATOR 2 &< (intset, intset), + -- overlaps + OPERATOR 3 && (intset, intset), + -- overlaps or right + OPERATOR 4 &> (intset, integer), + OPERATOR 4 &> (intset, intset), + -- strictly right + OPERATOR 5 >> (intset, integer), + OPERATOR 5 >> (intset, intset), + -- contains + OPERATOR 7 @> (intset, integer), + OPERATOR 7 @> (intset, intset), + -- contained by + OPERATOR 8 <@ (intset, intset), + -- equals + OPERATOR 18 = (intset, intset), + -- nearest approach distance + OPERATOR 25 <-> (intset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intset, intset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, intset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 set_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(intspan, intspan, internal), + FUNCTION 8 span_gist_distance(internal, intset, smallint, oid, internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, bigintset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, bigintset, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintset_rtree_ops + DEFAULT FOR TYPE bigintset USING gist AS + STORAGE bigintspan, + -- strictly left + OPERATOR 1 << (bigintset, bigint), + OPERATOR 1 << (bigintset, bigintset), + -- overlaps or left + OPERATOR 2 &< (bigintset, bigint), + OPERATOR 2 &< (bigintset, bigintset), + -- overlaps + OPERATOR 3 && (bigintset, bigintset), + -- overlaps or right + OPERATOR 4 &> (bigintset, bigint), + OPERATOR 4 &> (bigintset, bigintset), + -- strictly right + OPERATOR 5 >> (bigintset, bigint), + OPERATOR 5 >> (bigintset, bigintset), + -- contains + OPERATOR 7 @> (bigintset, bigint), + OPERATOR 7 @> (bigintset, bigintset), + -- contained by + OPERATOR 8 <@ (bigintset, bigintset), + -- equals + OPERATOR 18 = (bigintset, bigintset), + -- nearest approach distance + OPERATOR 25 <-> (bigintset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintset, bigintset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, bigintset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 set_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(bigintspan, bigintspan, internal), + FUNCTION 8 span_gist_distance(internal, bigintset, smallint, oid, internal); + +/******************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, floatset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION span_gist_distance(internal, floatset, smallint, oid, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Span_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatset_rtree_ops + DEFAULT FOR TYPE floatset USING gist AS + STORAGE floatspan, + -- strictly left + OPERATOR 1 << (floatset, float), + OPERATOR 1 << (floatset, floatset), + -- overlaps or left + OPERATOR 2 &< (floatset, float), + OPERATOR 2 &< (floatset, floatset), + -- overlaps + OPERATOR 3 && (floatset, floatset), + -- overlaps or right + OPERATOR 4 &> (floatset, float), + OPERATOR 4 &> (floatset, floatset), + -- strictly right + OPERATOR 5 >> (floatset, float), + OPERATOR 5 >> (floatset, floatset), + -- contains + OPERATOR 7 @> (floatset, float), + OPERATOR 7 @> (floatset, floatset), + -- contained by + OPERATOR 8 <@ (floatset, floatset), + -- equals + OPERATOR 18 = (floatset, floatset), + -- nearest approach distance + OPERATOR 25 <-> (floatset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatset, floatset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 span_gist_consistent(internal, floatset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 set_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(floatspan, floatspan, internal), + FUNCTION 8 span_gist_distance(internal, floatset, smallint, oid, internal); + +/*****************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, dateset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE OPERATOR CLASS dateset_rtree_ops + DEFAULT FOR TYPE dateset USING gist AS + STORAGE datespan, + -- overlaps + OPERATOR 3 && (dateset, dateset), + -- contains + OPERATOR 7 @> (dateset, date), + OPERATOR 7 @> (dateset, dateset), + -- contained by + OPERATOR 8 <@ (dateset, dateset), + -- equals + OPERATOR 18 = (dateset, dateset), + -- nearest approach distance + OPERATOR 25 <-> (dateset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (dateset, dateset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (dateset, date), + OPERATOR 28 &<# (dateset, dateset), + -- strictly before + OPERATOR 29 <<# (dateset, date), + OPERATOR 29 <<# (dateset, dateset), + -- strictly after + OPERATOR 30 #>> (dateset, date), + OPERATOR 30 #>> (dateset, dateset), + -- overlaps or after + OPERATOR 31 #&> (dateset, date), + OPERATOR 31 #&> (dateset, dateset), + -- functions + FUNCTION 1 span_gist_consistent(internal, dateset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 set_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(datespan, datespan, internal); + +/*****************************************************************************/ + +CREATE FUNCTION span_gist_consistent(internal, tstzset, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE OPERATOR CLASS tstzset_rtree_ops + DEFAULT FOR TYPE tstzset USING gist AS + STORAGE tstzspan, + -- overlaps + OPERATOR 3 && (tstzset, tstzset), + -- contains + OPERATOR 7 @> (tstzset, timestamptz), + OPERATOR 7 @> (tstzset, tstzset), + -- contained by + OPERATOR 8 <@ (tstzset, tstzset), + -- equals + OPERATOR 18 = (tstzset, tstzset), + -- nearest approach distance + OPERATOR 25 <-> (tstzset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzset, tstzset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzset, timestamptz), + OPERATOR 28 &<# (tstzset, tstzset), + -- strictly before + OPERATOR 29 <<# (tstzset, timestamptz), + OPERATOR 29 <<# (tstzset, tstzset), + -- strictly after + OPERATOR 30 #>> (tstzset, timestamptz), + OPERATOR 30 #>> (tstzset, tstzset), + -- overlaps or after + OPERATOR 31 #&> (tstzset, timestamptz), + OPERATOR 31 #&> (tstzset, tstzset), + -- functions + FUNCTION 1 span_gist_consistent(internal, tstzset, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 set_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(tstzspan, tstzspan, internal); + +/****************************************************************************** + * Quad-tree SP-GiST indexes + ******************************************************************************/ + +CREATE FUNCTION intset_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Intspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION bigintset_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Bigintspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatset_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Floatspan_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION set_spgist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Set_spgist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intset_quadtree_ops + DEFAULT FOR TYPE intset USING spgist AS + -- strictly left + OPERATOR 1 << (intset, integer), + OPERATOR 1 << (intset, intset), + -- overlaps or left + OPERATOR 2 &< (intset, integer), + OPERATOR 2 &< (intset, intset), + -- overlaps + OPERATOR 3 && (intset, intset), + -- overlaps or right + OPERATOR 4 &> (intset, integer), + OPERATOR 4 &> (intset, intset), + -- strictly right + OPERATOR 5 >> (intset, integer), + OPERATOR 5 >> (intset, intset), + -- contains + OPERATOR 7 @> (intset, integer), + OPERATOR 7 @> (intset, intset), + -- contained by + OPERATOR 8 <@ (intset, intset), + -- equals + OPERATOR 18 = (intset, intset), + -- nearest approach distance + OPERATOR 25 <-> (intset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intset, intset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intset_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintset_quadtree_ops + DEFAULT FOR TYPE bigintset USING spgist AS + -- strictly left + OPERATOR 1 << (bigintset, bigint), + OPERATOR 1 << (bigintset, bigintset), + -- overlaps or left + OPERATOR 2 &< (bigintset, bigint), + OPERATOR 2 &< (bigintset, bigintset), + -- overlaps + OPERATOR 3 && (bigintset, bigintset), + -- overlaps or right + OPERATOR 4 &> (bigintset, bigint), + OPERATOR 4 &> (bigintset, bigintset), + -- strictly right + OPERATOR 5 >> (bigintset, bigint), + OPERATOR 5 >> (bigintset, bigintset), + -- contains + OPERATOR 7 @> (bigintset, bigint), + OPERATOR 7 @> (bigintset, bigintset), + -- contained by + OPERATOR 8 <@ (bigintset, bigintset), + -- equals + OPERATOR 18 = (bigintset, bigintset), + -- nearest approach distance + OPERATOR 25 <-> (bigintset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintset, bigintset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intset_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatset_quadtree_ops + DEFAULT FOR TYPE floatset USING spgist AS + -- strictly left + OPERATOR 1 << (floatset, float), + OPERATOR 1 << (floatset, floatset), + -- overlaps or left + OPERATOR 2 &< (floatset, float), + OPERATOR 2 &< (floatset, floatset), + -- overlaps + OPERATOR 3 && (floatset, floatset), + -- overlaps or right + OPERATOR 4 &> (floatset, float), + OPERATOR 4 &> (floatset, floatset), + -- strictly right + OPERATOR 5 >> (floatset, float), + OPERATOR 5 >> (floatset, floatset), + -- contains + OPERATOR 7 @> (floatset, float), + OPERATOR 7 @> (floatset, floatset), + -- contained by + OPERATOR 8 <@ (floatset, floatset), + -- equals + OPERATOR 18 = (floatset, floatset), + -- nearest approach distance + OPERATOR 25 <-> (floatset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatset, floatset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatset_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS dateset_quadtree_ops + DEFAULT FOR TYPE dateset USING spgist AS + -- overlaps + OPERATOR 3 && (dateset, dateset), + -- contains + OPERATOR 7 @> (dateset, date), + OPERATOR 7 @> (dateset, dateset), + -- contained by + OPERATOR 8 <@ (dateset, dateset), + -- equals + OPERATOR 18 = (dateset, dateset), + -- nearest approach distance + OPERATOR 25 <-> (dateset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (dateset, dateset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (dateset, date), + OPERATOR 28 &<# (dateset, dateset), + -- strictly before + OPERATOR 29 <<# (dateset, date), + OPERATOR 29 <<# (dateset, dateset), + -- strictly after + OPERATOR 30 #>> (dateset, date), + OPERATOR 30 #>> (dateset, dateset), + -- overlaps or after + OPERATOR 31 #&> (dateset, date), + OPERATOR 31 #&> (dateset, dateset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzset_quadtree_ops + DEFAULT FOR TYPE tstzset USING spgist AS + -- overlaps + OPERATOR 3 && (tstzset, tstzset), + -- contains + OPERATOR 7 @> (tstzset, timestamptz), + OPERATOR 7 @> (tstzset, tstzset), + -- contained by + OPERATOR 8 <@ (tstzset, tstzset), + -- equals + OPERATOR 18 = (tstzset, tstzset), + -- nearest approach distance + OPERATOR 25 <-> (tstzset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzset, tstzset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzset, timestamptz), + OPERATOR 28 &<# (tstzset, tstzset), + -- strictly before + OPERATOR 29 <<# (tstzset, timestamptz), + OPERATOR 29 <<# (tstzset, tstzset), + -- strictly after + OPERATOR 30 #>> (tstzset, timestamptz), + OPERATOR 30 #>> (tstzset, tstzset), + -- overlaps or after + OPERATOR 31 #&> (tstzset, timestamptz), + OPERATOR 31 #&> (tstzset, tstzset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/****************************************************************************** + * Kd-tree indexes + ******************************************************************************/ + +CREATE OPERATOR CLASS intset_kdtree_ops + FOR TYPE intset USING spgist AS + -- strictly left + OPERATOR 1 << (intset, integer), + OPERATOR 1 << (intset, intset), + -- overlaps or left + OPERATOR 2 &< (intset, integer), + OPERATOR 2 &< (intset, intset), + -- overlaps + OPERATOR 3 && (intset, intset), + -- overlaps or right + OPERATOR 4 &> (intset, integer), + OPERATOR 4 &> (intset, intset), + -- strictly right + OPERATOR 5 >> (intset, integer), + OPERATOR 5 >> (intset, intset), + -- contains + OPERATOR 7 @> (intset, integer), + OPERATOR 7 @> (intset, intset), + -- contained by + OPERATOR 8 <@ (intset, intset), + -- equals + OPERATOR 18 = (intset, intset), + -- nearest approach distance + OPERATOR 25 <-> (intset, integer) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (intset, intset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intset_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintset_kdtree_ops + FOR TYPE bigintset USING spgist AS + -- strictly left + OPERATOR 1 << (bigintset, bigint), + OPERATOR 1 << (bigintset, bigintset), + -- overlaps or left + OPERATOR 2 &< (bigintset, bigint), + OPERATOR 2 &< (bigintset, bigintset), + -- overlaps + OPERATOR 3 && (bigintset, bigintset), + -- overlaps or right + OPERATOR 4 &> (bigintset, bigint), + OPERATOR 4 &> (bigintset, bigintset), + -- strictly right + OPERATOR 5 >> (bigintset, bigint), + OPERATOR 5 >> (bigintset, bigintset), + -- contains + OPERATOR 7 @> (bigintset, bigint), + OPERATOR 7 @> (bigintset, bigintset), + -- contained by + OPERATOR 8 <@ (bigintset, bigintset), + -- equals + OPERATOR 18 = (bigintset, bigintset), + -- nearest approach distance + OPERATOR 25 <-> (bigintset, bigint) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (bigintset, bigintset) FOR ORDER BY pg_catalog.integer_ops, + -- functions + FUNCTION 1 intset_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS floatset_kdtree_ops + FOR TYPE floatset USING spgist AS + -- strictly left + OPERATOR 1 << (floatset, float), + OPERATOR 1 << (floatset, floatset), + -- overlaps or left + OPERATOR 2 &< (floatset, float), + OPERATOR 2 &< (floatset, floatset), + -- overlaps + OPERATOR 3 && (floatset, floatset), + -- overlaps or right + OPERATOR 4 &> (floatset, float), + OPERATOR 4 &> (floatset, floatset), + -- strictly right + OPERATOR 5 >> (floatset, float), + OPERATOR 5 >> (floatset, floatset), + -- contains + OPERATOR 7 @> (floatset, float), + OPERATOR 7 @> (floatset, floatset), + -- contained by + OPERATOR 8 <@ (floatset, floatset), + -- equals + OPERATOR 18 = (floatset, floatset), + -- nearest approach distance + OPERATOR 25 <-> (floatset, float) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (floatset, floatset) FOR ORDER BY pg_catalog.float_ops, + -- functions + FUNCTION 1 floatset_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS dateset_kdtree_ops + FOR TYPE dateset USING spgist AS + -- overlaps + OPERATOR 3 && (dateset, dateset), + -- contains + OPERATOR 7 @> (dateset, date), + OPERATOR 7 @> (dateset, dateset), + -- contained by + OPERATOR 8 <@ (dateset, dateset), + -- equals + OPERATOR 18 = (dateset, dateset), + -- nearest approach distance + OPERATOR 25 <-> (dateset, date) FOR ORDER BY pg_catalog.integer_ops, + OPERATOR 25 <-> (dateset, dateset) FOR ORDER BY pg_catalog.integer_ops, + -- overlaps or before + OPERATOR 28 &<# (dateset, date), + OPERATOR 28 &<# (dateset, dateset), + -- strictly before + OPERATOR 29 <<# (dateset, date), + OPERATOR 29 <<# (dateset, dateset), + -- strictly after + OPERATOR 30 #>> (dateset, date), + OPERATOR 30 #>> (dateset, dateset), + -- overlaps or after + OPERATOR 31 #&> (dateset, date), + OPERATOR 31 #&> (dateset, dateset), + -- functions + FUNCTION 1 datespan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tstzset_kdtree_ops + FOR TYPE tstzset USING spgist AS + -- overlaps + OPERATOR 3 && (tstzset, tstzset), + -- contains + OPERATOR 7 @> (tstzset, timestamptz), + OPERATOR 7 @> (tstzset, tstzset), + -- contained by + OPERATOR 8 <@ (tstzset, tstzset), + -- equals + OPERATOR 18 = (tstzset, tstzset), + -- nearest approach distance + OPERATOR 25 <-> (tstzset, timestamptz) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 <-> (tstzset, tstzset) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tstzset, timestamptz), + OPERATOR 28 &<# (tstzset, tstzset), + -- strictly before + OPERATOR 29 <<# (tstzset, timestamptz), + OPERATOR 29 <<# (tstzset, tstzset), + -- strictly after + OPERATOR 30 #>> (tstzset, timestamptz), + OPERATOR 30 #>> (tstzset, tstzset), + -- overlaps or after + OPERATOR 31 #&> (tstzset, timestamptz), + OPERATOR 31 #&> (tstzset, tstzset), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 set_spgist_compress(internal); + +/****************************************************************************** + * GIN indexes + ******************************************************************************/ + +CREATE FUNCTION set_gin_extract_value(integer, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_value' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_extract_query(integer, internal, int2, internal, internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_query' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_triconsistent(internal, int2, integer, int4, internal, internal, internal) +RETURNS char +AS 'MODULE_PATHNAME', 'Set_gin_triconsistent' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS intset_gin_ops + DEFAULT FOR TYPE intset USING gin AS + STORAGE integer, + -- overlaps + OPERATOR 10 && (intset, intset), + -- contains value + OPERATOR 20 @> (intset, integer), + -- contains set + OPERATOR 21 @> (intset, intset), + -- contained + OPERATOR 30 <@ (intset, intset), + -- same + OPERATOR 40 = (intset, intset), + -- functions + FUNCTION 2 set_gin_extract_value(integer, internal), + FUNCTION 3 set_gin_extract_query(integer, internal, int2, internal, internal, internal, internal), + FUNCTION 6 set_gin_triconsistent(internal, int2, integer, int4, internal, internal, internal); + +/******************************************************************************/ + +CREATE FUNCTION set_gin_extract_value(bigint, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_value' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_extract_query(bigint, internal, int2, internal, internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_query' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_triconsistent(internal, int2, bigint, int4, internal, internal, internal) +RETURNS char +AS 'MODULE_PATHNAME', 'Set_gin_triconsistent' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS bigintset_gin_ops + DEFAULT FOR TYPE bigintset USING gin AS + STORAGE bigint, + -- overlaps + OPERATOR 10 && (bigintset, bigintset), + -- contains value + OPERATOR 20 @> (bigintset, bigint), + -- contains set + OPERATOR 21 @> (bigintset, bigintset), + -- contained + OPERATOR 30 <@ (bigintset, bigintset), + -- equal + OPERATOR 40 = (bigintset, bigintset), + -- functions + FUNCTION 2 set_gin_extract_value(bigint, internal), + FUNCTION 3 set_gin_extract_query(bigint, internal, int2, internal, internal, internal, internal), + FUNCTION 6 set_gin_triconsistent(internal, int2, bigint, int4, internal, internal, internal); + +/******************************************************************************/ + +CREATE FUNCTION set_gin_extract_value(date, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_value' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_extract_query(date, internal, int2, internal, internal, internal, internal) +RETURNS internal +AS 'MODULE_PATHNAME', 'Set_gin_extract_query' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION set_gin_triconsistent(internal, int2, date, int4, internal, internal, internal) +RETURNS char +AS 'MODULE_PATHNAME', 'Set_gin_triconsistent' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS dateset_gin_ops + DEFAULT FOR TYPE dateset USING gin AS + STORAGE date, + -- overlaps + OPERATOR 10 && (dateset, dateset), + -- contains value + OPERATOR 20 @> (dateset, date), + -- contains set + OPERATOR 21 @> (dateset, dateset), + -- contained + OPERATOR 30 <@ (dateset, dateset), + -- same + OPERATOR 40 = (dateset, dateset), + -- functions + FUNCTION 2 set_gin_extract_value(date, internal), + FUNCTION 3 set_gin_extract_query(date, internal, int2, internal, internal, internal, internal), + FUNCTION 6 set_gin_triconsistent(internal, int2, date, int4, internal, internal, internal); + +/******************************************************************************/ + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/015_span_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/015_span_aggfuncs.in.sql new file mode 100644 index 00000000..985fbcbd --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/015_span_aggfuncs.in.sql @@ -0,0 +1,438 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Aggregate functions for types whose bounding box is a span + */ + +/*****************************************************************************/ +-- span + span + +-- The function is not strict +CREATE FUNCTION span_extent_transfn(intspan, intspan) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_combinefn(intspan, intspan) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION span_extent_transfn(bigintspan, bigintspan) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_combinefn(bigintspan, bigintspan) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION span_extent_transfn(floatspan, floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_combinefn(floatspan, floatspan) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(datespan, datespan) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_combinefn(datespan, datespan) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(tstzspan, tstzspan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_combinefn(tstzspan, tstzspan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(intspan) ( + SFUNC = span_extent_transfn, + STYPE = intspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(bigintspan) ( + SFUNC = span_extent_transfn, + STYPE = bigintspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(floatspan) ( + SFUNC = span_extent_transfn, + STYPE = floatspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(datespan) ( + SFUNC = span_extent_transfn, + STYPE = datespan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tstzspan) ( + SFUNC = span_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ +-- span + base + +-- The function is not strict +CREATE FUNCTION span_extent_transfn(intspan, integer) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanbase_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(bigintspan, bigint) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanbase_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(floatspan, float) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanbase_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(datespan, date) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanbase_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION span_extent_transfn(tstzspan, timestamptz) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanbase_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(integer) ( + SFUNC = span_extent_transfn, + STYPE = intspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(bigint) ( + SFUNC = span_extent_transfn, + STYPE = bigintspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(float) ( + SFUNC = span_extent_transfn, + STYPE = floatspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(date) ( + SFUNC = span_extent_transfn, + STYPE = datespan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(timestamptz) ( + SFUNC = span_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ +-- span + + +-- The function is not strict +CREATE FUNCTION set_extent_transfn(intspan, intset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Set_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_extent_transfn(bigintspan, bigintset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Set_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_extent_transfn(floatspan, floatset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Set_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_extent_transfn(datespan, dateset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Set_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION set_extent_transfn(tstzspan, tstzset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Set_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(intset) ( + SFUNC = set_extent_transfn, + STYPE = intspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(bigintset) ( + SFUNC = set_extent_transfn, + STYPE = bigintspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(floatset) ( + SFUNC = set_extent_transfn, + STYPE = floatspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(dateset) ( + SFUNC = set_extent_transfn, + STYPE = datespan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tstzset) ( + SFUNC = set_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); + +-- The function is not strict +CREATE FUNCTION spanset_extent_transfn(intspan, intspanset) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Spanset_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_extent_transfn(bigintspan, bigintspanset) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Spanset_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_extent_transfn(floatspan, floatspanset) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Spanset_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_extent_transfn(datespan, datespanset) + RETURNS datespan + AS 'MODULE_PATHNAME', 'Spanset_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_extent_transfn(tstzspan, tstzspanset) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Spanset_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(intspanset) ( + SFUNC = spanset_extent_transfn, + STYPE = intspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(bigintspanset) ( + SFUNC = spanset_extent_transfn, + STYPE = bigintspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(floatspanset) ( + SFUNC = spanset_extent_transfn, + STYPE = floatspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(datespanset) ( + SFUNC = spanset_extent_transfn, + STYPE = datespan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tstzspanset) ( + SFUNC = spanset_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = span_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION intspan_union_finalfn(internal) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Span_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION bigintspan_union_finalfn(internal) + RETURNS bigintspanset + AS 'MODULE_PATHNAME', 'Span_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION floatspan_union_finalfn(internal) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Span_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION datespan_union_finalfn(internal) + RETURNS datespanset + AS 'MODULE_PATHNAME', 'Span_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tstzspan_union_finalfn(internal) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Span_union_finalfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE spanUnion(intspan) ( + SFUNC = array_agg_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = intspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(bigintspan) ( + SFUNC = array_agg_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = bigintspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(floatspan) ( + SFUNC = array_agg_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = floatspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(datespan) ( + SFUNC = array_agg_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = datespan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(tstzspan) ( + SFUNC = array_agg_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = tstzspan_union_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION spanset_union_transfn(internal, intspanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_union_transfn(internal, bigintspanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_union_transfn(internal, floatspanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_union_transfn(internal, datespanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION spanset_union_transfn(internal, tstzspanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Spanset_union_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE spanUnion(intspanset) ( + SFUNC = spanset_union_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = intspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(bigintspanset) ( + SFUNC = spanset_union_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = bigintspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(floatspanset) ( + SFUNC = spanset_union_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = floatspan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(datespanset) ( + SFUNC = spanset_union_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = datespan_union_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE spanUnion(tstzspanset) ( + SFUNC = spanset_union_transfn, + STYPE = internal, +#if POSTGRESQL_VERSION_NUMBER >= 160000 + COMBINEFUNC = array_agg_combine, + SERIALFUNC = array_agg_serialize, + DESERIALFUNC = array_agg_deserialize, +#endif //POSTGRESQL_VERSION_NUMBER >= 160000 + FINALFUNC = tstzspan_union_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/019_geo_constructors.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/019_geo_constructors.in.sql new file mode 100644 index 00000000..65849ded --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/019_geo_constructors.in.sql @@ -0,0 +1,70 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief SQL constructors for PostgreSQL geometric types + */ + +CREATE FUNCTION point(float, float) + RETURNS point + AS 'MODULE_PATHNAME', 'point_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION line(float, float, float) + RETURNS line + AS 'MODULE_PATHNAME', 'line_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lseg(point, point) + RETURNS lseg + AS 'MODULE_PATHNAME', 'lseg_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION box(point, point) + RETURNS box + AS 'MODULE_PATHNAME', 'box_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION circle(point, float) + RETURNS circle + AS 'MODULE_PATHNAME', 'circle_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION path(point[]) + RETURNS path + AS 'MODULE_PATHNAME', 'path_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION polygon(point[]) + RETURNS polygon + AS 'MODULE_PATHNAME', 'poly_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/021_tbox.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/021_tbox.in.sql new file mode 100644 index 00000000..083a9793 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/021_tbox.in.sql @@ -0,0 +1,625 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Functions for temporal bounding boxes + */ + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE TYPE tbox; + +CREATE FUNCTION tbox_in(cstring) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_out(tbox) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Tbox_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_recv(internal) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_send(tbox) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tbox_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tbox ( + internallength = 56, + input = tbox_in, + output = tbox_out, + receive = tbox_recv, + send = tbox_send, + storage = plain, + alignment = double +); + +-- Input/output in WKB and HexWKB representation + +CREATE FUNCTION tboxFromBinary(bytea) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tboxFromHexWKB(text) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(tbox, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Tbox_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asBinary(tbox, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Tbox_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(tbox, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Tbox_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Constructor functions + ******************************************************************************/ + +CREATE FUNCTION tbox(integer, timestamptz) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_timestamptz_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(intspan, timestamptz) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Numspan_timestamptz_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(float, timestamptz) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_timestamptz_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(floatspan, timestamptz) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Numspan_timestamptz_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(integer, tstzspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_tstzspan_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(intspan, tstzspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Numspan_tstzspan_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(float, tstzspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_tstzspan_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(floatspan, tstzspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Numspan_tstzspan_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Conversion functions + *****************************************************************************/ + +CREATE FUNCTION tbox(integer) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(float) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Number_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(numeric) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Numeric_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(timestamptz) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Timestamptz_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbox(intset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Set_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(floatset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Set_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(tstzset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Set_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbox(intspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Span_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(floatspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Span_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(tstzspan) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Span_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbox(intspanset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Spanset_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(floatspanset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Spanset_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(tstzspanset) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Spanset_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (integer AS tbox) WITH FUNCTION tbox(integer); +CREATE CAST (float AS tbox) WITH FUNCTION tbox(float); +CREATE CAST (numeric AS tbox) WITH FUNCTION tbox(numeric); +CREATE CAST (timestamptz AS tbox) WITH FUNCTION tbox(timestamptz); + +CREATE CAST (intset AS tbox) WITH FUNCTION tbox(intset); +CREATE CAST (floatset AS tbox) WITH FUNCTION tbox(floatset); +CREATE CAST (tstzset AS tbox) WITH FUNCTION tbox(tstzset); + +CREATE CAST (intspan AS tbox) WITH FUNCTION tbox(intspan); +CREATE CAST (floatspan AS tbox) WITH FUNCTION tbox(floatspan); +CREATE CAST (tstzspan AS tbox) WITH FUNCTION tbox(tstzspan); + +CREATE CAST (intspanset AS tbox) WITH FUNCTION tbox(intspanset); +CREATE CAST (floatspanset AS tbox) WITH FUNCTION tbox(floatspanset); +CREATE CAST (tstzspanset AS tbox) WITH FUNCTION tbox(tstzspanset); + +CREATE FUNCTION intspan(tbox) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Tbox_to_intspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION floatspan(tbox) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Tbox_to_floatspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tbox) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Tbox_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tbox AS intspan) WITH FUNCTION intspan(tbox); +CREATE CAST (tbox AS floatspan) WITH FUNCTION floatspan(tbox); +CREATE CAST (tbox AS tstzspan) WITH FUNCTION timeSpan(tbox); + +/***************************************************************************** + * Accessor functions + *****************************************************************************/ + +CREATE FUNCTION hasX(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_hasx' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION hasT(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_hast' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION Xmin(tbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Tbox_xmin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION XminInc(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_xmin_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Xmax(tbox) + RETURNS float + AS 'MODULE_PATHNAME', 'Tbox_xmax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION XmaxInc(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_xmax_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Tmin(tbox) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tbox_tmin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION TminInc(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_tmin_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION Tmax(tbox) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tbox_tmax' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION TmaxInc(tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_tmax_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transformation functions + *****************************************************************************/ + +CREATE FUNCTION shiftValue(tbox, integer) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftValue(tbox, float) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(tbox, interval) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleValue(tbox, integer) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleValue(tbox, float) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(tbox, interval) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleValue(tbox, integer, integer) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleValue(tbox, float, float) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(tbox, interval, interval) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION expandValue(tbox, integer) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_expand_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expandValue(tbox, float) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_expand_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION expandTime(tbox, interval) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_expand_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tbox, integer DEFAULT 0) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Selectivity functions + *****************************************************************************/ + +CREATE FUNCTION tnumber_sel(internal, oid, internal, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_sel' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION tnumber_joinsel(internal, oid, internal, smallint, internal) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_joinsel' + LANGUAGE C IMMUTABLE STRICT; + +/***************************************************************************** + * Topological operators + *****************************************************************************/ + +CREATE FUNCTION tbox_contains(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_contained(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_overlaps(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_same(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_adjacent(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = tbox_contains, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = tbox_contained, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = tbox_overlaps, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = tbox_same, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = tbox_adjacent, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * Position operators + *****************************************************************************/ + +CREATE FUNCTION tbox_left(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_overleft(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_right(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_overright(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_before(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_overbefore(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_after(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_overafter(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + PROCEDURE = tbox_left, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + PROCEDURE = tbox_overleft, + LEFTARG = tbox, RIGHTARG = tbox, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tbox, RIGHTARG = tbox, + PROCEDURE = tbox_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + PROCEDURE = tbox_overright, + LEFTARG = tbox, RIGHTARG = tbox, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + PROCEDURE = tbox_before, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + PROCEDURE = tbox_overbefore, + LEFTARG = tbox, RIGHTARG = tbox, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + PROCEDURE = tbox_after, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + PROCEDURE = tbox_overafter, + LEFTARG = tbox, RIGHTARG = tbox, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * Set operators + *****************************************************************************/ + +CREATE FUNCTION tbox_union(tbox, tbox) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Union_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_intersection(tbox, tbox) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Intersection_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = tbox_union, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = + +); +CREATE OPERATOR * ( + PROCEDURE = tbox_intersection, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = * +); + +/***************************************************************************** + * Extent aggregation + *****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tbox_extent_transfn(tbox, tbox) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tbox_extent_combinefn(tbox, tbox) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(tbox) ( + SFUNC = tbox_extent_transfn, + STYPE = tbox, + COMBINEFUNC = tbox_extent_combinefn, + PARALLEL = safe +); + +/***************************************************************************** + * Comparison + *****************************************************************************/ + +CREATE FUNCTION tbox_eq(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_ne(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_lt(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_le(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_ge(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gt(tbox, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tbox_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_cmp(tbox, tbox) + RETURNS int4 + AS 'MODULE_PATHNAME', 'Tbox_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR = ( + LEFTARG = tbox, RIGHTARG = tbox, + PROCEDURE = tbox_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tbox, RIGHTARG = tbox, + PROCEDURE = tbox_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR < ( + PROCEDURE = tbox_lt, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR <= ( + PROCEDURE = tbox_le, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR >= ( + PROCEDURE = tbox_ge, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = areasel, JOIN = areajoinsel +); +CREATE OPERATOR > ( + PROCEDURE = tbox_gt, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = areasel, JOIN = areajoinsel +); + +CREATE OPERATOR CLASS tbox_btree_ops + DEFAULT FOR TYPE tbox USING btree AS + OPERATOR 1 < , + OPERATOR 2 <= , + OPERATOR 3 = , + OPERATOR 4 >= , + OPERATOR 5 > , + FUNCTION 1 tbox_cmp(tbox, tbox); + +/*****************************************************************************/ + +CREATE FUNCTION tbox_hash(tbox) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tbox_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbox_hash_extended(tbox, bigint) + RETURNS bigint + AS 'MODULE_PATHNAME', 'Tbox_hash_extended' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tbox_hash_ops + DEFAULT FOR TYPE tbox USING hash AS + OPERATOR 1 = , + FUNCTION 1 tbox_hash(tbox), + FUNCTION 2 tbox_hash_extended(tbox, bigint); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/022_temporal.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/022_temporal.in.sql new file mode 100644 index 00000000..a8085014 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/022_temporal.in.sql @@ -0,0 +1,2188 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Basic functions for temporal types + */ + +CREATE TYPE tbool; +CREATE TYPE tint; +CREATE TYPE tfloat; +CREATE TYPE ttext; + +/***************************************************************************** + * Utility functions + *****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION mobilitydb_version() + RETURNS text + AS 'MODULE_PATHNAME', 'Mobilitydb_version' + LANGUAGE C IMMUTABLE; + +CREATE FUNCTION mobilitydb_full_version() + RETURNS text + AS 'MODULE_PATHNAME', 'Mobilitydb_full_version' + LANGUAGE C IMMUTABLE; + +/****************************************************************************** + * Input/Output + ******************************************************************************/ + +CREATE FUNCTION tbool_in(cstring, oid, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint_in(cstring, oid, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat_in(cstring, oid, integer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext_in(cstring, oid, integer) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION temporal_out(tbool) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tint) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(tfloat) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_out(ttext) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbool_recv(internal, oid, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint_recv(internal, oid, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat_recv(internal, oid, integer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext_recv(internal, oid, integer) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_recv' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION temporal_send(tbool) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tint) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(tfloat) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_send(ttext) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_send' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION temporal_typmod_in(cstring[]) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_typmod_in' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_typmod_out(integer) + RETURNS cstring + AS 'MODULE_PATHNAME', 'Temporal_typmod_out' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION temporal_analyze(internal) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_analyze' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE TYPE tbool ( + internallength = variable, + input = tbool_in, + output = temporal_out, + send = temporal_send, + receive = tbool_recv, + typmod_in = temporal_typmod_in, + typmod_out = temporal_typmod_out, + storage = extended, + alignment = double, + analyze = temporal_analyze +); +CREATE TYPE tint ( + internallength = variable, + input = tint_in, + output = temporal_out, + send = temporal_send, + receive = tint_recv, + typmod_in = temporal_typmod_in, + typmod_out = temporal_typmod_out, + storage = extended, + alignment = double, + analyze = temporal_analyze +); +CREATE TYPE tfloat ( + internallength = variable, + input = tfloat_in, + output = temporal_out, + send = temporal_send, + receive = tfloat_recv, + typmod_in = temporal_typmod_in, + typmod_out = temporal_typmod_out, + storage = extended, + alignment = double, + analyze = temporal_analyze +); +CREATE TYPE ttext ( + internallength = variable, + input = ttext_in, + output = temporal_out, + send = temporal_send, + receive = ttext_recv, + typmod_in = temporal_typmod_in, + typmod_out = temporal_typmod_out, + storage = extended, + alignment = double, + analyze = temporal_analyze +); + +-- Special cast for enforcing the typmod restrictions +CREATE FUNCTION tbool(tbool, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(tfloat, integer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext(ttext, integer) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_enforce_typmod' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tbool AS tbool) WITH FUNCTION tbool(tbool, integer) AS IMPLICIT; +CREATE CAST (tint AS tint) WITH FUNCTION tint(tint, integer) AS IMPLICIT; +CREATE CAST (tfloat AS tfloat) WITH FUNCTION tfloat(tfloat, integer) AS IMPLICIT; +CREATE CAST (ttext AS ttext) WITH FUNCTION ttext(ttext, integer) AS IMPLICIT; + +/****************************************************************************** + * Constructor functions + ******************************************************************************/ + +CREATE FUNCTION tbool(boolean, timestamptz) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(integer, timestamptz) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(float, timestamptz) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext(text, timestamptz) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tinstant_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbool(boolean, tstzset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(integer, tstzset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(float, tstzset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext(text, tstzset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbool(boolean, tstzspan) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(integer, tstzspan) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(float, tstzspan, text DEFAULT 'linear') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext(text, tstzspan) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequence_from_base_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tbool(boolean, tstzspanset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(integer, tstzspanset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat(float, tstzspanset, text DEFAULT 'linear') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext(text, tstzspanset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequenceset_from_base_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tboolSeq(tbool[], text DEFAULT 'step', + lowerInc boolean DEFAULT true, upperInc boolean DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintSeq(tint[], text DEFAULT 'step', + lowerInc boolean DEFAULT true, upperInc boolean DEFAULT true) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatSeq(tfloat[], text DEFAULT 'linear', + lowerInc boolean DEFAULT true, upperInc boolean DEFAULT true) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextSeq(ttext[], text DEFAULT 'step', + lowerInc boolean DEFAULT true, upperInc boolean DEFAULT true) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequence_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tboolSeqSet(tbool[]) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintSeqSet(tint[]) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatSeqSet(tfloat[]) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextSeqSet(ttext[]) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tboolSeqSetGaps(tbool[], maxt interval DEFAULT NULL) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tintSeqSetGaps(tint[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloatSeqSetGaps(tfloat[], maxt interval DEFAULT NULL, + maxdist float DEFAULT NULL, text DEFAULT 'linear') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttextSeqSetGaps(ttext[], maxt interval DEFAULT NULL) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Tsequenceset_constructor_gaps' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +/****************************************************************************** + * Conversion functions + ******************************************************************************/ + +CREATE FUNCTION timeSpan(tbool) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tint) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(tfloat) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timeSpan(ttext) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_to_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueSpan(tint) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Tnumber_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueSpan(tfloat) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Tnumber_to_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tbool AS tstzspan) WITH FUNCTION timeSpan(tbool); +CREATE CAST (tint AS tstzspan) WITH FUNCTION timeSpan(tint); +CREATE CAST (tfloat AS tstzspan) WITH FUNCTION timeSpan(tfloat); +CREATE CAST (ttext AS tstzspan) WITH FUNCTION timeSpan(ttext); + +CREATE CAST (tint AS intspan) WITH FUNCTION valueSpan(tint); +CREATE CAST (tfloat AS floatspan) WITH FUNCTION valueSpan(tfloat); + +CREATE FUNCTION tint(tbool) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tbool_to_tint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE CAST (tbool AS tint) WITH FUNCTION tint(tbool); + +CREATE FUNCTION tfloat(tint) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tint_to_tfloat' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint(tfloat) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tfloat_to_tint' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tint AS tfloat) WITH FUNCTION tfloat(tint); +CREATE CAST (tfloat AS tint) WITH FUNCTION tint(tfloat); + +CREATE FUNCTION tbox(tint) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tnumber_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox(tfloat) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tnumber_to_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE CAST (tint AS tbox) WITH FUNCTION tbox(tint); +CREATE CAST (tfloat AS tbox) WITH FUNCTION tbox(tfloat); + +/****************************************************************************** + * Accessor functions + ******************************************************************************/ + +CREATE FUNCTION tempSubtype(tbool) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tempSubtype(tint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tempSubtype(tfloat) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tempSubtype(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_subtype' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION interp(tbool) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION interp(tint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION interp(tfloat) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION interp(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION memSize(tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION memSize(ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_mem_size' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- values is a reserved word in SQL +CREATE FUNCTION getValue(tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValue(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValue(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Tinstant_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- values is a reserved word in SQL +CREATE FUNCTION getValues(tbool) + RETURNS boolean[] + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(tint) + RETURNS intspanset + AS 'MODULE_PATHNAME', 'Tnumber_valuespans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(tfloat) + RETURNS floatspanset + AS 'MODULE_PATHNAME', 'Tnumber_valuespans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getValues(ttext) + RETURNS textset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueSet(tint) + RETURNS intset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueSet(tfloat) + RETURNS floatset + AS 'MODULE_PATHNAME', 'Temporal_valueset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startValue(tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startValue(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_start_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endValue(tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endValue(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_end_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minValue(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_min_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_min_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minValue(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_min_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION maxValue(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_max_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION maxValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_max_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION maxValue(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_max_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION avgValue(tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_avg_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION avgValue(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_avg_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueN(tbool, integer) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(tint, integer) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(tfloat, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueN(ttext, integer) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_value_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minInstant(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_min_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minInstant(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_min_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minInstant(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_min_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION maxInstant(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_max_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION maxInstant(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_max_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION maxInstant(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_max_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- timestamp is a reserved word in SQL +CREATE FUNCTION getTimestamp(tbool) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTimestamp(tint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTimestamp(tfloat) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTimestamp(ttext) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Tinstant_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- time is a reserved word in SQL +CREATE FUNCTION getTime(tbool) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTime(tint) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTime(tfloat) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getTime(ttext) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION duration(tbool, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tint, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(tfloat, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION duration(ttext, boundspan boolean DEFAULT FALSE) + RETURNS interval + AS 'MODULE_PATHNAME', 'Temporal_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numSequences(tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSequences(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSequences(tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numSequences(ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startSequence(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSequence(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSequence(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startSequence(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_start_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endSequence(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSequence(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSequence(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endSequence(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_end_sequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequenceN(tbool, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequenceN(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequenceN(tfloat, integer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequenceN(ttext, integer) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_sequence_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION sequences(tbool) + RETURNS tbool[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequences(tint) + RETURNS tint[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequences(tfloat) + RETURNS tfloat[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION sequences(ttext) + RETURNS ttext[] + AS 'MODULE_PATHNAME', 'Temporal_sequences' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segments(tbool) + RETURNS tbool[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segments(tint) + RETURNS tint[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segments(tfloat) + RETURNS tfloat[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segments(ttext) + RETURNS ttext[] + AS 'MODULE_PATHNAME', 'Temporal_segments' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lowerInc(tbool) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(tfloat) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION lowerInc(ttext) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_lower_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION upperInc(tbool) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tint) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(tfloat) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION upperInc(ttext) + RETURNS bool + AS 'MODULE_PATHNAME', 'Temporal_upper_inc' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numInstants(tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numInstants(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numInstants(tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numInstants(ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startInstant(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startInstant(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startInstant(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startInstant(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_start_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endInstant(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endInstant(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endInstant(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endInstant(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_end_instant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instantN(tbool, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instantN(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instantN(tfloat, integer) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instantN(ttext, integer) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_instant_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION instants(tbool) + RETURNS tbool[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instants(tint) + RETURNS tint[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instants(tfloat) + RETURNS tfloat[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION instants(ttext) + RETURNS ttext[] + AS 'MODULE_PATHNAME', 'Temporal_instants' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION numTimestamps(tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numTimestamps(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numTimestamps(tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION numTimestamps(ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_num_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION startTimestamp(tbool) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startTimestamp(tint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startTimestamp(tfloat) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION startTimestamp(ttext) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_start_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION endTimestamp(tbool) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endTimestamp(tint) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endTimestamp(tfloat) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION endTimestamp(ttext) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_end_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestampN(tbool, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestampN(tint, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestampN(tfloat, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestampN(ttext, integer) + RETURNS timestamptz + AS 'MODULE_PATHNAME', 'Temporal_timestamptz_n' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timestamps(tbool) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestamps(tint) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestamps(tfloat) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION timestamps(ttext) + RETURNS timestamptz[] + AS 'MODULE_PATHNAME', 'Temporal_timestamps' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Transform a temporal value to a set of records + *****************************************************************************/ + +CREATE TYPE int_tstzspanset AS ( + value integer, + time tstzspanset +); +CREATE TYPE float_tstzspanset AS ( + value float, + time tstzspanset +); +CREATE TYPE text_tstzspanset AS ( + value text, + time tstzspanset +); + +CREATE FUNCTION unnest(tint) + RETURNS SETOF int_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(tfloat) + RETURNS SETOF float_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION unnest(ttext) + RETURNS SETOF text_tstzspanset + AS 'MODULE_PATHNAME', 'Temporal_unnest' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/****************************************************************************** + * Transformation functions + ******************************************************************************/ + +CREATE FUNCTION tboolInst(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintInst(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatInst(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextInst(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_to_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tboolSeq(tbool, text DEFAULT NULL) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tintSeq(tint, text DEFAULT NULL) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloatSeq(tfloat, text DEFAULT NULL) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttextSeq(ttext, text DEFAULT NULL) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_to_tsequence' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION tboolSeqSet(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tintSeqSet(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloatSeqSet(tfloat, text DEFAULT NULL) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttextSeqSet(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_to_tsequenceset' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION setInterp(tbool, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setInterp(tint, text) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setInterp(tfloat, text) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION setInterp(ttext, text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_set_interp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION shiftValue(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_shift_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftValue(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_shift_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleValue(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleValue(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleValue(tint, integer, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_shift_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleValue(tfloat, float, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_shift_scale_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION shiftTime(tbool, interval) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(tint, interval) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(tfloat, interval) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftTime(ttext, interval) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_shift_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION scaleTime(tbool, interval) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(tint, interval) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(tfloat, interval) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION scaleTime(ttext, interval) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION shiftScaleTime(tbool, interval, interval) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(tint, interval, interval) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(tfloat, interval, interval) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION shiftScaleTime(ttext, interval, interval) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_shift_scale_time' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tprecision(tint, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tprecision(tfloat, duration interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_tprecision' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tsample(tbool, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tsample(tint, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tsample(tfloat, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tsample(ttext, duration interval, + origin timestamptz DEFAULT '2000-01-03', interp text DEFAULT 'discrete') + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_tsample' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION appendInstant(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendInstant(tbool, tbool, interp text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tint, tint, interp text) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(tfloat, tfloat, interp text) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendInstant(ttext, ttext, interp text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_append_tinstant' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION appendSequence(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION appendSequence(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_append_tsequence' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- The function is not strict +CREATE FUNCTION merge(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION merge(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION merge(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION merge(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_merge' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION merge(tbool[]) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tint[]) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(tfloat[]) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION merge(ttext[]) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_merge_array' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Restriction functions + *****************************************************************************/ + +CREATE FUNCTION atValues(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(ttext, text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(ttext, text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tint, intset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tfloat, floatset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(ttext, textset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tint, intset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tfloat, floatset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(ttext, textset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_values' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tint, intspan) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_at_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tfloat, floatspan) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_at_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tint, intspan) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_minus_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tfloat, floatspan) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_minus_span' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atValues(tint, intspanset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_at_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atValues(tfloat, floatspanset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_at_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusValues(tint, intspanset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_minus_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusValues(tfloat, floatspanset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_minus_spanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atMin(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atMin(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atMin(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusMin(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusMin(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusMin(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_min' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atMax(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atMax(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atMax(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusMax(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusMax(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusMax(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_max' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTbox(tint, tbox) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_at_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTbox(tfloat, tbox) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_at_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTbox(tint, tbox) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_minus_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTbox(tfloat, tbox) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_minus_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tbool, timestamptz) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tint, timestamptz) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tfloat, timestamptz) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(ttext, timestamptz) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tbool, timestamptz) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tint, timestamptz) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tfloat, timestamptz) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(ttext, timestamptz) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueAtTimestamp(tbool, timestamptz) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueAtTimestamp(tint, timestamptz) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueAtTimestamp(tfloat, timestamptz) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION valueAtTimestamp(ttext, timestamptz) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_value_at_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tbool, tstzset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tint, tstzset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tfloat, tstzset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(ttext, tstzset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tbool, tstzset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tint, tstzset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tfloat, tstzset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(ttext, tstzset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tbool, tstzspan) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tint, tstzspan) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tfloat, tstzspan) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(ttext, tstzspan) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tbool, tstzspan) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tint, tstzspan) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tfloat, tstzspan) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(ttext, tstzspan) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION atTime(tbool, tstzspanset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tint, tstzspanset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(tfloat, tstzspanset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION atTime(ttext, tstzspanset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_at_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minusTime(tbool, tstzspanset) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tint, tstzspanset) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(tfloat, tstzspanset) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION minusTime(ttext, tstzspanset) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_minus_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION beforeTimestamp(tbool, timestamptz, strict bool DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION beforeTimestamp(tint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION beforeTimestamp(tfloat, timestamptz, strict bool DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION beforeTimestamp(ttext, timestamptz, strict bool DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_before_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION afterTimestamp(tbool, timestamptz, strict bool DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION afterTimestamp(tint, timestamptz, strict bool DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION afterTimestamp(tfloat, timestamptz, strict bool DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION afterTimestamp(ttext, timestamptz, strict bool DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_after_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Modification Functions + *****************************************************************************/ + +CREATE FUNCTION insert(tbool, tbool, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_insert' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION insert(tint, tint, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_insert' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION insert(tfloat, tfloat, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_insert' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION insert(ttext, ttext, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_insert' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION update(tbool, tbool, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION update(tint, tint, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION update(tfloat, tfloat, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION update(ttext, ttext, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_update' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tbool, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tint, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tfloat, timestamptz, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(ttext, timestamptz, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_delete_timestamptz' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tbool, tstzset, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tint, tstzset, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tfloat, tstzset, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(ttext, tstzset, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tbool, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tint, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tfloat, tstzspan, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(ttext, tstzspan, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deleteTime(tbool, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tint, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(tfloat, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deleteTime(ttext, tstzspanset, connect boolean DEFAULT TRUE) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_delete_tstzspanset' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Segment Duration Functions + *****************************************************************************/ + +CREATE FUNCTION segmentMinDuration(tbool, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_min_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMinDuration(tint, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_min_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMinDuration(tfloat, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_min_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMinDuration(ttext, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_min_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION segmentMaxDuration(tbool, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_max_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMaxDuration(tint, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_max_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMaxDuration(tfloat, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_max_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION segmentMaxDuration(ttext, interval, bool DEFAULT true) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_segm_max_duration' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Stops Functions + *****************************************************************************/ + +CREATE FUNCTION stops(tfloat, maxdist float DEFAULT 0.0, + minduration interval DEFAULT '0 minutes') + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_stops' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION stops(tfloat, minduration interval) + RETURNS tfloat + AS 'SELECT @extschema@.stops($1, 0.0, $2)' + LANGUAGE SQL IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Local Aggregate Functions + *****************************************************************************/ + +CREATE FUNCTION integral(tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_integral' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION integral(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_integral' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION twAvg(tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_twavg' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION twAvg(tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Tnumber_twavg' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Selectivity functions for operators + *****************************************************************************/ + +CREATE FUNCTION temporal_sel(internal, oid, internal, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_sel' + LANGUAGE C IMMUTABLE STRICT; + +CREATE FUNCTION temporal_joinsel(internal, oid, internal, smallint, internal) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_joinsel' + LANGUAGE C IMMUTABLE STRICT; + +/****************************************************************************** + * Comparison functions and B-tree indexing + ******************************************************************************/ + +CREATE FUNCTION temporal_lt(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tbool, tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = temporal_sel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = temporal_sel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = temporal_sel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = temporal_sel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS tbool_btree_ops + DEFAULT FOR TYPE tbool USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tbool, tbool); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_lt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tint, tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +CREATE OPERATOR CLASS tint_btree_ops + DEFAULT FOR TYPE tint USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tint, tint); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_lt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(tfloat, tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR = ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR > ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +CREATE OPERATOR CLASS tfloat_btree_ops + DEFAULT FOR TYPE tfloat USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(tfloat, tfloat); + +/******************************************************************************/ + +CREATE FUNCTION temporal_lt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_lt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_le(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_le' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_eq(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_eq' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ne(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ne' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_ge(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_ge' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_gt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Temporal_gt' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_cmp(ttext, ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_cmp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR < ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_lt, + COMMUTATOR = >, NEGATOR = >=, + RESTRICT = temporal_sel, JOIN = scalarltjoinsel +); +CREATE OPERATOR <= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_le, + COMMUTATOR = >=, NEGATOR = >, + RESTRICT = temporal_sel, JOIN = scalarltjoinsel +); +CREATE OPERATOR = ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_eq, + COMMUTATOR = =, NEGATOR = <>, + RESTRICT = eqsel, JOIN = eqjoinsel +); +CREATE OPERATOR <> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_ne, + COMMUTATOR = <>, NEGATOR = =, + RESTRICT = neqsel, JOIN = neqjoinsel +); +CREATE OPERATOR >= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_ge, + COMMUTATOR = <=, NEGATOR = <, + RESTRICT = temporal_sel, JOIN = scalargtjoinsel +); +CREATE OPERATOR > ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_gt, + COMMUTATOR = <, NEGATOR = <=, + RESTRICT = temporal_sel, JOIN = scalargtjoinsel +); + +CREATE OPERATOR CLASS ttext_btree_ops + DEFAULT FOR TYPE ttext USING btree AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, + FUNCTION 1 temporal_cmp(ttext, ttext); + +/******************************************************************************/ + +CREATE FUNCTION temporal_hash(tbool) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_hash(tint) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_hash(tfloat) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_hash(ttext) + RETURNS integer + AS 'MODULE_PATHNAME', 'Temporal_hash' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR CLASS tbool_hash_ops + DEFAULT FOR TYPE tbool USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tbool); +CREATE OPERATOR CLASS tint_hash_ops + DEFAULT FOR TYPE tint USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tint); +CREATE OPERATOR CLASS tfloat_hash_ops + DEFAULT FOR TYPE tfloat USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(tfloat); +CREATE OPERATOR CLASS ttext_hash_ops + DEFAULT FOR TYPE ttext USING hash AS + OPERATOR 1 = , + FUNCTION 1 temporal_hash(ttext); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/023_temporal_inout.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/023_temporal_inout.in.sql new file mode 100644 index 00000000..45b5ba1a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/023_temporal_inout.in.sql @@ -0,0 +1,190 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Input/output of temporal types in WKT, MF-JSON, and WKB + * representation + */ + +/***************************************************************************** + * Input + *****************************************************************************/ + +CREATE FUNCTION tboolFromMFJSON(text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintFromMFJSON(text) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatFromMFJSON(text) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextFromMFJSON(text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_from_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION tboolFromBinary(bytea) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintFromBinary(bytea) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatFromBinary(bytea) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextFromBinary(bytea) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_from_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tboolFromHexWKB(text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tintFromHexWKB(text) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloatFromHexWKB(text) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttextFromHexWKB(text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_from_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Output + *****************************************************************************/ + +CREATE FUNCTION asText(tbool) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tbool[]) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Temporalarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(tint) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tint[]) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Temporalarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(tfloat, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(tfloat[], maxdecimaldigits int4 DEFAULT 15) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Temporalarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asText(ttext) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asText(ttext[]) + RETURNS text[] + AS 'MODULE_PATHNAME', 'Temporalarr_as_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asMFJSON(temp tbool, options int4 DEFAULT 0, + flags int4 DEFAULT 0) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asMFJSON(temp tint, options int4 DEFAULT 0, + flags int4 DEFAULT 0) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asMFJSON(temp tfloat, options int4 DEFAULT 0, + flags int4 DEFAULT 0, maxdecimaldigits int4 DEFAULT 15) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asMFJSON(temp ttext, options int4 DEFAULT 0, + flags int4 DEFAULT 0) + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_mfjson' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION asBinary(tbool, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tint, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(tfloat, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asBinary(ttext, endianenconding text DEFAULT '') + RETURNS bytea + AS 'MODULE_PATHNAME', 'Temporal_as_wkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION asHexWKB(tbool, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(tint, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(tfloat, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION asHexWKB(ttext, endianenconding text DEFAULT '') + RETURNS text + AS 'MODULE_PATHNAME', 'Temporal_as_hexwkb' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/025_temporal_tile.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/025_temporal_tile.in.sql new file mode 100644 index 00000000..491dbef0 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/025_temporal_tile.in.sql @@ -0,0 +1,316 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bin and tile functions for temporal types + * @note The time bin function are inspired from TimescaleDB + * https://docs.timescale.com/api/latest/hyperfunctions/time_bucket/ + */ + +/***************************************************************************** + * Bins + *****************************************************************************/ + +CREATE FUNCTION bins(intspan, vsize int, vorigin int DEFAULT 0) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Span_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(bigintspan, vsize bigint, vorigin int DEFAULT 0) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Span_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(floatspan, vsize float, vorigin float DEFAULT 0.0) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Span_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION bins(datespan, tsize interval, + torigin date DEFAULT '2000-01-01') + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Span_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(tstzspan, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Span_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE FUNCTION bins(intspanset, vsize int, vorigin int DEFAULT 0) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Spanset_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(bigintspanset, vsize bigint, vorigin int DEFAULT 0) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Spanset_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(floatspanset, vsize float, vorigin float DEFAULT 0.0) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Spanset_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION bins(datespanset, tsize interval, + torigin date DEFAULT '2000-01-01') + RETURNS datespan[] + AS 'MODULE_PATHNAME', 'Spanset_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION bins(tstzspanset, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Spanset_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE FUNCTION getBin("value" integer, size integer, origin integer DEFAULT 0) + RETURNS intspan + AS 'MODULE_PATHNAME', 'Value_bin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getBin("value" bigint, size bigint, origin bigint DEFAULT 0) + RETURNS bigintspan + AS 'MODULE_PATHNAME', 'Value_bin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getBin("value" float, size float, origin float DEFAULT 0.0) + RETURNS floatspan + AS 'MODULE_PATHNAME', 'Value_bin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getBin(date, interval, date DEFAULT '2000-01-03') + RETURNS datespan + AS 'MODULE_PATHNAME', 'Date_bin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION getBin(timestamptz, interval, timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Timestamptz_bin' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION timeBins(tbool, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_time_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeBins(tint, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_time_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeBins(tfloat, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_time_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeBins(ttext, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_time_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION valueBins(tint, vsize int, vorigin int DEFAULT 0) + RETURNS intspan[] + AS 'MODULE_PATHNAME', 'Tnumber_value_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION valueBins(tfloat, vsize float, vorigin float DEFAULT 0.0) + RETURNS floatspan[] + AS 'MODULE_PATHNAME', 'Tnumber_value_bins' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Multidimensional tiling + *****************************************************************************/ + +CREATE TYPE index_tbox AS ( + index integer, + tile tbox +); + +CREATE FUNCTION valueTiles(tbox, vsize float, vorigin float DEFAULT 0.0) + RETURNS SETOF index_tbox + AS 'MODULE_PATHNAME', 'Tbox_value_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION timeTiles(tbox, duration interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF index_tbox + AS 'MODULE_PATHNAME', 'Tbox_time_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION valueTimeTiles(tbox, vsize float, duration interval, + vorigin float DEFAULT 0.0, torigin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF index_tbox + AS 'MODULE_PATHNAME', 'Tbox_value_time_tiles' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE FUNCTION getValueTile(v float, vsize float, vorigin float DEFAULT 0.0) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_get_value_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getTBoxTimeTile(t timestamptz, duration interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_get_time_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION getValueTimeTile(v float, t timestamptz, vsize float, + duration interval, vorigin float DEFAULT 0.0, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_get_value_time_tile' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Boxes + *****************************************************************************/ + +CREATE FUNCTION valueBoxes(tint, vsize int, vorigin int DEFAULT 0) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_value_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION valueBoxes(tfloat, vsize float, vorigin float DEFAULT 0.0) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_value_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION timeBoxes(tint, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeBoxes(tfloat, tsize interval, + torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +CREATE FUNCTION valueTimeBoxes(tint, vsize int, tsize interval, + vorigin int DEFAULT 0, torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_value_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION valueTimeBoxes(tfloat, vsize float, tsize interval, + vorigin float DEFAULT 0.0, torigin timestamptz DEFAULT '2000-01-03') + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_value_time_boxes' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/***************************************************************************** + * Splitting + *****************************************************************************/ + +CREATE TYPE number_tint AS ( + number integer, + tnumber tint +); +CREATE TYPE number_tfloat AS ( + number float, + tnumber tfloat +); + +CREATE FUNCTION valueSplit(tint, size integer, origin integer DEFAULT 0) + RETURNS SETOF number_tint + AS 'MODULE_PATHNAME', 'Tnumber_value_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION valueSplit(tfloat, size float, origin float DEFAULT 0.0) + RETURNS SETOF number_tfloat + AS 'MODULE_PATHNAME', 'Tnumber_value_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE TYPE time_tbool AS ( + time timestamptz, + temp tbool +); +CREATE TYPE time_tint AS ( + time timestamptz, + temp tint +); +CREATE TYPE time_tfloat AS ( + time timestamptz, + temp tfloat +); +CREATE TYPE time_ttext AS ( + time timestamptz, + temp ttext +); + +CREATE FUNCTION timeSplit(tbool, size interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF time_tbool + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeSplit(tint, size interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF time_tint + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeSplit(tfloat, size interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF time_tfloat + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION timeSplit(ttext, size interval, + origin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF time_ttext + AS 'MODULE_PATHNAME', 'Temporal_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + +CREATE TYPE number_time_tint AS ( + number integer, + time timestamptz, + tnumber tint +); +CREATE TYPE number_time_tfloat AS ( + number float, + time timestamptz, + tnumber tfloat +); + +CREATE FUNCTION valueTimeSplit(tint, size integer, duration interval, + vorigin integer DEFAULT 0, torigin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF number_time_tint + AS 'MODULE_PATHNAME', 'Tnumber_value_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; +CREATE FUNCTION valueTimeSplit(tfloat, size float, duration interval, + vorigin float DEFAULT 0.0, torigin timestamptz DEFAULT '2000-01-03') + RETURNS SETOF number_time_tfloat + AS 'MODULE_PATHNAME', 'Tnumber_value_time_split' + LANGUAGE C IMMUTABLE PARALLEL SAFE STRICT; + +/*****************************************************************************/ + + diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/026_tnumber_mathfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/026_tnumber_mathfuncs.in.sql new file mode 100644 index 00000000..3c5bc3b2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/026_tnumber_mathfuncs.in.sql @@ -0,0 +1,424 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal mathematic functions and operators + */ + +/***************************************************************************** + * Temporal addition + *****************************************************************************/ + +/* integer + */ + +CREATE FUNCTION tnumber_add(integer, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Add_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = + +); + +/*****************************************************************************/ + +/* float + */ + +CREATE FUNCTION tnumber_add(float, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Add_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = + +); + +/*****************************************************************************/ +/* tint + */ + +CREATE FUNCTION tnumber_add(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Add_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_add(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Add_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = + +); + +/*****************************************************************************/ +/* tfloat + */ + +CREATE FUNCTION tnumber_add(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Add_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_add(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Add_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = + +); +CREATE OPERATOR + ( + PROCEDURE = tnumber_add, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = + +); + +/***************************************************************************** + * Temporal subtraction + *****************************************************************************/ + +/* integer - */ + +CREATE FUNCTION tnumber_sub(integer, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Sub_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = integer, RIGHTARG = tint +); + +/*****************************************************************************/ + +/* tint - */ + +CREATE FUNCTION tnumber_sub(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Sub_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_sub(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Sub_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = tint, RIGHTARG = integer +); +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = tint, RIGHTARG = tint +); + +/*****************************************************************************/ + +/* float - */ + +CREATE FUNCTION tnumber_sub(float, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Sub_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = float, RIGHTARG = tfloat +); + +/*****************************************************************************/ + +/* tfloat - */ + +CREATE FUNCTION tnumber_sub(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Sub_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_sub(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Sub_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = tfloat, RIGHTARG = float +); +CREATE OPERATOR - ( + PROCEDURE = tnumber_sub, + LEFTARG = tfloat, RIGHTARG = tfloat +); + +/***************************************************************************** + * Temporal multiplication + *****************************************************************************/ + +/* integer * */ + +CREATE FUNCTION tnumber_mul(integer, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Mul_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = * +); + +/*****************************************************************************/ +/* tint * */ + +CREATE FUNCTION tnumber_mul(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Mul_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_mul(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Mul_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = * +); + +/*****************************************************************************/ + +/* float * */ + +CREATE FUNCTION tnumber_mul(float, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Mul_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = * +); + +/*****************************************************************************/ +/* tfloat * */ + +CREATE FUNCTION tnumber_mul(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Mul_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_mul(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Mul_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = * +); +CREATE OPERATOR * ( + PROCEDURE = tnumber_mul, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = * +); + +/***************************************************************************** + * Temporal division + *****************************************************************************/ + +/* integer / */ + +CREATE FUNCTION tnumber_div(integer, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Div_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = integer, RIGHTARG = tint +); + +/*****************************************************************************/ +/* tint / */ + +CREATE FUNCTION tnumber_div(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Div_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_div(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Div_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = tint, RIGHTARG = integer +); +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = tint, RIGHTARG = tint +); + +/*****************************************************************************/ + +/* float / */ + +CREATE FUNCTION tnumber_div(float, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Div_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = float, RIGHTARG = tfloat +); + +/*****************************************************************************/ + +CREATE FUNCTION tnumber_div(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Div_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_div(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Div_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = tfloat, RIGHTARG = float +); +CREATE OPERATOR / ( + PROCEDURE = tnumber_div, + LEFTARG = tfloat, RIGHTARG = tfloat +); + +/******************************************************************************/ + +CREATE FUNCTION abs(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_abs' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION abs(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_abs' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION deltaValue(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_delta_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION deltaValue(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_delta_value' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION floor(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_floor' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION ceil(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_ceil' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION round(tfloat, integer DEFAULT 0) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION round(tfloat[], integer DEFAULT 0) + RETURNS tfloat[] + AS 'MODULE_PATHNAME', 'Temporalarr_round' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION degrees(float, bool DEFAULT FALSE) + RETURNS float + AS 'MODULE_PATHNAME', 'Float_degrees' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION degrees(tfloat, bool DEFAULT FALSE) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_degrees' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION radians(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_radians' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION angularDifference(float, float) + RETURNS float + AS 'MODULE_PATHNAME', 'Float_angular_difference' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION trend(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_trend' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION trend(tfloat) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tnumber_trend' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION derivative(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_derivative' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION exp(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_exp' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION ln(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_ln' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION log10(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tfloat_log10' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/028_tbool_boolops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/028_tbool_boolops.in.sql new file mode 100644 index 00000000..50cba9ba --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/028_tbool_boolops.in.sql @@ -0,0 +1,124 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal Boolean function and operators + */ + +/***************************************************************************** + * Temporal and + *****************************************************************************/ + +CREATE FUNCTION tbool_and(boolean, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tand_bool_tbool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbool_and(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tand_tbool_bool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbool_and(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tand_tbool_tbool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR & ( + PROCEDURE = tbool_and, + LEFTARG = boolean, RIGHTARG = tbool, + COMMUTATOR = & +); +CREATE OPERATOR & ( + PROCEDURE = tbool_and, + LEFTARG = tbool, RIGHTARG = boolean, + COMMUTATOR = & +); +CREATE OPERATOR & ( + PROCEDURE = tbool_and, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = & +); + +/***************************************************************************** + * Temporal or + *****************************************************************************/ + +CREATE FUNCTION tbool_or(boolean, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tor_bool_tbool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbool_or(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tor_tbool_bool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbool_or(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tor_tbool_tbool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR | ( + PROCEDURE = tbool_or, + LEFTARG = boolean, RIGHTARG = tbool, + COMMUTATOR = | +); +CREATE OPERATOR | ( + PROCEDURE = tbool_or, + LEFTARG = tbool, RIGHTARG = boolean, + COMMUTATOR = | +); +CREATE OPERATOR | ( + PROCEDURE = tbool_or, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = | +); + +/***************************************************************************** + * Temporal not + *****************************************************************************/ + +CREATE FUNCTION tbool_not(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tnot_tbool' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~ ( + PROCEDURE = tbool_not, RIGHTARG = tbool +); + +/***************************************************************************** + * Temporal when + *****************************************************************************/ + +-- when is a reserved word in SQL +CREATE FUNCTION whenTrue(tbool) + RETURNS tstzspanset + AS 'MODULE_PATHNAME', 'Tbool_when_true' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/029_ttext_textfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/029_ttext_textfuncs.in.sql new file mode 100644 index 00000000..22642697 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/029_ttext_textfuncs.in.sql @@ -0,0 +1,84 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal text functions + */ + +/***************************************************************************** + * Temporal text concatenation + *****************************************************************************/ + +CREATE FUNCTION ttext_cat(text, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Textcat_text_ttext' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext_cat(ttext, text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Textcat_ttext_text' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext_cat(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Textcat_ttext_ttext' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR || ( + PROCEDURE = ttext_cat, + LEFTARG = text, RIGHTARG = ttext +); +CREATE OPERATOR || ( + PROCEDURE = ttext_cat, + LEFTARG = ttext, RIGHTARG = text +); +CREATE OPERATOR || ( + PROCEDURE = ttext_cat, + LEFTARG = ttext, RIGHTARG = ttext +); + +/****************************************************************************** + * Temporal upper/lower case + *****************************************************************************/ + +CREATE FUNCTION upper(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Ttext_upper' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION lower(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Ttext_lower' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION initcap(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Ttext_initcap' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/030_temporal_compops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/030_temporal_compops.in.sql new file mode 100644 index 00000000..d16ec001 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/030_temporal_compops.in.sql @@ -0,0 +1,2026 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Comparison functions and operators for temporal types + * @note In this file we need both definitions of the functions with 2 and 3 + * parameters to be able to define the operators. This is not the case for + * the temporal relationships while a single definition of the functions with + * 3 parameters is enough + */ + +/***************************************************************************** + * Index Support Functions + *****************************************************************************/ + +CREATE FUNCTION tnumber_supportfn(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_supportfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Ever/Always Comparison Functions + *****************************************************************************/ + +CREATE FUNCTION ever_eq(boolean, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_base_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_base_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = boolean, RIGHTARG = tbool, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_eq(tbool, boolean) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_base' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_base' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tbool, RIGHTARG = boolean, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ne(boolean, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = boolean, RIGHTARG = tbool, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ne(tbool, boolean) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tbool, RIGHTARG = boolean, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION always_eq(boolean, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_base_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_base_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = boolean, RIGHTARG = tbool, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_eq(tbool, boolean) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_base' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_base' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tbool, RIGHTARG = boolean, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ne(boolean, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = boolean, RIGHTARG = tbool, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %<> ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ne(tbool, boolean) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tbool, RIGHTARG = boolean, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_lt(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?< ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_lt(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?< ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_le(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_le(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_gt(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?> ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_gt(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?> ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ge(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?>= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ge(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?>= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION always_lt(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %< ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_lt(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %< ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_le(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_le(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_gt(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %> ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_gt(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %> ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ge(integer, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(float, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(text, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %>= ( + LEFTARG = integer, RIGHTARG = tint, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = float, RIGHTARG = tfloat, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = text, RIGHTARG = ttext, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ge(tint, integer) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(tfloat, float) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(ttext, text) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %>= ( + LEFTARG = tint, RIGHTARG = integer, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = tfloat, RIGHTARG = float, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = ttext, RIGHTARG = text, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_eq(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_eq(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_eq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?= ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_eq, + NEGATOR = %<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_eq(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_temporal' + SUPPORT tnumber_supportfn + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_eq(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_eq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %= ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_eq, + NEGATOR = ?<>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ne(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ne(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<> ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_ne, + NEGATOR = %=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ne(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ne(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<> ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_ne, + NEGATOR = ?=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION ever_lt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_lt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?< ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?< ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_lt, + NEGATOR = %>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_le(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_le(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?<= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?<= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_le, + NEGATOR = %>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_lt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_lt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_lt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %< ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %< ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_lt, + NEGATOR = ?>=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_le(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_le(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_le_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %<= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %<= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_le, + NEGATOR = ?>, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_gt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_gt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_gt, + NEGATOR = %<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION ever_ge(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ever_ge(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Ever_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ?>= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ?>= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = ever_ge, + NEGATOR = %<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_gt(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_gt(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_gt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_gt, + NEGATOR = ?<=, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +CREATE FUNCTION always_ge(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION always_ge(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Always_ge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR %>= ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR %>= ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = always_ge, + NEGATOR = ?<, + RESTRICT = scalarltsel, JOIN = scalarltjoinsel +); + +/***************************************************************************** + * Temporal eq + *****************************************************************************/ + +-- Temporal boolean + +CREATE FUNCTION temporal_teq(boolean, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = boolean, RIGHTARG = tbool, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tbool, RIGHTARG = boolean, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_teq(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +-- float #= + +CREATE FUNCTION temporal_teq(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #= +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_teq(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_teq(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Teq_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #= +); +CREATE OPERATOR #= ( + PROCEDURE = temporal_teq, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #= +); + +/***************************************************************************** + * Temporal ne + *****************************************************************************/ + +-- Temporal boolean + +CREATE FUNCTION temporal_tne(boolean, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tbool, boolean) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = boolean, RIGHTARG = tbool, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tbool, RIGHTARG = boolean, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = #<> +); + +/*****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_tne(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #<> +); + +/*****************************************************************************/ + +-- Temporal float + +CREATE FUNCTION temporal_tne(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #<> +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_tne(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tne(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tne_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #<> +); +CREATE OPERATOR #<> ( + PROCEDURE = temporal_tne, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #<> +); + +/***************************************************************************** + * Temporal lt + *****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_tlt(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #> +); + +/*****************************************************************************/ + +-- Temporal float + +CREATE FUNCTION temporal_tlt(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #> +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_tlt(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tlt(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tlt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #> +); +CREATE OPERATOR #< ( + PROCEDURE = temporal_tlt, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #> +); + +/***************************************************************************** + * Temporal gt + *****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_tgt(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #< +); + +/*****************************************************************************/ + +-- Temporal float + +CREATE FUNCTION temporal_tgt(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(tfloat, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #< +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_tgt(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tgt(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tgt_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #< +); +CREATE OPERATOR #> ( + PROCEDURE = temporal_tgt, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #< +); + +/***************************************************************************** + * Temporal le + *****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_tle(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #>= +); + +/*****************************************************************************/ + +-- Temporal float + +CREATE FUNCTION temporal_tle(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #>= +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_tle(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tle(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tle_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #>= +); +CREATE OPERATOR #<= ( + PROCEDURE = temporal_tle, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #>= +); + +/***************************************************************************** + * Temporal ge + *****************************************************************************/ + +-- Temporal integer + +CREATE FUNCTION temporal_tge(integer, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(tint, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(tint, tint) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = #<= +); + +/*****************************************************************************/ + +-- Temporal float + +CREATE FUNCTION temporal_tge(float, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(tfloat, integer) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(tfloat, float) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(tfloat, tfloat) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = #<= +); + +/*****************************************************************************/ + +-- Temporal text + +CREATE FUNCTION temporal_tge(text, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_base_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(ttext, text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_base' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_tge(ttext, ttext) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Tge_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = text, RIGHTARG = ttext, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = ttext, RIGHTARG = text, + COMMUTATOR = #<= +); +CREATE OPERATOR #>= ( + PROCEDURE = temporal_tge, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = #<= +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/032_temporal_boxops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/032_temporal_boxops.in.sql new file mode 100644 index 00000000..adcc7f93 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/032_temporal_boxops.in.sql @@ -0,0 +1,1246 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Bounding tbox operators for temporal types + */ + +/***************************************************************************** + * Boxes functions + *****************************************************************************/ + +CREATE FUNCTION spans(tbool) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tint) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(tfloat) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION spans(ttext) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tboxes(tint) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tboxes(tfloat) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNSpans(tbool, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(tfloat, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNSpans(ttext, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNSpans(tbool, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tint, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(tfloat, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNSpans(ttext, integer) + RETURNS tstzspan[] + AS 'MODULE_PATHNAME', 'Temporal_split_each_n_spans' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitNTboxes(tint, integer) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_split_n_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitNTboxes(tfloat, integer) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_split_n_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION splitEachNTboxes(tint, integer) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_split_each_n_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION splitEachNTboxes(tfloat, integer) + RETURNS tbox[] + AS 'MODULE_PATHNAME', 'Tnumber_split_each_n_tboxes' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/***************************************************************************** + * Temporal boolean + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tbool, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tbool, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tbool, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tbool, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tbool, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tbool, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tbool, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tbool, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tbool, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tbool, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tbool, RIGHTARG = tbool, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * Temporal integer + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tint, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tint, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = intspan, RIGHTARG = tint, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tint, RIGHTARG = intspan, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tint, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tint, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = intspan, RIGHTARG = tint, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tint, RIGHTARG = intspan, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tint, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tint, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = intspan, RIGHTARG = tint, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tint, RIGHTARG = intspan, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tint, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tint, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = intspan, RIGHTARG = tint, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tint, RIGHTARG = intspan, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tint, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tint, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = intspan, RIGHTARG = tint, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tint, RIGHTARG = intspan, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * Temporal float + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = tfloat, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tfloat, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION temporal_overlaps(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = floatspan, RIGHTARG = tfloat, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tfloat, RIGHTARG = floatspan, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = &&, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = tfloat, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tfloat, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = floatspan, RIGHTARG = tfloat, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tfloat, RIGHTARG = floatspan, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = <@, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = tfloat, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tfloat, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = floatspan, RIGHTARG = tfloat, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tfloat, RIGHTARG = floatspan, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = @>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = tfloat, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tfloat, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = floatspan, RIGHTARG = tfloat, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tfloat, RIGHTARG = floatspan, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = ~=, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = tfloat, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tfloat, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = floatspan, RIGHTARG = tfloat, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tfloat, RIGHTARG = floatspan, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = -|-, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * Temporal text + *****************************************************************************/ + +CREATE FUNCTION temporal_overlaps(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overlaps(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overlaps_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = tstzspan, RIGHTARG = ttext, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = ttext, RIGHTARG = tstzspan, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR && ( + PROCEDURE = temporal_overlaps, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = &&, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contains(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contains(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contains_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = tstzspan, RIGHTARG = ttext, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = ttext, RIGHTARG = tstzspan, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR @> ( + PROCEDURE = temporal_contains, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = <@, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_contained(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_contained(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Contained_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = tstzspan, RIGHTARG = ttext, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = ttext, RIGHTARG = tstzspan, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR <@ ( + PROCEDURE = temporal_contained, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = @>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_same(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_same(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Same_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = tstzspan, RIGHTARG = ttext, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = ttext, RIGHTARG = tstzspan, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR ~= ( + PROCEDURE = temporal_same, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = ~=, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +CREATE FUNCTION temporal_adjacent(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_adjacent(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Adjacent_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = tstzspan, RIGHTARG = ttext, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = ttext, RIGHTARG = tstzspan, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR -|- ( + PROCEDURE = temporal_adjacent, + LEFTARG = ttext, RIGHTARG = ttext, + COMMUTATOR = -|-, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/034_temporal_posops.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/034_temporal_posops.in.sql new file mode 100644 index 00000000..4dde5989 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/034_temporal_posops.in.sql @@ -0,0 +1,1248 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Relative position operators for 1D (time) and 2D (1D value + 1D time) + * temporal types + */ + +/***************************************************************************** + * tstzspan + *****************************************************************************/ + +/* tstzspan op tbool */ + +CREATE FUNCTION temporal_before(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tbool, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tbool, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tbool, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tbool, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* tstzspan op tint */ + +CREATE FUNCTION temporal_before(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tint, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tint, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tstzspan op tfloat */ + +CREATE FUNCTION temporal_before(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = tfloat, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = tfloat, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tstzspan op ttext */ + +CREATE FUNCTION temporal_before(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tstzspan, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tstzspan_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tstzspan, RIGHTARG = ttext, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tstzspan, RIGHTARG = ttext, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tstzspan, RIGHTARG = ttext, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tstzspan, RIGHTARG = ttext, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * intspan + *****************************************************************************/ + +/* intspan op tint */ + +CREATE FUNCTION temporal_left(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(intspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = intspan, RIGHTARG = tint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = intspan, RIGHTARG = tint, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = intspan, RIGHTARG = tint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = intspan, RIGHTARG = tint, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* intspan op tfloat */ + +CREATE FUNCTION temporal_left(intspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(intspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(intspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(intspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = intspan, RIGHTARG = tfloat, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = intspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = intspan, RIGHTARG = tfloat, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = intspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * floatspan + *****************************************************************************/ + +/* floatspan op tint */ + +CREATE FUNCTION temporal_left(floatspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(floatspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(floatspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(floatspan, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = floatspan, RIGHTARG = tint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = floatspan, RIGHTARG = tint, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = floatspan, RIGHTARG = tint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = floatspan, RIGHTARG = tint, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* floatspan op tfloat */ + +CREATE FUNCTION temporal_left(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(floatspan, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_numspan_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = floatspan, RIGHTARG = tfloat, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = floatspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = floatspan, RIGHTARG = tfloat, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = floatspan, RIGHTARG = tfloat, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * tbox + *****************************************************************************/ + +/* tbox op tint */ + +CREATE FUNCTION temporal_left(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tbox, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tbox, RIGHTARG = tint, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tbox op tfloat */ + +CREATE FUNCTION temporal_left(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tbox, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tbox, RIGHTARG = tfloat, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * tbool + *****************************************************************************/ + +/* tbool op tstzspan */ + +CREATE FUNCTION temporal_before(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tbool, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tbool, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tbool, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tbool, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tbool, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* tbool op tbool */ + +CREATE FUNCTION temporal_before(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tbool, tbool) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tbool, RIGHTARG = tbool, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/***************************************************************************** + * tint + *****************************************************************************/ + +/* tint op tstzspan */ + +CREATE FUNCTION temporal_before(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tint, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tint, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tint, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tint, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tint op intspan */ + +CREATE FUNCTION temporal_left(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tint, intspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tint, RIGHTARG = intspan, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tint, RIGHTARG = intspan, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tint, RIGHTARG = intspan, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tint, RIGHTARG = intspan, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tint op tbox */ + +CREATE FUNCTION temporal_left(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tint, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tint, RIGHTARG = tbox, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tint op tint */ + +CREATE FUNCTION temporal_left(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tint, tint) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tint, RIGHTARG = tint, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * tfloat + *****************************************************************************/ + +/* tfloat op tstzspan */ + +CREATE FUNCTION temporal_before(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tfloat, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = tfloat, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tfloat, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tfloat, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tfloat, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tfloat op floatspan */ + +CREATE FUNCTION temporal_left(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tfloat, floatspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_numspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tfloat, RIGHTARG = floatspan, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tfloat, RIGHTARG = floatspan, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tfloat, RIGHTARG = floatspan, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tfloat, RIGHTARG = floatspan, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tfloat op tbox */ + +CREATE FUNCTION temporal_left(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tfloat, tbox) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tfloat, RIGHTARG = tbox, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ + +/* tfloat op tfloat */ + +CREATE FUNCTION temporal_left(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Left_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overleft(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overleft_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_right(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Right_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overright(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overright_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_before(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(tfloat, tfloat) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR << ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_left, + COMMUTATOR = >>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &< ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_overleft, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR >> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_right, + COMMUTATOR = <<, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_overright, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR <<# ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_overbefore, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = tfloat, RIGHTARG = tfloat, + PROCEDURE = temporal_overafter, + RESTRICT = tnumber_sel, JOIN = tnumber_joinsel +); + +/***************************************************************************** + * ttext + *****************************************************************************/ + +/* ttext op tstzspan */ + +CREATE FUNCTION temporal_before(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(ttext, tstzspan) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_tstzspan' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = ttext, RIGHTARG = tstzspan, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = ttext, RIGHTARG = tstzspan, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = ttext, RIGHTARG = tstzspan, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = ttext, RIGHTARG = tstzspan, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = temporal_joinsel +); + +/*****************************************************************************/ + +/* ttext op ttext */ + +CREATE FUNCTION temporal_before(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Before_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overbefore(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overbefore_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_after(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'After_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_overafter(ttext, ttext) + RETURNS boolean + AS 'MODULE_PATHNAME', 'Overafter_temporal_temporal' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <<# ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_before, + COMMUTATOR = #>>, + RESTRICT = temporal_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR &<# ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_overbefore, + RESTRICT = temporal_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #>> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_after, + COMMUTATOR = <<#, + RESTRICT = temporal_sel, JOIN = tnumber_joinsel +); +CREATE OPERATOR #&> ( + LEFTARG = ttext, RIGHTARG = ttext, + PROCEDURE = temporal_overafter, + RESTRICT = temporal_sel, JOIN = tnumber_joinsel +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/036_tnumber_distance.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/036_tnumber_distance.in.sql new file mode 100644 index 00000000..93e0d037 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/036_tnumber_distance.in.sql @@ -0,0 +1,242 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Distance functions for temporal numbers + */ + +/***************************************************************************** + * Temporal distance + *****************************************************************************/ + +/* integer <-> */ + +CREATE FUNCTION tDistance(integer, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tdistance_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = <-> +); + +/*****************************************************************************/ + +/* float <-> */ + +CREATE FUNCTION tDistance(float, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = <-> +); + +/*****************************************************************************/ +/* tint <-> */ + +CREATE FUNCTION tDistance(tint, integer) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tdistance_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Tdistance_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = <-> +); + +/*****************************************************************************/ +/* tfloat <-> */ + +CREATE FUNCTION tDistance(tfloat, float) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tDistance(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tdistance_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = <-> +); +CREATE OPERATOR <-> ( + PROCEDURE = tDistance, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = <-> +); + +/***************************************************************************** + * Nearest approach distance + *****************************************************************************/ + +/* integer |=| */ + +CREATE FUNCTION nearestApproachDistance(integer, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = integer, RIGHTARG = tint, + COMMUTATOR = |=| +); + +/*****************************************************************************/ + +/* float |=| */ + +CREATE FUNCTION nearestApproachDistance(float, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_number_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = float, RIGHTARG = tfloat, + COMMUTATOR = |=| +); + +/*****************************************************************************/ + +/* tbox |=| */ + +CREATE FUNCTION nearestApproachDistance(tbox, tbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tbox_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tbox, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tbox, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tbox_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tbox, RIGHTARG = tbox, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tbox, RIGHTARG = tint, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tbox, RIGHTARG = tfloat, + COMMUTATOR = |=| +); + +/*****************************************************************************/ +/* tint |=| */ + +CREATE FUNCTION nearestApproachDistance(tint, integer) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tint, tbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tint, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tint, RIGHTARG = integer, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tint, RIGHTARG = tbox, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tint, RIGHTARG = tint, + COMMUTATOR = |=| +); + +/*****************************************************************************/ +/* tfloat |=| */ + +CREATE FUNCTION nearestApproachDistance(tfloat, float) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_number' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tfloat, tbox) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_tbox' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION nearestApproachDistance(tfloat, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'NAD_tnumber_tnumber' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tfloat, RIGHTARG = float, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tfloat, RIGHTARG = tbox, + COMMUTATOR = |=| +); +CREATE OPERATOR |=| ( + PROCEDURE = nearestApproachDistance, + LEFTARG = tfloat, RIGHTARG = tfloat, + COMMUTATOR = |=| +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/038_temporal_similarity.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/038_temporal_similarity.in.sql new file mode 100644 index 00000000..2b489ec2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/038_temporal_similarity.in.sql @@ -0,0 +1,89 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Similarity distance for temporal values + * @note Currently, the discrete Frechet distance, the Dynamic Time Warping + * (DTW) distance, and the Hausdorff distance are implemented + */ + +CREATE FUNCTION frechetDistance(tint, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_frechet_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION frechetDistance(tfloat, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_frechet_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dynTimeWarpDistance(tint, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dynTimeWarpDistance(tfloat, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION hausdorffDistance(tint, tint) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_hausdorff_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION hausdorffDistance(tfloat, tfloat) + RETURNS float + AS 'MODULE_PATHNAME', 'Temporal_hausdorff_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +CREATE TYPE warp AS ( + i integer, + j integer +); + +CREATE FUNCTION frechetDistancePath(tint, tint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_frechet_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION frechetDistancePath(tfloat, tfloat) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_frechet_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION dynTimeWarpPath(tint, tint) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION dynTimeWarpPath(tfloat, tfloat) + RETURNS SETOF warp + AS 'MODULE_PATHNAME', 'Temporal_dyntimewarp_path' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/040_temporal_aggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/040_temporal_aggfuncs.in.sql new file mode 100644 index 00000000..d984ca13 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/040_temporal_aggfuncs.in.sql @@ -0,0 +1,730 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Temporal aggregate functions + */ + +-- The function is not strict +CREATE FUNCTION temporal_extent_transfn(tstzspan, tbool) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_extent_transfn(tstzspan, ttext) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Temporal_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_extent_combinefn(tstzspan, tstzspan) + RETURNS tstzspan + AS 'MODULE_PATHNAME', 'Span_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(tbool) ( + SFUNC = temporal_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = temporal_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(ttext) ( + SFUNC = temporal_extent_transfn, + STYPE = tstzspan, + COMBINEFUNC = temporal_extent_combinefn, + PARALLEL = safe +); + +-- The function is not strict +CREATE FUNCTION tnumber_extent_transfn(tbox, tint) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tnumber_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tnumber_extent_transfn(tbox, tfloat) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tnumber_extent_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tnumber_extent_combinefn(tbox, tbox) + RETURNS tbox + AS 'MODULE_PATHNAME', 'Tbox_extent_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE extent(tint) ( + SFUNC = tnumber_extent_transfn, + STYPE = tbox, + COMBINEFUNC = tnumber_extent_combinefn, + PARALLEL = safe +); +CREATE AGGREGATE extent(tfloat) ( + SFUNC = tnumber_extent_transfn, + STYPE = tbox, + COMBINEFUNC = tnumber_extent_combinefn, + PARALLEL = safe +); + +/*****************************************************************************/ + +CREATE FUNCTION taggstate_serialize(internal) + RETURNS bytea + AS 'MODULE_PATHNAME', 'Taggstate_serialize' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION taggstate_deserialize(bytea, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Taggstate_deserialize' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, timestamptz) + RETURNS internal + AS 'MODULE_PATHNAME', 'Timestamptz_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcount_transfn(internal, tstzset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tstzset_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcount_transfn(internal, tstzspan) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tstzspan_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tcount_transfn(internal, tstzspanset) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tstzspanset_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tcount_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tagg_finalfn(internal) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE tcount(timestamptz) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tcount(tstzset) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tcount(tstzspan) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tcount(tstzspanset) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tbool) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tbool_tand_transfn(internal, tbool) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbool_tand_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tbool_tand_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbool_tand_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tbool_tor_transfn(internal, tbool) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbool_tor_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tbool_tor_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbool_tor_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tbool_tagg_finalfn(internal) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE tcount(tbool) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tand(tbool) ( + SFUNC = tbool_tand_transfn, + STYPE = internal, + COMBINEFUNC = tbool_tand_combinefn, + FINALFUNC = tbool_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tor(tbool) ( + SFUNC = tbool_tor_transfn, + STYPE = internal, + COMBINEFUNC = tbool_tor_combinefn, + FINALFUNC = tbool_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tint_tmin_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tmin_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tmin_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tmin_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tmax_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tmax_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tmax_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tmax_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tsum_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tsum_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_tsum_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_tsum_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tavg_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_tavg_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tavg_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_tavg_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tavg_finalfn(internal) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Tnumber_tavg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE tcount(tint) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tmin(tint) ( + SFUNC = tint_tmin_transfn, + STYPE = internal, + COMBINEFUNC = tint_tmin_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tmax(tint) ( + SFUNC = tint_tmax_transfn, + STYPE = internal, + COMBINEFUNC = tint_tmax_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tsum(tint) ( + SFUNC = tint_tsum_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tavg(tint) ( + SFUNC = tavg_transfn, + STYPE = internal, + COMBINEFUNC = tavg_combinefn, + FINALFUNC = tavg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION tfloat_tmin_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tmin_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tmin_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tmin_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tmax_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tmax_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tmax_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tmax_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tsum_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tsum_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tsum_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_tsum_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_tagg_finalfn(internal) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +-- The function is not strict +CREATE FUNCTION tavg_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_tavg_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE tcount(tfloat) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tmin(tfloat) ( + SFUNC = tfloat_tmin_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tmin_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tmax(tfloat) ( + SFUNC = tfloat_tmax_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tmax_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tsum(tfloat) ( + SFUNC = tfloat_tsum_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tsum_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tavg(tfloat) ( + SFUNC = tavg_transfn, + STYPE = internal, + COMBINEFUNC = tavg_combinefn, + FINALFUNC = tavg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tcount_transfn(internal, ttext) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_tcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION ttext_tmin_transfn(internal, ttext) + RETURNS internal + AS 'MODULE_PATHNAME', 'Ttext_tmin_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttext_tmin_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Ttext_tmin_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttext_tmax_transfn(internal, ttext) + RETURNS internal + AS 'MODULE_PATHNAME', 'Ttext_tmax_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttext_tmax_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Ttext_tmax_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION ttext_tagg_finalfn(internal) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_tagg_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE tcount(ttext) ( + SFUNC = tcount_transfn, + STYPE = internal, + COMBINEFUNC = tcount_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +CREATE AGGREGATE tmin(ttext) ( + SFUNC = ttext_tmin_transfn, + STYPE = internal, + COMBINEFUNC = ttext_tmin_combinefn, + FINALFUNC = ttext_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE tmax(ttext) ( + SFUNC = ttext_tmax_transfn, + STYPE = internal, + COMBINEFUNC = ttext_tmax_combinefn, + FINALFUNC = ttext_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION temporal_merge_transfn(internal, tbool) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_merge_transfn(internal, tint) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_merge_transfn(internal, tfloat) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_merge_transfn(internal, ttext) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_merge_combinefn(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_merge_combinefn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE merge(tbool) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tbool_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); +CREATE AGGREGATE merge(tint) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); +CREATE AGGREGATE merge(tfloat) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); +CREATE AGGREGATE merge(ttext) ( + SFUNC = temporal_merge_transfn, + STYPE = internal, + COMBINEFUNC = temporal_merge_combinefn, + FINALFUNC = ttext_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = safe +); + +/***************************************************************************** + * Append aggregate functions + *****************************************************************************/ + +-- Default interpolation based on the base type +CREATE FUNCTION temporal_app_tinst_transfn(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- Interpolation given by the user +CREATE FUNCTION temporal_app_tinst_transfn(tbool, tbool, interp text) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tint, tint, interp text) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tfloat, tfloat, interp text) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(ttext, ttext, interp text) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +-- These functions are not strict +CREATE FUNCTION temporal_app_tinst_transfn(tbool, tbool, interp text, + maxt interval) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tint, tint, interp text, + maxdist float, maxt interval) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(tfloat, tfloat, interp text, + maxdist float, maxt interval) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tinst_transfn(ttext, ttext, interp text, + maxt interval) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_app_tinst_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE FUNCTION temporal_append_finalfn(tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_append_finalfn(tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_append_finalfn(tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION temporal_append_finalfn(ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_append_finalfn' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE AGGREGATE appendInstant(tbool) ( + SFUNC = temporal_app_tinst_transfn(tbool, tbool), + STYPE = tbool, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tbool, interp text) ( + SFUNC = temporal_app_tinst_transfn(tbool, tbool, text), + STYPE = tbool, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tbool, interp text, maxt interval) ( + SFUNC = temporal_app_tinst_transfn(tbool, tbool, text, maxt), + STYPE = tbool, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tint) ( + SFUNC = temporal_app_tinst_transfn(tint, tint), + STYPE = tint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tint, interp text) ( + SFUNC = temporal_app_tinst_transfn(tint, tint, text), + STYPE = tint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tint, interp text, maxdist float, + maxt interval) ( + SFUNC = temporal_app_tinst_transfn(tint, tint, text, maxdist, maxt), + STYPE = tint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(tfloat) ( + SFUNC = temporal_app_tinst_transfn(tfloat, tfloat), + STYPE = tfloat, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tfloat, interp text) ( + SFUNC = temporal_app_tinst_transfn(tfloat, tfloat, text), + STYPE = tfloat, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(tfloat, interp text, maxdist float, + maxt interval) ( + SFUNC = temporal_app_tinst_transfn(tfloat, tfloat, text, maxdist, maxt), + STYPE = tfloat, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +CREATE AGGREGATE appendInstant(ttext) ( + SFUNC = temporal_app_tinst_transfn(ttext, ttext), + STYPE = ttext, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(ttext, interp text) ( + SFUNC = temporal_app_tinst_transfn(ttext, ttext, text), + STYPE = ttext, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendInstant(ttext, interp text, maxt interval) ( + SFUNC = temporal_app_tinst_transfn(ttext, ttext, text, maxt), + STYPE = ttext, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ + +-- The function is not STRICT +CREATE FUNCTION temporal_app_tseq_transfn(tbool, tbool) + RETURNS tbool + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tseq_transfn(tint, tint) + RETURNS tint + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tseq_transfn(tfloat, tfloat) + RETURNS tfloat + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION temporal_app_tseq_transfn(ttext, ttext) + RETURNS ttext + AS 'MODULE_PATHNAME', 'Temporal_app_tseq_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE appendSequence(tbool) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tbool, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendSequence(tint) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tint, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendSequence(tfloat) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = tfloat, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); +CREATE AGGREGATE appendSequence(ttext) ( + SFUNC = temporal_app_tseq_transfn, + STYPE = ttext, + FINALFUNC = temporal_append_finalfn, + PARALLEL = safe +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/042_temporal_waggfuncs.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/042_temporal_waggfuncs.in.sql new file mode 100644 index 00000000..b07a0e4a --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/042_temporal_waggfuncs.in.sql @@ -0,0 +1,173 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Moving window temporal aggregate functions + */ + +-- The function is not strict +CREATE FUNCTION tint_wmin_transfn(internal, tint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_wmin_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_wmax_transfn(internal, tint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_wmax_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tint_wsum_transfn(internal, tint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tint_wsum_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wcount_transfn(internal, tint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wavg_transfn(internal, tint, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_wavg_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wmin(tint, interval) ( + SFUNC = tint_wmin_transfn, + STYPE = internal, + COMBINEFUNC = tint_tmin_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wmax(tint, interval) ( + SFUNC = tint_wmax_transfn, + STYPE = internal, + COMBINEFUNC = tint_tmax_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wsum(tint, interval) ( + SFUNC = tint_wsum_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wcount(tint, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wavg(tint, interval) ( + SFUNC = wavg_transfn, + STYPE = internal, + COMBINEFUNC = tavg_combinefn, + FINALFUNC = tavg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ + +-- The function is not strict +CREATE FUNCTION tfloat_wmin_transfn(internal, tfloat, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_wmin_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_wmax_transfn(internal, tfloat, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_wmax_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION tfloat_wsum_transfn(internal, tfloat, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tfloat_wsum_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wcount_transfn(internal, tfloat, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_wcount_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; +CREATE FUNCTION wavg_transfn(internal, tfloat, interval) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_wavg_transfn' + LANGUAGE C IMMUTABLE PARALLEL SAFE; + +CREATE AGGREGATE wmin(tfloat, interval) ( + SFUNC = tfloat_wmin_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tmin_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wmax(tfloat, interval) ( + SFUNC = tfloat_wmax_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tmax_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wsum(tfloat, interval) ( + SFUNC = tfloat_wsum_transfn, + STYPE = internal, + COMBINEFUNC = tfloat_tsum_combinefn, + FINALFUNC = tfloat_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wcount(tfloat, interval) ( + SFUNC = wcount_transfn, + STYPE = internal, + COMBINEFUNC = tint_tsum_combinefn, + FINALFUNC = tint_tagg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); +CREATE AGGREGATE wavg(tfloat, interval) ( + SFUNC = wavg_transfn, + STYPE = internal, + COMBINEFUNC = tavg_combinefn, + FINALFUNC = tavg_finalfn, + SERIALFUNC = taggstate_serialize, + DESERIALFUNC = taggstate_deserialize, + PARALLEL = SAFE +); + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/043_temporal_gist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/043_temporal_gist.in.sql new file mode 100644 index 00000000..7c2a01c2 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/043_temporal_gist.in.sql @@ -0,0 +1,392 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief R-tree GiST index for temporal types + */ + +/******************************************************************************/ + +CREATE FUNCTION tbox_gist_consistent(internal, tbox, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Tnumber_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gist_union(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbox_gist_union' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gist_penalty(internal, internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbox_gist_penalty' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gist_picksplit(internal, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbox_gist_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gist_same(tbox, tbox, internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tbox_gist_same' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_gist_distance(internal, tbox, smallint, oid, internal) + RETURNS float8 + AS 'MODULE_PATHNAME', 'Tbox_gist_distance' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE FUNCTION tbool_gist_consistent(internal, tbool, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbool_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tint_gist_consistent(internal, tint, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Tnumber_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tint_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION tfloat_gist_consistent(internal, tfloat, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Tnumber_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tfloat_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION ttext_gist_consistent(internal, ttext, smallint, oid, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Span_gist_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION ttext_gist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_gist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbox_rtree_ops + DEFAULT FOR TYPE tbox USING gist AS + -- strictly left + OPERATOR 1 << (tbox, tbox), + OPERATOR 1 << (tbox, tint), + OPERATOR 1 << (tbox, tfloat), + -- overlaps or left + OPERATOR 2 &< (tbox, tbox), + OPERATOR 2 &< (tbox, tint), + OPERATOR 2 &< (tbox, tfloat), + -- overlaps + OPERATOR 3 && (tbox, tbox), + OPERATOR 3 && (tbox, tint), + OPERATOR 3 && (tbox, tfloat), + -- overlaps or right + OPERATOR 4 &> (tbox, tbox), + OPERATOR 4 &> (tbox, tint), + OPERATOR 4 &> (tbox, tfloat), + -- strictly right + OPERATOR 5 >> (tbox, tbox), + OPERATOR 5 >> (tbox, tint), + OPERATOR 5 >> (tbox, tfloat), + -- same + OPERATOR 6 ~= (tbox, tbox), + OPERATOR 6 ~= (tbox, tint), + OPERATOR 6 ~= (tbox, tfloat), + -- contains + OPERATOR 7 @> (tbox, tbox), + OPERATOR 7 @> (tbox, tint), + OPERATOR 7 @> (tbox, tfloat), + -- contained by + OPERATOR 8 <@ (tbox, tbox), + OPERATOR 8 <@ (tbox, tint), + OPERATOR 8 <@ (tbox, tfloat), + -- adjacent + OPERATOR 17 -|- (tbox, tbox), + OPERATOR 17 -|- (tbox, tint), + OPERATOR 17 -|- (tbox, tfloat), + -- overlaps or before + OPERATOR 28 &<# (tbox, tbox), + OPERATOR 28 &<# (tbox, tint), + OPERATOR 28 &<# (tbox, tfloat), + -- strictly before + OPERATOR 29 <<# (tbox, tbox), + OPERATOR 29 <<# (tbox, tint), + OPERATOR 29 <<# (tbox, tfloat), + -- strictly after + OPERATOR 30 #>> (tbox, tbox), + OPERATOR 30 #>> (tbox, tint), + OPERATOR 30 #>> (tbox, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tbox, tbox), + OPERATOR 31 #&> (tbox, tint), + OPERATOR 31 #&> (tbox, tfloat), + -- functions + FUNCTION 1 tbox_gist_consistent(internal, tbox, smallint, oid, internal), + FUNCTION 2 tbox_gist_union(internal, internal), + FUNCTION 5 tbox_gist_penalty(internal, internal, internal), + FUNCTION 6 tbox_gist_picksplit(internal, internal), + FUNCTION 7 tbox_gist_same(tbox, tbox, internal), + FUNCTION 8 tbox_gist_distance(internal, tbox, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbool_rtree_ops + DEFAULT FOR TYPE tbool USING gist AS + STORAGE tstzspan, + -- overlaps + OPERATOR 3 && (tbool, tstzspan), + OPERATOR 3 && (tbool, tbool), + -- same + OPERATOR 6 ~= (tbool, tstzspan), + OPERATOR 6 ~= (tbool, tbool), + -- contains + OPERATOR 7 @> (tbool, tstzspan), + OPERATOR 7 @> (tbool, tbool), + -- contained by + OPERATOR 8 <@ (tbool, tstzspan), + OPERATOR 8 <@ (tbool, tbool), + -- adjacent + OPERATOR 17 -|- (tbool, tstzspan), + OPERATOR 17 -|- (tbool, tbool), + -- overlaps or before + OPERATOR 28 &<# (tbool, tstzspan), + OPERATOR 28 &<# (tbool, tbool), + -- strictly before + OPERATOR 29 <<# (tbool, tstzspan), + OPERATOR 29 <<# (tbool, tbool), + -- strictly after + OPERATOR 30 #>> (tbool, tstzspan), + OPERATOR 30 #>> (tbool, tbool), + -- overlaps or after + OPERATOR 31 #&> (tbool, tstzspan), + OPERATOR 31 #&> (tbool, tbool), + -- functions + FUNCTION 1 tbool_gist_consistent(internal, tbool, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 tbool_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(tstzspan, tstzspan, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tint_rtree_ops + DEFAULT FOR TYPE tint USING gist AS + STORAGE tbox, + -- strictly left + OPERATOR 1 << (tint, intspan), + OPERATOR 1 << (tint, tbox), + OPERATOR 1 << (tint, tint), + -- overlaps or left + OPERATOR 2 &< (tint, intspan), + OPERATOR 2 &< (tint, tbox), + OPERATOR 2 &< (tint, tint), + -- overlaps + OPERATOR 3 && (tint, intspan), + OPERATOR 3 && (tint, tstzspan), + OPERATOR 3 && (tint, tbox), + OPERATOR 3 && (tint, tint), + -- overlaps or right + OPERATOR 4 &> (tint, intspan), + OPERATOR 4 &> (tint, tbox), + OPERATOR 4 &> (tint, tint), + -- strictly right + OPERATOR 5 >> (tint, intspan), + OPERATOR 5 >> (tint, tbox), + OPERATOR 5 >> (tint, tint), + -- same + OPERATOR 6 ~= (tint, intspan), + OPERATOR 6 ~= (tint, tstzspan), + OPERATOR 6 ~= (tint, tbox), + OPERATOR 6 ~= (tint, tint), + -- contains + OPERATOR 7 @> (tint, intspan), + OPERATOR 7 @> (tint, tstzspan), + OPERATOR 7 @> (tint, tbox), + OPERATOR 7 @> (tint, tint), + -- contained by + OPERATOR 8 <@ (tint, intspan), + OPERATOR 8 <@ (tint, tstzspan), + OPERATOR 8 <@ (tint, tbox), + OPERATOR 8 <@ (tint, tint), + -- adjacent + OPERATOR 17 -|- (tint, intspan), + OPERATOR 17 -|- (tint, tstzspan), + OPERATOR 17 -|- (tint, tbox), + OPERATOR 17 -|- (tint, tint), + -- nearest approach distance + OPERATOR 25 |=| (tint, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tint, tint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tint, tstzspan), + OPERATOR 28 &<# (tint, tbox), + OPERATOR 28 &<# (tint, tint), + -- strictly before + OPERATOR 29 <<# (tint, tstzspan), + OPERATOR 29 <<# (tint, tbox), + OPERATOR 29 <<# (tint, tint), + -- strictly after + OPERATOR 30 #>> (tint, tstzspan), + OPERATOR 30 #>> (tint, tbox), + OPERATOR 30 #>> (tint, tint), + -- overlaps or after + OPERATOR 31 #&> (tint, tstzspan), + OPERATOR 31 #&> (tint, tbox), + OPERATOR 31 #&> (tint, tint), + -- functions + FUNCTION 1 tint_gist_consistent(internal, tint, smallint, oid, internal), + FUNCTION 2 tbox_gist_union(internal, internal), + FUNCTION 3 tint_gist_compress(internal), + FUNCTION 5 tbox_gist_penalty(internal, internal, internal), + FUNCTION 6 tbox_gist_picksplit(internal, internal), + FUNCTION 7 tbox_gist_same(tbox, tbox, internal), + FUNCTION 8 tbox_gist_distance(internal, tbox, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tfloat_rtree_ops + DEFAULT FOR TYPE tfloat USING gist AS + STORAGE tbox, + -- strictly left + OPERATOR 1 << (tfloat, floatspan), + OPERATOR 1 << (tfloat, tbox), + OPERATOR 1 << (tfloat, tfloat), + -- overlaps or left + OPERATOR 2 &< (tfloat, floatspan), + OPERATOR 2 &< (tfloat, tbox), + OPERATOR 2 &< (tfloat, tfloat), + -- overlaps + OPERATOR 3 && (tfloat, floatspan), + OPERATOR 3 && (tfloat, tstzspan), + OPERATOR 3 && (tfloat, tbox), + OPERATOR 3 && (tfloat, tfloat), + -- overlaps or right + OPERATOR 4 &> (tfloat, floatspan), + OPERATOR 4 &> (tfloat, tbox), + OPERATOR 4 &> (tfloat, tfloat), + -- strictly right + OPERATOR 5 >> (tfloat, floatspan), + OPERATOR 5 >> (tfloat, tbox), + OPERATOR 5 >> (tfloat, tfloat), + -- same + OPERATOR 6 ~= (tfloat, floatspan), + OPERATOR 6 ~= (tfloat, tstzspan), + OPERATOR 6 ~= (tfloat, tbox), + OPERATOR 6 ~= (tfloat, tfloat), + -- contains + OPERATOR 7 @> (tfloat, floatspan), + OPERATOR 7 @> (tfloat, tstzspan), + OPERATOR 7 @> (tfloat, tbox), + OPERATOR 7 @> (tfloat, tfloat), + -- contained by + OPERATOR 8 <@ (tfloat, floatspan), + OPERATOR 8 <@ (tfloat, tstzspan), + OPERATOR 8 <@ (tfloat, tbox), + OPERATOR 8 <@ (tfloat, tfloat), + -- adjacent + OPERATOR 17 -|- (tfloat, floatspan), + OPERATOR 17 -|- (tfloat, tstzspan), + OPERATOR 17 -|- (tfloat, tbox), + OPERATOR 17 -|- (tfloat, tfloat), + -- nearest approach distance + OPERATOR 25 |=| (tfloat, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tfloat, tfloat) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tfloat, tstzspan), + OPERATOR 28 &<# (tfloat, tbox), + OPERATOR 28 &<# (tfloat, tfloat), + -- strictly before + OPERATOR 29 <<# (tfloat, tstzspan), + OPERATOR 29 <<# (tfloat, tbox), + OPERATOR 29 <<# (tfloat, tfloat), + -- strictly after + OPERATOR 30 #>> (tfloat, tstzspan), + OPERATOR 30 #>> (tfloat, tbox), + OPERATOR 30 #>> (tfloat, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tfloat, tstzspan), + OPERATOR 31 #&> (tfloat, tbox), + OPERATOR 31 #&> (tfloat, tfloat), + -- functions + FUNCTION 1 tfloat_gist_consistent(internal, tfloat, smallint, oid, internal), + FUNCTION 2 tbox_gist_union(internal, internal), + FUNCTION 3 tfloat_gist_compress(internal), + FUNCTION 5 tbox_gist_penalty(internal, internal, internal), + FUNCTION 6 tbox_gist_picksplit(internal, internal), + FUNCTION 7 tbox_gist_same(tbox, tbox, internal), + FUNCTION 8 tbox_gist_distance(internal, tbox, smallint, oid, internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS ttext_rtree_ops + DEFAULT FOR TYPE ttext USING gist AS + STORAGE tstzspan, + -- overlaps + OPERATOR 3 && (ttext, tstzspan), + OPERATOR 3 && (ttext, ttext), + -- same + OPERATOR 6 ~= (ttext, tstzspan), + OPERATOR 6 ~= (ttext, ttext), + -- contains + OPERATOR 7 @> (ttext, tstzspan), + OPERATOR 7 @> (ttext, ttext), + -- contained by + OPERATOR 8 <@ (ttext, tstzspan), + OPERATOR 8 <@ (ttext, ttext), + -- adjacent + OPERATOR 17 -|- (ttext, tstzspan), + OPERATOR 17 -|- (ttext, ttext), + -- overlaps or before + OPERATOR 28 &<# (ttext, tstzspan), + OPERATOR 28 &<# (ttext, ttext), + -- strictly before + OPERATOR 29 <<# (ttext, tstzspan), + OPERATOR 29 <<# (ttext, ttext), + -- strictly after + OPERATOR 30 #>> (ttext, tstzspan), + OPERATOR 30 #>> (ttext, ttext), + -- overlaps or after + OPERATOR 31 #&> (ttext, tstzspan), + OPERATOR 31 #&> (ttext, ttext), + -- functions + FUNCTION 1 ttext_gist_consistent(internal, ttext, smallint, oid, internal), + FUNCTION 2 span_gist_union(internal, internal), + FUNCTION 3 ttext_gist_compress(internal), + FUNCTION 5 span_gist_penalty(internal, internal, internal), + FUNCTION 6 span_gist_picksplit(internal, internal), + FUNCTION 7 span_gist_same(tstzspan, tstzspan, internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/044_temporal_spgist.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/044_temporal_spgist.in.sql new file mode 100644 index 00000000..a3dc4072 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/044_temporal_spgist.in.sql @@ -0,0 +1,654 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Quad-tree and k-d tree SP-GiST indexes for temporal types + */ + +/******************************************************************************/ + +CREATE FUNCTION tbox_spgist_config(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_spgist_config' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_quadtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_quadtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_quadtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_quadtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_quadtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_quadtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_spgist_leaf_consistent(internal, internal) + RETURNS bool + AS 'MODULE_PATHNAME', 'Tbox_spgist_leaf_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tnumber_spgist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Tnumber_spgist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbox_quadtree_ops + DEFAULT FOR TYPE tbox USING spgist AS + -- strictly left + OPERATOR 1 << (tbox, tbox), + OPERATOR 1 << (tbox, tint), + OPERATOR 1 << (tbox, tfloat), + -- overlaps or left + OPERATOR 2 &< (tbox, tbox), + OPERATOR 2 &< (tbox, tint), + OPERATOR 2 &< (tbox, tfloat), + -- overlaps + OPERATOR 3 && (tbox, tbox), + OPERATOR 3 && (tbox, tint), + OPERATOR 3 && (tbox, tfloat), + -- overlaps or right + OPERATOR 4 &> (tbox, tbox), + OPERATOR 4 &> (tbox, tint), + OPERATOR 4 &> (tbox, tfloat), + -- strictly right + OPERATOR 5 >> (tbox, tbox), + OPERATOR 5 >> (tbox, tint), + OPERATOR 5 >> (tbox, tfloat), + -- same + OPERATOR 6 ~= (tbox, tbox), + OPERATOR 6 ~= (tbox, tint), + OPERATOR 6 ~= (tbox, tfloat), + -- contains + OPERATOR 7 @> (tbox, tbox), + OPERATOR 7 @> (tbox, tint), + OPERATOR 7 @> (tbox, tfloat), + -- contained by + OPERATOR 8 <@ (tbox, tbox), + OPERATOR 8 <@ (tbox, tint), + OPERATOR 8 <@ (tbox, tfloat), + -- adjacent + OPERATOR 17 -|- (tbox, tbox), + OPERATOR 17 -|- (tbox, tint), + OPERATOR 17 -|- (tbox, tfloat), + -- overlaps or before + OPERATOR 28 &<# (tbox, tbox), + OPERATOR 28 &<# (tbox, tint), + OPERATOR 28 &<# (tbox, tfloat), + -- strictly before + OPERATOR 29 <<# (tbox, tbox), + OPERATOR 29 <<# (tbox, tint), + OPERATOR 29 <<# (tbox, tfloat), + -- strictly after + OPERATOR 30 #>> (tbox, tbox), + OPERATOR 30 #>> (tbox, tint), + OPERATOR 30 #>> (tbox, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tbox, tbox), + OPERATOR 31 #&> (tbox, tint), + OPERATOR 31 #&> (tbox, tfloat), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_quadtree_choose(internal, internal), + FUNCTION 3 tbox_quadtree_picksplit(internal, internal), + FUNCTION 4 tbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal); + +/*****************************************************************************/ + +CREATE FUNCTION tbox_kdtree_choose(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_kdtree_choose' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_kdtree_picksplit(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_kdtree_picksplit' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; +CREATE FUNCTION tbox_kdtree_inner_consistent(internal, internal) + RETURNS void + AS 'MODULE_PATHNAME', 'Tbox_kdtree_inner_consistent' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbox_kdtree_ops + FOR TYPE tbox USING spgist AS + -- strictly left + OPERATOR 1 << (tbox, tbox), + OPERATOR 1 << (tbox, tint), + OPERATOR 1 << (tbox, tfloat), + -- overlaps or left + OPERATOR 2 &< (tbox, tbox), + OPERATOR 2 &< (tbox, tint), + OPERATOR 2 &< (tbox, tfloat), + -- overlaps + OPERATOR 3 && (tbox, tbox), + OPERATOR 3 && (tbox, tint), + OPERATOR 3 && (tbox, tfloat), + -- overlaps or right + OPERATOR 4 &> (tbox, tbox), + OPERATOR 4 &> (tbox, tint), + OPERATOR 4 &> (tbox, tfloat), + -- strictly right + OPERATOR 5 >> (tbox, tbox), + OPERATOR 5 >> (tbox, tint), + OPERATOR 5 >> (tbox, tfloat), + -- same + OPERATOR 6 ~= (tbox, tbox), + OPERATOR 6 ~= (tbox, tint), + OPERATOR 6 ~= (tbox, tfloat), + -- contains + OPERATOR 7 @> (tbox, tbox), + OPERATOR 7 @> (tbox, tint), + OPERATOR 7 @> (tbox, tfloat), + -- contained by + OPERATOR 8 <@ (tbox, tbox), + OPERATOR 8 <@ (tbox, tint), + OPERATOR 8 <@ (tbox, tfloat), + -- adjacent + OPERATOR 17 -|- (tbox, tbox), + OPERATOR 17 -|- (tbox, tint), + OPERATOR 17 -|- (tbox, tfloat), + -- overlaps or before + OPERATOR 28 &<# (tbox, tbox), + OPERATOR 28 &<# (tbox, tint), + OPERATOR 28 &<# (tbox, tfloat), + -- strictly before + OPERATOR 29 <<# (tbox, tbox), + OPERATOR 29 <<# (tbox, tint), + OPERATOR 29 <<# (tbox, tfloat), + -- strictly after + OPERATOR 30 #>> (tbox, tbox), + OPERATOR 30 #>> (tbox, tint), + OPERATOR 30 #>> (tbox, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tbox, tbox), + OPERATOR 31 #&> (tbox, tint), + OPERATOR 31 #&> (tbox, tfloat), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_kdtree_choose(internal, internal), + FUNCTION 3 tbox_kdtree_picksplit(internal, internal), + FUNCTION 4 tbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal); + +/******************************************************************************/ + +CREATE FUNCTION temporal_spgist_compress(internal) + RETURNS internal + AS 'MODULE_PATHNAME', 'Temporal_spgist_compress' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbool_quadtree_ops + DEFAULT FOR TYPE tbool USING spgist AS + -- overlaps + OPERATOR 3 && (tbool, tstzspan), + OPERATOR 3 && (tbool, tbool), + -- same + OPERATOR 6 ~= (tbool, tstzspan), + OPERATOR 6 ~= (tbool, tbool), + -- contains + OPERATOR 7 @> (tbool, tstzspan), + OPERATOR 7 @> (tbool, tbool), + -- contained by + OPERATOR 8 <@ (tbool, tstzspan), + OPERATOR 8 <@ (tbool, tbool), + -- adjacent + OPERATOR 17 -|- (tbool, tstzspan), + OPERATOR 17 -|- (tbool, tbool), + -- overlaps or before + OPERATOR 28 &<# (tbool, tstzspan), + OPERATOR 28 &<# (tbool, tbool), + -- strictly before + OPERATOR 29 <<# (tbool, tstzspan), + OPERATOR 29 <<# (tbool, tbool), + -- strictly after + OPERATOR 30 #>> (tbool, tstzspan), + OPERATOR 30 #>> (tbool, tbool), + -- overlaps or after + OPERATOR 31 #&> (tbool, tstzspan), + OPERATOR 31 #&> (tbool, tbool), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 temporal_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tbool_kdtree_ops + FOR TYPE tbool USING spgist AS + -- overlaps + OPERATOR 3 && (tbool, tstzspan), + OPERATOR 3 && (tbool, tbool), + -- same + OPERATOR 6 ~= (tbool, tstzspan), + OPERATOR 6 ~= (tbool, tbool), + -- contains + OPERATOR 7 @> (tbool, tstzspan), + OPERATOR 7 @> (tbool, tbool), + -- contained by + OPERATOR 8 <@ (tbool, tstzspan), + OPERATOR 8 <@ (tbool, tbool), + -- adjacent + OPERATOR 17 -|- (tbool, tstzspan), + OPERATOR 17 -|- (tbool, tbool), + -- overlaps or before + OPERATOR 28 &<# (tbool, tstzspan), + OPERATOR 28 &<# (tbool, tbool), + -- strictly before + OPERATOR 29 <<# (tbool, tstzspan), + OPERATOR 29 <<# (tbool, tbool), + -- strictly after + OPERATOR 30 #>> (tbool, tstzspan), + OPERATOR 30 #>> (tbool, tbool), + -- overlaps or after + OPERATOR 31 #&> (tbool, tstzspan), + OPERATOR 31 #&> (tbool, tbool), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 temporal_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tint_quadtree_ops + DEFAULT FOR TYPE tint USING spgist AS + -- strictly left + OPERATOR 1 << (tint, intspan), + OPERATOR 1 << (tint, tbox), + OPERATOR 1 << (tint, tint), + -- overlaps or left + OPERATOR 2 &< (tint, intspan), + OPERATOR 2 &< (tint, tbox), + OPERATOR 2 &< (tint, tint), + -- overlaps + OPERATOR 3 && (tint, intspan), + OPERATOR 3 && (tint, tstzspan), + OPERATOR 3 && (tint, tbox), + OPERATOR 3 && (tint, tint), + -- overlaps or right + OPERATOR 4 &> (tint, intspan), + OPERATOR 4 &> (tint, tbox), + OPERATOR 4 &> (tint, tint), + -- strictly right + OPERATOR 5 >> (tint, intspan), + OPERATOR 5 >> (tint, tbox), + OPERATOR 5 >> (tint, tint), + -- same + OPERATOR 6 ~= (tint, intspan), + OPERATOR 6 ~= (tint, tstzspan), + OPERATOR 6 ~= (tint, tbox), + OPERATOR 6 ~= (tint, tint), + -- contains + OPERATOR 7 @> (tint, intspan), + OPERATOR 7 @> (tint, tstzspan), + OPERATOR 7 @> (tint, tbox), + OPERATOR 7 @> (tint, tint), + -- contained by + OPERATOR 8 <@ (tint, intspan), + OPERATOR 8 <@ (tint, tstzspan), + OPERATOR 8 <@ (tint, tbox), + OPERATOR 8 <@ (tint, tint), + -- adjacent + OPERATOR 17 -|- (tint, intspan), + OPERATOR 17 -|- (tint, tstzspan), + OPERATOR 17 -|- (tint, tbox), + OPERATOR 17 -|- (tint, tint), + -- nearest approach distance + OPERATOR 25 |=| (tint, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tint, tint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tint, tstzspan), + OPERATOR 28 &<# (tint, tbox), + OPERATOR 28 &<# (tint, tint), + -- strictly before + OPERATOR 29 <<# (tint, tstzspan), + OPERATOR 29 <<# (tint, tbox), + OPERATOR 29 <<# (tint, tint), + -- strictly after + OPERATOR 30 #>> (tint, tstzspan), + OPERATOR 30 #>> (tint, tbox), + OPERATOR 30 #>> (tint, tint), + -- overlaps or after + OPERATOR 31 #&> (tint, tstzspan), + OPERATOR 31 #&> (tint, tbox), + OPERATOR 31 #&> (tint, tint), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_quadtree_choose(internal, internal), + FUNCTION 3 tbox_quadtree_picksplit(internal, internal), + FUNCTION 4 tbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tnumber_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tint_kdtree_ops + FOR TYPE tint USING spgist AS + -- strictly left + OPERATOR 1 << (tint, intspan), + OPERATOR 1 << (tint, tbox), + OPERATOR 1 << (tint, tint), + -- overlaps or left + OPERATOR 2 &< (tint, intspan), + OPERATOR 2 &< (tint, tbox), + OPERATOR 2 &< (tint, tint), + -- overlaps + OPERATOR 3 && (tint, intspan), + OPERATOR 3 && (tint, tstzspan), + OPERATOR 3 && (tint, tbox), + OPERATOR 3 && (tint, tint), + -- overlaps or right + OPERATOR 4 &> (tint, intspan), + OPERATOR 4 &> (tint, tbox), + OPERATOR 4 &> (tint, tint), + -- strictly right + OPERATOR 5 >> (tint, intspan), + OPERATOR 5 >> (tint, tbox), + OPERATOR 5 >> (tint, tint), + -- same + OPERATOR 6 ~= (tint, intspan), + OPERATOR 6 ~= (tint, tstzspan), + OPERATOR 6 ~= (tint, tbox), + OPERATOR 6 ~= (tint, tint), + -- contains + OPERATOR 7 @> (tint, intspan), + OPERATOR 7 @> (tint, tstzspan), + OPERATOR 7 @> (tint, tbox), + OPERATOR 7 @> (tint, tint), + -- contained by + OPERATOR 8 <@ (tint, intspan), + OPERATOR 8 <@ (tint, tstzspan), + OPERATOR 8 <@ (tint, tbox), + OPERATOR 8 <@ (tint, tint), + -- adjacent + OPERATOR 17 -|- (tint, intspan), + OPERATOR 17 -|- (tint, tstzspan), + OPERATOR 17 -|- (tint, tbox), + OPERATOR 17 -|- (tint, tint), + -- nearest approach distance + OPERATOR 25 |=| (tint, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tint, tint) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tint, tstzspan), + OPERATOR 28 &<# (tint, tbox), + OPERATOR 28 &<# (tint, tint), + -- strictly before + OPERATOR 29 <<# (tint, tstzspan), + OPERATOR 29 <<# (tint, tbox), + OPERATOR 29 <<# (tint, tint), + -- strictly after + OPERATOR 30 #>> (tint, tstzspan), + OPERATOR 30 #>> (tint, tbox), + OPERATOR 30 #>> (tint, tint), + -- overlaps or after + OPERATOR 31 #&> (tint, tstzspan), + OPERATOR 31 #&> (tint, tbox), + OPERATOR 31 #&> (tint, tint), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_kdtree_choose(internal, internal), + FUNCTION 3 tbox_kdtree_picksplit(internal, internal), + FUNCTION 4 tbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tnumber_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tfloat_quadtree_ops + DEFAULT FOR TYPE tfloat USING spgist AS + -- strictly left + OPERATOR 1 << (tfloat, floatspan), + OPERATOR 1 << (tfloat, tbox), + OPERATOR 1 << (tfloat, tfloat), + -- overlaps or left + OPERATOR 2 &< (tfloat, floatspan), + OPERATOR 2 &< (tfloat, tbox), + OPERATOR 2 &< (tfloat, tfloat), + -- overlaps + OPERATOR 3 && (tfloat, floatspan), + OPERATOR 3 && (tfloat, tstzspan), + OPERATOR 3 && (tfloat, tbox), + OPERATOR 3 && (tfloat, tfloat), + -- overlaps or right + OPERATOR 4 &> (tfloat, floatspan), + OPERATOR 4 &> (tfloat, tbox), + OPERATOR 4 &> (tfloat, tfloat), + -- strictly right + OPERATOR 5 >> (tfloat, floatspan), + OPERATOR 5 >> (tfloat, tbox), + OPERATOR 5 >> (tfloat, tfloat), + -- same + OPERATOR 6 ~= (tfloat, floatspan), + OPERATOR 6 ~= (tfloat, tstzspan), + OPERATOR 6 ~= (tfloat, tbox), + OPERATOR 6 ~= (tfloat, tfloat), + -- contains + OPERATOR 7 @> (tfloat, floatspan), + OPERATOR 7 @> (tfloat, tstzspan), + OPERATOR 7 @> (tfloat, tbox), + OPERATOR 7 @> (tfloat, tfloat), + -- contained by + OPERATOR 8 <@ (tfloat, floatspan), + OPERATOR 8 <@ (tfloat, tstzspan), + OPERATOR 8 <@ (tfloat, tbox), + OPERATOR 8 <@ (tfloat, tfloat), + -- adjacent + OPERATOR 17 -|- (tfloat, floatspan), + OPERATOR 17 -|- (tfloat, tstzspan), + OPERATOR 17 -|- (tfloat, tbox), + OPERATOR 17 -|- (tfloat, tfloat), + -- nearest approach distance + OPERATOR 25 |=| (tfloat, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tfloat, tfloat) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tfloat, tstzspan), + OPERATOR 28 &<# (tfloat, tbox), + OPERATOR 28 &<# (tfloat, tfloat), + -- strictly before + OPERATOR 29 <<# (tfloat, tstzspan), + OPERATOR 29 <<# (tfloat, tbox), + OPERATOR 29 <<# (tfloat, tfloat), + -- strictly after + OPERATOR 30 #>> (tfloat, tstzspan), + OPERATOR 30 #>> (tfloat, tbox), + OPERATOR 30 #>> (tfloat, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tfloat, tstzspan), + OPERATOR 31 #&> (tfloat, tbox), + OPERATOR 31 #&> (tfloat, tfloat), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_quadtree_choose(internal, internal), + FUNCTION 3 tbox_quadtree_picksplit(internal, internal), + FUNCTION 4 tbox_quadtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tnumber_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS tfloat_kdtree_ops + FOR TYPE tfloat USING spgist AS + -- strictly left + OPERATOR 1 << (tfloat, floatspan), + OPERATOR 1 << (tfloat, tbox), + OPERATOR 1 << (tfloat, tfloat), + -- overlaps or left + OPERATOR 2 &< (tfloat, floatspan), + OPERATOR 2 &< (tfloat, tbox), + OPERATOR 2 &< (tfloat, tfloat), + -- overlaps + OPERATOR 3 && (tfloat, floatspan), + OPERATOR 3 && (tfloat, tstzspan), + OPERATOR 3 && (tfloat, tbox), + OPERATOR 3 && (tfloat, tfloat), + -- overlaps or right + OPERATOR 4 &> (tfloat, floatspan), + OPERATOR 4 &> (tfloat, tbox), + OPERATOR 4 &> (tfloat, tfloat), + -- strictly right + OPERATOR 5 >> (tfloat, floatspan), + OPERATOR 5 >> (tfloat, tbox), + OPERATOR 5 >> (tfloat, tfloat), + -- same + OPERATOR 6 ~= (tfloat, floatspan), + OPERATOR 6 ~= (tfloat, tstzspan), + OPERATOR 6 ~= (tfloat, tbox), + OPERATOR 6 ~= (tfloat, tfloat), + -- contains + OPERATOR 7 @> (tfloat, floatspan), + OPERATOR 7 @> (tfloat, tstzspan), + OPERATOR 7 @> (tfloat, tbox), + OPERATOR 7 @> (tfloat, tfloat), + -- contained by + OPERATOR 8 <@ (tfloat, floatspan), + OPERATOR 8 <@ (tfloat, tstzspan), + OPERATOR 8 <@ (tfloat, tbox), + OPERATOR 8 <@ (tfloat, tfloat), + -- adjacent + OPERATOR 17 -|- (tfloat, floatspan), + OPERATOR 17 -|- (tfloat, tstzspan), + OPERATOR 17 -|- (tfloat, tbox), + OPERATOR 17 -|- (tfloat, tfloat), + -- nearest approach distance + OPERATOR 25 |=| (tfloat, tbox) FOR ORDER BY pg_catalog.float_ops, + OPERATOR 25 |=| (tfloat, tfloat) FOR ORDER BY pg_catalog.float_ops, + -- overlaps or before + OPERATOR 28 &<# (tfloat, tstzspan), + OPERATOR 28 &<# (tfloat, tbox), + OPERATOR 28 &<# (tfloat, tfloat), + -- strictly before + OPERATOR 29 <<# (tfloat, tstzspan), + OPERATOR 29 <<# (tfloat, tbox), + OPERATOR 29 <<# (tfloat, tfloat), + -- strictly after + OPERATOR 30 #>> (tfloat, tstzspan), + OPERATOR 30 #>> (tfloat, tbox), + OPERATOR 30 #>> (tfloat, tfloat), + -- overlaps or after + OPERATOR 31 #&> (tfloat, tstzspan), + OPERATOR 31 #&> (tfloat, tbox), + OPERATOR 31 #&> (tfloat, tfloat), + -- functions + FUNCTION 1 tbox_spgist_config(internal, internal), + FUNCTION 2 tbox_kdtree_choose(internal, internal), + FUNCTION 3 tbox_kdtree_picksplit(internal, internal), + FUNCTION 4 tbox_kdtree_inner_consistent(internal, internal), + FUNCTION 5 tbox_spgist_leaf_consistent(internal, internal), + FUNCTION 6 tnumber_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS ttext_quadtree_ops + DEFAULT FOR TYPE ttext USING spgist AS + -- overlaps + OPERATOR 3 && (ttext, tstzspan), + OPERATOR 3 && (ttext, ttext), + -- same + OPERATOR 6 ~= (ttext, tstzspan), + OPERATOR 6 ~= (ttext, ttext), + -- contains + OPERATOR 7 @> (ttext, tstzspan), + OPERATOR 7 @> (ttext, ttext), + -- contained by + OPERATOR 8 <@ (ttext, tstzspan), + OPERATOR 8 <@ (ttext, ttext), + -- adjacent + OPERATOR 17 -|- (ttext, tstzspan), + OPERATOR 17 -|- (ttext, ttext), + -- overlaps or before + OPERATOR 28 &<# (ttext, tstzspan), + OPERATOR 28 &<# (ttext, ttext), + -- strictly before + OPERATOR 29 <<# (ttext, tstzspan), + OPERATOR 29 <<# (ttext, ttext), + -- strictly after + OPERATOR 30 #>> (ttext, tstzspan), + OPERATOR 30 #>> (ttext, ttext), + -- overlaps or after + OPERATOR 31 #&> (ttext, tstzspan), + OPERATOR 31 #&> (ttext, ttext), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_quadtree_choose(internal, internal), + FUNCTION 3 span_quadtree_picksplit(internal, internal), + FUNCTION 4 span_quadtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 temporal_spgist_compress(internal); + +/******************************************************************************/ + +CREATE OPERATOR CLASS ttext_kdtree_ops + FOR TYPE ttext USING spgist AS + -- overlaps + OPERATOR 3 && (ttext, tstzspan), + OPERATOR 3 && (ttext, ttext), + -- same + OPERATOR 6 ~= (ttext, tstzspan), + OPERATOR 6 ~= (ttext, ttext), + -- contains + OPERATOR 7 @> (ttext, tstzspan), + OPERATOR 7 @> (ttext, ttext), + -- contained by + OPERATOR 8 <@ (ttext, tstzspan), + OPERATOR 8 <@ (ttext, ttext), + -- adjacent + OPERATOR 17 -|- (ttext, tstzspan), + OPERATOR 17 -|- (ttext, ttext), + -- overlaps or before + OPERATOR 28 &<# (ttext, tstzspan), + OPERATOR 28 &<# (ttext, ttext), + -- strictly before + OPERATOR 29 <<# (ttext, tstzspan), + OPERATOR 29 <<# (ttext, ttext), + -- strictly after + OPERATOR 30 #>> (ttext, tstzspan), + OPERATOR 30 #>> (ttext, ttext), + -- overlaps or after + OPERATOR 31 #&> (ttext, tstzspan), + OPERATOR 31 #&> (ttext, ttext), + -- functions + FUNCTION 1 tstzspan_spgist_config(internal, internal), + FUNCTION 2 span_kdtree_choose(internal, internal), + FUNCTION 3 span_kdtree_picksplit(internal, internal), + FUNCTION 4 span_kdtree_inner_consistent(internal, internal), + FUNCTION 5 span_spgist_leaf_consistent(internal, internal), + FUNCTION 6 temporal_spgist_compress(internal); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/046_temporal_analytics.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/046_temporal_analytics.in.sql new file mode 100644 index 00000000..e976f972 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/046_temporal_analytics.in.sql @@ -0,0 +1,57 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Analytic functions for temporal types + */ + +/*****************************************************************************/ + +CREATE FUNCTION minDistSimplify(tfloat, float) +RETURNS tfloat +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION minTimeDeltaSimplify(tfloat, interval) +RETURNS tfloat +AS 'MODULE_PATHNAME', 'Temporal_simplify_min_tdelta' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION maxDistSimplify(tfloat, float, boolean DEFAULT TRUE) +RETURNS tfloat +AS 'MODULE_PATHNAME', 'Temporal_simplify_max_dist' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +CREATE FUNCTION douglasPeuckerSimplify(tfloat, float, boolean DEFAULT TRUE) +RETURNS tfloat +AS 'MODULE_PATHNAME', 'Temporal_simplify_dp' +LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +/*****************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/999_oid_cache.in.sql b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/999_oid_cache.in.sql new file mode 100644 index 00000000..b3a38537 --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/999_oid_cache.in.sql @@ -0,0 +1,50 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2016-2025, Université libre de Bruxelles and MobilityDB + * contributors + * + * MobilityDB includes portions of PostGIS version 3 source code released + * under the GNU General Public License (GPLv2 or later). + * Copyright (c) 2001-2025, PostGIS contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ + +/** + * @file + * @brief Routine that pre-computes the type and operator Oid cache and store + * them in a global array and a hash table + */ + +CREATE TABLE mobilitydb_opcache ( + opnum INT, + ltypnum INT, + rtypnum INT, + opid Oid +); + +CREATE FUNCTION fill_oid_cache() + RETURNS VOID + AS 'MODULE_PATHNAME', 'fill_oid_cache' + LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE; + +SELECT fill_oid_cache(); + +/******************************************************************************/ diff --git a/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/CMakeLists.txt b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/CMakeLists.txt new file mode 100644 index 00000000..c1b8086f --- /dev/null +++ b/jmeos-core/tools/parity/meos-ref/mobilitydb/sql/temporal/CMakeLists.txt @@ -0,0 +1,39 @@ +SET(LOCAL_FILES + 001_set + 002_set_ops + 003_span + 005_span_ops + 007_spanset + 009_spanset_ops + 011_span_indexes + 012_spanset_indexes + 013_set_indexes + 015_span_aggfuncs + 019_geo_constructors + 021_tbox + 022_temporal + 023_temporal_inout + 025_temporal_tile + 026_tnumber_mathfuncs + 028_tbool_boolops + 029_ttext_textfuncs + 030_temporal_compops + 032_temporal_boxops + 034_temporal_posops + 036_tnumber_distance + 038_temporal_similarity + 040_temporal_aggfuncs + 042_temporal_waggfuncs + 043_temporal_gist + 044_temporal_spgist + 046_temporal_analytics + 999_oid_cache + ) + +foreach (f ${LOCAL_FILES}) + process_file(${f} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + configure_file(${CMAKE_CURRENT_BINARY_DIR}/${f}.sql.in ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql @ONLY) + list(APPEND PACKAGE_SQL_FILES ${CMAKE_BINARY_DIR}/MobilityDB/sql/${f}.sql) +endforeach() + +set(PROJECT_SQL_FILES ${PROJECT_SQL_FILES} ${PACKAGE_SQL_FILES} PARENT_SCOPE) diff --git a/jmeos-core/tools/parity/parity_audit.py b/jmeos-core/tools/parity/parity_audit.py new file mode 100644 index 00000000..ad339f2b --- /dev/null +++ b/jmeos-core/tools/parity/parity_audit.py @@ -0,0 +1,234 @@ +#!/usr/bin/env python3 +"""Symbol-level parity audit for the MobilityFlink generated MEOS facade. + +Measures, per type family, how much of the MEOS public-header function surface +the generated facade (org.mobilitydb.meos.MeosOps*) exposes, cross-checked +against the JMEOS jar export set so a method only counts when it is genuinely +bindable. + +Reference surface = the MEOS public C API (meos/include/meos*.h, excluding the +meos_internal*.h headers). This is the surface JMEOS mirrors and the facade +delegates to, so it is the exact denominator for a Flink binding. A second view +maps the facade against the MobilityDB SQL layer's underlying C symbols for +comparability with the SQL-surface bindings. + +Coverage reported here is STATIC: the facade method exists and binds a JMEOS +symbol of matching arity. Runtime behaviour is exercised separately by the +per-family smoke tests. + +Usage: + python3 tools/parity/parity_audit.py \ + --meos-include /path/to/MobilityDB/meos/include \ + --jar jar/JMEOS.jar \ + --facade src/main/java/org/mobilitydb/meos \ + --mdb-sql /path/to/MobilityDB/mobilitydb/sql \ + --out docs/parity-status.md +""" +import argparse, re, os, glob, subprocess, collections +from datetime import date + +PUBLIC_HEADERS = ["meos.h", "meos_geo.h", "meos_cbuffer.h", + "meos_npoint.h", "meos_pose.h", "meos_rgeo.h", +"meos_h3.h"] +FAMILY = {"meos.h": "core temporal / set / span / spanset / tbox", + "meos_geo.h": "geo (tgeo / tpoint / stbox)", + "meos_cbuffer.h": "cbuffer", "meos_npoint.h": "npoint", + "meos_pose.h": "pose", "meos_rgeo.h": "rgeo", + "meos_h3.h": "h3 / th3index"} + +_DECL = re.compile(r'^\s*extern\s+.+?\b([a-z][A-Za-z0-9_]*)\s*\(', re.M) +_PUBSTATIC = re.compile(r'public static [A-Za-z0-9_.<>\[\]]+ ([a-z0-9_]+)\(') + +# MobilityDB SQL out-of-scope bucketing (PG-only; no MEOS/Flink equivalent). +OOS_SECTIONS = { + "temporal/011_span_indexes.in.sql", "temporal/012_spanset_indexes.in.sql", + "temporal/013_set_indexes.in.sql", "temporal/019_geo_constructors.in.sql", + "temporal/043_temporal_gist.in.sql", "temporal/044_temporal_spgist.in.sql", + "temporal/999_oid_cache.in.sql", "geo/073_tgeo_gist.in.sql", + "geo/073_tpoint_gist.in.sql", "geo/074_tgeo_spgist.in.sql", + "geo/074_tpoint_spgist.in.sql", "cbuffer/166_tcbuffer_indexes.in.sql", + "npoint/092_tnpoint_gin.in.sql", "npoint/098_tnpoint_indexes.in.sql", + "pose/114_tpose_indexes.in.sql", "rgeo/134_trgeo_indexes.in.sql", +} +OOS_SUFFIXES = ("_in", "_out", "_recv", "_send", "_typmod_in", "_typmod_out", + "_transfn", "_combinefn", "_finalfn", "_serialize", "_deserialize", + "_sel", "_joinsel", "_supportfn", "_analyze", + "_cmp", "_eq", "_ne", "_lt", "_le", "_gt", "_ge", "_hash", "_hash_extended") +OOS_NAMES = {"range", "multirange", "create_trip", "transform_gk"} + + +def jmeos_symbols(jar): + out = subprocess.run(["javap", "-classpath", jar, "-p", + "functions.GeneratedFunctions"], + capture_output=True, text=True).stdout + return set(re.findall(r'\b([a-z][a-z0-9_]+)\(', out)) + + +def facade_methods(d): + syms = set() + for f in glob.glob(os.path.join(d, "MeosOps*.java")): + syms |= set(_PUBSTATIC.findall(open(f).read())) + return syms + + +def libmeos_symbols(path): + out = subprocess.run(["nm", "-D", path], capture_output=True, text=True).stdout + return {line.split()[-1] for line in out.splitlines() if line.strip()} + + +def public_surface(inc): + fam, allpub = {}, set() + for h in PUBLIC_HEADERS: + names = set(_DECL.findall(open(os.path.join(inc, h)).read())) + for n in names: + allpub.add(n); fam.setdefault(n, h) + return allpub, fam + + +def sql_csymbols(root): + create = re.compile(r'CREATE\s+(?:OR\s+REPLACE\s+)?FUNCTION\s+([A-Za-z0-9_]+)\s*\(', re.I) + csym = re.compile(r"AS\s+'[^']*'\s*,\s*'([A-Za-z0-9_]+)'", re.I) + langsql = re.compile(r"LANGUAGE\s+'?(?:sql|plpgsql)'?", re.I) + addressable, oos, sqlc = set(), 0, 0 + for path in glob.glob(os.path.join(root, "**", "*.in.sql"), recursive=True): + section = os.path.relpath(path, root).replace(os.sep, "/") + txt = open(path, encoding="utf-8", errors="replace").read() + for m in create.finditer(txt): + name = m.group(1); tail = txt[m.end():m.end() + 1200].split(';')[0] + cm = csym.search(tail); sym = cm.group(1) if cm else None + key = (sym or name).lower() + if section in OOS_SECTIONS or key in OOS_NAMES or key.endswith(OOS_SUFFIXES): + oos += 1; continue + if sym is None: + sqlc += 1; continue + addressable.add(sym.lower()) + return addressable, oos, sqlc + + +def main(): + ap = argparse.ArgumentParser() + here = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + ap.add_argument("--meos-include", default="/home/esteban/src/MobilityDB/meos/include") + ap.add_argument("--jar", default=os.path.join(here, "jar", "JMEOS.jar")) + ap.add_argument("--facade", default=os.path.join(here, "src/main/java/org/mobilitydb/meos")) + ap.add_argument("--mdb-sql", default="/home/esteban/src/MobilityDB/mobilitydb/sql") + ap.add_argument("--out", default=os.path.join(here, "docs", "parity-status.md")) + ap.add_argument("--libmeos", default=None, + help="path to a built libmeos.so; cross-checks that every facade method " + "resolves to an exported symbol (runtime resolution check)") + a = ap.parse_args() + + jm = jmeos_symbols(a.jar) + fa_all = facade_methods(a.facade) + fa = fa_all & jm + pub, fam = public_surface(a.meos_include) + bindable = pub & jm + covered = bindable & fa + missing = sorted(bindable - fa) + + bc, cc = collections.Counter(), collections.Counter() + for n in bindable: + bc[fam[n]] += 1 + if n in covered: + cc[fam[n]] += 1 + + addr, oos, sqlc = sql_csymbols(a.mdb_sql) + sql_cov = len(addr & fa); sql_bindable = len(addr & jm) + + pct = lambda c, t: (100.0 * c / t) if t else 0.0 + L = [] + L.append("# MobilityFlink parity status — MEOS surface audit\n") + L.append(f"Generated {date.today().isoformat()} by `tools/parity/parity_audit.py`.\n") + L.append("The MobilityFlink MEOS facade (`org.mobilitydb.meos.MeosOps*`) exposes " + "MEOS C functions to Flink through JMEOS. This audit measures, per type family, " + "the share of the **MEOS public C API** that the facade exposes and that JMEOS binds.\n") + L.append(f"**Headline.** The facade exposes **{len(covered)} of {len(bindable)} " + f"public MEOS functions ({pct(len(covered), len(bindable)):.1f}%)**. " + f"The MEOS public surface (`meos/include/meos*.h`, excluding internal headers) is " + f"{len(pub)} functions; JMEOS binds {len(bindable)} of them. " + f"{len(missing)} bindable functions are not exposed (listed in §3).\n") + L.append("Coverage is **static**: a function counts as covered when the facade declares a " + "method of the same name and arity that delegates to a JMEOS export.\n") + L.append("Per-family runtime behaviour is asserted by " + "`src/test/java/org/mobilitydb/meos/MeosFacadeSmokeTest.java`, which constructs " + "and reads back a value in the core, geo, cbuffer, npoint and pose families through the " + "facade against libmeos. The cbuffer, npoint and pose families require a libmeos built " + "with the extended modules (`-DCBUFFER=ON -DNPOINT=ON -DPOSE=ON -DRGEO=ON`); the stock " + "library carries the core and geo surfaces only.\n") + L.append("## 1. Reference surface and method\n") + L.append("- **Denominator**: distinct function names declared `extern` in the MEOS public " + "headers `meos.h`, `meos_geo.h`, `meos_cbuffer.h`, `meos_npoint.h`, `meos_pose.h`, " + "`meos_rgeo.h`. Internal headers (`meos_internal*.h`) are excluded.\n") + L.append("- **Numerator**: `public static` methods on the generated `MeosOps*` facade whose " + "name is also a `functions.GeneratedFunctions` export in the bundled JMEOS jar.\n") + L.append(f"- **JMEOS jar**: {os.path.relpath(a.jar, here)} exports {len(jm)} static methods.\n") + L.append("## 2. Per-family coverage of the public MEOS surface\n") + L.append("| Family (header) | Public ∩ JMEOS | Exposed | Missing | Coverage |") + L.append("|---|---:|---:|---:|---:|") + for h in PUBLIC_HEADERS: + b, c = bc[h], cc[h] + L.append(f"| {FAMILY[h]} (`{h}`) | {b} | {c} | {b - c} | {pct(c, b):.1f}% |") + L.append(f"| **total** | **{len(bindable)}** | **{len(covered)}** | " + f"**{len(bindable) - len(covered)}** | **{pct(len(covered), len(bindable)):.1f}%** |\n") + L.append("## 3. Bindable MEOS functions not exposed by the facade\n") + L.append(f"{len(missing)} functions are present in the public MEOS headers and bound by " + "JMEOS but not generated into the facade:\n") + for h in PUBLIC_HEADERS: + ms = [n for n in missing if fam[n] == h] + if ms: + L.append(f"- **`{h}`** ({len(ms)}): " + ", ".join(f"`{n}`" for n in ms)) + L.append("") + L.append("## 4. MobilityDB SQL-surface cross-check\n") + L.append("The facade is also matched against the underlying MEOS C symbol of each addressable " + "`CREATE FUNCTION` in `mobilitydb/sql/**/*.in.sql` (PG-only sections and helper symbols " + f"bucketed out; {oos} out-of-scope, {sqlc} SQL/plpgsql-composed functions with no single " + "C symbol). Functions the SQL layer implements through the internal MEOS headers " + "(`meos_internal*.h`) are exposed via `MeosOpsSqlSurface`.\n") + L.append(f"- Addressable distinct C symbols: **{len(addr)}**; bound by JMEOS: **{sql_bindable}**; " + f"exposed by the facade: **{sql_cov}** " + f"({pct(sql_cov, sql_bindable):.1f}% of the JMEOS-bindable SQL surface).\n") + L.append(f"- The remaining **{len(addr) - sql_bindable}** addressable C symbols are not exported " + "by JMEOS under the name the SQL layer's extension wrapper uses; the wrapper names " + "differ from the MEOS function names they call.\n") + + if a.libmeos: + libsyms = libmeos_symbols(a.libmeos) + resolved = fa_all & libsyms + unresolved = sorted(fa_all - libsyms) + L.append("## 5. Runtime symbol resolution\n") + L.append("Every facade method delegates to a libmeos symbol of the same name. Against a " + "MEOS shared library built with the extended modules (`-DCBUFFER=ON -DNPOINT=ON " + "-DPOSE=ON -DRGEO=ON`), " + f"**{len(resolved)} of {len(fa_all)}** facade methods resolve to an exported " + "symbol.\n") + if unresolved: + hdr_only = sorted(n for n in unresolved if n in pub) + jmeos_only = sorted(n for n in unresolved if n not in pub) + L.append(f"The remaining {len(unresolved)} are present in the JMEOS jar but not " + "exported by the MEOS shared library (a JMEOS-jar / library version skew):\n") + if hdr_only: + L.append(f"- declared in the public headers, not exported by this build " + f"({len(hdr_only)}): " + ", ".join(f"`{n}`" for n in hdr_only)) + if jmeos_only: + L.append(f"- not declared in the current public headers, JMEOS jar ahead of the " + f"library ({len(jmeos_only)}): " + ", ".join(f"`{n}`" for n in jmeos_only)) + L.append("") + else: + L.append("All facade methods resolve.\n") + print(f"libmeos resolution: {len(resolved)}/{len(fa_all)} " + f"({len(unresolved)} unresolved)") + + md = "\n".join(L) + "\n" + os.makedirs(os.path.dirname(a.out), exist_ok=True) + open(a.out, "w").write(md) + + print(f"public MEOS surface: {len(pub)}") + print(f" bound by JMEOS: {len(bindable)}") + print(f" exposed by facade: {len(covered)} ({pct(len(covered), len(bindable)):.1f}%)") + print(f" missing (bindable): {len(missing)}") + print(f"SQL addressable C-symbols: {len(addr)} (bindable {sql_bindable}, exposed {sql_cov})") + print(f"wrote {a.out}") + + +if __name__ == "__main__": + main() From 3f0a9d97a8ff5566e4d759a6200d52a673f61028 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Wed, 3 Jun 2026 09:36:59 +0200 Subject: [PATCH 06/14] Add the set-set spatial-join helper to the shared facade MeosSetSetJoin exposes the MEOS *_tgeoarr_tgeoarr family as eDwithinPairs / tDwithinPairs / aDisjointPairs over two arrays of temporal-geometry handles: it marshals the native pointer arrays the kernel prunes in C, keeps them reachable across the call with reachabilityFence, and reads back the flattened 0-based index pairs (and, for tDwithin, the per-pair tstzspanset of in-range times). Both JVM engines call it from the shared org.mobilitydb.meos layer, so the NxN spatial-join surface derives once. Verified against libmeos. --- .../org/mobilitydb/meos/MeosSetSetJoin.java | 151 ++++++++++++++++++ .../mobilitydb/meos/MeosSetSetJoinTest.java | 51 ++++++ 2 files changed, 202 insertions(+) create mode 100644 jmeos-core/src/main/java/org/mobilitydb/meos/MeosSetSetJoin.java create mode 100644 jmeos-core/src/test/java/org/mobilitydb/meos/MeosSetSetJoinTest.java diff --git a/jmeos-core/src/main/java/org/mobilitydb/meos/MeosSetSetJoin.java b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosSetSetJoin.java new file mode 100644 index 00000000..67c90481 --- /dev/null +++ b/jmeos-core/src/main/java/org/mobilitydb/meos/MeosSetSetJoin.java @@ -0,0 +1,151 @@ +/***************************************************************************** + * + * This MobilityDB code is provided under The PostgreSQL License. + * Copyright (c) 2020-2026, Université libre de Bruxelles and MobilityDB + * contributors + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without a written + * agreement is hereby granted, provided that the above copyright notice and + * this paragraph and the following two paragraphs appear in all copies. + * + * IN NO EVENT SHALL UNIVERSITE LIBRE DE BRUXELLES BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, + * EVEN IF UNIVERSITE LIBRE DE BRUXELLES HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * UNIVERSITE LIBRE DE BRUXELLES SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON + * AN "AS IS" BASIS, AND UNIVERSITE LIBRE DE BRUXELLES HAS NO OBLIGATIONS TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + *****************************************************************************/ +package org.mobilitydb.meos; + +import functions.GeneratedFunctions; +import jnr.ffi.Memory; +import jnr.ffi.Pointer; +import jnr.ffi.Runtime; + +import java.lang.ref.Reference; +import java.lang.reflect.Field; +import sun.misc.Unsafe; + +/** + * Shared set-set spatial-join helper over the MEOS {@code *_tgeoarr_tgeoarr} + * kernel family. It marshals two arrays of already-parsed temporal-geometry + * handles into the native pointer arrays the kernel prunes in C, then reads + * back the flattened {@code int*} pair list. The kernel pair indices are + * 0-based and returned verbatim (the array-language convention shared by every + * JVM binding); SQL-like surfaces add their own +1. + * + *

The input {@code Pointer[]} are MEOS-owned and remain owned by the caller + * (it frees them); this helper frees only what the kernel allocates. The native + * argument buffers are GC-managed and kept reachable across the native call via + * {@link Reference#reachabilityFence} — the documented fix for the set-set + * SIGSEGV under JVM GC pressure.

+ */ +public final class MeosSetSetJoin { + + private static final Unsafe UNSAFE; + static { + try { + Field f = Unsafe.class.getDeclaredField("theUnsafe"); + f.setAccessible(true); + UNSAFE = (Unsafe) f.get(null); + } catch (ReflectiveOperationException e) { + throw new ExceptionInInitializerError(e); + } + } + + private MeosSetSetJoin() { /* utility */ } + + /** Result of {@link #tDwithinPairs}: the 0-based index pairs and, per pair, + * the hex-WKB of the {@code tstzspanset} of times the pair is within distance. */ + public static final class TDwithin { + public final int[][] pairs; + public final String[] periodsHexwkb; + TDwithin(int[][] pairs, String[] periodsHexwkb) { + this.pairs = pairs; + this.periodsHexwkb = periodsHexwkb; + } + } + + /** Index pairs {@code {i,j}} (0-based) ever within {@code dist} of each other. */ + public static int[][] eDwithinPairs(Pointer[] a, Pointer[] b, double dist) { + if (a == null || b == null || a.length == 0 || b.length == 0) return new int[0][]; + Runtime rt = Runtime.getSystemRuntime(); + Pointer arr1 = marshal(a, rt), arr2 = marshal(b, rt); + Pointer countPtr = Memory.allocateDirect(rt, Integer.BYTES); + Pointer res = GeneratedFunctions.edwithin_tgeoarr_tgeoarr( + arr1, a.length, arr2, b.length, dist, countPtr); + Reference.reachabilityFence(arr1); + Reference.reachabilityFence(arr2); + return readPairsAndFree(res, countPtr.getInt(0)); + } + + /** Index pairs {@code {i,j}} (0-based) always spatially disjoint (never intersecting). */ + public static int[][] aDisjointPairs(Pointer[] a, Pointer[] b) { + if (a == null || b == null || a.length == 0 || b.length == 0) return new int[0][]; + Runtime rt = Runtime.getSystemRuntime(); + Pointer arr1 = marshal(a, rt), arr2 = marshal(b, rt); + Pointer countPtr = Memory.allocateDirect(rt, Integer.BYTES); + Pointer res = GeneratedFunctions.adisjoint_tgeoarr_tgeoarr( + arr1, a.length, arr2, b.length, countPtr); + Reference.reachabilityFence(arr1); + Reference.reachabilityFence(arr2); + return readPairsAndFree(res, countPtr.getInt(0)); + } + + /** Index pairs ever within {@code dist}, each with the {@code tstzspanset} of in-range times. */ + public static TDwithin tDwithinPairs(Pointer[] a, Pointer[] b, double dist) { + if (a == null || b == null || a.length == 0 || b.length == 0) + return new TDwithin(new int[0][], new String[0]); + Runtime rt = Runtime.getSystemRuntime(); + Pointer arr1 = marshal(a, rt), arr2 = marshal(b, rt); + Pointer countPtr = Memory.allocateDirect(rt, Integer.BYTES); + Pointer periodsPtr = Memory.allocateDirect(rt, Long.BYTES); + Pointer res = GeneratedFunctions.tdwithin_tgeoarr_tgeoarr( + arr1, a.length, arr2, b.length, dist, countPtr, periodsPtr); + Reference.reachabilityFence(arr1); + Reference.reachabilityFence(arr2); + int cnt = countPtr.getInt(0); + if (res == null || cnt == 0) return new TDwithin(new int[0][], new String[0]); + Pointer ssArr = periodsPtr.getPointer(0); + int[][] pairs = new int[cnt][2]; + String[] periods = new String[cnt]; + for (int k = 0; k < cnt; k++) { + pairs[k][0] = res.getInt((long) (2 * k) * Integer.BYTES); + pairs[k][1] = res.getInt((long) (2 * k + 1) * Integer.BYTES); + Pointer ss = ssArr == null ? null : ssArr.getPointer((long) k * Long.BYTES); + periods[k] = ss == null ? null : GeneratedFunctions.spanset_as_hexwkb(ss, (byte) 0); + free(ss); + } + free(ssArr); + free(res); + return new TDwithin(pairs, periods); + } + + private static Pointer marshal(Pointer[] xs, Runtime rt) { + Pointer buf = Memory.allocateDirect(rt, xs.length * Long.BYTES); + for (int i = 0; i < xs.length; i++) buf.putPointer((long) i * Long.BYTES, xs[i]); + return buf; + } + + private static int[][] readPairsAndFree(Pointer res, int cnt) { + if (res == null || cnt == 0) return new int[0][]; + int[][] out = new int[cnt][2]; + for (int k = 0; k < cnt; k++) { + out[k][0] = res.getInt((long) (2 * k) * Integer.BYTES); + out[k][1] = res.getInt((long) (2 * k + 1) * Integer.BYTES); + } + free(res); + return out; + } + + private static void free(Pointer p) { + if (p != null) UNSAFE.freeMemory(p.address()); + } +} diff --git a/jmeos-core/src/test/java/org/mobilitydb/meos/MeosSetSetJoinTest.java b/jmeos-core/src/test/java/org/mobilitydb/meos/MeosSetSetJoinTest.java new file mode 100644 index 00000000..d7d63182 --- /dev/null +++ b/jmeos-core/src/test/java/org/mobilitydb/meos/MeosSetSetJoinTest.java @@ -0,0 +1,51 @@ +package org.mobilitydb.meos; + +import functions.GeneratedFunctions; +import jnr.ffi.Pointer; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.condition.EnabledIfSystemProperty; + +import java.util.Arrays; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * Verifies the shared set-set spatial-join helper against libmeos. Requires a + * libmeos that exports the {@code *_tgeoarr_tgeoarr} family, so it runs only + * with {@code -Dmeos.setset.enabled=true} (set where such a build is on the + * library path). + */ +@EnabledIfSystemProperty(named = "meos.setset.enabled", matches = "true") +class MeosSetSetJoinTest { + + @BeforeAll static void init() { GeneratedFunctions.meos_initialize(); } + @AfterAll static void fini() { GeneratedFunctions.meos_finalize(); } + + private static Pointer[] tgeo(String... lits) { + Pointer[] a = new Pointer[lits.length]; + for (int i = 0; i < lits.length; i++) a[i] = GeneratedFunctions.tgeompoint_in(lits[i]); + return a; + } + + @Test + void setSetSpatialJoin() { + // A[0] and B[0] coincide at (0,0); the rest are far apart. + Pointer[] a = tgeo("POINT(0 0)@2000-01-01", "POINT(10 10)@2000-01-01"); + Pointer[] b = tgeo("POINT(0 0)@2000-01-01", "POINT(100 100)@2000-01-01"); + + int[][] within = MeosSetSetJoin.eDwithinPairs(a, b, 1.0); + assertArrayEquals(new int[]{0, 0}, within[0]); + assertEquals(1, within.length, "only the coincident pair is ever within 1m"); + + int[][] disjoint = MeosSetSetJoin.aDisjointPairs(a, b); + assertEquals(3, disjoint.length, "every pair but the coincident one is always disjoint"); + assertTrue(Arrays.stream(disjoint).noneMatch(p -> p[0] == 0 && p[1] == 0)); + + MeosSetSetJoin.TDwithin t = MeosSetSetJoin.tDwithinPairs(a, b, 1.0); + assertEquals(1, t.pairs.length); + assertArrayEquals(new int[]{0, 0}, t.pairs[0]); + assertNotNull(t.periodsHexwkb[0], "in-range period spanset is returned"); + } +} From f921d8608f18574a5a824b837af1a6b82c985fc2 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Fri, 5 Jun 2026 21:30:20 +0200 Subject: [PATCH 07/14] Bump the MEOS facade to MobilityDB 54a9d4bc54 The IDL and bundled libmeos carry the 54a9d4bc54 public surface: the per-thread PROJ context, the box3d_in/gbox_in parsers, and tpose_to_tpoint. The parity-gap forwarders bind the value-at-timestamptz wrappers through their result-returning form and drop the pointcloud initializer absent from the surface. --- codegen/input/meos-idl.json | 51317 ++++++++++++---- jmeos-core/src/libmeos.so | Bin 2053616 -> 2969864 bytes .../mobilitydb/meos/MeosOpsParityGaps.java | 99 +- jmeos-core/src/main/resources/lib/libmeos.so | Bin 2053616 -> 2969864 bytes 4 files changed, 39062 insertions(+), 12354 deletions(-) diff --git a/codegen/input/meos-idl.json b/codegen/input/meos-idl.json index f4d30632..a30af687 100644 --- a/codegen/input/meos-idl.json +++ b/codegen/input/meos-idl.json @@ -522,15 +522,6 @@ }, "params": [] }, - { - "name": "meos_initialize_pointcloud", - "file": "meos.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [] - }, { "name": "meos_set_datestyle", "file": "meos.h", @@ -661,19 +652,19 @@ "name": "add_interval_interval", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "interv1", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "interv2", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -692,8 +683,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -731,8 +722,8 @@ "name": "cstring2text", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -901,8 +892,8 @@ "name": "interval_make", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { @@ -997,8 +988,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -1006,8 +997,8 @@ "name": "minus_timestamptz_timestamptz", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { @@ -1026,14 +1017,14 @@ "name": "mul_interval_double", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "factor", @@ -1082,13 +1073,13 @@ "params": [ { "name": "interv1", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "interv2", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -1096,8 +1087,8 @@ "name": "pg_interval_in", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { @@ -1122,8 +1113,8 @@ "params": [ { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -1207,8 +1198,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1222,13 +1213,13 @@ "params": [ { "name": "txt1", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "txt2", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1236,14 +1227,14 @@ "name": "text_copy", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1251,8 +1242,8 @@ "name": "text_in", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -1266,14 +1257,14 @@ "name": "text_initcap", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1281,14 +1272,14 @@ "name": "text_lower", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1302,8 +1293,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1311,14 +1302,14 @@ "name": "text_upper", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1326,19 +1317,19 @@ "name": "textcat_text_text", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { "name": "txt1", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "txt2", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -1357,8 +1348,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -1427,13 +1418,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "value", @@ -1447,7 +1438,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -1468,7 +1459,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -1477,7 +1468,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -1498,7 +1489,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -1537,7 +1528,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -1558,7 +1549,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -1567,7 +1558,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -1588,7 +1579,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -1632,13 +1623,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "value", @@ -1652,7 +1643,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -1673,7 +1664,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "maxdd", @@ -1687,7 +1678,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -1708,7 +1699,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "maxdd", @@ -1752,13 +1743,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "value", @@ -1772,7 +1763,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -1793,7 +1784,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -1802,7 +1793,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -1823,7 +1814,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -1923,7 +1914,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "variant", @@ -1948,7 +1939,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "variant", @@ -1967,7 +1958,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -1982,7 +1973,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2008,7 +1999,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "variant", @@ -2033,7 +2024,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "variant", @@ -2052,7 +2043,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2067,7 +2058,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2147,7 +2138,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2168,7 +2159,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2177,7 +2168,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2198,7 +2189,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -2227,7 +2218,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2277,7 +2268,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2327,7 +2318,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2377,7 +2368,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2422,13 +2413,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2437,13 +2428,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -2452,13 +2443,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "spans", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "count", @@ -2477,8 +2468,8 @@ "params": [ { "name": "values", - "cType": "int **", - "canonical": "int **" + "cType": "text **", + "canonical": "struct varlena **" }, { "name": "count", @@ -2512,7 +2503,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2557,7 +2548,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2572,7 +2563,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2587,13 +2578,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2602,13 +2593,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2632,7 +2623,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2647,7 +2638,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2677,13 +2668,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2692,13 +2683,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -2722,7 +2713,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2737,7 +2728,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2767,13 +2758,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2782,13 +2773,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2797,13 +2788,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -2827,7 +2818,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2842,7 +2833,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2872,13 +2863,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2887,13 +2878,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2902,13 +2893,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -2917,7 +2908,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -2932,7 +2923,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -2947,13 +2938,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -2967,8 +2958,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -2992,7 +2983,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -3007,7 +2998,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -3037,13 +3028,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3052,13 +3043,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3148,7 +3139,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3163,7 +3154,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3178,7 +3169,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3193,7 +3184,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3208,7 +3199,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3223,7 +3214,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "boundspan", @@ -3311,14 +3302,14 @@ "name": "datespan_duration", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3333,7 +3324,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3348,7 +3339,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3363,7 +3354,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "n", @@ -3388,7 +3379,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3396,14 +3387,14 @@ "name": "datespanset_duration", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "boundspan", @@ -3423,7 +3414,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3438,7 +3429,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3453,7 +3444,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3543,7 +3534,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3558,7 +3549,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3573,7 +3564,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3588,7 +3579,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3603,7 +3594,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3618,7 +3609,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "boundspan", @@ -3713,7 +3704,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3728,7 +3719,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3743,7 +3734,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3758,7 +3749,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3773,7 +3764,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3788,7 +3779,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "boundspan", @@ -3858,7 +3849,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3873,7 +3864,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "seed", @@ -3893,7 +3884,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3908,7 +3899,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -3917,13 +3908,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3938,7 +3929,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3953,7 +3944,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "seed", @@ -3973,7 +3964,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3988,7 +3979,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -3997,13 +3988,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4012,13 +4003,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -4032,13 +4023,13 @@ "file": "meos.h", "returnType": { "c": "Span **", - "canonical": "struct Span **" + "canonical": "Span **" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "count", @@ -4052,13 +4043,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4073,7 +4064,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4081,8 +4072,8 @@ "name": "textset_end_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -4096,8 +4087,8 @@ "name": "textset_start_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -4127,8 +4118,8 @@ }, { "name": "result", - "cType": "int **", - "canonical": "int **" + "cType": "text **", + "canonical": "struct varlena **" } ] }, @@ -4136,8 +4127,8 @@ "name": "textset_values", "file": "meos.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "text **", + "canonical": "struct varlena **" }, "params": [ { @@ -4231,14 +4222,14 @@ "name": "tstzspan_duration", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4253,7 +4244,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4268,7 +4259,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4276,14 +4267,14 @@ "name": "tstzspanset_duration", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "boundspan", @@ -4303,7 +4294,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4318,7 +4309,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4333,7 +4324,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4348,7 +4339,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4363,7 +4354,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4378,7 +4369,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "n", @@ -4403,7 +4394,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4447,13 +4438,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "shift", @@ -4482,13 +4473,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "shift", @@ -4552,13 +4543,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "shift", @@ -4587,13 +4578,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "shift", @@ -4722,13 +4713,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4737,13 +4728,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "normalize", @@ -4757,13 +4748,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4772,13 +4763,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -4787,13 +4778,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "maxdd", @@ -4807,13 +4798,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "shift", @@ -4842,13 +4833,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4857,13 +4848,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4872,13 +4863,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "normalize", @@ -4892,13 +4883,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -4907,13 +4898,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "maxdd", @@ -4927,13 +4918,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "shift", @@ -4997,13 +4988,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "shift", @@ -5032,13 +5023,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "shift", @@ -5067,18 +5058,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -5112,8 +5103,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -5137,8 +5128,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -5202,8 +5193,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -5227,13 +5218,13 @@ }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -5252,8 +5243,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -5267,23 +5258,23 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -5292,18 +5283,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -5317,23 +5308,23 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -5342,18 +5333,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -5513,12 +5504,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5533,12 +5524,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5553,12 +5544,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5573,12 +5564,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5593,12 +5584,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5613,12 +5604,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5633,12 +5624,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -5653,12 +5644,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5673,12 +5664,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5693,12 +5684,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5713,12 +5704,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5733,12 +5724,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5753,12 +5744,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5773,12 +5764,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -5787,7 +5778,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -5807,7 +5798,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -5832,7 +5823,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -5857,13 +5848,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "count", @@ -5877,13 +5868,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "elems_per_span", @@ -5902,13 +5893,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "span_count", @@ -5933,7 +5924,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -5953,7 +5944,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -5973,7 +5964,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -5993,7 +5984,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -6013,12 +6004,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6033,12 +6024,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6053,7 +6044,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -6073,7 +6064,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -6093,7 +6084,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -6113,7 +6104,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -6133,7 +6124,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -6153,7 +6144,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -6173,12 +6164,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6193,12 +6184,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6238,7 +6229,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6258,7 +6249,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6298,7 +6289,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6318,7 +6309,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6358,7 +6349,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6378,7 +6369,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6418,7 +6409,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6438,7 +6429,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6473,12 +6464,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6493,12 +6484,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6513,12 +6504,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6533,12 +6524,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6552,8 +6543,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -6598,7 +6589,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6618,7 +6609,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6737,8 +6728,8 @@ }, { "name": "t", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -6773,7 +6764,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -6793,7 +6784,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -6813,7 +6804,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -6833,7 +6824,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -6853,12 +6844,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -6873,12 +6864,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -6893,7 +6884,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -6913,7 +6904,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -6933,7 +6924,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -6953,7 +6944,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -6973,7 +6964,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -6993,12 +6984,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7013,12 +7004,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7033,7 +7024,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -7073,12 +7064,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7093,12 +7084,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7113,12 +7104,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7133,12 +7124,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7178,7 +7169,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7198,7 +7189,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7253,7 +7244,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -7273,7 +7264,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -7293,7 +7284,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -7313,7 +7304,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -7358,7 +7349,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7378,7 +7369,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7418,7 +7409,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7438,7 +7429,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7493,7 +7484,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -7513,7 +7504,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -7533,7 +7524,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -7553,7 +7544,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -7598,7 +7589,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7618,7 +7609,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7658,7 +7649,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7678,7 +7669,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7718,7 +7709,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7738,7 +7729,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7778,7 +7769,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7798,7 +7789,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -7897,8 +7888,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -7913,7 +7904,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -7933,7 +7924,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -7953,7 +7944,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -7973,12 +7964,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -7993,12 +7984,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8013,7 +8004,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -8033,7 +8024,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -8053,7 +8044,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -8073,12 +8064,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8093,12 +8084,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8112,8 +8103,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -8158,7 +8149,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8178,7 +8169,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8233,7 +8224,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -8253,7 +8244,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -8273,7 +8264,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -8293,7 +8284,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -8338,7 +8329,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8358,7 +8349,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8398,7 +8389,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8418,7 +8409,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8473,7 +8464,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -8493,7 +8484,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -8513,7 +8504,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -8533,7 +8524,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -8578,7 +8569,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8598,7 +8589,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8638,7 +8629,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8658,7 +8649,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8698,7 +8689,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8718,7 +8709,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8758,7 +8749,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8778,7 +8769,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8877,8 +8868,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -8893,7 +8884,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -8913,7 +8904,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -8933,7 +8924,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -8953,12 +8944,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -8973,12 +8964,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -8993,7 +8984,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -9013,7 +9004,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -9033,7 +9024,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -9053,12 +9044,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9073,12 +9064,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9092,8 +9083,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -9138,7 +9129,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9158,7 +9149,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9198,7 +9189,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9218,7 +9209,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9258,7 +9249,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9278,7 +9269,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9377,8 +9368,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -9393,7 +9384,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -9413,7 +9404,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -9433,7 +9424,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -9453,12 +9444,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9473,12 +9464,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9493,7 +9484,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -9513,7 +9504,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -9533,7 +9524,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -9553,12 +9544,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9573,12 +9564,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9592,8 +9583,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -9638,7 +9629,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9658,7 +9649,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9698,7 +9689,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9718,7 +9709,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9758,7 +9749,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9778,7 +9769,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9877,8 +9868,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -9893,7 +9884,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -9913,7 +9904,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -9933,7 +9924,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -9953,12 +9944,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -9973,12 +9964,12 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -9993,7 +9984,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -10013,7 +10004,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -10033,7 +10024,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -10053,12 +10044,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10073,12 +10064,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10092,8 +10083,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -10297,8 +10288,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -10327,13 +10318,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -10347,13 +10338,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -10367,13 +10358,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -10387,13 +10378,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -10407,18 +10398,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10427,18 +10418,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10447,13 +10438,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -10467,13 +10458,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -10487,13 +10478,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -10507,13 +10498,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -10527,13 +10518,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -10547,18 +10538,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10567,18 +10558,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10587,13 +10578,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -10612,8 +10603,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -10667,7 +10658,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10678,7 +10669,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10687,7 +10678,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10698,7 +10689,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10727,7 +10718,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10738,7 +10729,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10747,7 +10738,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10758,7 +10749,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10787,7 +10778,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10798,7 +10789,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10807,7 +10798,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10818,7 +10809,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10847,7 +10838,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10858,7 +10849,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -10867,7 +10858,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -10878,7 +10869,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -10997,8 +10988,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -11027,13 +11018,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -11047,13 +11038,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11067,13 +11058,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11087,13 +11078,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -11107,18 +11098,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -11127,18 +11118,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -11147,13 +11138,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -11167,13 +11158,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -11187,13 +11178,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -11207,13 +11198,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -11227,13 +11218,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -11247,18 +11238,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -11267,18 +11258,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -11287,13 +11278,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -11312,8 +11303,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -11347,7 +11338,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11358,7 +11349,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -11367,7 +11358,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11378,7 +11369,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -11407,13 +11398,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -11427,7 +11418,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11438,7 +11429,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -11467,13 +11458,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11487,7 +11478,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11498,7 +11489,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -11527,13 +11518,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11547,7 +11538,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11558,7 +11549,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -11587,7 +11578,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11598,7 +11589,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -11607,7 +11598,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -11618,7 +11609,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -11737,8 +11728,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -11767,13 +11758,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -11787,13 +11778,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11807,13 +11798,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -11827,13 +11818,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -11847,18 +11838,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -11867,18 +11858,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "strict", @@ -11892,18 +11883,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -11912,13 +11903,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -11932,13 +11923,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -11952,13 +11943,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -11972,13 +11963,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -11992,13 +11983,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -12012,18 +12003,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12032,18 +12023,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12052,13 +12043,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -12077,8 +12068,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -12112,7 +12103,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -12123,7 +12114,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12132,7 +12123,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -12143,7 +12134,7 @@ { "name": "ss", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -12178,12 +12169,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12198,12 +12189,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12218,12 +12209,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12258,12 +12249,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12278,12 +12269,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12298,12 +12289,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12338,12 +12329,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12358,12 +12349,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12378,12 +12369,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12418,12 +12409,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12438,12 +12429,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12458,12 +12449,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12578,7 +12569,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -12598,7 +12589,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -12618,7 +12609,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "d", @@ -12638,7 +12629,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "i", @@ -12658,7 +12649,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -12678,7 +12669,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -12698,7 +12689,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -12718,7 +12709,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "d", @@ -12738,7 +12729,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "i", @@ -12758,7 +12749,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "t", @@ -12798,12 +12789,12 @@ { "name": "s1", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "s2", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12818,12 +12809,12 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -12838,12 +12829,12 @@ { "name": "ss1", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "ss2", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -12852,13 +12843,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "i", @@ -12892,13 +12883,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "d", @@ -12932,13 +12923,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "d", @@ -12972,13 +12963,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "i", @@ -13012,13 +13003,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "s", @@ -13067,18 +13058,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13087,18 +13078,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13107,18 +13098,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -13127,13 +13118,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" } ] }, @@ -13142,18 +13133,18 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "state", "cType": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -13172,8 +13163,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -13182,13 +13173,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "state", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "t", @@ -13247,13 +13238,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "vsize", @@ -13277,13 +13268,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "vsize", @@ -13317,8 +13308,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -13332,18 +13323,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -13362,18 +13353,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -13417,13 +13408,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "vsize", @@ -13447,13 +13438,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "vsize", @@ -13502,13 +13493,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "vsize", @@ -13532,13 +13523,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "vsize", @@ -13572,8 +13563,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -13587,18 +13578,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "origin", @@ -13617,18 +13608,18 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -13653,7 +13644,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "variant", @@ -13678,7 +13669,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "variant", @@ -13697,7 +13688,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13712,7 +13703,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13732,7 +13723,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13753,7 +13744,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "maxdd", @@ -13767,7 +13758,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13787,7 +13778,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13798,7 +13789,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13807,7 +13798,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13822,12 +13813,32 @@ } ] }, + { + "name": "bigint_timestamptz_to_tbox", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "TBox *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, { "name": "int_tstzspan_to_tbox", "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13838,7 +13849,27 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" + } + ] + }, + { + "name": "bigint_tstzspan_to_tbox", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "TBox *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, @@ -13847,18 +13878,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "p", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13867,13 +13898,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "span", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "t", @@ -13887,13 +13918,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -13902,18 +13933,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "p", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13922,7 +13953,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13937,7 +13968,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13947,12 +13978,27 @@ } ] }, + { + "name": "bigint_to_tbox", + "file": "meos.h", + "returnType": { + "c": "TBox *", + "canonical": "TBox *" + }, + "params": [ + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "set_to_tbox", "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -13967,13 +14013,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -13982,13 +14028,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -13997,13 +14043,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14012,13 +14058,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14027,13 +14073,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14042,13 +14088,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14057,7 +14103,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -14078,7 +14124,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14093,7 +14139,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "seed", @@ -14113,7 +14159,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14128,7 +14174,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14143,7 +14189,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14163,7 +14209,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14183,7 +14229,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14203,7 +14249,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14223,7 +14269,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14243,7 +14289,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14263,7 +14309,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14283,7 +14329,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14303,7 +14349,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14323,7 +14369,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14343,7 +14389,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14352,6 +14398,26 @@ } ] }, + { + "name": "tboxbigint_xmax", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "result", + "cType": "int64 *", + "canonical": "long *" + } + ] + }, { "name": "tboxint_xmin", "file": "meos.h", @@ -14363,7 +14429,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "result", @@ -14372,18 +14438,38 @@ } ] }, + { + "name": "tboxbigint_xmin", + "file": "meos.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "result", + "cType": "int64 *", + "canonical": "long *" + } + ] + }, { "name": "tbigintbox_expand", "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "i", @@ -14397,13 +14483,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "shift", @@ -14432,18 +14518,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -14452,13 +14538,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "maxdd", @@ -14472,23 +14558,23 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -14497,13 +14583,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "d", @@ -14517,13 +14603,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "shift", @@ -14552,13 +14638,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "i", @@ -14572,13 +14658,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "shift", @@ -14607,18 +14693,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "strict", @@ -14632,18 +14718,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14658,12 +14744,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14678,12 +14764,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14698,12 +14784,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14718,12 +14804,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14738,12 +14824,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14758,12 +14844,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14778,12 +14864,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14798,12 +14884,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14818,12 +14904,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14838,12 +14924,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14858,12 +14944,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14878,12 +14964,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14898,12 +14984,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14918,12 +15004,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14938,12 +15024,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14958,12 +15044,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14978,12 +15064,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -14998,12 +15084,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -15018,12 +15104,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -15038,12 +15124,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -15388,7 +15474,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "out_schema", @@ -15407,7 +15493,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -15427,13 +15513,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -15448,7 +15534,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "out_schema", @@ -15467,7 +15553,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -15487,13 +15573,13 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -15508,7 +15594,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "out_schema", @@ -15527,7 +15613,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -15547,13 +15633,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -15568,7 +15654,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "out_schema", @@ -15587,7 +15673,7 @@ "file": "meos.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -15607,13 +15693,13 @@ "file": "meos.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -15782,7 +15868,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -15802,7 +15888,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -15822,7 +15908,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -15833,7 +15919,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -15842,7 +15928,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -15853,7 +15939,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -15882,7 +15968,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -15902,7 +15988,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -15922,7 +16008,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -15933,7 +16019,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -15942,7 +16028,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -15953,7 +16039,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -15997,7 +16083,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16017,7 +16103,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -16037,7 +16123,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -16048,7 +16134,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "interp", @@ -16062,7 +16148,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -16073,7 +16159,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "interp", @@ -16107,7 +16193,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16127,7 +16213,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -16147,7 +16233,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -16158,7 +16244,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -16167,7 +16253,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -16178,7 +16264,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -16187,13 +16273,13 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { "name": "instants", "cType": "TInstant **", - "canonical": "struct TInstant **" + "canonical": "TInstant **" }, { "name": "count", @@ -16227,13 +16313,13 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { "name": "sequences", "cType": "TSequence **", - "canonical": "struct TSequence **" + "canonical": "TSequence **" }, { "name": "count", @@ -16252,13 +16338,13 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { "name": "instants", "cType": "TInstant **", - "canonical": "struct TInstant **" + "canonical": "TInstant **" }, { "name": "count", @@ -16272,8 +16358,8 @@ }, { "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "maxdist", @@ -16292,8 +16378,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -16307,13 +16393,13 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "t", @@ -16327,13 +16413,13 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", @@ -16347,18 +16433,18 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -16367,18 +16453,18 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -16432,7 +16518,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -16473,7 +16559,7 @@ ] }, { - "name": "tint_to_tbigint", + "name": "tint_to_tfloat", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -16488,7 +16574,7 @@ ] }, { - "name": "tint_to_tfloat", + "name": "tint_to_tbigint", "file": "meos.h", "returnType": { "c": "Temporal *", @@ -16507,7 +16593,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -16522,7 +16608,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -16746,8 +16832,8 @@ "name": "temporal_duration", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { @@ -16767,7 +16853,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16782,7 +16868,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -16827,7 +16913,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16847,7 +16933,27 @@ "file": "meos.h", "returnType": { "c": "TInstant **", - "canonical": "struct TInstant **" + "canonical": "TInstant **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_instants_p", + "file": "meos.h", + "returnType": { + "c": "const TInstant **", + "canonical": "const TInstant **" }, "params": [ { @@ -16897,7 +17003,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16912,7 +17018,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -16972,7 +17078,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -16982,8 +17088,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "atleast", @@ -17002,7 +17108,7 @@ "file": "meos.h", "returnType": { "c": "TSequence **", - "canonical": "struct TSequence **" + "canonical": "TSequence **" }, "params": [ { @@ -17022,7 +17128,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -17042,7 +17148,7 @@ "file": "meos.h", "returnType": { "c": "TSequence **", - "canonical": "struct TSequence **" + "canonical": "TSequence **" }, "params": [ { @@ -17062,7 +17168,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -17077,7 +17183,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -17107,7 +17213,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -17122,8 +17228,8 @@ }, { "name": "minduration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -17162,7 +17268,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -17552,7 +17658,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -17566,8 +17672,8 @@ "name": "ttext_end_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -17581,8 +17687,8 @@ "name": "ttext_max_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -17596,8 +17702,8 @@ "name": "ttext_min_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -17611,8 +17717,8 @@ "name": "ttext_start_value", "file": "meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "text *", + "canonical": "struct varlena *" }, "params": [ { @@ -17647,8 +17753,8 @@ }, { "name": "result", - "cType": "int **", - "canonical": "int **" + "cType": "text **", + "canonical": "struct varlena **" } ] }, @@ -17672,8 +17778,8 @@ }, { "name": "result", - "cType": "int **", - "canonical": "int **" + "cType": "text **", + "canonical": "struct varlena **" } ] }, @@ -17681,8 +17787,8 @@ "name": "ttext_values", "file": "meos.h", "returnType": { - "c": "int **", - "canonical": "int **" + "c": "text **", + "canonical": "struct varlena **" }, "params": [ { @@ -17842,8 +17948,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -17882,13 +17988,13 @@ }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -17907,8 +18013,8 @@ }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -17917,7 +18023,7 @@ "file": "meos.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -17932,7 +18038,7 @@ "file": "meos.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -17952,7 +18058,7 @@ "file": "meos.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -18178,7 +18284,7 @@ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "canonical": "const TInstant *" }, { "name": "interp", @@ -18192,8 +18298,8 @@ }, { "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "expand", @@ -18218,7 +18324,7 @@ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { "name": "expand", @@ -18293,7 +18399,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "connect", @@ -18318,7 +18424,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "connect", @@ -18568,7 +18674,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -18588,7 +18694,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -18723,7 +18829,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -18743,7 +18849,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -18863,7 +18969,7 @@ { "name": "span", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -18883,7 +18989,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -18903,7 +19009,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -18923,7 +19029,7 @@ { "name": "span", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -18943,7 +19049,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -18963,7 +19069,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -18982,8 +19088,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -19002,8 +19108,8 @@ }, { "name": "txt", - "cType": "int *", - "canonical": "int *" + "cType": "text *", + "canonical": "struct varlena *" } ] }, @@ -19286,8 +19392,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -19371,8 +19477,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -19486,8 +19592,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -19551,8 +19657,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -19666,8 +19772,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -19731,8 +19837,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -19846,8 +19952,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -19911,8 +20017,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -20006,8 +20112,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -20056,6 +20162,26 @@ } ] }, + { + "name": "always_lt_tbigint_bigint", + "file": "meos.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int64", + "canonical": "long" + } + ] + }, { "name": "always_lt_ttext_text", "file": "meos.h", @@ -20071,8 +20197,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -20136,26 +20262,6 @@ } ] }, - { - "name": "always_lt_tbigint_bigint", - "file": "meos.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "i", - "cType": "int64", - "canonical": "long" - } - ] - }, { "name": "always_ne_bigint_tbigint", "file": "meos.h", @@ -20246,8 +20352,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -20311,8 +20417,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -20466,8 +20572,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -20531,8 +20637,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -20646,8 +20752,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -20711,8 +20817,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -20826,8 +20932,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -20891,8 +20997,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21006,8 +21112,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21071,8 +21177,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21186,8 +21292,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21251,8 +21357,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21406,8 +21512,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21471,8 +21577,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21586,8 +21692,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21651,8 +21757,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21726,8 +21832,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21791,8 +21897,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -21866,8 +21972,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -21931,8 +22037,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -22006,8 +22112,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -22071,8 +22177,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -22146,8 +22252,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -22211,8 +22317,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -22326,8 +22432,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -22391,8 +22497,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -22401,7 +22507,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -22421,7 +22527,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -22446,7 +22552,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -22471,7 +22577,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -22496,7 +22602,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -22521,7 +22627,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -22547,7 +22653,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -22567,7 +22673,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -22612,7 +22718,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22632,7 +22738,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22652,7 +22758,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -22687,7 +22793,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -22707,7 +22813,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -22727,7 +22833,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -22772,7 +22878,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22792,7 +22898,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22812,7 +22918,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -22847,7 +22953,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -22867,7 +22973,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -22887,7 +22993,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -22912,7 +23018,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22952,7 +23058,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -22972,7 +23078,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23007,7 +23113,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23027,7 +23133,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23047,7 +23153,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23092,7 +23198,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23112,7 +23218,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23132,7 +23238,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23167,7 +23273,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23187,7 +23293,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23207,7 +23313,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23252,7 +23358,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23272,7 +23378,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23292,7 +23398,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23327,7 +23433,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23347,7 +23453,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23372,7 +23478,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23412,7 +23518,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23447,7 +23553,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23467,7 +23573,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23492,7 +23598,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23532,7 +23638,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23567,7 +23673,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23587,7 +23693,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23607,7 +23713,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23632,7 +23738,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23652,7 +23758,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23687,7 +23793,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23712,7 +23818,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23752,7 +23858,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23787,7 +23893,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23807,7 +23913,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23832,7 +23938,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23872,7 +23978,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -23907,7 +24013,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23927,7 +24033,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -23947,7 +24053,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -23972,7 +24078,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -23992,7 +24098,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -24027,7 +24133,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -24047,7 +24153,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -24072,7 +24178,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -24092,7 +24198,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -24127,7 +24233,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "temp", @@ -24147,7 +24253,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "temp", @@ -24172,7 +24278,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -24192,7 +24298,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -24281,7 +24387,7 @@ "file": "meos.h", "returnType": { "c": "SpanSet *", - "canonical": "struct SpanSet *" + "canonical": "SpanSet *" }, "params": [ { @@ -25076,8 +25182,8 @@ "params": [ { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" }, { "name": "temp", @@ -25101,8 +25207,8 @@ }, { "name": "txt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const text *", + "canonical": "const struct varlena *" } ] }, @@ -25242,12 +25348,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -25262,12 +25368,12 @@ { "name": "box1", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "box2", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -25327,7 +25433,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -25367,7 +25473,7 @@ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" } ] }, @@ -25476,13 +25582,13 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "s", "cType": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, { "name": "temp", @@ -25726,8 +25832,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -25751,8 +25857,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -25776,8 +25882,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -25941,8 +26047,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -25966,8 +26072,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -25991,8 +26097,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -26001,13 +26107,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, { "name": "temp", @@ -26091,8 +26197,8 @@ }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -26132,7 +26238,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -26152,7 +26258,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -26321,8 +26427,8 @@ }, { "name": "mint", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -26341,8 +26447,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "origin", @@ -26366,8 +26472,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "origin", @@ -26491,12 +26597,92 @@ } ] }, + { + "name": "temporal_average_hausdorff_distance", + "file": "meos.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "temporal_lcss_distance", + "file": "meos.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "epsilon", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "temporal_ext_kalman_filter", + "file": "meos.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gate", + "cType": "double", + "canonical": "double" + }, + { + "name": "q", + "cType": "double", + "canonical": "double" + }, + { + "name": "variance", + "cType": "double", + "canonical": "double" + }, + { + "name": "to_drop", + "cType": "bool", + "canonical": "bool" + } + ] + }, { "name": "temporal_time_bins", "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -26506,8 +26692,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "origin", @@ -26536,8 +26722,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -26551,7 +26737,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26561,8 +26747,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -26581,7 +26767,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -26611,7 +26797,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26666,7 +26852,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26681,8 +26867,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "vorigin", @@ -26721,8 +26907,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "vorigin", @@ -26741,18 +26927,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -26771,13 +26957,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "vsize", @@ -26801,13 +26987,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "vsize", @@ -26816,8 +27002,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "vorigin", @@ -26841,7 +27027,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26851,8 +27037,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -26871,7 +27057,7 @@ "file": "meos.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { @@ -26901,7 +27087,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26956,7 +27142,7 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { @@ -26971,8 +27157,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "vorigin", @@ -27011,8 +27197,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "vorigin", @@ -27031,18 +27217,18 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -27061,13 +27247,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "xsize", @@ -27091,13 +27277,13 @@ "file": "meos.h", "returnType": { "c": "TBox *", - "canonical": "struct TBox *" + "canonical": "TBox *" }, "params": [ { "name": "box", "cType": "const TBox *", - "canonical": "const struct TBox *" + "canonical": "const TBox *" }, { "name": "xsize", @@ -27106,8 +27292,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "xorigin", @@ -27431,6 +27617,21 @@ } ] }, + { + "name": "box3d_in", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, { "name": "box3d_out", "file": "meos_geo.h", @@ -27496,6 +27697,21 @@ } ] }, + { + "name": "gbox_in", + "file": "meos_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, { "name": "gbox_out", "file": "meos_geo.h", @@ -28681,7 +28897,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -28701,7 +28917,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -28726,7 +28942,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29302,7 +29518,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "variant", @@ -29327,7 +29543,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "variant", @@ -29346,7 +29562,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29361,7 +29577,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29381,7 +29597,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29402,7 +29618,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "maxdd", @@ -29416,7 +29632,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29436,7 +29652,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29447,7 +29663,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -29456,13 +29672,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29471,7 +29687,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29527,7 +29743,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -29536,7 +29752,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29551,7 +29767,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29572,7 +29788,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29587,7 +29803,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29602,7 +29818,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29611,13 +29827,13 @@ "file": "meos_geo.h", "returnType": { "c": "Span *", - "canonical": "struct Span *" + "canonical": "Span *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29626,7 +29842,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29641,7 +29857,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -29656,13 +29872,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -29671,13 +29887,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" } ] }, @@ -29692,7 +29908,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "spheroid", @@ -29712,7 +29928,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29727,7 +29943,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "seed", @@ -29747,7 +29963,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29762,7 +29978,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29777,7 +29993,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29792,7 +30008,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29807,7 +30023,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "spheroid", @@ -29827,7 +30043,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29847,7 +30063,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29867,7 +30083,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29887,7 +30103,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29907,7 +30123,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -29922,7 +30138,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29942,7 +30158,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29962,7 +30178,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -29982,7 +30198,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -30002,7 +30218,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -30022,7 +30238,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "result", @@ -30036,13 +30252,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "d", @@ -30056,18 +30272,18 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -30076,13 +30292,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30091,13 +30307,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "count", @@ -30111,13 +30327,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "maxdd", @@ -30131,23 +30347,23 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, @@ -30156,13 +30372,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "boxarr", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "count", @@ -30181,13 +30397,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "srid", @@ -30207,7 +30423,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30216,13 +30432,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "srid", @@ -30236,13 +30452,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "pipelinestr", @@ -30272,12 +30488,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30292,12 +30508,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30312,12 +30528,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30332,12 +30548,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30352,12 +30568,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30372,12 +30588,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30392,12 +30608,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30412,12 +30628,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30432,12 +30648,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30452,12 +30668,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30472,12 +30688,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30492,12 +30708,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30512,12 +30728,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30532,12 +30748,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30552,12 +30768,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30572,12 +30788,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30592,12 +30808,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30612,12 +30828,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30632,12 +30848,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30652,12 +30868,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30672,12 +30888,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30686,18 +30902,18 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "strict", @@ -30711,18 +30927,18 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30737,12 +30953,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30757,12 +30973,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30777,12 +30993,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30797,12 +31013,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30817,12 +31033,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30837,12 +31053,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -30857,12 +31073,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -31071,7 +31287,7 @@ "file": "meos_geo.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -31091,7 +31307,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -31111,7 +31327,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -31122,7 +31338,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "interp", @@ -31136,7 +31352,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -31147,7 +31363,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "interp", @@ -31181,7 +31397,7 @@ "file": "meos_geo.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -31201,7 +31417,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -31221,7 +31437,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -31232,7 +31448,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "interp", @@ -31246,7 +31462,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -31311,7 +31527,7 @@ "file": "meos_geo.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -31322,7 +31538,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "interp", @@ -31336,7 +31552,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -31351,7 +31567,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -31482,7 +31698,7 @@ { "name": "bounds", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "extent", @@ -31536,7 +31752,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32156,7 +32372,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "border_inc", @@ -32221,7 +32437,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "border_inc", @@ -32266,7 +32482,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -32326,7 +32542,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -32695,7 +32911,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32715,7 +32931,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32765,7 +32981,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32790,8 +33006,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "sorigin", @@ -32825,7 +33041,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32850,7 +33066,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -32881,7 +33097,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -32906,7 +33122,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -32941,7 +33157,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -32966,7 +33182,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33001,7 +33217,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33026,7 +33242,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33061,7 +33277,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33086,7 +33302,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33121,7 +33337,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33146,7 +33362,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33181,7 +33397,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33206,7 +33422,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33241,7 +33457,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33266,7 +33482,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33301,7 +33517,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33326,7 +33542,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33361,7 +33577,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33386,7 +33602,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33421,7 +33637,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33446,7 +33662,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33481,7 +33697,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33506,7 +33722,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33541,7 +33757,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33566,7 +33782,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33601,7 +33817,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33626,7 +33842,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33661,7 +33877,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33686,7 +33902,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33721,7 +33937,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33746,7 +33962,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33781,7 +33997,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33806,7 +34022,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33841,7 +34057,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33866,7 +34082,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33901,7 +34117,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33926,7 +34142,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -33961,7 +34177,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -33986,7 +34202,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -34021,7 +34237,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -34046,7 +34262,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -34081,7 +34297,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "temp", @@ -34106,7 +34322,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -35176,7 +35392,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "gs", @@ -35196,12 +35412,12 @@ { "name": "box1", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "box2", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -35241,7 +35457,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -35270,7 +35486,7 @@ "file": "meos_geo.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -35290,7 +35506,7 @@ "file": "meos_geo.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -35481,7 +35697,7 @@ { "name": "periods", "cType": "SpanSet ***", - "canonical": "struct SpanSet ***" + "canonical": "SpanSet ***" } ] }, @@ -35560,13 +35776,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "box", "cType": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, { "name": "temp", @@ -35580,7 +35796,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -35615,7 +35831,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -35645,8 +35861,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "sorigin", @@ -35665,7 +35881,7 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -35675,8 +35891,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -35690,13 +35906,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "bounds", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "xsize", @@ -35735,13 +35951,13 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "bounds", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "xsize", @@ -35760,8 +35976,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "sorigin", @@ -35790,18 +36006,18 @@ "file": "meos_geo.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { "name": "bounds", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "torigin", @@ -35895,8 +36111,8 @@ }, { "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { "name": "sorigin", @@ -36040,6 +36256,46 @@ } ] }, + { + "name": "geo_wlof", + "file": "meos_geo.h", + "returnType": { + "c": "double *", + "canonical": "double *" + }, + "params": [ + { + "name": "geoms", + "cType": "const int **", + "canonical": "const int **" + }, + { + "name": "ngeoms", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "k", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "epsilon", + "cType": "double", + "canonical": "double" + }, + { + "name": "newcount", + "cType": "uint32_t *", + "canonical": "unsigned int *" + }, + { + "name": "clusters", + "cType": "int ***", + "canonical": "int ***" + } + ] + }, { "name": "cbuffer_as_ewkt", "file": "meos_cbuffer.h", @@ -36255,7 +36511,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -36625,7 +36881,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -36636,7 +36892,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" } ] }, @@ -36645,7 +36901,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" }, "params": [ { @@ -36716,7 +36972,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -36736,7 +36992,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -37280,7 +37536,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -37340,7 +37596,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -37360,7 +37616,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { @@ -37371,7 +37627,7 @@ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { "name": "interp", @@ -37385,7 +37641,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { @@ -37396,7 +37652,7 @@ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { "name": "interp", @@ -37524,7 +37780,7 @@ "canonical": "bool" }, { - "name": "value", + "name": "result", "cType": "Cbuffer **", "canonical": "struct Cbuffer **" } @@ -37696,7 +37952,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "border_inc", @@ -37761,7 +38017,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "border_inc", @@ -37886,7 +38142,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" } ] }, @@ -37940,7 +38196,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -37960,7 +38216,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -37980,7 +38236,7 @@ "file": "meos_cbuffer.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { @@ -39806,2470 +40062,1915 @@ ] }, { - "name": "gsl_get_generation_rng", - "file": "meos_internal.h", - "returnType": { - "c": "gsl_rng *", - "canonical": "gsl_rng *" - }, - "params": [] - }, - { - "name": "gsl_get_aggregation_rng", - "file": "meos_internal.h", - "returnType": { - "c": "gsl_rng *", - "canonical": "gsl_rng *" - }, - "params": [] - }, - { - "name": "datum_ceil", - "file": "meos_internal.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - } - ] - }, - { - "name": "datum_degrees", - "file": "meos_internal.h", + "name": "ensure_valid_cbuffer_cbuffer", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "normalize", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "datum_float_round", - "file": "meos_internal.h", + "name": "ensure_valid_cbuffer_geo", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "datum_floor", - "file": "meos_internal.h", + "name": "ensure_valid_cbuffer_stbox", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "datum_hash", - "file": "meos_internal.h", + "name": "ensure_valid_cbufferset_cbuffer", + "file": "cbuffer.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "datum_hash_extended", - "file": "meos_internal.h", + "name": "cbuffer_collinear", + "file": "cbuffer.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "cbuf3", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" } ] }, { - "name": "datum_radians", - "file": "meos_internal.h", + "name": "cbuffersegm_interpolate", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "start", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "end", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "floatspan_round_set", - "file": "meos_internal.h", + "name": "cbuffersegm_locate", + "file": "cbuffer.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "start", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "end", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "value", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "set_in", - "file": "meos_internal.h", + "name": "cbuffer_parse", + "file": "cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { "name": "str", - "cType": "const char *", - "canonical": "const char *" + "cType": "const char **", + "canonical": "const char **" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "end", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "set_out", - "file": "meos_internal.h", + "name": "cbuffer_wkt_out", + "file": "cbuffer.h", "returnType": { "c": "char *", "canonical": "char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { "name": "maxdd", "cType": "int", "canonical": "int" + }, + { + "name": "extended", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "span_in", - "file": "meos_internal.h", + "name": "cbuffer_point_p", + "file": "cbuffer.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "const int *", + "canonical": "const int *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "spantype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "span_out", - "file": "meos_internal.h", + "name": "datum_cbuffer_round", + "file": "cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "buffer", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "spanset_in", - "file": "meos_internal.h", + "name": "cbuffer_transf_pj", + "file": "cbuffer.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Cbuffer *", + "canonical": "struct Cbuffer *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "spantype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "srid_to", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "pj", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "spanset_out", - "file": "meos_internal.h", + "name": "cbuffer_distance", + "file": "cbuffer.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "set_make", - "file": "meos_internal.h", + "name": "datum_cbuffer_distance", + "file": "cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "set_make_exp", - "file": "meos_internal.h", + "name": "cbuffersegm_distance_turnpt", + "file": "cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "start1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "end1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "maxcount", - "cType": "int", - "canonical": "int" + "name": "start2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "end2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "set_make_free", - "file": "meos_internal.h", + "name": "cbuffer_contains", + "file": "cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "span_make", - "file": "meos_internal.h", + "name": "cbuffer_covers", + "file": "cbuffer.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "lower", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "upper", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "span_set", - "file": "meos_internal.h", + "name": "cbuffer_disjoint", + "file": "cbuffer.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "lower", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "upper", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" - }, - { - "name": "spantype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "spanset_make_exp", - "file": "meos_internal.h", + "name": "cbuffer_intersects", + "file": "cbuffer.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "spans", - "cType": "Span *", - "canonical": "struct Span *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" - }, - { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "spanset_make_free", - "file": "meos_internal.h", + "name": "cbuffer_dwithin", + "file": "cbuffer.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "spans", - "cType": "Span *", - "canonical": "struct Span *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "order", - "cType": "bool", - "canonical": "bool" + "name": "dist", + "cType": "double", + "canonical": "double" } ] }, { - "name": "set_span", - "file": "meos_internal.h", + "name": "cbuffer_touches", + "file": "cbuffer.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "cb1", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "cb2", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "set_spanset", - "file": "meos_internal.h", + "name": "datum_cbuffer_contains", + "file": "cbuffer.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "value_set_span", - "file": "meos_internal.h", - "returnType": { - "c": "void", - "canonical": "void" - }, - "params": [ - { - "name": "value", + "name": "cb1", "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "canonical": "unsigned long" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "value_set", - "file": "meos_internal.h", + "name": "datum_cbuffer_covers", + "file": "cbuffer.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "d", + "name": "cb1", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "value_span", - "file": "meos_internal.h", + "name": "datum_cbuffer_disjoint", + "file": "cbuffer.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "d", + "name": "cb1", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "value_spanset", - "file": "meos_internal.h", + "name": "datum_cbuffer_intersects", + "file": "cbuffer.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "d", + "name": "cb1", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "numspan_width", - "file": "meos_internal.h", + "name": "datum_cbuffer_dwithin", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "cb1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "numspanset_width", - "file": "meos_internal.h", + "name": "datum_cbuffer_touches", + "file": "cbuffer.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "cb1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "boundspan", - "cType": "bool", - "canonical": "bool" + "name": "cb2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "set_end_value", - "file": "meos_internal.h", + "name": "temptype_subtype", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "subtype", + "cType": "tempSubtype", + "canonical": "tempSubtype" } ] }, { - "name": "set_mem_size", - "file": "meos_internal.h", + "name": "temptype_subtype_all", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "subtype", + "cType": "tempSubtype", + "canonical": "tempSubtype" } ] }, { - "name": "set_set_subspan", - "file": "meos_internal.h", + "name": "tempsubtype_name", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "const char *", + "canonical": "const char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "minidx", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxidx", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "subtype", + "cType": "tempSubtype", + "canonical": "tempSubtype" } ] }, { - "name": "set_set_span", - "file": "meos_internal.h", + "name": "tempsubtype_from_string", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "subtype", + "cType": "int16 *", + "canonical": "short *" } ] }, { - "name": "set_start_value", - "file": "meos_internal.h", + "name": "meosoper_name", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const char *", + "canonical": "const char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "oper", + "cType": "MeosOper", + "canonical": "MeosOper" } ] }, { - "name": "set_value_n", - "file": "meos_internal.h", + "name": "meosoper_from_string", + "file": "meos_catalog.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "MeosOper", + "canonical": "MeosOper" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "name", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "set_vals", - "file": "meos_internal.h", + "name": "interptype_name", + "file": "meos_catalog.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "const char *", + "canonical": "const char *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "set_values", - "file": "meos_internal.h", + "name": "interptype_from_string", + "file": "meos_catalog.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "interpType", + "canonical": "interpType" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp_str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spanset_lower", - "file": "meos_internal.h", + "name": "meos_typeof_hexwkb", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "spanset_mem_size", - "file": "meos_internal.h", + "name": "meostype_name", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const char *", + "canonical": "const char *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "spanset_sps", - "file": "meos_internal.h", + "name": "temptype_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "const Span **", - "canonical": "const struct Span **" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "spanset_upper", - "file": "meos_internal.h", + "name": "settype_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "bigintspan_set_floatspan", - "file": "meos_internal.h", + "name": "spantype_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "bigintspan_set_intspan", - "file": "meos_internal.h", + "name": "spantype_spansettype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "datespan_set_tstzspan", - "file": "meos_internal.h", + "name": "spansettype_spantype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "floatspan_set_bigintspan", - "file": "meos_internal.h", + "name": "basetype_spantype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "floatspan_set_intspan", - "file": "meos_internal.h", + "name": "basetype_settype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "MeosType", + "canonical": "MeosType" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intspan_set_bigintspan", - "file": "meos_internal.h", + "name": "tnumber_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intspan_set_floatspan", - "file": "meos_internal.h", + "name": "geo_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numset_shift_scale", - "file": "meos_internal.h", + "name": "meos_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numspan_expand", - "file": "meos_internal.h", + "name": "alphanum_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numspan_shift_scale", - "file": "meos_internal.h", + "name": "alphanum_temptype", + "file": "meos_catalog.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numspanset_shift_scale", - "file": "meos_internal.h", + "name": "time_type", + "file": "meos_catalog.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "set_compact", - "file": "meos_internal.h", + "name": "set_basetype", + "file": "meos_catalog.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "span_expand", - "file": "meos_internal.h", + "name": "set_type", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "spanset_compact", - "file": "meos_internal.h", + "name": "numset_type", + "file": "meos_catalog.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tbox_expand_value", - "file": "meos_internal.h", + "name": "ensure_numset_type", + "file": "meos_catalog.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetyp", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "textcat_textset_text_common", - "file": "meos_internal.h", + "name": "timeset_type", + "file": "meos_catalog.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "txt", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "invert", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tstzspan_set_datespan", - "file": "meos_internal.h", + "name": "set_spantype", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adjacent_span_value", - "file": "meos_internal.h", + "name": "ensure_set_spantype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adjacent_spanset_value", - "file": "meos_internal.h", + "name": "alphanumset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "settype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adjacent_value_spanset", - "file": "meos_internal.h", + "name": "geoset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contained_value_set", - "file": "meos_internal.h", + "name": "ensure_geoset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contained_value_span", - "file": "meos_internal.h", + "name": "spatialset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contained_value_spanset", - "file": "meos_internal.h", + "name": "ensure_spatialset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contains_set_value", - "file": "meos_internal.h", + "name": "span_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contains_span_value", - "file": "meos_internal.h", + "name": "span_canon_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "contains_spanset_value", - "file": "meos_internal.h", + "name": "span_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "ovadj_span_span", - "file": "meos_internal.h", + "name": "type_span_bbox", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_set_value", - "file": "meos_internal.h", + "name": "span_tbox_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_span_value", - "file": "meos_internal.h", + "name": "ensure_span_tbox_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_spanset_value", - "file": "meos_internal.h", + "name": "numspan_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_value_set", - "file": "meos_internal.h", + "name": "numspan_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_value_span", - "file": "meos_internal.h", + "name": "ensure_numspan_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "left_value_spanset", - "file": "meos_internal.h", + "name": "timespan_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "lfnadj_span_span", - "file": "meos_internal.h", + "name": "timespan_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_set_value", - "file": "meos_internal.h", + "name": "spanset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_span_value", - "file": "meos_internal.h", + "name": "timespanset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_spanset_value", - "file": "meos_internal.h", + "name": "ensure_timespanset_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_value_set", - "file": "meos_internal.h", + "name": "temporal_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_value_span", - "file": "meos_internal.h", + "name": "temporal_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overleft_value_spanset", - "file": "meos_internal.h", + "name": "temptype_supports_linear", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_set_value", - "file": "meos_internal.h", + "name": "basetype_byvalue", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_span_value", - "file": "meos_internal.h", + "name": "basetype_varlength", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_spanset_value", - "file": "meos_internal.h", + "name": "meostype_length", + "file": "meos_catalog.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int16", + "canonical": "short" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_value_set", - "file": "meos_internal.h", + "name": "talphanum_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_value_span", - "file": "meos_internal.h", + "name": "talpha_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "overright_value_spanset", - "file": "meos_internal.h", + "name": "tnumber_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_value_set", - "file": "meos_internal.h", + "name": "ensure_tnumber_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_set_value", - "file": "meos_internal.h", + "name": "ensure_tnumber_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_value_span", - "file": "meos_internal.h", + "name": "tnumber_spantype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_value_spanset", - "file": "meos_internal.h", + "name": "spatial_basetype", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_span_value", - "file": "meos_internal.h", + "name": "tspatial_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "right_spanset_value", - "file": "meos_internal.h", + "name": "ensure_tspatial_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "bbox_type", - "file": "meos_internal.h", + "name": "tpoint_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "bboxtype", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "bbox_get_size", - "file": "meos_internal.h", + "name": "ensure_tpoint_type", + "file": "meos_catalog.h", "returnType": { - "c": "size_t", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "bboxtype", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "bbox_max_dims", - "file": "meos_internal.h", + "name": "tgeo_type", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "bboxtype", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "temporal_bbox_eq", - "file": "meos_internal.h", + "name": "ensure_tgeo_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "box2", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "temptype", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "temporal_bbox_cmp", - "file": "meos_internal.h", + "name": "tgeo_type_all", + "file": "meos_catalog.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "box2", - "cType": "const void *", - "canonical": "const void *" - }, - { - "name": "temptype", + "name": "type", "cType": "MeosType", "canonical": "MeosType" } ] }, { - "name": "bbox_union_span_span", - "file": "meos_internal.h", + "name": "ensure_tgeo_type_all", + "file": "meos_catalog.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "inter_span_span", - "file": "meos_internal.h", + "name": "tgeometry_type", + "file": "meos_catalog.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intersection_set_value", - "file": "meos_internal.h", + "name": "ensure_tgeometry_type", + "file": "meos_catalog.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intersection_span_value", - "file": "meos_internal.h", + "name": "tgeodetic_type", + "file": "meos_catalog.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intersection_spanset_value", - "file": "meos_internal.h", + "name": "ensure_tgeodetic_type", + "file": "meos_catalog.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intersection_value_set", - "file": "meos_internal.h", + "name": "ensure_tnumber_tpoint_type", + "file": "meos_catalog.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "intersection_value_span", + "name": "gsl_get_generation_rng", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "gsl_rng *", + "canonical": "gsl_rng *" }, - "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - } - ] + "params": [] }, { - "name": "intersection_value_spanset", + "name": "gsl_get_aggregation_rng", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "gsl_rng *", + "canonical": "gsl_rng *" }, - "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - } - ] + "params": [] }, { - "name": "mi_span_span", + "name": "datum_ceil", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "minus_set_value", + "name": "datum_degrees", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "value", + "name": "normalize", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "minus_span_value", + "name": "datum_float_round", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, { "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" - } - ] - }, - { - "name": "minus_spanset_value", - "file": "meos_internal.h", - "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" - }, - "params": [ - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "unsigned long" }, { - "name": "value", + "name": "size", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "minus_value_set", + "name": "datum_floor", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "canonical": "unsigned long" } ] }, { - "name": "minus_value_span", + "name": "datum_hash", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "minus_value_spanset", + "name": "datum_hash_extended", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "uint64", + "canonical": "unsigned long" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" } ] }, { - "name": "union_set_value", + "name": "datum_radians", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "value", + "name": "d", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "union_span_value", + "name": "floatspan_round_set", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - } - ] - }, - { - "name": "union_spanset_value", - "file": "meos_internal.h", - "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" - }, - "params": [ - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "maxdd", + "cType": "int", + "canonical": "int" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "union_value_set", + "name": "set_in", "file": "meos_internal.h", "returnType": { "c": "Set *", @@ -42277,264 +41978,239 @@ }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "union_value_span", + "name": "set_out", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "char *", + "canonical": "char *" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, { "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - } - ] - }, - { - "name": "union_value_spanset", - "file": "meos_internal.h", - "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" - }, - "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - } - ] - }, - { - "name": "distance_set_set", - "file": "meos_internal.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ - { - "name": "s1", "cType": "const Set *", "canonical": "const Set *" }, { - "name": "s2", - "cType": "const Set *", - "canonical": "const Set *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "distance_set_value", + "name": "span_in", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "distance_span_span", + "name": "span_out", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "s1", + "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "distance_span_value", + "name": "spanset_in", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "distance_spanset_span", + "name": "spanset_out", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "distance_spanset_spanset", + "name": "set_make", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "ss1", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" }, { - "name": "ss2", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - } - ] - }, - { - "name": "distance_spanset_value", - "file": "meos_internal.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ + "name": "count", + "cType": "int", + "canonical": "int" + }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "distance_value_value", + "name": "set_make_exp", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "l", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" }, { - "name": "r", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" }, { "name": "basetype", "cType": "MeosType", "canonical": "MeosType" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "spanbase_extent_transfn", + "name": "set_make_free", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "state", - "cType": "Span *", - "canonical": "struct Span *" + "name": "values", + "cType": "Datum *", + "canonical": "unsigned long *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" }, { "name": "basetype", "cType": "MeosType", "canonical": "MeosType" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "value_union_transfn", + "name": "span_make", "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" + "name": "lower", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "value", + "name": "upper", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" }, { "name": "basetype", @@ -42544,17 +42220,32 @@ ] }, { - "name": "number_tstzspan_to_tbox", + "name": "span_set", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "d", + "name": "lower", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "upper", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" }, { "name": "basetype", @@ -42562,104 +42253,114 @@ "canonical": "MeosType" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "number_timestamptz_to_tbox", + "name": "spanset_make_exp", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "spans", + "cType": "Span *", + "canonical": "Span *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tbox_set", + "name": "spanset_make_free", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "spans", + "cType": "Span *", + "canonical": "Span *" }, { - "name": "p", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "order", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "float_set_tbox", + "name": "set_span", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "d", - "cType": "double", - "canonical": "double" - }, - { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "int_set_tbox", + "name": "set_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "i", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "number_set_tbox", + "name": "value_set_span", "file": "meos_internal.h", "returnType": { "c": "void", @@ -42667,9 +42368,9 @@ }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { "name": "basetype", @@ -42678,23 +42379,23 @@ }, { "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "number_tbox", + "name": "value_set", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "value", + "name": "d", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { "name": "basetype", @@ -42704,142 +42405,112 @@ ] }, { - "name": "numset_set_tbox", + "name": "value_span", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "numspan_set_tbox", + "name": "value_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "timestamptz_set_tbox", + "name": "numspan_width", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tstzset_set_tbox", + "name": "numspanset_width", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "boundspan", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tstzspan_set_tbox", + "name": "set_end_value", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tbox_shift_scale_value", + "name": "set_mem_size", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tbox_expand", + "name": "set_set_subspan", "file": "meos_internal.h", "returnType": { "c": "void", @@ -42847,1344 +42518,1309 @@ }, "params": [ { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "box2", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "minidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxidx", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "inter_tbox_tbox", + "name": "set_set_span", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" - }, - { - "name": "box2", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tboolinst_from_mfjson", + "name": "set_start_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tboolinst_in", + "name": "set_value_n", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "tboolseq_from_mfjson", + "name": "set_vals", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tboolseq_in", + "name": "set_values", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tboolseqset_from_mfjson", + "name": "spanset_lower", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tboolseqset_in", + "name": "spanset_mem_size", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "temporal_in", + "name": "spanset_sps", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const Span **", + "canonical": "const Span **" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "temporal_out", + "name": "spanset_upper", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "temparr_out", + "name": "bigintspan_set_floatspan", "file": "meos_internal.h", "returnType": { - "c": "char **", - "canonical": "char **" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temparr", - "cType": "Temporal **", - "canonical": "Temporal **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatinst_from_mfjson", + "name": "bigintspan_set_intspan", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatinst_in", + "name": "datespan_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatseq_from_mfjson", + "name": "floatspan_set_bigintspan", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatseq_in", + "name": "floatspan_set_intspan", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatseqset_from_mfjson", + "name": "intspan_set_bigintspan", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tfloatseqset_in", + "name": "intspan_set_floatspan", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tinstant_from_mfjson", + "name": "numset_shift_scale", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "spatial", - "cType": "bool", - "canonical": "bool" + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tinstant_in", + "name": "numspan_expand", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_out", + "name": "numspan_shift_scale", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" - } - ] - }, - { - "name": "tintinst_from_mfjson", - "file": "meos_internal.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tintinst_in", + "name": "numspanset_shift_scale", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tintseq_from_mfjson", + "name": "set_compact", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tintseq_in", + "name": "span_expand", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" - } - ] - }, - { - "name": "tintseqset_from_mfjson", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ - { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tintseqset_in", + "name": "spanset_compact", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tsequence_from_mfjson", + "name": "tbox_expand_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "spatial", - "cType": "bool", - "canonical": "bool" + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temptype", + "name": "basetyp", "cType": "MeosType", "canonical": "MeosType" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" } ] }, { - "name": "tsequence_in", + "name": "textcat_textset_text_common", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "txt", + "cType": "const text *", + "canonical": "const struct varlena *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_out", + "name": "tstzspan_set_datespan", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "s2", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tsequenceset_from_mfjson", + "name": "adjacent_span_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "spatial", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_in", + "name": "adjacent_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_out", + "name": "adjacent_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "ttextinst_from_mfjson", + "name": "contained_value_set", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "ttextinst_in", + "name": "contained_value_span", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "ttextseq_from_mfjson", + "name": "contained_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "ttextseq_in", + "name": "contains_set_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "ttextseqset_from_mfjson", + "name": "contains_span_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "ttextseqset_in", + "name": "contains_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_from_mfjson", + "name": "ovadj_span_span", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "temporal_from_base_temp", + "name": "left_set_value", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_copy", + "name": "left_span_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_make", + "name": "left_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_make_free", + "name": "left_value_set", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "canonical": "unsigned long" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tsequence_copy", + "name": "left_value_span", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tsequence_from_base_temp", + "name": "left_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "canonical": "unsigned long" }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tsequence_from_base_tstzset", + "name": "lfnadj_span_span", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" - }, + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "overleft_set_value", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_from_base_tstzspan", + "name": "overleft_span_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" - }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_make_exp", + "name": "overleft_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_make_free", + "name": "overleft_value_set", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - }, + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "overleft_value_span", + "file": "meos_internal.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tsequenceset_copy", + "name": "overleft_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tseqsetarr_to_tseqset", + "name": "overright_set_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seqsets", - "cType": "TSequenceSet **", - "canonical": "struct TSequenceSet **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "totalseqs", - "cType": "int", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_from_base_temp", + "name": "overright_span_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_from_base_tstzspanset", + "name": "overright_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temptype", - "cType": "MeosType", - "canonical": "MeosType" - }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_make_exp", + "name": "overright_value_set", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "maxcount", - "cType": "int", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tsequenceset_make_free", + "name": "overright_value_span", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "normalize", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "temporal_set_tstzspan", + "name": "overright_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tinstant_set_tstzspan", + "name": "right_value_set", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tnumber_set_tbox", + "name": "right_set_value", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnumberinst_set_tbox", + "name": "right_value_span", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tnumberseq_set_tbox", + "name": "right_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tnumberseqset_set_tbox", + "name": "right_span_value", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "result", - "cType": "TBox *", - "canonical": "struct TBox *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_set_tstzspan", + "name": "right_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequenceset_set_tstzspan", + "name": "bbox_type", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_end_inst", + "name": "bbox_get_size", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "size_t", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_end_value", + "name": "bbox_max_dims", "file": "meos_internal.h", "returnType": { "c": "int", @@ -44192,184 +43828,234 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bboxtype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_inst_n", + "name": "temporal_bbox_eq", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const void *", + "canonical": "const void *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_insts_p", + "name": "temporal_bbox_cmp", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box1", + "cType": "const void *", + "canonical": "const void *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "box2", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_max_inst_p", + "name": "bbox_union_span_span", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "temporal_max_value", + "name": "inter_span_span", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "temporal_mem_size", + "name": "intersection_set_value", "file": "meos_internal.h", "returnType": { - "c": "size_t", - "canonical": "unsigned long" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_min_inst_p", + "name": "intersection_span_value", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_min_value", + "name": "intersection_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_sequences_p", + "name": "intersection_value_set", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "temporal_set_bbox", + "name": "intersection_value_span", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "void *", - "canonical": "void *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "temporal_start_inst", + "name": "intersection_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "temporal_start_value", + "name": "mi_span_span", "file": "meos_internal.h", "returnType": { "c": "int", @@ -44377,1269 +44063,1349 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "temporal_values_p", + "name": "minus_set_value", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_value_n", + "name": "minus_span_value", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "temporal_values", + "name": "minus_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_hash", + "name": "minus_value_set", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tinstant_insts", + "name": "minus_value_span", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tinstant_set_bbox", + "name": "minus_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "void *", - "canonical": "void *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tinstant_time", + "name": "union_set_value", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_timestamps", + "name": "union_span_value", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_value_p", + "name": "union_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tinstant_value", + "name": "union_value_set", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tinstant_value_at_timestamptz", + "name": "union_value_span", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tinstant_values_p", + "name": "union_value_spanset", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tnumber_set_span", + "name": "distance_set_set", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s1", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "result", - "cType": "Span *", - "canonical": "struct Span *" + "name": "s2", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tnumberinst_valuespans", + "name": "distance_set_value", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnumberseq_avg_val", + "name": "distance_span_span", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tnumberseq_valuespans", + "name": "distance_span_value", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnumberseqset_avg_val", + "name": "distance_spanset_span", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tnumberseqset_valuespans", + "name": "distance_spanset_spanset", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "ss1", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "ss2", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tsequence_duration", + "name": "distance_spanset_value", "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tsequence_end_timestamptz", + "name": "distance_value_value", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequence_hash", + "name": "spanbase_extent_transfn", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "state", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequence_insts_p", + "name": "value_union_transfn", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "state", + "cType": "Set *", + "canonical": "Set *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequence_max_inst_p", + "name": "number_tstzspan_to_tbox", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "tsequence_max_val", + "name": "number_timestamptz_to_tbox", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tsequence_min_inst_p", + "name": "tbox_set", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "p", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_min_val", + "name": "float_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "double", + "canonical": "double" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_segments", + "name": "int_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "i", + "cType": "int", + "canonical": "int" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_seqs", + "name": "number_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_start_timestamptz", + "name": "number_tbox", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequence_time", + "name": "numset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_timestamps", + "name": "numspan_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_value_at_timestamptz", + "name": "timestamptz_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, { "name": "t", "cType": "TimestampTz", "canonical": "long" }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, { "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequence_values_p", + "name": "tstzset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequenceset_duration", + "name": "tstzspan_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "boundspan", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequenceset_end_timestamptz", + "name": "tbox_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequenceset_hash", + "name": "tbox_expand", "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequenceset_inst_n", + "name": "inter_tbox_tbox", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequenceset_insts_p", + "name": "tboolinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "const TInstant **", - "canonical": "const struct TInstant **" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_max_inst_p", + "name": "tboolinst_in", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequenceset_max_val", + "name": "tboolseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_min_inst_p", + "name": "tboolseq_in", "file": "meos_internal.h", "returnType": { - "c": "const TInstant *", - "canonical": "const struct TInstant *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_min_val", + "name": "tboolseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_num_instants", + "name": "tboolseqset_in", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequenceset_num_timestamps", + "name": "temporal_in", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequenceset_segments", + "name": "temporal_out", "file": "meos_internal.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tsequenceset_sequences_p", + "name": "temparr_out", "file": "meos_internal.h", "returnType": { - "c": "const TSequence **", - "canonical": "const struct TSequence **" + "c": "char **", + "canonical": "char **" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temparr", + "cType": "Temporal **", + "canonical": "Temporal **" }, { "name": "count", - "cType": "int *", - "canonical": "int *" + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tsequenceset_start_timestamptz", + "name": "tfloatinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_time", + "name": "tfloatinst_in", "file": "meos_internal.h", "returnType": { - "c": "SpanSet *", - "canonical": "struct SpanSet *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequenceset_timestamptz_n", + "name": "tfloatseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "result", - "cType": "TimestampTz *", - "canonical": "long *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_timestamps", + "name": "tfloatseq_in", "file": "meos_internal.h", "returnType": { - "c": "TimestampTz *", - "canonical": "long *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_value_at_timestamptz", + "name": "tfloatseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tfloatseqset_in", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequenceset_value_n", + "name": "tinstant_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" }, { - "name": "n", - "cType": "int", + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", "canonical": "int" }, { - "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tsequenceset_values_p", + "name": "tinstant_in", "file": "meos_internal.h", "returnType": { - "c": "Datum *", - "canonical": "int ((*)(int *))()" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "temporal_restart", + "name": "tinstant_out", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "count", + "name": "maxdd", "cType": "int", "canonical": "int" } ] }, { - "name": "temporal_tsequence", + "name": "tbigintinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "temporal_tsequenceset", + "name": "tbigintinst_in", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tinstant_shift_time", + "name": "tbigintseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "interv", - "cType": "const int *", - "canonical": "const int *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tinstant_to_tsequence", + "name": "tbigintseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tinstant_to_tsequence_free", + "name": "tbigintseqset_in", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "inst", - "cType": "TInstant *", - "canonical": "struct TInstant *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tinstant_to_tsequenceset", + "name": "tintinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tnumber_shift_scale_value", + "name": "tintinst_in", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tnumberinst_shift_value", + "name": "tintseq_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tnumberseq_shift_scale_value", + "name": "tintseq_in", "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "shift", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseqset_shift_scale_value", + "name": "tintseqset_from_mfjson", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "start", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "width", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "hasshift", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "haswidth", - "cType": "bool", - "canonical": "bool" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequence_restart", + "name": "tintseqset_in", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequence_set_interp", + "name": "tsequence_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { "name": "interp", @@ -45649,122 +45415,102 @@ ] }, { - "name": "tsequence_shift_scale_time", + "name": "tsequence_in", "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "shift", - "cType": "const int *", - "canonical": "const int *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequence_subseq", + "name": "tsequence_out", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "char *", + "canonical": "char *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "from", - "cType": "int", - "canonical": "int" + "canonical": "const TSequence *" }, { - "name": "to", + "name": "maxdd", "cType": "int", "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" - } - ] - }, - { - "name": "tsequence_to_tinstant", - "file": "meos_internal.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" } ] }, { - "name": "tsequence_to_tsequenceset", + "name": "tsequenceset_from_mfjson", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - } - ] - }, - { - "name": "tsequence_to_tsequenceset_free", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "spatial", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequence_to_tsequenceset_interp", + "name": "tsequenceset_in", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { "name": "interp", @@ -45774,147 +45520,122 @@ ] }, { - "name": "tsequenceset_restart", + "name": "tsequenceset_out", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "char *", + "canonical": "char *" }, "params": [ { "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "count", + "name": "maxdd", "cType": "int", "canonical": "int" } ] }, { - "name": "tsequenceset_set_interp", + "name": "ttextinst_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_shift_scale_time", + "name": "ttextinst_in", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "start", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tsequenceset_to_discrete", + "name": "ttextseq_from_mfjson", "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_to_linear", + "name": "ttextseq_in", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - } - ] - }, - { - "name": "tsequenceset_to_step", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_to_tinstant", + "name": "ttextseqset_from_mfjson", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" } ] }, { - "name": "tsequenceset_to_tsequence", + "name": "ttextseqset_in", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tinstant_merge", + "name": "temporal_from_mfjson", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -45922,19 +45643,19 @@ }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tinstant_merge_array", + "name": "temporal_from_base_temp", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -45942,444 +45663,419 @@ }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tsequence_append_tinstant", + "name": "tinstant_copy", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ - { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" - }, { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "maxdist", - "cType": "double", - "canonical": "double" - }, - { - "name": "maxt", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "canonical": "const TInstant *" } ] }, { - "name": "tsequence_append_tsequence", + "name": "tinstant_make", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tsequence_delete_timestamptz", + "name": "tinstant_make_free", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { "name": "t", "cType": "TimestampTz", "canonical": "long" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "tsequence_delete_tstzset", + "name": "tsequence_copy", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "canonical": "const TSequence *" } ] }, { - "name": "tsequence_delete_tstzspan", + "name": "tsequence_from_base_temp", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequence_delete_tstzspanset", + "name": "tsequence_from_base_tstzset", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tsequence_insert", + "name": "tsequence_from_base_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequence_merge", + "name": "tsequence_make_exp", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "seq1", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - } - ] - }, - { - "name": "tsequence_merge_array", - "file": "meos_internal.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "sequences", - "cType": "TSequence **", - "canonical": "struct TSequence **" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { "name": "count", "cType": "int", "canonical": "int" - } - ] - }, - { - "name": "tsequenceset_append_tinstant", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ + }, { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "maxcount", + "cType": "int", + "canonical": "int" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" }, { - "name": "maxdist", - "cType": "double", - "canonical": "double" + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" }, { - "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" }, { - "name": "expand", + "name": "normalize", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tsequenceset_append_tsequence", + "name": "tsequence_make_free", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "expand", + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tsequenceset_delete_timestamptz", + "name": "tsequenceset_copy", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { "name": "ss", "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "canonical": "const TSequenceSet *" } ] }, { - "name": "tsequenceset_delete_tstzset", + "name": "tseqsetarr_to_tseqset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "totalseqs", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tsequenceset_delete_tstzspan", + "name": "tsequenceset_from_base_temp", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "tsequenceset_delete_tstzspanset", + "name": "tsequenceset_from_base_tstzspanset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "ps", + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_insert", + "name": "tsequenceset_make_exp", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - } - ] - }, - { - "name": "tsequenceset_merge", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ + "name": "count", + "cType": "int", + "canonical": "int" + }, { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "maxcount", + "cType": "int", + "canonical": "int" }, { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequenceset_merge_array", + "name": "tsequenceset_make_free", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "seqsets", - "cType": "TSequenceSet **", - "canonical": "struct TSequenceSet **" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { "name": "count", "cType": "int", "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tsequence_expand_bbox", + "name": "temporal_set_tstzspan", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46387,19 +46083,19 @@ }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tsequence_set_bbox", + "name": "tinstant_set_tstzspan", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46407,19 +46103,19 @@ }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { "name": "result", - "cType": "void *", - "canonical": "void *" + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tsequenceset_expand_bbox", + "name": "tnumber_set_tbox", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46427,19 +46123,19 @@ }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tsequenceset_set_bbox", + "name": "tnumberinst_set_tbox", "file": "meos_internal.h", "returnType": { "c": "void", @@ -46447,173 +46143,133 @@ }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { "name": "result", - "cType": "void *", - "canonical": "void *" + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tcontseq_after_timestamptz", + "name": "tnumberseq_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "canonical": "const TSequence *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tcontseq_before_timestamptz", + "name": "tnumberseqset_set_tbox", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tcontseq_restrict_minmax", + "name": "tsequence_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" + "canonical": "const TSequence *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tdiscseq_after_timestamptz", + "name": "tsequenceset_set_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tdiscseq_before_timestamptz", + "name": "temporal_end_inst", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tdiscseq_restrict_minmax", + "name": "temporal_end_value", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "temporal_bbox_restrict_set", + "name": "temporal_inst_n", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { @@ -46622,18 +46278,18 @@ "canonical": "const Temporal *" }, { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "temporal_restrict_minmax", + "name": "temporal_insts_p", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const TInstant **", + "canonical": "const TInstant **" }, "params": [ { @@ -46642,148 +46298,93 @@ "canonical": "const Temporal *" }, { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "temporal_restrict_timestamptz", + "name": "temporal_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "temporal_restrict_tstzset", + "name": "temporal_max_value", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "temporal_restrict_tstzspan", + "name": "temporal_mem_size", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "size_t", + "canonical": "unsigned long" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "temporal_restrict_tstzspanset", + "name": "temporal_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "temporal_restrict_value", + "name": "temporal_min_value", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" } ] }, { - "name": "temporal_restrict_values", + "name": "temporal_sequences_p", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const TSequence **", + "canonical": "const TSequence **" }, "params": [ { @@ -46792,23 +46393,18 @@ "canonical": "const Temporal *" }, { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "temporal_value_at_timestamptz", + "name": "temporal_set_bbox", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { @@ -46816,1030 +46412,785 @@ "cType": "const Temporal *", "canonical": "const Temporal *" }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, { "name": "result", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "tinstant_after_timestamptz", + "name": "temporal_start_inst", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tinstant_before_timestamptz", + "name": "temporal_start_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tinstant_restrict_tstzspan", + "name": "temporal_values_p", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "period", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tinstant_restrict_tstzspanset", + "name": "temporal_value_n", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "n", + "cType": "int", + "canonical": "int" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "tinstant_restrict_timestamptz", + "name": "temporal_values", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tinstant_restrict_tstzset", + "name": "tinstant_hash", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "const TInstant *" } ] }, { - "name": "tinstant_restrict_value", + "name": "tinstant_insts", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "const TInstant **", + "canonical": "const TInstant **" }, "params": [ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "const TInstant *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tinstant_restrict_values", + "name": "tinstant_set_bbox", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "canonical": "const TInstant *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "tnumber_restrict_span", + "name": "tinstant_time", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "tnumber_restrict_spanset", + "name": "tinstant_timestamps", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tnumberinst_restrict_span", + "name": "tinstant_value_p", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "const TInstant *" } ] }, { - "name": "tnumberinst_restrict_spanset", + "name": "tinstant_value", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "const TInstant *" } ] }, { - "name": "tnumberseqset_restrict_span", + "name": "tinstant_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "span", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "tnumberseqset_restrict_spanset", + "name": "tinstant_values_p", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "spanset", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequence_at_timestamptz", + "name": "tnumber_set_span", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "result", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "tsequence_restrict_tstzspan", + "name": "tnumberinst_valuespans", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "tsequence_restrict_tstzspanset", + "name": "tnumberseq_avg_val", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_after_timestamptz", + "name": "tnumberseq_valuespans", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_before_timestamptz", + "name": "tnumberseqset_avg_val", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { "name": "ss", "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "canonical": "const TSequenceSet *" } ] }, { - "name": "tsequenceset_restrict_minmax", + "name": "tnumberseqset_valuespans", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { "name": "ss", "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "min", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "const TSequenceSet *" } ] }, { - "name": "tsequenceset_restrict_tstzspan", + "name": "tsequence_duration", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_restrict_tstzspanset", + "name": "tsequence_end_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "ps", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_restrict_timestamptz", + "name": "tsequence_hash", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_restrict_tstzset", + "name": "tsequence_insts_p", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "const TInstant **", + "canonical": "const TInstant **" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_restrict_value", + "name": "tsequence_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_restrict_values", + "name": "tsequence_max_val", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tinstant_cmp", + "name": "tsequence_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tinstant_eq", + "name": "tsequence_min_val", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequence_cmp", + "name": "tsequence_segments", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { - "name": "seq1", + "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequence_eq", + "name": "tsequence_seqs", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "const TSequence **", + "canonical": "const TSequence **" }, "params": [ { - "name": "seq1", + "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { - "name": "seq2", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tsequenceset_cmp", + "name": "tsequence_start_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tsequenceset_eq", + "name": "tsequence_time", "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "ss1", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "ss2", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "always_eq_base_temporal", + "name": "tsequence_timestamps", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "always_eq_temporal_base", + "name": "tsequence_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "always_ne_base_temporal", + "name": "tsequence_values_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "always_ne_temporal_base", + "name": "tsequenceset_duration", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Interval *", + "canonical": "Interval *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "boundspan", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "always_ge_base_temporal", + "name": "tsequenceset_end_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "always_ge_temporal_base", + "name": "tsequenceset_hash", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "uint32", + "canonical": "unsigned int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "always_gt_base_temporal", + "name": "tsequenceset_inst_n", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "n", + "cType": "int", + "canonical": "int" } ] }, { - "name": "always_gt_temporal_base", + "name": "tsequenceset_insts_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant **", + "canonical": "const TInstant **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "always_le_base_temporal", + "name": "tsequenceset_max_inst_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "always_le_temporal_base", + "name": "tsequenceset_max_val", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "always_lt_base_temporal", + "name": "tsequenceset_min_inst_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TInstant *", + "canonical": "const TInstant *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "always_lt_temporal_base", + "name": "tsequenceset_min_val", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_eq_base_temporal", + "name": "tsequenceset_num_instants", "file": "meos_internal.h", "returnType": { "c": "int", @@ -47847,19 +47198,14 @@ }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_eq_temporal_base", + "name": "tsequenceset_num_timestamps", "file": "meos_internal.h", "returnType": { "c": "int", @@ -47867,763 +47213,814 @@ }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_ne_base_temporal", + "name": "tsequenceset_segments", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_ne_temporal_base", + "name": "tsequenceset_sequences_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "const TSequence **", + "canonical": "const TSequence **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_ge_base_temporal", + "name": "tsequenceset_start_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_ge_temporal_base", + "name": "tsequenceset_time", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_gt_base_temporal", + "name": "tsequenceset_timestamptz_n", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "ever_gt_temporal_base", + "name": "tsequenceset_timestamps", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz *", + "canonical": "long *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_le_base_temporal", + "name": "tsequenceset_value_at_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "ever_le_temporal_base", + "name": "tsequenceset_value_n", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "ever_lt_base_temporal", + "name": "tsequenceset_values_p", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum *", + "canonical": "unsigned long *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_lt_temporal_base", + "name": "temporal_restart", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "cType": "Temporal *", + "canonical": "Temporal *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberinst_abs", + "name": "temporal_tsequence", "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseq_abs", + "name": "temporal_tsequenceset", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseq_angular_difference", + "name": "tinstant_shift_time", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interv", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tnumberseq_delta_value", + "name": "tinstant_to_tsequence", "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - } - ] - }, - { - "name": "tnumberseqset_abs", - "file": "meos_internal.h", - "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, - "params": [ + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseqset_angular_difference", + "name": "tinstant_to_tsequence_free", "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "inst", + "cType": "TInstant *", + "canonical": "TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseqset_delta_value", + "name": "tinstant_to_tsequenceset", "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "distance_span_span_double", + "name": "tnumber_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s1", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s2", - "cType": "const Span *", - "canonical": "const struct Span *" - } - ] - }, - { - "name": "nad_tbox_tbox", - "file": "meos_internal.h", - "returnType": { - "c": "double", - "canonical": "double" - }, - "params": [ + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "box1", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "box2", - "cType": "const TBox *", - "canonical": "const struct TBox *" + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nad_tnumber_number", + "name": "tnumberinst_shift_value", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "value", + "name": "shift", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "nad_tnumber_tbox", + "name": "tnumberseq_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "box", - "cType": "const TBox *", - "canonical": "const struct TBox *" - } - ] + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + } + ] }, { - "name": "nad_tnumber_tnumber", + "name": "tnumberseqset_shift_scale_value", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tdistance_tnumber_number", + "name": "tsequence_restart", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" }, { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumberinst_distance", + "name": "tsequence_set_interp", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "inst1", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "inst2", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tnumberseq_integral", + "name": "tsequence_shift_scale_time", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" + }, + { + "name": "shift", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tnumberseq_twavg", + "name": "tsequence_subseq", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" + }, + { + "name": "from", + "cType": "int", + "canonical": "int" + }, + { + "name": "to", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumberseqset_integral", + "name": "tsequence_to_tinstant", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tnumberseqset_twavg", + "name": "tsequence_to_tsequenceset", "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "temporal_compact", + "name": "tsequence_to_tsequenceset_free", "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" } ] }, { - "name": "tsequence_compact", + "name": "tsequence_to_tsequenceset_interp", "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tsequenceset_compact", + "name": "tsequenceset_restart", "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "temporal_skiplist_make", + "name": "tsequenceset_set_interp", "file": "meos_internal.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "Temporal *", + "canonical": "Temporal *" }, - "params": [] + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] }, { - "name": "skiplist_make", + "name": "tsequenceset_shift_scale_time", "file": "meos_internal.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "key_size", - "cType": "size_t", - "canonical": "unsigned long" - }, - { - "name": "value_size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "comp_fn", - "cType": "int (*)(void *, void *)", - "canonical": "int (*)(void *, void *)" + "name": "start", + "cType": "const Interval *", + "canonical": "const Interval *" }, { - "name": "merge_fn", - "cType": "void *(*)(void *, void *)", - "canonical": "void *(*)(void *, void *)" + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "skiplist_search", + "name": "tsequenceset_to_discrete", "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "key", - "cType": "void *", - "canonical": "void *" - }, - { - "name": "value", - "cType": "void *", - "canonical": "void *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "skiplist_free", + "name": "tsequenceset_to_linear", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "skiplist_splice", + "name": "tsequenceset_to_step", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "keys", - "cType": "void **", - "canonical": "void **" - }, - { - "name": "values", - "cType": "void **", - "canonical": "void **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "func", - "cType": "datum_func2", - "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" - }, - { - "name": "crossings", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "sktype", - "cType": "SkipListType", - "canonical": "SkipListType" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "temporal_skiplist_splice", + "name": "tsequenceset_to_tinstant", "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" - }, - { - "name": "values", - "cType": "void **", - "canonical": "void **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "func", - "cType": "datum_func2", - "canonical": "int (*)(int ((*)(int *))(), int ((*)(int *))())" - }, + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tsequenceset_to_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ { - "name": "crossings", - "cType": "bool", - "canonical": "bool" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "skiplist_values", + "name": "tinstant_merge", "file": "meos_internal.h", "returnType": { - "c": "void **", - "canonical": "void **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "skiplist_keys_values", + "name": "tinstant_merge_array", "file": "meos_internal.h", "returnType": { - "c": "void **", - "canonical": "void **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "list", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "values", - "cType": "void **", - "canonical": "void **" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "temporal_app_tinst_transfn", + "name": "tsequence_append_tinstant", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -48631,19 +48028,14 @@ }, "params": [ { - "name": "state", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" }, { "name": "inst", "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "canonical": "const TInstant *" }, { "name": "maxdist", @@ -48652,13 +48044,18 @@ }, { "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "temporal_app_tseq_transfn", + "name": "tsequence_append_tsequence", "file": "meos_internal.h", "returnType": { "c": "Temporal *", @@ -48666,958 +48063,1048 @@ }, "params": [ { - "name": "state", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "seq", + "name": "seq2", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "span_bins", + "name": "tsequence_delete_timestamptz", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "spanset_bins", + "name": "tsequence_delete_tstzset", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumber_value_bins", + "name": "tsequence_delete_tstzspan", "file": "meos_internal.h", "returnType": { - "c": "Span *", - "canonical": "struct Span *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "origin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumber_value_time_boxes", + "name": "tsequence_delete_tstzspanset", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tnumber_value_split", + "name": "tsequence_insert", "file": "meos_internal.h", "returnType": { - "c": "DatumSplit", - "canonical": "DatumSplit" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "connect", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tbox_get_value_time_tile", + "name": "tsequence_merge", "file": "meos_internal.h", "returnType": { - "c": "TBox *", - "canonical": "struct TBox *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "vsize", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tsequence_merge_array", + "file": "meos_internal.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "spantype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tnumber_value_time_split", + "name": "tsequenceset_append_tinstant", "file": "meos_internal.h", "returnType": { - "c": "Temporal **", - "canonical": "Temporal **" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdist", + "cType": "double", + "canonical": "double" }, { - "name": "vorigin", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "maxt", + "cType": "const Interval *", + "canonical": "const Interval *" }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" - }, + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequenceset_append_tsequence", + "file": "meos_internal.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ { - "name": "value_bins", - "cType": "Datum **", - "canonical": "int ((**)(int *))()" + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" }, { - "name": "time_bins", - "cType": "TimestampTz **", - "canonical": "long **" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "expand", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_are_neighbor_cells_meos", - "file": "h3_generated.h", + "name": "tsequenceset_delete_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "destination", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "h3_cells_to_directed_edge_meos", - "file": "h3_generated.h", + "name": "tsequenceset_delete_tstzset", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "destination", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "h3_is_valid_directed_edge_meos", - "file": "h3_generated.h", + "name": "tsequenceset_delete_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "h3_get_directed_edge_origin_meos", - "file": "h3_generated.h", + "name": "tsequenceset_delete_tstzspanset", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "h3_get_directed_edge_destination_meos", - "file": "h3_generated.h", + "name": "tsequenceset_insert", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "h3_cell_to_parent_meos", - "file": "h3_generated.h", + "name": "tsequenceset_merge", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "h3_cell_to_center_child_meos", - "file": "h3_generated.h", + "name": "tsequenceset_merge_array", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seqsets", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" }, { - "name": "resolution", - "cType": "int32", + "name": "count", + "cType": "int", "canonical": "int" } ] }, { - "name": "h3_cell_to_child_pos_meos", - "file": "h3_generated.h", + "name": "tsequence_expand_bbox", + "file": "meos_internal.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "child", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" }, { - "name": "parentRes", - "cType": "int32", - "canonical": "int" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "h3_child_pos_to_cell_meos", - "file": "h3_generated.h", + "name": "tsequence_set_bbox", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "childPos", - "cType": "int64", - "canonical": "long" - }, - { - "name": "parent", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "childRes", - "cType": "int32", - "canonical": "int" + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "h3_get_resolution_meos", - "file": "h3_generated.h", + "name": "tsequenceset_expand_bbox", + "file": "meos_internal.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "h3_get_base_cell_number_meos", - "file": "h3_generated.h", + "name": "tsequenceset_set_bbox", + "file": "meos_internal.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "result", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "h3_is_valid_cell_meos", - "file": "h3_generated.h", + "name": "tcontseq_after_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_is_res_class_iii_meos", - "file": "h3_generated.h", + "name": "tcontseq_before_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_is_pentagon_meos", - "file": "h3_generated.h", + "name": "tcontseq_restrict_minmax", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "hex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_get_num_cells_meos", - "file": "h3_generated.h", + "name": "tdiscseq_after_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_grid_distance_meos", - "file": "h3_generated.h", + "name": "tdiscseq_before_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "originIndex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "h3Index", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_vertex_meos", - "file": "h3_generated.h", + "name": "tdiscseq_restrict_minmax", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "vertexNum", - "cType": "int32", - "canonical": "int" + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_is_valid_vertex_meos", - "file": "h3_generated.h", + "name": "temporal_bbox_restrict_set", + "file": "meos_internal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "vertex", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "h3index_parse", - "file": "h3index.h", + "name": "temporal_restrict_minmax", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_to_string", - "file": "h3index.h", + "name": "temporal_restrict_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_eq", - "file": "h3index.h", + "name": "temporal_restrict_tstzset", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_ne", - "file": "h3index.h", + "name": "temporal_restrict_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_lt", - "file": "h3index.h", + "name": "temporal_restrict_tstzspanset", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_le", - "file": "h3index.h", + "name": "temporal_restrict_value", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", + "name": "value", + "cType": "Datum", "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_gt", - "file": "h3index.h", + "name": "temporal_restrict_values", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3index_ge", - "file": "h3index.h", + "name": "temporal_value_at_timestamptz", + "file": "meos_internal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" - } - ] - }, - { - "name": "h3index_cmp", - "file": "h3index.h", - "returnType": { - "c": "int", - "canonical": "int" - }, - "params": [ + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, { - "name": "a", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "strict", + "cType": "bool", + "canonical": "bool" }, { - "name": "b", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "h3index_hash", - "file": "h3index.h", + "name": "tinstant_after_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" - } - ] - }, - { - "name": "h3_grid_disk", - "file": "h3index_sets.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "k", - "cType": "int", - "canonical": "int" + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_grid_ring", - "file": "h3index_sets.h", + "name": "tinstant_before_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "k", - "cType": "int", - "canonical": "int" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_grid_path_cells", - "file": "h3index_sets.h", + "name": "tinstant_restrict_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "start", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "end", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "period", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_children", - "file": "h3index_sets.h", + "name": "tinstant_restrict_tstzspanset", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "childRes", - "cType": "int", - "canonical": "int" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_compact_cells", - "file": "h3index_sets.h", + "name": "tinstant_restrict_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "cells", - "cType": "const Set *", - "canonical": "const Set *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_uncompact_cells", - "file": "h3index_sets.h", + "name": "tinstant_restrict_tstzset", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "cells", + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "s", "cType": "const Set *", "canonical": "const Set *" }, { - "name": "res", - "cType": "int", - "canonical": "int" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_origin_to_directed_edges", - "file": "h3index_sets.h", + "name": "tinstant_restrict_value", + "file": "meos_internal.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" - } - ] - }, - { - "name": "h3_cell_to_vertexes", - "file": "h3index_sets.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, { - "name": "cell", - "cType": "H3Index", + "name": "value", + "cType": "Datum", "canonical": "unsigned long" - } - ] - }, - { - "name": "h3_get_icosahedron_faces", - "file": "h3index_sets.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ensure_valid_th3index_th3index", - "file": "th3index.h", + "name": "tinstant_restrict_values", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ensure_valid_th3index_h3index", - "file": "th3index.h", + "name": "tnumber_restrict_span", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -49626,1230 +49113,1345 @@ "canonical": "const Temporal *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ensure_valid_th3index_tgeogpoint", - "file": "th3index.h", + "name": "tnumber_restrict_spanset", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "datum2_h3index_eq", - "file": "th3index.h", + "name": "tnumberinst_restrict_span", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "d1", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "d2", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "type", - "cType": "MeosType", - "canonical": "MeosType" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "datum2_h3index_ne", - "file": "th3index.h", + "name": "tnumberinst_restrict_spanset", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "d1", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "d2", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "type", - "cType": "MeosType", - "canonical": "MeosType" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "th3indexinst_set_stbox", - "file": "th3index_boxops.h", + "name": "tnumberseqset_restrict_span", + "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "th3indexinstarr_set_stbox", - "file": "th3index_boxops.h", + "name": "tnumberseqset_restrict_spanset", + "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "instants", - "cType": "TInstant **", - "canonical": "struct TInstant **" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "spanset", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "th3indexseq_expand_stbox", - "file": "th3index_boxops.h", + "name": "tsequence_at_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "h3_gs_point_to_cell", - "file": "th3index_internal.h", + "name": "tsequence_restrict_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "point", - "cType": "const int *", - "canonical": "const int *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_gs_point", - "file": "th3index_internal.h", + "name": "tsequence_restrict_tstzspanset", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_gs_boundary", - "file": "th3index_internal.h", + "name": "tsequenceset_after_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "cell_boundary_to_gs", - "file": "th3index_internal.h", + "name": "tsequenceset_before_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "bnd", - "cType": "const CellBoundary *", - "canonical": "const CellBoundary *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_sample_step_deg", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_minmax", + "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_latlng_deg_to_cell", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_tstzspan", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "lat_deg", - "cType": "double", - "canonical": "double" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "lng_deg", - "cType": "double", - "canonical": "double" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_parent_next_meos", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_tstzspanset", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "ps", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_center_child_next_meos", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_timestamptz", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_directed_edge_to_gs_boundary", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_tstzset", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_vertex_to_gs_point", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_value", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "vertex", - "cType": "H3Index", + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "value", + "cType": "Datum", "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_cell_to_local_ij_meos", - "file": "th3index_internal.h", + "name": "tsequenceset_restrict_values", + "file": "meos_internal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "h3_local_ij_to_cell_meos", - "file": "th3index_internal.h", + "name": "tinstant_cmp", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "origin", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "coord", - "cType": "const int *", - "canonical": "const int *" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "h3_unit_from_cstring", - "file": "th3index_internal.h", + "name": "tinstant_eq", + "file": "meos_internal.h", "returnType": { - "c": "H3Unit", - "canonical": "H3Unit" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "h3_cell_area_meos", - "file": "th3index_internal.h", + "name": "tsequence_cmp", + "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "h3_edge_length_meos", - "file": "th3index_internal.h", + "name": "tsequence_eq", + "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "edge", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "h3_gs_great_circle_distance_meos", - "file": "th3index_internal.h", + "name": "tsequenceset_cmp", + "file": "meos_internal.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "a", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "b", - "cType": "const int *", - "canonical": "const int *" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "unit", - "cType": "H3Unit", - "canonical": "H3Unit" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "datum_h3_get_resolution", - "file": "th3index_internal.h", + "name": "tsequenceset_eq", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "datum_h3_get_base_cell_number", - "file": "th3index_internal.h", + "name": "always_eq_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_is_valid_cell", - "file": "th3index_internal.h", + "name": "always_eq_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_is_res_class_iii", - "file": "th3index_internal.h", + "name": "always_ne_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_is_pentagon", - "file": "th3index_internal.h", + "name": "always_ne_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_parent", - "file": "th3index_internal.h", + "name": "always_ge_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "res_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_cell_to_parent_next", - "file": "th3index_internal.h", + "name": "always_ge_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_center_child", - "file": "th3index_internal.h", + "name": "always_gt_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "res_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_cell_to_center_child_next", - "file": "th3index_internal.h", + "name": "always_gt_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_child_pos", - "file": "th3index_internal.h", + "name": "always_le_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "parent_res_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_child_pos_to_cell", - "file": "th3index_internal.h", + "name": "always_le_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "pos_d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "parent_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "child_res_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_are_neighbor_cells", - "file": "th3index_internal.h", + "name": "always_lt_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "origin_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "dest_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_cells_to_directed_edge", - "file": "th3index_internal.h", + "name": "always_lt_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "origin_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "dest_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_is_valid_directed_edge", - "file": "th3index_internal.h", + "name": "ever_eq_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_get_directed_edge_origin", - "file": "th3index_internal.h", + "name": "ever_eq_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_get_directed_edge_destination", - "file": "th3index_internal.h", + "name": "ever_ne_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_directed_edge_to_boundary", - "file": "th3index_internal.h", + "name": "ever_ne_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_vertex", - "file": "th3index_internal.h", + "name": "ever_ge_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "cell_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "vnum_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_vertex_to_latlng", - "file": "th3index_internal.h", + "name": "ever_ge_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_is_valid_vertex", - "file": "th3index_internal.h", + "name": "ever_gt_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_grid_distance", - "file": "th3index_internal.h", + "name": "ever_gt_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "origin_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "dest_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_local_ij", - "file": "th3index_internal.h", + "name": "ever_le_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "origin_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "cell_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_local_ij_to_cell", - "file": "th3index_internal.h", + "name": "ever_le_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "origin_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "coord_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_latlng_to_cell", - "file": "th3index_internal.h", + "name": "ever_lt_base_temporal", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "point_d", + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" }, { - "name": "res_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "datum_h3_cell_to_latlng", - "file": "th3index_internal.h", + "name": "ever_lt_temporal_base", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "d", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" + "canonical": "unsigned long" } ] }, { - "name": "datum_h3_cell_to_boundary", - "file": "th3index_internal.h", + "name": "tnumberinst_abs", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "datum_h3_cell_area", - "file": "th3index_internal.h", + "name": "tnumberinst_distance", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "cell_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "unit_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "datum_h3_edge_length", - "file": "th3index_internal.h", + "name": "tnumberseq_abs", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "edge_d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "unit_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "datum_h3_great_circle_distance", - "file": "th3index_internal.h", + "name": "tnumberseq_angular_difference", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "a_d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "b_d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "unit_d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "th3index_in", - "file": "meos_h3.h", + "name": "tnumberseq_delta_value", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "th3indexinst_in", - "file": "meos_h3.h", + "name": "tnumberseqset_abs", + "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "th3indexseq_in", - "file": "meos_h3.h", + "name": "tnumberseqset_angular_difference", + "file": "meos_internal.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "th3indexseqset_in", - "file": "meos_h3.h", + "name": "tnumberseqset_delta_value", + "file": "meos_internal.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "th3index_make", - "file": "meos_h3.h", + "name": "distance_span_span_double", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "value", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "th3indexinst_make", - "file": "meos_h3.h", + "name": "nad_tbox_tbox", + "file": "meos_internal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "value", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" } ] }, { - "name": "th3indexseq_make", - "file": "meos_h3.h", + "name": "nad_tnumber_number", + "file": "meos_internal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "values", - "cType": "const H3Index *", - "canonical": "const unsigned long *" - }, - { - "name": "times", - "cType": "const TimestampTz *", - "canonical": "const long *" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" - }, - { - "name": "lower_inc", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "upper_inc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "th3indexseqset_make", - "file": "meos_h3.h", + "name": "nad_tnumber_tbox", + "file": "meos_internal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "sequences", - "cType": "const TSequence **", - "canonical": "const struct TSequence **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" } ] }, { - "name": "th3index_start_value", - "file": "meos_h3.h", + "name": "nad_tnumber_tnumber", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "th3index_end_value", - "file": "meos_h3.h", + "name": "tdistance_tnumber_number", + "file": "meos_internal.h", "returnType": { - "c": "H3Index", - "canonical": "unsigned long" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "th3index_value_n", - "file": "meos_h3.h", + "name": "tnumberseq_integral", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "H3Index *", - "canonical": "unsigned long *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "th3index_values", - "file": "meos_h3.h", + "name": "tnumberseq_twavg", + "file": "meos_internal.h", "returnType": { - "c": "H3Index *", - "canonical": "unsigned long *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "th3index_value_at_timestamptz", - "file": "meos_h3.h", + "name": "tnumberseqset_integral", + "file": "meos_internal.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "result", - "cType": "H3Index *", - "canonical": "unsigned long *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "tbigint_to_th3index", - "file": "meos_h3.h", + "name": "tnumberseqset_twavg", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "th3index_to_tbigint", - "file": "meos_h3.h", + "name": "temporal_compact", + "file": "meos_internal.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -50863,271 +50465,350 @@ ] }, { - "name": "ever_eq_h3index_th3index", - "file": "meos_h3.h", + "name": "tsequence_compact", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "ever_eq_th3index_h3index", - "file": "meos_h3.h", + "name": "tsequenceset_compact", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" } ] }, { - "name": "ever_ne_h3index_th3index", - "file": "meos_h3.h", + "name": "temporal_skiplist_make", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [] + }, + { + "name": "skiplist_make", + "file": "meos_internal.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ { - "name": "cell", - "cType": "H3Index", + "name": "key_size", + "cType": "size_t", "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value_size", + "cType": "size_t", + "canonical": "unsigned long" + }, + { + "name": "comp_fn", + "cType": "int (*)(void *, void *)", + "canonical": "int (*)(void *, void *)" + }, + { + "name": "merge_fn", + "cType": "void *(*)(void *, void *)", + "canonical": "void *(*)(void *, void *)" } ] }, { - "name": "ever_ne_th3index_h3index", - "file": "meos_h3.h", + "name": "skiplist_search", + "file": "meos_internal.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "key", + "cType": "void *", + "canonical": "void *" + }, + { + "name": "value", + "cType": "void *", + "canonical": "void *" } ] }, { - "name": "always_eq_h3index_th3index", - "file": "meos_h3.h", + "name": "skiplist_free", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "always_eq_th3index_h3index", - "file": "meos_h3.h", + "name": "skiplist_splice", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "keys", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "sktype", + "cType": "SkipListType", + "canonical": "SkipListType" } ] }, { - "name": "always_ne_h3index_th3index", - "file": "meos_h3.h", + "name": "temporal_skiplist_splice", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "always_ne_th3index_h3index", - "file": "meos_h3.h", + "name": "skiplist_values", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void **", + "canonical": "void **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cell", - "cType": "H3Index", - "canonical": "unsigned long" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" } ] }, { - "name": "ever_eq_th3index_th3index", - "file": "meos_h3.h", + "name": "skiplist_keys_values", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void **", + "canonical": "void **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "void **", + "canonical": "void **" } ] }, { - "name": "ever_ne_th3index_th3index", - "file": "meos_h3.h", + "name": "temporal_app_tinst_transfn", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "always_eq_th3index_th3index", - "file": "meos_h3.h", + "name": "temporal_app_tseq_transfn", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "Temporal *", + "canonical": "Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "always_ne_th3index_th3index", - "file": "meos_h3.h", + "name": "span_bins", + "file": "meos_internal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "teq_h3index_th3index", - "file": "meos_h3.h", + "name": "spanset_bins", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "cell", - "cType": "H3Index", + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "size", + "cType": "Datum", "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "origin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "teq_th3index_h3index", - "file": "meos_h3.h", + "name": "tnumber_value_bins", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Span *", + "canonical": "Span *" }, "params": [ { @@ -51136,58 +50817,68 @@ "canonical": "const Temporal *" }, { - "name": "cell", - "cType": "H3Index", + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "origin", + "cType": "Datum", "canonical": "unsigned long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "teq_th3index_th3index", - "file": "meos_h3.h", + "name": "tnumber_value_time_boxes", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "tne_h3index_th3index", - "file": "meos_h3.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "cell", - "cType": "H3Index", + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "vorigin", + "cType": "Datum", "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tne_th3index_h3index", - "file": "meos_h3.h", + "name": "tnumber_value_split", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "DatumSplit", + "canonical": "DatumSplit" }, "params": [ { @@ -51196,1504 +50887,1778 @@ "canonical": "const Temporal *" }, { - "name": "cell", - "cType": "H3Index", + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "vorigin", + "cType": "Datum", "canonical": "unsigned long" } ] }, { - "name": "tne_th3index_th3index", - "file": "meos_h3.h", + "name": "tbox_get_value_time_tile", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "th3index_get_resolution", - "file": "meos_h3.h", + "name": "tnumber_value_time_split", + "file": "meos_internal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Temporal **", + "canonical": "Temporal **" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "value_bins", + "cType": "Datum **", + "canonical": "unsigned long **" + }, + { + "name": "time_bins", + "cType": "TimestampTz **", + "canonical": "long **" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "th3index_get_base_cell_number", - "file": "meos_h3.h", + "name": "double2_out", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "th3index_is_valid_cell", - "file": "meos_h3.h", + "name": "double2_set", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "double", + "canonical": "double" + }, + { + "name": "b", + "cType": "double", + "canonical": "double" + }, + { + "name": "result", + "cType": "double2 *", + "canonical": "double2 *" } ] }, { - "name": "th3index_is_res_class_iii", - "file": "meos_h3.h", + "name": "double2_add", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double2 *", + "canonical": "double2 *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "d2", + "cType": "const double2 *", + "canonical": "const double2 *" } ] }, { - "name": "th3index_is_pentagon", - "file": "meos_h3.h", + "name": "double2_eq", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "d2", + "cType": "const double2 *", + "canonical": "const double2 *" } ] }, { - "name": "th3index_cell_to_parent", - "file": "meos_h3.h", + "name": "double3_out", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "const double3 *", + "canonical": "const double3 *" }, { - "name": "resolution", - "cType": "int32", + "name": "maxdd", + "cType": "int", "canonical": "int" } ] }, { - "name": "th3index_cell_to_parent_next", - "file": "meos_h3.h", + "name": "double3_set", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "double", + "canonical": "double" + }, + { + "name": "b", + "cType": "double", + "canonical": "double" + }, + { + "name": "c", + "cType": "double", + "canonical": "double" + }, + { + "name": "result", + "cType": "double3 *", + "canonical": "double3 *" } ] }, { - "name": "th3index_cell_to_center_child", - "file": "meos_h3.h", + "name": "double3_add", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double3 *", + "canonical": "double3 *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double3 *", + "canonical": "const double3 *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "d2", + "cType": "const double3 *", + "canonical": "const double3 *" } ] }, { - "name": "th3index_cell_to_center_child_next", - "file": "meos_h3.h", + "name": "double3_eq", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double3 *", + "canonical": "const double3 *" + }, + { + "name": "d2", + "cType": "const double3 *", + "canonical": "const double3 *" } ] }, { - "name": "th3index_cell_to_child_pos", - "file": "meos_h3.h", + "name": "double4_out", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "const double4 *", + "canonical": "const double4 *" }, { - "name": "parent_res", - "cType": "int32", + "name": "maxdd", + "cType": "int", "canonical": "int" } ] }, { - "name": "th3index_child_pos_to_cell", - "file": "meos_h3.h", + "name": "double4_set", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "child_pos", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "double", + "canonical": "double" }, { - "name": "parent", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "b", + "cType": "double", + "canonical": "double" }, { - "name": "child_res", - "cType": "int32", - "canonical": "int" + "name": "c", + "cType": "double", + "canonical": "double" + }, + { + "name": "d", + "cType": "double", + "canonical": "double" + }, + { + "name": "result", + "cType": "double4 *", + "canonical": "double4 *" } ] }, { - "name": "tgeogpoint_to_th3index", - "file": "meos_h3.h", + "name": "double4_add", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double4 *", + "canonical": "double4 *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double4 *", + "canonical": "const double4 *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "d2", + "cType": "const double4 *", + "canonical": "const double4 *" } ] }, { - "name": "tgeompoint_to_th3index", - "file": "meos_h3.h", + "name": "double4_eq", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d1", + "cType": "const double4 *", + "canonical": "const double4 *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "d2", + "cType": "const double4 *", + "canonical": "const double4 *" } ] }, { - "name": "th3index_to_tgeogpoint", - "file": "meos_h3.h", + "name": "double2_collinear", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x1", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "x2", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "x3", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" } ] }, { - "name": "th3index_to_tgeompoint", - "file": "meos_h3.h", + "name": "double3_collinear", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x1", + "cType": "const double3 *", + "canonical": "const double3 *" + }, + { + "name": "x2", + "cType": "const double3 *", + "canonical": "const double3 *" + }, + { + "name": "x3", + "cType": "const double3 *", + "canonical": "const double3 *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" } ] }, { - "name": "th3index_cell_to_boundary", - "file": "meos_h3.h", + "name": "double4_collinear", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x1", + "cType": "const double4 *", + "canonical": "const double4 *" + }, + { + "name": "x2", + "cType": "const double4 *", + "canonical": "const double4 *" + }, + { + "name": "x3", + "cType": "const double4 *", + "canonical": "const double4 *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" } ] }, { - "name": "geo_to_h3index_set", - "file": "meos_h3.h", + "name": "double2segm_interpolate", + "file": "doublen.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "double2 *", + "canonical": "double2 *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "start", + "cType": "const double2 *", + "canonical": "const double2 *" }, { - "name": "resolution", - "cType": "int32", - "canonical": "int" + "name": "end", + "cType": "const double2 *", + "canonical": "const double2 *" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "ever_eq_h3indexset_th3index", - "file": "meos_h3.h", + "name": "double3segm_interpolate", + "file": "doublen.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "double3 *", + "canonical": "double3 *" }, "params": [ { - "name": "cells", - "cType": "const Set *", - "canonical": "const Set *" + "name": "start", + "cType": "const double3 *", + "canonical": "const double3 *" }, { - "name": "th3idx", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "end", + "cType": "const double3 *", + "canonical": "const double3 *" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "th3index_are_neighbor_cells", - "file": "meos_h3.h", + "name": "double4segm_interpolate", + "file": "doublen.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double4 *", + "canonical": "double4 *" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start", + "cType": "const double4 *", + "canonical": "const double4 *" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "end", + "cType": "const double4 *", + "canonical": "const double4 *" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "th3index_cells_to_directed_edge", - "file": "meos_h3.h", + "name": "pg_atoi", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int32", + "canonical": "int" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "size", + "cType": "int", + "canonical": "int" + }, + { + "name": "c", + "cType": "int", + "canonical": "int" } ] }, { - "name": "th3index_is_valid_directed_edge", - "file": "meos_h3.h", + "name": "ensure_has_X", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "th3index_get_directed_edge_origin", - "file": "meos_h3.h", + "name": "ensure_has_Z", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "th3index_get_directed_edge_destination", - "file": "meos_h3.h", + "name": "ensure_has_T", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "th3index_directed_edge_to_boundary", - "file": "meos_h3.h", + "name": "ensure_has_not_Z", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "edge", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "th3index_cell_to_vertex", - "file": "meos_h3.h", + "name": "ensure_not_null", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "vertex_num", - "cType": "int32", - "canonical": "int" + "name": "ptr", + "cType": "const void *", + "canonical": "const void *" } ] }, { - "name": "th3index_vertex_to_latlng", - "file": "meos_h3.h", + "name": "ensure_one_not_null", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ptr1", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "ptr2", + "cType": "const void *", + "canonical": "const void *" } ] }, { - "name": "th3index_is_valid_vertex", - "file": "meos_h3.h", + "name": "ensure_one_true", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "th3index_grid_distance", - "file": "meos_h3.h", + "name": "ensure_valid_interp", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" }, { - "name": "dest", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "th3index_cell_to_local_ij", - "file": "meos_h3.h", + "name": "ensure_continuous", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "cell", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "th3index_local_ij_to_cell", - "file": "meos_h3.h", + "name": "ensure_same_interp", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "origin", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "coord", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "th3index_cell_area", - "file": "meos_h3.h", + "name": "ensure_same_continuous_interp", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "th3index_edge_length", - "file": "meos_h3.h", + "name": "ensure_linear_interp", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tgeogpoint_great_circle_distance", - "file": "meos_h3.h", + "name": "ensure_nonlinear_interp", + "file": "temporal.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "a", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "b", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "unit", - "cType": "const char *", - "canonical": "const char *" + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "proj_get_context", - "file": "meos_internal_geo.h", - "returnType": { - "c": "PJ_CONTEXT *", - "canonical": "struct pj_ctx *" - }, - "params": [] - }, - { - "name": "datum_geo_round", - "file": "meos_internal_geo.h", + "name": "ensure_common_dimension", + "file": "temporal.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "value", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "size", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "point_round", - "file": "meos_internal_geo.h", + "name": "ensure_temporal_isof_type", + "file": "temporal.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "stbox_set", - "file": "meos_internal_geo.h", + "name": "ensure_temporal_isof_basetype", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "hasx", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "hasz", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "geodetic", - "cType": "bool", - "canonical": "bool" - }, - { - "name": "srid", - "cType": "int32", - "canonical": "int" - }, - { - "name": "xmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "xmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymin", - "cType": "double", - "canonical": "double" - }, - { - "name": "ymax", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmin", - "cType": "double", - "canonical": "double" - }, - { - "name": "zmax", - "cType": "double", - "canonical": "double" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "gbox_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_temporal_isof_subtype", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "type", + "cType": "tempSubtype", + "canonical": "tempSubtype" } ] }, { - "name": "geo_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_same_temporal_type", + "file": "temporal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "geoarr_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tnumber_numspan", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "values", - "cType": "Datum *", - "canonical": "int ((*)(int *))()" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" } ] }, { - "name": "spatial_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tnumber_numspanset", + "file": "temporal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "spatialset_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tnumber_tbox", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "set", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" } ] }, { - "name": "stbox_set_box3d", - "file": "meos_internal_geo.h", + "name": "ensure_valid_temporal_set", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "int *", - "canonical": "int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "stbox_set_gbox", - "file": "meos_internal_geo.h", + "name": "ensure_valid_temporal_temporal", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzset_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tnumber_tnumber", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tstzspan_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_not_negative", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "i", + "cType": "int", + "canonical": "int" } ] }, { - "name": "tstzspanset_set_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_positive", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "i", + "cType": "int", + "canonical": "int" } ] }, { - "name": "stbox_expand", - "file": "meos_internal_geo.h", + "name": "not_negative_datum", + "file": "temporal.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "box2", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "inter_stbox_stbox", - "file": "meos_internal_geo.h", + "name": "ensure_not_negative_datum", + "file": "temporal.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "box1", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "box2", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tgeogpointinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "positive_datum", + "file": "temporal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tgeogpointinst_in", - "file": "meos_internal_geo.h", + "name": "ensure_positive_datum", + "file": "temporal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tgeogpointseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "ensure_valid_day_duration", + "file": "temporal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tgeogpointseq_in", - "file": "meos_internal_geo.h", + "name": "positive_duration", + "file": "temporal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tgeogpointseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "ensure_positive_duration", + "file": "temporal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tgeogpointseqset_in", - "file": "meos_internal_geo.h", + "name": "temporal_bbox_ptr", + "file": "temporal.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void *", + "canonical": "void *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeompointinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "intersection_temporal_temporal", + "file": "temporal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "mode", + "cType": "SyncMode", + "canonical": "SyncMode" + }, + { + "name": "inter1", + "cType": "Temporal **", + "canonical": "Temporal **" + }, + { + "name": "inter2", + "cType": "Temporal **", + "canonical": "Temporal **" } ] }, { - "name": "tgeompointinst_in", - "file": "meos_internal_geo.h", + "name": "mobilitydb_version", + "file": "temporal.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "char *", + "canonical": "char *" + }, + "params": [] + }, + { + "name": "mobilitydb_full_version", + "file": "temporal.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [] + }, + { + "name": "round_fn", + "file": "temporal.h", + "returnType": { + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tgeompointseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "temporal_bbox_restrict_value", + "file": "temporal.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tgeompointseq_in", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tcbuffer_cbuffer", + "file": "tcbuffer.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" } ] }, { - "name": "tgeompointseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tcbuffer_geo", + "file": "tcbuffer.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" - }, - { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tgeompointseqset_in", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tcbuffer_stbox", + "file": "tcbuffer.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" - } - ] - }, - { - "name": "tgeographyinst_from_mfjson", - "file": "meos_internal_geo.h", - "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" - }, - "params": [ - { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "tgeographyinst_in", - "file": "meos_internal_geo.h", + "name": "ensure_valid_tcbuffer_tcbuffer", + "file": "tcbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" } ] }, { - "name": "tgeographyseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_intersection_value", + "file": "tcbuffer.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tgeographyseq_in", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_intersection", + "file": "tcbuffer.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tgeographyseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_dwithin_turnpt", + "file": "tcbuffer.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tgeographyseqset_in", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_tdwithin_turnpt", + "file": "tcbuffer.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tgeometryinst_from_mfjson", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_distance_turnpt", + "file": "tcbuffer.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "tgeometryinst_in", - "file": "meos_internal_geo.h", + "name": "cbuffer_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "tgeometryseq_from_mfjson", - "file": "meos_internal_geo.h", + "name": "cbufferarr_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" }, { - "name": "srid", - "cType": "int32_t", + "name": "count", + "cType": "int", "canonical": "int" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "tgeometryseq_in", - "file": "meos_internal_geo.h", + "name": "cbuffer_timestamptz_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "tgeometryseqset_from_mfjson", - "file": "meos_internal_geo.h", + "name": "cbuffer_tstzspan_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "mfjson", - "cType": "json_object *", - "canonical": "struct json_object *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "tgeometryseqset_in", - "file": "meos_internal_geo.h", + "name": "tcbufferinst_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "tspatial_set_stbox", - "file": "meos_internal_geo.h", + "name": "tcbufferinstarr_set_stbox", + "file": "tcbuffer_boxops.h", "returnType": { "c": "void", "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "result", + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", "cType": "STBox *", - "canonical": "struct STBox *" + "canonical": "STBox *" } ] }, { - "name": "tspatialseq_set_stbox", - "file": "meos_internal_geo.h", + "name": "tcbufferseq_expand_stbox", + "file": "tcbuffer_boxops.h", "returnType": { "c": "void", "canonical": "void" @@ -52702,63 +52667,93 @@ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "tspatialseqset_set_stbox", - "file": "meos_internal_geo.h", + "name": "tcbufferinst_traversed_area", + "file": "tcbuffer_spatialfuncs.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "box", - "cType": "STBox *", - "canonical": "struct STBox *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "tgeo_restrict_elevation", - "file": "meos_internal_geo.h", + "name": "tcbufferseq_traversed_area", + "file": "tcbuffer_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcbufferseqset_traversed_area", + "file": "tcbuffer_spatialfuncs.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "atfunc", + "name": "unary_union", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeo_restrict_geom", - "file": "meos_internal_geo.h", + "name": "tcbuffersegm_traversed_area", + "file": "tcbuffer_spatialfuncs.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tcbuffer_restrict_cbuffer", + "file": "tcbuffer_spatialfuncs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -52770,9 +52765,9 @@ "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { "name": "atfunc", @@ -52782,8 +52777,8 @@ ] }, { - "name": "tgeo_restrict_stbox", - "file": "meos_internal_geo.h", + "name": "tcbuffer_restrict_stbox", + "file": "tcbuffer_spatialfuncs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -52797,7 +52792,7 @@ { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { "name": "border_inc", @@ -52812,17 +52807,17 @@ ] }, { - "name": "tgeoinst_restrict_geom", - "file": "meos_internal_geo.h", + "name": "tcbuffer_restrict_geom", + "file": "tcbuffer_spatialfuncs.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "gs", @@ -52837,47 +52832,42 @@ ] }, { - "name": "tgeoinst_restrict_stbox", - "file": "meos_internal_geo.h", + "name": "ea_contains_geo_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeoseq_restrict_geom", - "file": "meos_internal_geo.h", + "name": "ea_contains_tcbuffer_geo", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "gs", @@ -52885,455 +52875,565 @@ "canonical": "const int *" }, { - "name": "atfunc", + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeoseq_restrict_stbox", - "file": "meos_internal_geo.h", + "name": "ea_contains_tcbuffer_cbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "atfunc", + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeoseqset_restrict_geom", - "file": "meos_internal_geo.h", + "name": "ea_contains_cbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeoseqset_restrict_stbox", - "file": "meos_internal_geo.h", + "name": "ea_covers_geo_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "spatial_srid", - "file": "meos_internal_geo.h", + "name": "ea_covers_tcbuffer_geo", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "int32_t", + "c": "int", "canonical": "int" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "spatial_set_srid", - "file": "meos_internal_geo.h", + "name": "ea_covers_tcbuffer_cbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "d", - "cType": "Datum", - "canonical": "int ((int *))()" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "basetype", - "cType": "MeosType", - "canonical": "MeosType" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tspatialinst_srid", - "file": "meos_internal_geo.h", + "name": "ea_covers_cbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseq_azimuth", - "file": "meos_internal_geo.h", + "name": "ea_covers_tcbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseq_cumulative_length", - "file": "meos_internal_geo.h", + "name": "ea_disjoint_tcbuffer_geo", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "prevlength", - "cType": "double", - "canonical": "double" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseq_is_simple", - "file": "meos_internal_geo.h", + "name": "ea_disjoint_geo_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseq_length", - "file": "meos_internal_geo.h", + "name": "ea_disjoint_tcbuffer_cbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseq_linear_trajectory", - "file": "meos_internal_geo.h", + "name": "ea_disjoint_cbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "unary_union", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeoseq_stboxes", - "file": "meos_internal_geo.h", + "name": "ea_disjoint_tcbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tgeoseq_split_n_stboxes", - "file": "meos_internal_geo.h", + "name": "ea_intersects_tcbuffer_geo", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "max_count", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseqset_azimuth", - "file": "meos_internal_geo.h", + "name": "ea_intersects_geo_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseqset_cumulative_length", - "file": "meos_internal_geo.h", + "name": "ea_intersects_tcbuffer_cbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseqset_is_simple", - "file": "meos_internal_geo.h", + "name": "ea_intersects_cbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpointseqset_length", - "file": "meos_internal_geo.h", + "name": "ea_intersects_tcbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tgeoseqset_stboxes", - "file": "meos_internal_geo.h", + "name": "ea_touches_tcbuffer_geo", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tgeoseqset_split_n_stboxes", - "file": "meos_internal_geo.h", + "name": "ea_touches_geo_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "max_count", - "cType": "int", - "canonical": "int" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tgeominst_tgeoginst", - "file": "meos_internal_geo.h", + "name": "ea_touches_tcbuffer_cbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "oper", + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeomseq_tgeogseq", - "file": "meos_internal_geo.h", + "name": "ea_touches_cbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" }, { - "name": "oper", + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeomseqset_tgeogseqset", - "file": "meos_internal_geo.h", + "name": "ea_touches_tcbuffer_tcbuffer", + "file": "tcbuffer_spatialrels.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "oper", + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeom_tgeog", - "file": "meos_internal_geo.h", + "name": "tinterrel_tcbuffer_cbuffer", + "file": "tcbuffer_tempspatialrels.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -53345,15 +53445,20 @@ "canonical": "const Temporal *" }, { - "name": "oper", + "name": "cb", + "cType": "const Cbuffer *", + "canonical": "const struct Cbuffer *" + }, + { + "name": "tinter", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tgeo_tpoint", - "file": "meos_internal_geo.h", + "name": "tinterrel_tcbuffer_geo", + "file": "tcbuffer_tempspatialrels.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -53365,105 +53470,160 @@ "canonical": "const Temporal *" }, { - "name": "oper", + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tinter", "cType": "bool", "canonical": "bool" } ] }, { - "name": "tspatialinst_set_srid", - "file": "meos_internal_geo.h", + "name": "clipper2_clip_poly_poly", + "file": "clip_clipper2.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "inst", - "cType": "TInstant *", - "canonical": "struct TInstant *" + "name": "subj", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "srid", - "cType": "int32_t", + "name": "clip", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "op", + "cType": "int", "canonical": "int" } ] }, { - "name": "tpointseq_make_simple", - "file": "meos_internal_geo.h", + "name": "clipper2_traj_poly_periods", + "file": "clip_clipper2.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "Span *", + "canonical": "Span *" }, "params": [ { "name": "seq", "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "canonical": "const TSequence *" }, { - "name": "count", + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "out_count", "cType": "int *", "canonical": "int *" } ] }, { - "name": "tspatialseq_set_srid", - "file": "meos_internal_geo.h", + "name": "clip_poly_poly", + "file": "geo_poly_clip.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "seq", - "cType": "TSequence *", - "canonical": "struct TSequence *" + "name": "subj", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "srid", + "name": "clip", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "operation", + "cType": "ClipOper", + "canonical": "ClipOper" + } + ] + }, + { + "name": "lwproj_lookup", + "file": "meos_transform.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "srid_from", "cType": "int32_t", "canonical": "int" + }, + { + "name": "srid_to", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "pj", + "cType": "int **", + "canonical": "int **" } ] }, { - "name": "tpointseqset_make_simple", - "file": "meos_internal_geo.h", + "name": "spheroid_init_from_srid", + "file": "meos_transform.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" }, { - "name": "count", + "name": "s", "cType": "int *", "canonical": "int *" } ] }, { - "name": "tspatialseqset_set_srid", - "file": "meos_internal_geo.h", + "name": "srid_check_latlong", + "file": "meos_transform.h", "returnType": { "c": "void", "canonical": "void" }, "params": [ { - "name": "ss", - "cType": "TSequenceSet *", - "canonical": "struct TSequenceSet *" - }, + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "srid_is_latlong", + "file": "meos_transform.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ { "name": "srid", "cType": "int32_t", @@ -53472,1657 +53632,1872 @@ ] }, { - "name": "tpointseq_twcentroid", - "file": "meos_internal_geo.h", + "name": "geom_serialize", + "file": "postgis_funcs.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "lwgeom", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpointseqset_twcentroid", - "file": "meos_internal_geo.h", + "name": "geog_serialize", + "file": "postgis_funcs.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "ss", - "cType": "const TSequenceSet *", - "canonical": "const struct TSequenceSet *" + "name": "lwgeom", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "npoint_as_ewkt", - "file": "meos_npoint.h", + "name": "meos_postgis_valid_typmod", + "file": "postgis_funcs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "int *", + "canonical": "int *" }, { - "name": "maxdd", - "cType": "int", + "name": "typmod", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "npoint_as_hexwkb", - "file": "meos_npoint.h", + "name": "geo_as_wkt", + "file": "postgis_funcs.h", "returnType": { "c": "char *", "canonical": "char *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "precision", + "cType": "int", + "canonical": "int" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "extended", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "npoint_as_text", - "file": "meos_npoint.h", + "name": "box2d_to_lwgeom", + "file": "postgis_funcs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "box", + "cType": "int *", + "canonical": "int *" }, { - "name": "maxdd", - "cType": "int", + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "npoint_as_wkb", - "file": "meos_npoint.h", + "name": "box3d_to_lwgeom", + "file": "postgis_funcs.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" - }, - { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "box", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "npoint_from_hexwkb", - "file": "meos_npoint.h", + "name": "MEOS_POSTGIS2GEOS", + "file": "postgis_funcs.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "GEOSGeometry *", + "canonical": "struct GEOSGeom_t *" }, "params": [ { - "name": "hexwkb", - "cType": "const char *", - "canonical": "const char *" + "name": "pglwgeom", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "npoint_from_wkb", - "file": "meos_npoint.h", + "name": "MEOS_GEOS2POSTGIS", + "file": "postgis_funcs.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "geom", + "cType": "GEOSGeom", + "canonical": "struct GEOSGeom_t *" }, { - "name": "size", - "cType": "size_t", - "canonical": "unsigned long" + "name": "want3d", + "cType": "char", + "canonical": "char" } ] }, { - "name": "npoint_in", - "file": "meos_npoint.h", + "name": "geom_spatialrel", + "file": "postgis_funcs.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "rel", + "cType": "spatialRel", + "canonical": "spatialRel" } ] }, { - "name": "npoint_out", - "file": "meos_npoint.h", + "name": "lwgeom_line_interpolate_point", + "file": "postgis_funcs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "geom", + "cType": "int *", + "canonical": "int *" }, { - "name": "maxdd", - "cType": "int", + "name": "fraction", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", "canonical": "int" + }, + { + "name": "repeat", + "cType": "char", + "canonical": "char" } ] }, { - "name": "nsegment_in", - "file": "meos_npoint.h", + "name": "point_get_coords", + "file": "stbox.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "x", + "cType": "double *", + "canonical": "double *" + }, + { + "name": "y", + "cType": "double *", + "canonical": "double *" + }, + { + "name": "z", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "nsegment_out", - "file": "meos_npoint.h", + "name": "tstzset_stbox_slice", + "file": "stbox.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "tsdatum", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "npoint_make", - "file": "meos_npoint.h", + "name": "tstzspanset_stbox_slice", + "file": "stbox.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "psdatum", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "pos", - "cType": "double", - "canonical": "double" + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "nsegment_make", - "file": "meos_npoint.h", + "name": "stbox_index_leaf_consistent", + "file": "stbox_index.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "key", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "pos1", - "cType": "double", - "canonical": "double" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "pos2", - "cType": "double", - "canonical": "double" + "name": "strategy", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geompoint_to_npoint", - "file": "meos_npoint.h", + "name": "stbox_gist_inner_consistent", + "file": "stbox_index.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "key", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" } ] }, { - "name": "geom_to_nsegment", - "file": "meos_npoint.h", + "name": "stbox_index_recheck", + "file": "stbox_index.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "strategy", + "cType": "int", + "canonical": "int" } ] }, { - "name": "npoint_to_geompoint", - "file": "meos_npoint.h", + "name": "stboxnode_copy", + "file": "stbox_index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "STboxNode *", + "canonical": "STboxNode *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "box", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" } ] }, { - "name": "npoint_to_nsegment", - "file": "meos_npoint.h", + "name": "getQuadrant8D", + "file": "stbox_index.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "uint8", + "canonical": "unsigned char" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "centroid", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "inBox", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_to_stbox", - "file": "meos_npoint.h", + "name": "stboxnode_init", + "file": "stbox_index.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "centroid", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "nodebox", + "cType": "STboxNode *", + "canonical": "STboxNode *" } ] }, { - "name": "nsegment_to_geom", - "file": "meos_npoint.h", + "name": "stboxnode_quadtree_next", + "file": "stbox_index.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "centroid", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "quadrant", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "next_nodebox", + "cType": "STboxNode *", + "canonical": "STboxNode *" } ] }, { - "name": "nsegment_to_stbox", - "file": "meos_npoint.h", + "name": "stboxnode_kdtree_next", + "file": "stbox_index.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "centroid", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "node", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" + }, + { + "name": "next_nodebox", + "cType": "STboxNode *", + "canonical": "STboxNode *" } ] }, { - "name": "npoint_hash", - "file": "meos_npoint.h", + "name": "overlap8D", + "file": "stbox_index.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_hash_extended", - "file": "meos_npoint.h", + "name": "overlapKD", + "file": "stbox_index.h", "returnType": { - "c": "uint64", - "canonical": "unsigned long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "seed", - "cType": "uint64", - "canonical": "unsigned long" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" } ] }, { - "name": "npoint_position", - "file": "meos_npoint.h", + "name": "contain8D", + "file": "stbox_index.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_route", - "file": "meos_npoint.h", + "name": "containKD", + "file": "stbox_index.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" } ] }, { - "name": "nsegment_end_position", - "file": "meos_npoint.h", + "name": "left8D", + "file": "stbox_index.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "nsegment_route", - "file": "meos_npoint.h", + "name": "overLeft8D", + "file": "stbox_index.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "nsegment_start_position", - "file": "meos_npoint.h", + "name": "right8D", + "file": "stbox_index.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "route_exists", - "file": "meos_npoint.h", + "name": "overRight8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "route_geom", - "file": "meos_npoint.h", + "name": "below8D", + "file": "stbox_index.h", "returnType": { - "c": "const int *", - "canonical": "const int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "route_length", - "file": "meos_npoint.h", + "name": "overBelow8D", + "file": "stbox_index.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "rid", - "cType": "int64", - "canonical": "long" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" + }, + { + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_round", - "file": "meos_npoint.h", + "name": "above8D", + "file": "stbox_index.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "nsegment_round", - "file": "meos_npoint.h", + "name": "overAbove8D", + "file": "stbox_index.h", "returnType": { - "c": "Nsegment *", - "canonical": "Nsegment *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" - } - ] - }, - { - "name": "get_srid_ways", - "file": "meos_npoint.h", - "returnType": { - "c": "int32_t", - "canonical": "int" - }, - "params": [] - }, - { - "name": "npoint_srid", - "file": "meos_npoint.h", - "returnType": { - "c": "int32_t", - "canonical": "int" - }, - "params": [ - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - } - ] - }, - { - "name": "nsegment_srid", - "file": "meos_npoint.h", - "returnType": { - "c": "int32_t", - "canonical": "int" - }, - "params": [ - { - "name": "ns", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_timestamptz_to_stbox", - "file": "meos_npoint.h", + "name": "front8D", + "file": "stbox_index.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_tstzspan_to_stbox", - "file": "meos_npoint.h", + "name": "overFront8D", + "file": "stbox_index.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_cmp", - "file": "meos_npoint.h", + "name": "back8D", + "file": "stbox_index.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_eq", - "file": "meos_npoint.h", + "name": "overBack8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_ge", - "file": "meos_npoint.h", + "name": "before8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_gt", - "file": "meos_npoint.h", + "name": "overBefore8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_le", - "file": "meos_npoint.h", + "name": "after8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_lt", - "file": "meos_npoint.h", + "name": "overAfter8D", + "file": "stbox_index.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npoint_ne", - "file": "meos_npoint.h", + "name": "distance_stbox_nodebox", + "file": "stbox_index.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "query", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "nodebox", + "cType": "const STboxNode *", + "canonical": "const STboxNode *" } ] }, { - "name": "npoint_same", - "file": "meos_npoint.h", + "name": "tspatial_spgist_get_stbox", + "file": "stbox_index.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np1", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "np2", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" } ] }, { - "name": "nsegment_cmp", - "file": "meos_npoint.h", + "name": "mobilitydb_init", + "file": "tgeo.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, - "params": [ - { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - }, - { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - } - ] + "params": [] }, { - "name": "nsegment_eq", - "file": "meos_npoint.h", + "name": "geo_stbox", + "file": "tgeo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "STBox *", + "canonical": "STBox *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - }, - { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nsegment_ge", - "file": "meos_npoint.h", + "name": "stbox_geo", + "file": "tgeo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" - }, - { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "nsegment_gt", - "file": "meos_npoint.h", + "name": "tcomp_geo_tgeo", + "file": "tgeo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" } ] }, { - "name": "nsegment_le", - "file": "meos_npoint.h", + "name": "tcomp_tgeo_geo", + "file": "tgeo.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" } ] }, { - "name": "nsegment_lt", - "file": "meos_npoint.h", + "name": "ensure_geoaggstate", + "file": "tgeo_aggfuncs.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "state", + "cType": "const SkipList *", + "canonical": "const struct SkipList *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nsegment_ne", - "file": "meos_npoint.h", + "name": "ensure_geoaggstate_state", + "file": "tgeo_aggfuncs.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "ns1", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "state1", + "cType": "const SkipList *", + "canonical": "const struct SkipList *" }, { - "name": "ns2", - "cType": "const Nsegment *", - "canonical": "const Nsegment *" + "name": "state2", + "cType": "const SkipList *", + "canonical": "const struct SkipList *" } ] }, { - "name": "npointset_in", - "file": "meos_npoint.h", + "name": "tpoint_transform_tcentroid", + "file": "tgeo_aggfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal **", + "canonical": "Temporal **" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "npointset_out", - "file": "meos_npoint.h", + "name": "tpointinst_tcentroid_finalfn", + "file": "tgeo_aggfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "maxdd", + "name": "count", "cType": "int", "canonical": "int" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npointset_make", - "file": "meos_npoint.h", + "name": "tpointseq_tcentroid_finalfn", + "file": "tgeo_aggfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "values", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { "name": "count", "cType": "int", "canonical": "int" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "npoint_to_set", - "file": "meos_npoint.h", + "name": "point3d_min_dist", + "file": "tgeo_distance.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "p1", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "p2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "p3", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "p4", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "fraction", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "npointset_end_value", - "file": "meos_npoint.h", + "name": "stbox_spatial_distance", + "file": "tgeo_distance.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "npointset_routes", - "file": "meos_npoint.h", + "name": "tgeompointsegm_distance_turnpt", + "file": "tgeo_distance.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "npointset_start_value", - "file": "meos_npoint.h", + "name": "tgeogpointsegm_distance_turnpt", + "file": "tgeo_distance.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "npointset_value_n", - "file": "meos_npoint.h", + "name": "tinstant_distance", + "file": "tgeo_distance.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "result", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" } ] }, { - "name": "npointset_values", - "file": "meos_npoint.h", + "name": "tpointseq_at_geom", + "file": "tgeo_restrict.h", "returnType": { - "c": "Npoint **", - "canonical": "Npoint **" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "contained_npoint_set", - "file": "meos_npoint.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "contains_set_npoint", - "file": "meos_npoint.h", + "name": "tpointseq_interperiods", + "file": "tgeo_restrict.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Span *", + "canonical": "Span *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "intersection_npoint_set", - "file": "meos_npoint.h", + "name": "datum_point4d", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "p", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "intersection_set_npoint", - "file": "meos_npoint.h", + "name": "geopoint_cmp", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "minus_npoint_set", - "file": "meos_npoint.h", + "name": "geopoint_eq", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "minus_set_npoint", - "file": "meos_npoint.h", + "name": "geopoint_same", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "npoint_union_transfn", - "file": "meos_npoint.h", + "name": "datum_point_eq", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "union_npoint_set", - "file": "meos_npoint.h", + "name": "datum_point_same", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "union_set_npoint", - "file": "meos_npoint.h", + "name": "datum2_point_eq", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_in", - "file": "meos_npoint.h", + "name": "datum2_point_ne", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_from_mfjson", - "file": "meos_npoint.h", + "name": "datum2_point_same", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "mfjson", - "cType": "const char *", - "canonical": "const char *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_out", - "file": "meos_npoint.h", + "name": "datum2_point_nsame", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "point1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "point2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpointinst_make", - "file": "meos_npoint.h", + "name": "datum2_geom_centroid", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "geo", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_from_base_temp", - "file": "meos_npoint.h", + "name": "datum2_geog_centroid", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geo", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpointseq_from_base_tstzset", - "file": "meos_npoint.h", + "name": "geo_extract_elements", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tnpointseq_from_base_tstzspan", - "file": "meos_npoint.h", + "name": "geo_serialize", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "geom", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tnpointseqset_from_base_tstzspanset", - "file": "meos_npoint.h", + "name": "geo_distance_fn", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" - }, - { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tgeompoint_to_tnpoint", - "file": "meos_npoint.h", + "name": "point_distance_fn", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_to_tgeompoint", - "file": "meos_npoint.h", + "name": "datum_geom_distance2d", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_cumulative_length", - "file": "meos_npoint.h", + "name": "datum_geom_distance3d", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_end_value", - "file": "meos_npoint.h", + "name": "datum_geog_distance", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geog1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geog2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_length", - "file": "meos_npoint.h", + "name": "datum_pt_distance2d", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_positions", - "file": "meos_npoint.h", + "name": "datum_pt_distance3d", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Nsegment **", - "canonical": "Nsegment **" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_route", - "file": "meos_npoint.h", + "name": "spatial_flags", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int64", - "canonical": "long" + "c": "int16", + "canonical": "short" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tnpoint_routes", - "file": "meos_npoint.h", + "name": "ensure_srid_is_latlong", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tnpoint_speed", - "file": "meos_npoint.h", + "name": "ensure_spatial_validity", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "tnpoint_start_value", - "file": "meos_npoint.h", + "name": "ensure_not_geodetic", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Npoint *", - "canonical": "Npoint *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_trajectory", - "file": "meos_npoint.h", + "name": "ensure_same_geodetic", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags1", + "cType": "int16", + "canonical": "short" + }, + { + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_value_at_timestamptz", - "file": "meos_npoint.h", + "name": "ensure_same_geodetic_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "value", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tnpoint_value_n", - "file": "meos_npoint.h", + "name": "ensure_same_geodetic_tspatial_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { "c": "bool", "canonical": "bool" @@ -55134,23 +55509,18 @@ "canonical": "const Temporal *" }, { - "name": "n", - "cType": "int", - "canonical": "int" - }, - { - "name": "result", - "cType": "Npoint **", - "canonical": "Npoint **" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tnpoint_values", - "file": "meos_npoint.h", + "name": "ensure_same_geodetic_tspatial_base", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Npoint **", - "canonical": "Npoint **" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55159,138 +55529,133 @@ "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "base", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tnpoint_twcentroid", - "file": "meos_npoint.h", + "name": "ensure_srid_known", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tnpoint_at_geom", - "file": "meos_npoint.h", + "name": "ensure_same_srid", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "srid1", + "cType": "int32_t", + "canonical": "int" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "srid2", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "tnpoint_at_npoint", - "file": "meos_npoint.h", + "name": "ensure_same_dimensionality", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_at_npointset", - "file": "meos_npoint.h", + "name": "same_spatial_dimensionality", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_at_stbox", - "file": "meos_npoint.h", + "name": "ensure_same_spatial_dimensionality", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "tnpoint_minus_geom", - "file": "meos_npoint.h", + "name": "ensure_same_dimensionality_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "gs", + "name": "gs2", "cType": "const int *", "canonical": "const int *" } ] }, { - "name": "tnpoint_minus_npoint", - "file": "meos_npoint.h", + "name": "same_dimensionality_tspatial_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55299,18 +55664,18 @@ "canonical": "const Temporal *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tnpoint_minus_npointset", - "file": "meos_npoint.h", + "name": "ensure_same_dimensionality_tspatial_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55319,70 +55684,60 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tnpoint_minus_stbox", - "file": "meos_npoint.h", + "name": "ensure_same_spatial_dimensionality_stbox_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "box", "cType": "const STBox *", - "canonical": "const struct STBox *" + "canonical": "const STBox *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tdistance_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_same_geodetic_stbox_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "tdistance_tnpoint_geo", - "file": "meos_npoint.h", + "name": "ensure_has_Z_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "gs", "cType": "const int *", @@ -55391,38 +55746,28 @@ ] }, { - "name": "tdistance_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_has_not_Z_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nad_tnpoint_geo", - "file": "meos_npoint.h", + "name": "ensure_has_M_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "gs", "cType": "const int *", @@ -55431,78 +55776,73 @@ ] }, { - "name": "nad_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_has_not_M_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nad_tnpoint_stbox", - "file": "meos_npoint.h", + "name": "ensure_not_geodetic_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nad_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_point_type", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nai_tnpoint_geo", - "file": "meos_npoint.h", + "name": "ensure_mline_type", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "circle_type", + "file": "tgeo_spatialfuncs.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { "name": "gs", "cType": "const int *", @@ -55511,51 +55851,61 @@ ] }, { - "name": "nai_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_circle_type", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ensure_not_empty", + "file": "tgeo_spatialfuncs.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "nai_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_stbox_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "shortestline_tnpoint_geo", - "file": "meos_npoint.h", + "name": "ensure_valid_tspatial_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55571,11 +55921,11 @@ ] }, { - "name": "shortestline_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tspatial_base", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55584,18 +55934,18 @@ "canonical": "const Temporal *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "base", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "shortestline_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tspatial_tspatial", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55611,111 +55961,111 @@ ] }, { - "name": "tnpoint_tcentroid_transfn", - "file": "meos_npoint.h", + "name": "ensure_valid_spatial_stbox_stbox", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "SkipList *", - "canonical": "struct SkipList *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "state", - "cType": "SkipList *", - "canonical": "struct SkipList *" + "name": "box1", + "cType": "const STBox *", + "canonical": "const STBox *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "box2", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "always_eq_npoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tgeo_stbox", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ - { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" } ] }, { - "name": "always_eq_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_valid_geo_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_eq_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tgeo_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_ne_npoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tgeo_tgeo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "temp", + "name": "temp2", "cType": "const Temporal *", "canonical": "const Temporal *" } ] }, { - "name": "always_ne_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tpoint_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55724,18 +56074,18 @@ "canonical": "const Temporal *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "always_ne_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "ensure_valid_tpoint_tpoint", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { @@ -55751,31 +56101,26 @@ ] }, { - "name": "ever_eq_npoint_tnpoint", - "file": "meos_npoint.h", + "name": "mline_type", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" } ] }, { - "name": "ever_eq_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "tpoint_get_coord", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { @@ -55784,1519 +56129,26655 @@ "canonical": "const Temporal *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "coord", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ever_eq_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "eacomp_tgeo_geo", + "file": "tgeo_spatialfuncs.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", + "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ever_ne_npoint_tnpoint", - "file": "meos_npoint.h", + "name": "closest_point2d_on_segment_ratio", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "p", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "A", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "B", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "closest", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_ne_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "closest_point3dz_on_segment_ratio", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "p", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "A", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "B", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "closest", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "ever_ne_tnpoint_tnpoint", - "file": "meos_npoint.h", + "name": "closest_point_on_segment_sphere", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "p", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "A", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "B", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "closest", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "dist", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "teq_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "interpolate_point4d_spheroid", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, + "c": "void", + "canonical": "void" + }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "p1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "p2", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "p", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "s", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "f", + "cType": "double", + "canonical": "double" } ] }, { - "name": "tne_tnpoint_npoint", - "file": "meos_npoint.h", + "name": "geopoint_make", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x", + "cType": "double", + "canonical": "double" }, { - "name": "np", - "cType": "const Npoint *", - "canonical": "const Npoint *" + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "pose_as_ewkt", - "file": "meos_pose.h", + "name": "lwcircle_make", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "x", + "cType": "double", + "canonical": "double" }, { - "name": "maxdd", - "cType": "int", + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "radius", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", "canonical": "int" } ] }, { - "name": "pose_as_hexwkb", - "file": "meos_pose.h", + "name": "geocircle_make", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "x", + "cType": "double", + "canonical": "double" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "y", + "cType": "double", + "canonical": "double" }, { - "name": "size", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "radius", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" } ] }, { - "name": "pose_as_text", - "file": "meos_pose.h", + "name": "pointsegm_interpolate", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "pose_as_wkb", - "file": "meos_pose.h", + "name": "pointsegm_locate", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "uint8_t *", - "canonical": "unsigned char *" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "variant", - "cType": "uint8_t", - "canonical": "unsigned char" + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "size_out", - "cType": "size_t *", - "canonical": "unsigned long *" + "name": "point", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "pose_from_wkb", - "file": "meos_pose.h", + "name": "tgeompointsegm_intersection", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "wkb", - "cType": "const uint8_t *", - "canonical": "const unsigned char *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "size", - "cType": "size_t", + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "pose_from_hexwkb", - "file": "meos_pose.h", + "name": "tgeogpointsegm_intersection", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "hexwkb", - "cType": "const char *", - "canonical": "const char *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "pose_in", - "file": "meos_pose.h", + "name": "geopoint_collinear", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "value1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value3", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_out", - "file": "meos_pose.h", + "name": "lwpointarr_remove_duplicates", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int **", + "canonical": "int **" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "points", + "cType": "int **", + "canonical": "int **" }, { - "name": "maxdd", + "name": "count", "cType": "int", "canonical": "int" - } - ] - }, - { - "name": "pose_from_geopose", - "file": "meos_pose.h", - "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" - }, - "params": [ + }, { - "name": "json", - "cType": "const char *", - "canonical": "const char *" + "name": "newcount", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "pose_as_geopose", - "file": "meos_pose.h", + "name": "lwpointarr_make_trajectory", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "points", + "cType": "int **", + "canonical": "int **" }, { - "name": "conformance", + "name": "count", "cType": "int", "canonical": "int" }, { - "name": "precision", - "cType": "int", - "canonical": "int" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "tpose_from_geopose", - "file": "meos_pose.h", + "name": "lwline_make", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "json", - "cType": "const char *", - "canonical": "const char *" + "name": "value1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "tpose_as_geopose", - "file": "meos_pose.h", + "name": "lwcoll_from_points_lines", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int *", + "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "points", + "cType": "int **", + "canonical": "int **" }, { - "name": "conformance", + "name": "lines", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "npoints", "cType": "int", "canonical": "int" }, { - "name": "precision", + "name": "nlines", "cType": "int", "canonical": "int" } ] }, { - "name": "pose_apply_geo", - "file": "meos_pose.h", + "name": "tpointseq_stops_iter", + "file": "tgeo_spatialfuncs.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "body", - "cType": "const int *", - "canonical": "const int *" + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "mintunits", + "cType": "int64", + "canonical": "long" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "tpose_apply_geo", - "file": "meos_pose.h", + "name": "datum_geom_contains", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "body", - "cType": "const int *", - "canonical": "const int *" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_copy", - "file": "meos_pose.h", + "name": "datum_geom_covers", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_make_2d", - "file": "meos_pose.h", + "name": "datum_geom_disjoint2d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "theta", - "cType": "double", - "canonical": "double" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_make_3d", - "file": "meos_pose.h", + "name": "datum_geom_disjoint3d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "x", - "cType": "double", - "canonical": "double" - }, - { - "name": "y", - "cType": "double", - "canonical": "double" - }, - { - "name": "z", - "cType": "double", - "canonical": "double" - }, - { - "name": "W", - "cType": "double", - "canonical": "double" - }, - { - "name": "X", - "cType": "double", - "canonical": "double" - }, - { - "name": "Y", - "cType": "double", - "canonical": "double" - }, - { - "name": "Z", - "cType": "double", - "canonical": "double" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_make_point2d", - "file": "meos_pose.h", + "name": "datum_geog_disjoint", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "geog1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "theta", - "cType": "double", - "canonical": "double" + "name": "geog2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_make_point3d", - "file": "meos_pose.h", + "name": "datum_geom_intersects2d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "W", - "cType": "double", - "canonical": "double" - }, - { - "name": "X", - "cType": "double", - "canonical": "double" - }, - { - "name": "Y", - "cType": "double", - "canonical": "double" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "Z", - "cType": "double", - "canonical": "double" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_to_point", - "file": "meos_pose.h", + "name": "datum_geom_intersects3d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - } - ] - }, - { - "name": "pose_to_stbox", - "file": "meos_pose.h", - "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" - }, - "params": [ + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_hash", - "file": "meos_pose.h", + "name": "datum_geog_intersects", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "uint32", - "canonical": "unsigned int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geog1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geog2", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_hash_extended", - "file": "meos_pose.h", + "name": "datum_geom_touches", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "uint64", + "c": "Datum", "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "seed", - "cType": "uint64", + "name": "geom2", + "cType": "Datum", "canonical": "unsigned long" } ] }, { - "name": "pose_orientation", - "file": "meos_pose.h", + "name": "datum_geom_dwithin2d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double *", - "canonical": "double *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_rotation", - "file": "meos_pose.h", + "name": "datum_geom_dwithin3d", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geom1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geom2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_yaw", - "file": "meos_pose.h", + "name": "datum_geog_dwithin", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geog1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geog2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_pitch", - "file": "meos_pose.h", + "name": "datum_geom_relate_pattern", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "geog1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "geog2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "p", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "pose_roll", - "file": "meos_pose.h", + "name": "geo_disjoint_fn", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "flags1", + "cType": "int16", + "canonical": "short" + }, + { + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "pose_angular_distance", - "file": "meos_pose.h", + "name": "geo_disjoint_fn_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "flags2", + "cType": "uint8_t", + "canonical": "unsigned char" } ] }, { - "name": "pose_normalise", - "file": "meos_pose.h", + "name": "geo_intersects_fn", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "flags1", + "cType": "int16", + "canonical": "short" + }, + { + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "pose_round", - "file": "meos_pose.h", + "name": "geo_intersects_fn_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "flags2", + "cType": "uint8_t", + "canonical": "unsigned char" } ] }, { - "name": "posearr_round", - "file": "meos_pose.h", + "name": "geo_dwithin_fn", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "datum_func3", + "canonical": "unsigned long (*)(unsigned long, unsigned long, unsigned long)" }, "params": [ { - "name": "posearr", - "cType": "const Pose **", - "canonical": "const struct Pose **" - }, - { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "flags2", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "pose_set_srid", - "file": "meos_pose.h", + "name": "geo_dwithin_fn_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "void", - "canonical": "void" + "c": "datum_func3", + "canonical": "unsigned long (*)(unsigned long, unsigned long, unsigned long)" }, "params": [ { - "name": "pose", - "cType": "Pose *", - "canonical": "struct Pose *" + "name": "flags1", + "cType": "int16", + "canonical": "short" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "flags2", + "cType": "uint8_t", + "canonical": "unsigned char" } ] }, { - "name": "pose_srid", - "file": "meos_pose.h", + "name": "tpointsegm_tdwithin_turnpt", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "int32_t", + "c": "int", "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - } - ] - }, - { - "name": "pose_transform", - "file": "meos_pose.h", - "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" - }, - "params": [ + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "srid", - "cType": "int32_t", - "canonical": "int" + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "pose_transform_pipeline", - "file": "meos_pose.h", + "name": "spatialrel_geo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs1", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "pipelinestr", - "cType": "const char *", - "canonical": "const char *" + "name": "gs2", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "srid", - "cType": "int32_t", + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "varfunc", + "canonical": "unsigned long (*)(unsigned long, ...)" + }, + { + "name": "numparam", + "cType": "int", "canonical": "int" }, { - "name": "is_forward", + "name": "invert", "cType": "bool", "canonical": "bool" } ] }, { - "name": "pose_tstzspan_to_stbox", - "file": "meos_pose.h", + "name": "spatialrel_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "varfunc", + "canonical": "unsigned long (*)(unsigned long, ...)" + }, + { + "name": "numparam", + "cType": "int", + "canonical": "int" } ] }, { - "name": "pose_timestamptz_to_stbox", - "file": "meos_pose.h", + "name": "ea_contains_geo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "distance_pose_geo", - "file": "meos_pose.h", + "name": "ea_contains_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { "name": "gs", "cType": "const int *", "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "distance_pose_pose", - "file": "meos_pose.h", + "name": "ea_contains_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "distance_pose_stbox", - "file": "meos_pose.h", + "name": "ea_covers_geo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_cmp", - "file": "meos_pose.h", + "name": "ea_covers_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_eq", - "file": "meos_pose.h", + "name": "ea_covers_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_ge", - "file": "meos_pose.h", + "name": "ea_disjoint_geo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_gt", - "file": "meos_pose.h", + "name": "ea_disjoint_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_le", - "file": "meos_pose.h", + "name": "ea_disjoint_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_lt", - "file": "meos_pose.h", + "name": "ea_intersects_geo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_ne", - "file": "meos_pose.h", + "name": "ea_intersects_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_nsame", - "file": "meos_pose.h", + "name": "ea_intersects_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_same", - "file": "meos_pose.h", + "name": "ea_touches_tpoint_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose1", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose2", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_in", - "file": "meos_pose.h", + "name": "ea_touches_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_out", - "file": "meos_pose.h", + "name": "ea_touches_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_make", - "file": "meos_pose.h", + "name": "ea_dwithin_tgeo_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "values", - "cType": "const Pose **", - "canonical": "const struct Pose **" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int", - "canonical": "int" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_to_set", - "file": "meos_pose.h", + "name": "ea_dwithin_tgeo_tgeo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_end_value", - "file": "meos_pose.h", + "name": "ea_spatialrel_tspatial_geo", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_start_value", - "file": "meos_pose.h", + "name": "ea_spatialrel_tspatial_tspatial", + "file": "tgeo_spatialrels.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_value_n", - "file": "meos_pose.h", + "name": "tspatialrel_tspatial_base", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "n", + "name": "base", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "varfunc", + "canonical": "unsigned long (*)(unsigned long, ...)" + }, + { + "name": "numparam", "cType": "int", "canonical": "int" }, { - "name": "result", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "poseset_values", - "file": "meos_pose.h", + "name": "tspatialrel_tspatial_tspatial", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" - } - ] - }, - { - "name": "contained_pose_set", - "file": "meos_pose.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] - }, - { - "name": "contains_set_pose", - "file": "meos_pose.h", - "returnType": { - "c": "bool", - "canonical": "bool" - }, - "params": [ + "name": "func", + "cType": "varfunc", + "canonical": "unsigned long (*)(unsigned long, ...)" + }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "numparam", + "cType": "int", + "canonical": "int" }, { - "name": "pose", - "cType": "Pose *", - "canonical": "struct Pose *" + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "intersection_pose_set", - "file": "meos_pose.h", + "name": "tinterrel_tgeo_geo", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "tinter", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "intersection_set_pose", - "file": "meos_pose.h", + "name": "tinterrel_tspatial_base", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - } - ] - }, - { - "name": "minus_pose_set", - "file": "meos_pose.h", - "returnType": { - "c": "Set *", - "canonical": "Set *" - }, - "params": [ + "name": "base", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "tinter", + "cType": "bool", + "canonical": "bool" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" } ] }, { - "name": "minus_set_pose", - "file": "meos_pose.h", + "name": "tinterrel_tspatial_tspatial", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "tinter", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "pose_union_transfn", - "file": "meos_pose.h", + "name": "tdwithin_tspatial_tspatial", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "state", - "cType": "Set *", - "canonical": "Set *" + "name": "sync1", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "sync2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "datum_func3", + "canonical": "unsigned long (*)(unsigned long, unsigned long, unsigned long)" + }, + { + "name": "tpfn", + "cType": "tpfunc_temp", + "canonical": "int (*)(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, long, long, long *, long *)" } ] }, { - "name": "union_pose_set", - "file": "meos_pose.h", + "name": "tdwithin_add_solutions", + "file": "tgeo_tempspatialrels.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "solutions", + "cType": "int", + "canonical": "int" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - } - ] + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc1", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "t1", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t2", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tdwithin_tspatial_spatial", + "file": "tgeo_tempspatialrels.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "base", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dist", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "datum_func3", + "canonical": "unsigned long (*)(unsigned long, unsigned long, unsigned long)" + }, + { + "name": "tpfn", + "cType": "tpfunc_temp", + "canonical": "int (*)(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, long, long, long *, long *)" + } + ] + }, + { + "name": "bitmatrix_make", + "file": "tgeo_tile.h", + "returnType": { + "c": "BitMatrix *", + "canonical": "BitMatrix *" + }, + "params": [ + { + "name": "count", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "ndims", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpoint_set_tiles", + "file": "tgeo_tile.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "state", + "cType": "const STboxGridState *", + "canonical": "const struct STboxGridState *" + }, + { + "name": "bm", + "cType": "BitMatrix *", + "canonical": "BitMatrix *" + } + ] + }, + { + "name": "tpoint_at_tile", + "file": "tgeo_tile.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "stbox_tile_state_set", + "file": "tgeo_tile.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "tunits", + "cType": "int64", + "canonical": "long" + }, + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hast", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32", + "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "stbox_tile_state_make", + "file": "tgeo_tile.h", + "returnType": { + "c": "STboxGridState *", + "canonical": "struct STboxGridState *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "sorigin", + "cType": "int", + "canonical": "int" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "stbox_tile_state_next", + "file": "tgeo_tile.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "state", + "cType": "STboxGridState *", + "canonical": "struct STboxGridState *" + } + ] + }, + { + "name": "stbox_tile_state_get", + "file": "tgeo_tile.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "state", + "cType": "STboxGridState *", + "canonical": "struct STboxGridState *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tgeo_space_time_tile_init", + "file": "tgeo_tile.h", + "returnType": { + "c": "STboxGridState *", + "canonical": "struct STboxGridState *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "ntiles", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "stbox_space_time_tile", + "file": "tgeo_tile.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hast", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "create_trip", + "file": "tpoint_datagen.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "lines", + "cType": "int **", + "canonical": "int **" + }, + { + "name": "maxSpeeds", + "cType": "const double *", + "canonical": "const double *" + }, + { + "name": "categories", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "noEdges", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "startTime", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "disturbData", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "verbosity", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spatialarr_wkt_out", + "file": "tspatial.h", + "returnType": { + "c": "char **", + "canonical": "char **" + }, + "params": [ + { + "name": "spatialarr", + "cType": "const Datum *", + "canonical": "const unsigned long *" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "extended", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "spatialbase_as_text", + "file": "tspatial.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "spatialbase_as_ewkt", + "file": "tspatial.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "point_transf_pj", + "file": "tspatial.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "gs", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "srid_to", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "pj", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tgeoinst_set_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tgeoinstarr_set_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tgeoseq_expand_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tspatialinst_set_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tspatialinstarr_set_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tspatialseqarr_set_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tspatialseq_expand_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "spatialarr_set_bbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "boxop_tspatial_stbox", + "file": "tspatial_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "func", + "cType": "bool (*)(const STBox *, const STBox *)", + "canonical": "_Bool (*)(const STBox *, const STBox *)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boxop_tspatial_tspatial", + "file": "tspatial_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "bool (*)(const STBox *, const STBox *)", + "canonical": "_Bool (*)(const STBox *, const STBox *)" + } + ] + }, + { + "name": "srid_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "srid", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "spatial_parse_elem", + "file": "tspatial_parser.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "delim", + "cType": "char", + "canonical": "char" + }, + { + "name": "temp_srid", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "geo_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "delim", + "cType": "char", + "canonical": "char" + }, + { + "name": "srid", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" + } + ] + }, + { + "name": "stbox_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + } + ] + }, + { + "name": "tpoint_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "tspatialinst_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "temp_srid", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseq_disc_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "temp_srid", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseq_cont_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "temp_srid", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseqset_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "temp_srid", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatial_parse", + "file": "tspatial_parser.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "h3_are_neighbor_cells_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cells_to_directed_edge_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "destination", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_is_valid_directed_edge_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_directed_edge_origin_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_directed_edge_destination_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_parent_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_cell_to_center_child_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_cell_to_child_pos_meos", + "file": "h3_generated.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "child", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "parentRes", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_child_pos_to_cell_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "childPos", + "cType": "int64", + "canonical": "long" + }, + { + "name": "parent", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "childRes", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_get_resolution_meos", + "file": "h3_generated.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_base_cell_number_meos", + "file": "h3_generated.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_is_valid_cell_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_is_res_class_iii_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_is_pentagon_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "hex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_num_cells_meos", + "file": "h3_generated.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_grid_distance_meos", + "file": "h3_generated.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "originIndex", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "h3Index", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_vertex_meos", + "file": "h3_generated.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "vertexNum", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_is_valid_vertex_meos", + "file": "h3_generated.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_parse", + "file": "h3index.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "h3index_to_string", + "file": "h3index.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_eq", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_ne", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_lt", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_le", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_gt", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_ge", + "file": "h3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_cmp", + "file": "h3index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "b", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3index_hash", + "file": "h3index.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_grid_disk", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "k", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "h3_grid_ring", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "k", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "h3_grid_path_cells", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "start", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "end", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_children", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "childRes", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "h3_compact_cells", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "h3_uncompact_cells", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "res", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "h3_origin_to_directed_edges", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_vertexes", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_get_icosahedron_faces", + "file": "h3index_sets.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ensure_valid_th3index_th3index", + "file": "th3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ensure_valid_th3index_h3index", + "file": "th3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ensure_valid_th3index_tgeogpoint", + "file": "th3index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "datum2_h3index_eq", + "file": "th3index.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "d2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "datum2_h3index_ne", + "file": "th3index.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "d2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "th3indexinst_set_stbox", + "file": "th3index_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "th3indexinstarr_set_stbox", + "file": "th3index_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "th3indexseq_expand_stbox", + "file": "th3index_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "h3_gs_point_to_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "point", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_cell_to_gs_point", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_gs_boundary", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "cell_boundary_to_gs", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "bnd", + "cType": "const CellBoundary *", + "canonical": "const CellBoundary *" + } + ] + }, + { + "name": "h3_sample_step_deg", + "file": "th3index_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_latlng_deg_to_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "lat_deg", + "cType": "double", + "canonical": "double" + }, + { + "name": "lng_deg", + "cType": "double", + "canonical": "double" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "h3_cell_to_parent_next_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_center_child_next_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_directed_edge_to_gs_boundary", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_vertex_to_gs_point", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "vertex", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_cell_to_local_ij_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "h3_local_ij_to_cell_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "coord", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "h3_unit_from_cstring", + "file": "th3index_internal.h", + "returnType": { + "c": "H3Unit", + "canonical": "H3Unit" + }, + "params": [ + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "h3_cell_area_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" + } + ] + }, + { + "name": "h3_edge_length_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "edge", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" + } + ] + }, + { + "name": "h3_gs_great_circle_distance_meos", + "file": "th3index_internal.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "a", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "b", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "unit", + "cType": "H3Unit", + "canonical": "H3Unit" + } + ] + }, + { + "name": "datum_h3_get_resolution", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_get_base_cell_number", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_is_valid_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_is_res_class_iii", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_is_pentagon", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_parent", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "res_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_parent_next", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_center_child", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "res_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_center_child_next", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_child_pos", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "parent_res_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_child_pos_to_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pos_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "parent_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "child_res_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_are_neighbor_cells", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dest_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cells_to_directed_edge", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dest_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_is_valid_directed_edge", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_get_directed_edge_origin", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_get_directed_edge_destination", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_directed_edge_to_boundary", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_vertex", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "vnum_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_vertex_to_latlng", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_is_valid_vertex", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_grid_distance", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "dest_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_local_ij", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_local_ij_to_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "origin_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "coord_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_latlng_to_cell", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "point_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "res_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_latlng", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_to_boundary", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_cell_area", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "cell_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "unit_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_edge_length", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "edge_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "unit_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_h3_great_circle_distance", + "file": "th3index_internal.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "a_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "b_d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "unit_d", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "th3index_in", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3indexinst_in", + "file": "meos_h3.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3indexseq_in", + "file": "meos_h3.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "th3indexseqset_in", + "file": "meos_h3.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3index_make", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "value", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "th3indexinst_make", + "file": "meos_h3.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "value", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "th3indexseq_make", + "file": "meos_h3.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "values", + "cType": "const H3Index *", + "canonical": "const unsigned long *" + }, + { + "name": "times", + "cType": "const TimestampTz *", + "canonical": "const long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "th3indexseqset_make", + "file": "meos_h3.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "sequences", + "cType": "const TSequence **", + "canonical": "const TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "th3index_start_value", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_end_value", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_value_n", + "file": "meos_h3.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "th3index_values", + "file": "meos_h3.h", + "returnType": { + "c": "H3Index *", + "canonical": "unsigned long *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "th3index_value_at_timestamptz", + "file": "meos_h3.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "H3Index *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "tbigint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_to_tbigint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ever_ne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "always_eq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "always_ne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "ever_eq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "teq_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_h3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_th3index_h3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "H3Index", + "canonical": "unsigned long" + } + ] + }, + { + "name": "tne_th3index_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_resolution", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_base_cell_number", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_res_class_iii", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_pentagon", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_parent", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_cell_to_parent_next", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_center_child", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_cell_to_center_child_next", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_child_pos", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "parent_res", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_child_pos_to_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "child_pos", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "parent", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "child_res", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "tgeogpoint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "tgeompoint_to_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_to_tgeogpoint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_to_tgeompoint", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_boundary", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "geo_to_h3index_set", + "file": "meos_h3.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "resolution", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "ever_eq_h3indexset_th3index", + "file": "meos_h3.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "cells", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "th3idx", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_are_neighbor_cells", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cells_to_directed_edge", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_directed_edge", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_directed_edge_origin", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_get_directed_edge_destination", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_directed_edge_to_boundary", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "edge", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_vertex", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "vertex_num", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "th3index_vertex_to_latlng", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_is_valid_vertex", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_grid_distance", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dest", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_to_local_ij", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "cell", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_local_ij_to_cell", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "origin", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "coord", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "th3index_cell_area", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "th3index_edge_length", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeogpoint_great_circle_distance", + "file": "meos_h3.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "a", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "b", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unit", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "proj_get_context", + "file": "meos_internal_geo.h", + "returnType": { + "c": "PJ_CONTEXT *", + "canonical": "struct pj_ctx *" + }, + "params": [] + }, + { + "name": "geos_get_context", + "file": "meos_internal_geo.h", + "returnType": { + "c": "GEOSContextHandle_t", + "canonical": "struct GEOSContextHandle_HS *" + }, + "params": [] + }, + { + "name": "datum_geo_round", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "point_round", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "stbox_set", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32", + "canonical": "int" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "gbox_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "geo_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "geoarr_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "spatial_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "spatialset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "stbox_set_box3d", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "result", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "stbox_set_gbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "result", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tstzset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tstzspan_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tstzspanset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "stbox_expand", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box1", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "box2", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "inter_stbox_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "box2", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tgeogpointinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeogpointinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeogpointseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeogpointseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeompointinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeompointinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeompointseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompointseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeographyinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeographyinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeographyseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeographyseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeometryinst_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tgeometryinst_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tgeometryseq_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseq_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseqset_from_mfjson", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "mfjson", + "cType": "json_object *", + "canonical": "struct json_object *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeometryseqset_in", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tspatial_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "result", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tspatialseq_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tspatialseqset_set_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tgeo_restrict_elevation", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoinst_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoinst_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseqset_restrict_geom", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseqset_restrict_stbox", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "spatial_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "spatial_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tspatialinst_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tpointseq_azimuth", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tpointseq_cumulative_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "prevlength", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tpointseq_is_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tpointseq_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tpointseq_linear_trajectory", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeoseq_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeoseq_split_n_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "max_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpointseqset_azimuth", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_cumulative_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_is_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tpointseqset_length", + "file": "meos_internal_geo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tgeoseqset_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeoseqset_split_n_stboxes", + "file": "meos_internal_geo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "max_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tgeominst_tgeoginst", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeomseq_tgeogseq", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeomseqset_tgeogseqset", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeom_tgeog", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tgeo_tpoint", + "file": "meos_internal_geo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "oper", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tspatialinst_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "TInstant *", + "canonical": "TInstant *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseq_make_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence **", + "canonical": "TSequence **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseq_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseqset_make_simple", + "file": "meos_internal_geo.h", + "returnType": { + "c": "TSequence **", + "canonical": "TSequence **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tspatialseqset_set_srid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpointseq_twcentroid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tpointseqset_twcentroid", + "file": "meos_internal_geo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "npoint_as_ewkt", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_as_hexwkb", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "npoint_as_text", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_as_wkb", + "file": "meos_npoint.h", + "returnType": { + "c": "uint8_t *", + "canonical": "unsigned char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "npoint_from_hexwkb", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npoint_from_wkb", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "npoint_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npoint_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegment_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "nsegment_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "nsegment_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos1", + "cType": "double", + "canonical": "double" + }, + { + "name": "pos2", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "geompoint_to_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "geom_to_nsegment", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "npoint_to_geompoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_to_nsegment", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_to_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npoint_hash", + "file": "meos_npoint.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_hash_extended", + "file": "meos_npoint.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "npoint_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_end_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_start_position", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "route_exists", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "route_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "const int *", + "canonical": "const int *" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "route_length", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "npoint_round", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegment_round", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "get_srid_ways", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [] + }, + { + "name": "npoint_srid", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_srid", + "file": "meos_npoint.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npoint_timestamptz_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "npoint_tstzspan_to_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "npoint_cmp", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_eq", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_ge", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_gt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_le", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_lt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_ne", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_same", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nsegment_cmp", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_eq", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_ge", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_gt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_le", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_lt", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "nsegment_ne", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns1", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "ns2", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + } + ] + }, + { + "name": "npointset_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "npointset_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npointset_make", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Npoint **", + "canonical": "Npoint **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_to_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npointset_end_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_routes", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_start_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "npointset_value_n", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" + } + ] + }, + { + "name": "npointset_values", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint **", + "canonical": "Npoint **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "contained_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "intersection_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "minus_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npoint_union_transfn", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "union_npoint_set", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_in", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tnpoint_from_mfjson", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "mfjson", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tnpoint_out", + "file": "meos_npoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tnpointinst_make", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tnpoint_from_base_temp", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpointseq_from_base_tstzset", + "file": "meos_npoint.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tnpointseq_from_base_tstzspan", + "file": "meos_npoint.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tnpointseqset_from_base_tstzspanset", + "file": "meos_npoint.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tgeompoint_to_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_to_tgeompoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_cumulative_length", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_end_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_length", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_positions", + "file": "meos_npoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnpoint_route", + "file": "meos_npoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_routes", + "file": "meos_npoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_speed", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_start_value", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_trajectory", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_value_at_timestamptz", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" + } + ] + }, + { + "name": "tnpoint_value_n", + "file": "meos_npoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Npoint **", + "canonical": "Npoint **" + } + ] + }, + { + "name": "tnpoint_values", + "file": "meos_npoint.h", + "returnType": { + "c": "Npoint **", + "canonical": "Npoint **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnpoint_twcentroid", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_at_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tnpoint_at_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_at_npointset", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tnpoint_at_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnpoint_minus_geom", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tnpoint_minus_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tnpoint_minus_npointset", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tnpoint_minus_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tdistance_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nad_tnpoint_stbox", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "nad_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "nai_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tnpoint_geo", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "shortestline_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpoint_tcentroid_transfn", + "file": "meos_npoint.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "always_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "always_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "ever_eq_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_npoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "ever_ne_tnpoint_tnpoint", + "file": "meos_npoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "tne_tnpoint_npoint", + "file": "meos_npoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "pcpoint_hex_in", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpoint_hex_out", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpoint_from_hexwkb", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpoint_as_hexwkb", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_copy", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_get_pcid", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32_t", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_hash", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_hash_extended", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pcpoint_get_x", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + { + "name": "out", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "pcpoint_get_y", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + { + "name": "out", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "pcpoint_get_z", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + { + "name": "out", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "pcpoint_get_dim", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + { + "name": "name", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "out", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "pcpoint_to_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + } + ] + }, + { + "name": "meos_pc_schema", + "file": "meos_pointcloud.h", + "returnType": { + "c": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + "params": [ + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + } + ] + }, + { + "name": "meos_pc_schema_register", + "file": "meos_pointcloud.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + } + ] + }, + { + "name": "meos_pc_schema_register_xml", + "file": "meos_pointcloud.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "schema", + "cType": "PCSCHEMA *", + "canonical": "struct PCSCHEMA *" + }, + { + "name": "xml_text", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "meos_pc_schema_xml", + "file": "meos_pointcloud.h", + "returnType": { + "c": "const char *", + "canonical": "const char *" + }, + "params": [ + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + } + ] + }, + { + "name": "meos_pc_schema_clear", + "file": "meos_pointcloud.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [] + }, + { + "name": "pcpoint_cmp", + "file": "meos_pointcloud.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_eq", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_ne", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_lt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_le", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_gt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_ge", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpatch_hex_in", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpatch_hex_out", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpatch_from_hexwkb", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpatch_as_hexwkb", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_copy", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_get_pcid", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32_t", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_npoints", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32_t", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_hash", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_hash_extended", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pcpatch_cmp", + "file": "meos_pointcloud.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_eq", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_ne", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_lt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_le", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_gt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_ge", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpointset_in", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpointset_out", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpointset_make", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Pcpoint **", + "canonical": "struct Pcpoint **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpoint_to_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpointset_start_value", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "pcpointset_end_value", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "pcpointset_value_n", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pcpoint **", + "canonical": "struct Pcpoint **" + } + ] + }, + { + "name": "pcpointset_values", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpoint **", + "canonical": "struct Pcpoint **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_pcpoint", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pt", + "cType": "Pcpoint *", + "canonical": "struct Pcpoint *" + } + ] + }, + { + "name": "contained_pcpoint_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_pcpoint_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_pcpoint", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "minus_pcpoint_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_pcpoint", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "union_pcpoint_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_pcpoint", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_union_transfn", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpatchset_in", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pcpatchset_out", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpatchset_make", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "Pcpatch **", + "canonical": "struct Pcpatch **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pcpatch_to_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatchset_start_value", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "pcpatchset_end_value", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "pcpatchset_value_n", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pcpatch **", + "canonical": "struct Pcpatch **" + } + ] + }, + { + "name": "pcpatchset_values", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Pcpatch **", + "canonical": "struct Pcpatch **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_pcpatch", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pa", + "cType": "Pcpatch *", + "canonical": "struct Pcpatch *" + } + ] + }, + { + "name": "contained_pcpatch_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_pcpatch_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_pcpatch", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "minus_pcpatch_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_pcpatch", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "union_pcpatch_set", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_pcpatch", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_union_transfn", + "file": "meos_pointcloud.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "tpcbox_in", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tpcbox_out", + "file": "meos_pointcloud.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpcbox_make", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "hasx", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hasz", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "hast", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "geodetic", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "zmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "period", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "tpcbox_copy", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "pcpatch_to_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "tpcbox_hasx", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_hasz", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_hast", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_geodetic", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_xmin", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_xmax", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_ymin", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_ymax", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_zmin", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_zmax", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tpcbox_tmin", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "tpcbox_tmax", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "tpcbox_srid", + "file": "meos_pointcloud.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_pcid", + "file": "meos_pointcloud.h", + "returnType": { + "c": "uint32_t", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_to_stbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_expand", + "file": "meos_pointcloud.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "TPCBox *", + "canonical": "TPCBox *" + } + ] + }, + { + "name": "tpcbox_round", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpcbox_set_srid", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "union_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "inter_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "result", + "cType": "TPCBox *", + "canonical": "TPCBox *" + } + ] + }, + { + "name": "intersection_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "contains_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "contained_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overlaps_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "same_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "adjacent_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_cmp", + "file": "meos_pointcloud.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_eq", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_ne", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_lt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_le", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_gt", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "tpcbox_ge", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "left_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overleft_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "right_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overright_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "below_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overbelow_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "above_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overabove_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "front_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overfront_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "back_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overback_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "before_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overbefore_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "after_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "overafter_tpcbox_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "ensure_same_pcid_tpcbox", + "file": "meos_pointcloud.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "pose_as_ewkt", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_as_hexwkb", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "pose_as_text", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_as_wkb", + "file": "meos_pose.h", + "returnType": { + "c": "uint8_t *", + "canonical": "unsigned char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "pose_from_wkb", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_from_hexwkb", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pose_in", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pose_out", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_from_geopose", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "json", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "pose_as_geopose", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "conformance", + "cType": "int", + "canonical": "int" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpose_from_geopose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "json", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tpose_as_geopose", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "conformance", + "cType": "int", + "canonical": "int" + }, + { + "name": "precision", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_apply_geo", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "body", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tpose_apply_geo", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "body", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "pose_copy", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_make_2d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "theta", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_make_3d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_make_point2d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "theta", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "pose_make_point3d", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "W", + "cType": "double", + "canonical": "double" + }, + { + "name": "X", + "cType": "double", + "canonical": "double" + }, + { + "name": "Y", + "cType": "double", + "canonical": "double" + }, + { + "name": "Z", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "pose_to_point", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_hash", + "file": "meos_pose.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_hash_extended", + "file": "meos_pose.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_orientation", + "file": "meos_pose.h", + "returnType": { + "c": "double *", + "canonical": "double *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "pose_rotation", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_yaw", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_pitch", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_roll", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_angular_distance", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_normalise", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_round", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "posearr_round", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "posearr", + "cType": "const Pose **", + "canonical": "const struct Pose **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_set_srid", + "file": "meos_pose.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_srid", + "file": "meos_pose.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_transform", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + } + ] + }, + { + "name": "pose_transform_pipeline", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pipelinestr", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "srid", + "cType": "int32_t", + "canonical": "int" + }, + { + "name": "is_forward", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "pose_tstzspan_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "pose_timestamptz_to_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "distance_pose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "distance_pose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "distance_pose_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "pose_cmp", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_eq", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_ge", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_gt", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_le", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_lt", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_ne", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_nsame", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_same", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "poseset_in", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "poseset_out", + "file": "meos_pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "poseset_make", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "values", + "cType": "const Pose **", + "canonical": "const struct Pose **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_to_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "poseset_end_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "poseset_start_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "poseset_value_n", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "poseset_values", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "contained_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "contains_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "Pose *", + "canonical": "struct Pose *" + } + ] + }, + { + "name": "intersection_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "intersection_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "minus_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "minus_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_union_transfn", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "state", + "cType": "Set *", + "canonical": "Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "union_pose_set", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "union_set_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_from_mfjson", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tpose_in", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "tposeinst_make", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tpose_from_base_temp", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tposeseq_from_base_tstzset", + "file": "meos_pose.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tposeseq_from_base_tstzspan", + "file": "meos_pose.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tposeseqset_from_base_tstzspanset", + "file": "meos_pose.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "tpose_make", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "tpoint", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "tradius", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_to_tpoint", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_end_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_points", + "file": "meos_pose.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_rotation", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_yaw", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_pitch", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_roll", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_speed", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_angular_speed", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_start_value", + "file": "meos_pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_trajectory", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpose_value_at_timestamptz", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "tpose_value_n", + "file": "meos_pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "Pose **", + "canonical": "struct Pose **" + } + ] + }, + { + "name": "tpose_values", + "file": "meos_pose.h", + "returnType": { + "c": "Pose **", + "canonical": "struct Pose **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tpose_at_geom", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tpose_at_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tpose_at_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_minus_geom", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tpose_minus_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tpose_minus_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tdistance_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "nad_tpose_stbox", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "nad_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "nai_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_tpose_geo", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "shortestline_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "always_eq_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "always_ne_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ever_eq_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ever_ne_tpose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tne_pose_tpose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_tpose_pose", + "file": "meos_pose.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "trgeometry_out", + "file": "meos_rgeo.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeoinst_make", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "geom", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "geo_tpose_to_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_to_tpose", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_to_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_to_tgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_end_instant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_end_sequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_end_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_instant_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeometry_instants", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant **", + "canonical": "TInstant **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_points", + "file": "meos_rgeo.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_rotation", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_segments", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_sequence_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "i", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeometry_sequences", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence **", + "canonical": "TSequence **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_start_instant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_start_sequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_start_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_value_n", + "file": "meos_rgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "n", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "int **", + "canonical": "int **" + } + ] + }, + { + "name": "trgeometry_traversed_area", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "unary_union", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_centroid", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_convex_hull", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_body_point_trajectory", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_space_boxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_space_time_boxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "xsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "ysize", + "cType": "double", + "canonical": "double" + }, + { + "name": "zsize", + "cType": "double", + "canonical": "double" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "sorigin", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "bitmatrix", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_split_n_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_split_each_n_stboxes", + "file": "meos_rgeo.h", + "returnType": { + "c": "STBox *", + "canonical": "STBox *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "elem_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_hausdorff_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_frechet_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_dyntimewarp_distance", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_frechet_path", + "file": "meos_rgeo.h", + "returnType": { + "c": "Match *", + "canonical": "Match *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_dyntimewarp_path", + "file": "meos_rgeo.h", + "returnType": { + "c": "Match *", + "canonical": "Match *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "trgeometry_length", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_cumulative_length", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_speed", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_twcentroid", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_append_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + }, + { + "name": "maxt", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_append_tsequence", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "Temporal *", + "canonical": "Temporal *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "expand", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_delete_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "connect", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_round", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "trgeometry_set_interp", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "trgeometry_to_tinstant", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeometry_after_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_before_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_value", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_values", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_timestamptz", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzspan", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_restrict_tstzspanset", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_at_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_minus_geom", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "trgeometry_at_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeometry_minus_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdistance_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tdistance_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tdistance_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_stbox_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nad_trgeometry_stbox", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "nad_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nad_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "nai_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "nai_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "shortestline_trgeometry_tpoint", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "shortestline_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_eq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_eq_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "always_ne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "always_ne_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_eq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_eq_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ever_ne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ever_ne_trgeometry_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "teq_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "tne_geo_trgeometry", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tne_trgeometry_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "econtains_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acontains_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "acovers_geo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ecovers_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "acovers_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edisjoint_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "adisjoint_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "eintersects_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "aintersects_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "etouches_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "atouches_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "edwithin_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_trgeo_geo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "edisjoint_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "adisjoint_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "eintersects_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "aintersects_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "edwithin_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "adwithin_trgeo_trgeo", + "file": "meos_rgeo.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "ensure_valid_tnpoint_npoint", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "ensure_valid_tnpoint_npointset", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "ensure_valid_tnpoint_geo", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ensure_valid_tnpoint_stbox", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "ensure_valid_tnpoint_tnpoint", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tnpointsegm_intersection", + "file": "tnpoint.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "common_rid_tnpoint_npoint", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "common_rid_tnpoint_npointset", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "common_rid_tnpoint_tnpoint", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "npoint_collinear", + "file": "tnpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np1", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np2", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "np3", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "npointsegm_interpolate", + "file": "tnpoint.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "start", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "end", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "ratio", + "cType": "long double", + "canonical": "long double" + } + ] + }, + { + "name": "npointsegm_locate", + "file": "tnpoint.h", + "returnType": { + "c": "long double", + "canonical": "long double" + }, + "params": [ + { + "name": "start", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "end", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "value", + "cType": "const Npoint *", + "canonical": "const Npoint *" + } + ] + }, + { + "name": "npointarr_geom", + "file": "tnpoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "points", + "cType": "Npoint **", + "canonical": "Npoint **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegmentarr_geom", + "file": "tnpoint.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "segments", + "cType": "Nsegment **", + "canonical": "Nsegment **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "nsegmentarr_normalize", + "file": "tnpoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "segments", + "cType": "Nsegment **", + "canonical": "Nsegment **" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "npoint_wkt_out", + "file": "tnpoint.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "npoint_set", + "file": "tnpoint.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos", + "cType": "double", + "canonical": "double" + }, + { + "name": "np", + "cType": "Npoint *", + "canonical": "Npoint *" + } + ] + }, + { + "name": "nsegment_set", + "file": "tnpoint.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "pos1", + "cType": "double", + "canonical": "double" + }, + { + "name": "pos2", + "cType": "double", + "canonical": "double" + }, + { + "name": "ns", + "cType": "Nsegment *", + "canonical": "Nsegment *" + } + ] + }, + { + "name": "datum_npoint_round", + "file": "tnpoint.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "npoint", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "tnpointinst_tgeompointinst", + "file": "tnpoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tnpointseq_tgeompointseq_disc", + "file": "tnpoint.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "is", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tnpointseq_tgeompointseq_cont", + "file": "tnpoint.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tnpointseqset_tgeompointseqset", + "file": "tnpoint.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tgeompointinst_tnpointinst", + "file": "tnpoint.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tgeompointseq_tnpointseq", + "file": "tnpoint.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tgeompointseqset_tnpointseqset", + "file": "tnpoint.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tnpointinst_positions", + "file": "tnpoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tnpointseq_positions", + "file": "tnpoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnpointseqset_positions", + "file": "tnpoint.h", + "returnType": { + "c": "Nsegment **", + "canonical": "Nsegment **" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tnpointinst_route", + "file": "tnpoint.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tnpointinst_routes", + "file": "tnpoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tnpointseq_disc_routes", + "file": "tnpoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "is", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tnpointseq_cont_routes", + "file": "tnpoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tnpointseqset_routes", + "file": "tnpoint.h", + "returnType": { + "c": "Set *", + "canonical": "Set *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "tnpointseq_linear_positions", + "file": "tnpoint.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "tnpoint_restrict_stbox", + "file": "tnpoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnpoint_restrict_npoint", + "file": "tnpoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tnpoint_restrict_npointset", + "file": "tnpoint.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "npoint_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "npointarr_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "nsegment_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ns", + "cType": "const Nsegment *", + "canonical": "const Nsegment *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "npoint_timestamptz_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "npoint_tstzspan_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tnpointinst_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tnpointinstarr_set_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tnpointseq_expand_stbox", + "file": "tnpoint_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "datum_npoint_distance", + "file": "tnpoint_distance.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "np1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "np2", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "npoint_parse", + "file": "tnpoint_parser.h", + "returnType": { + "c": "Npoint *", + "canonical": "Npoint *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "nsegment_parse", + "file": "tnpoint_parser.h", + "returnType": { + "c": "Nsegment *", + "canonical": "Nsegment *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + } + ] + }, + { + "name": "contains_rid_tnpoint_bigint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contained_rid_tnpoint_bigint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "same_rid_tnpoint_bigint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "rid", + "cType": "int64", + "canonical": "long" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "overlaps_rid_tnpoint_bigintset", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contains_rid_tnpoint_bigintset", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contained_rid_tnpoint_bigintset", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "same_rid_tnpoint_bigintset", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contains_rid_tnpoint_npoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "contained_rid_npoint_tnpoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "same_rid_tnpoint_npoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "np", + "cType": "const Npoint *", + "canonical": "const Npoint *" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "overlaps_rid_tnpoint_tnpoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "contains_rid_tnpoint_tnpoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "contained_rid_tnpoint_tnpoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "same_rid_tnpoint_tnpoint", + "file": "tnpoint_routeops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ensure_same_rid_tnpointinst", + "file": "tnpoint_spatialfuncs.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tnpoint_restrict_geom", + "file": "tnpoint_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "meos_pc_schema_get_srid", + "file": "meos_schema_hook.h", + "returnType": { + "c": "int32_t", + "canonical": "int" + }, + "params": [ + { + "name": "pcid", + "cType": "uint32_t", + "canonical": "unsigned int" + } + ] + }, + { + "name": "ensure_same_pcid_pcpatch", + "file": "pcpatch.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa1", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pa2", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "ensure_valid_pcpatchset_pcpatch", + "file": "pcpatch.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + } + ] + }, + { + "name": "pcpatch_parse", + "file": "pcpatch.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "pcpatch_filter_per_point", + "file": "pcpatch_decompose.h", + "returnType": { + "c": "Pcpatch *", + "canonical": "struct Pcpatch *" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pred", + "cType": "pcpatch_pointpred_fn", + "canonical": "_Bool (*)(const int *, void *)" + }, + { + "name": "extra", + "cType": "void *", + "canonical": "void *" + }, + { + "name": "keep_when_true", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "pcpatch_any_point_matches", + "file": "pcpatch_decompose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pa", + "cType": "const Pcpatch *", + "canonical": "const struct Pcpatch *" + }, + { + "name": "pred", + "cType": "pcpatch_pointpred_fn", + "canonical": "_Bool (*)(const int *, void *)" + }, + { + "name": "extra", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "pcpoint_in_tpcbox", + "file": "pcpatch_decompose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "extra", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "pcpoint_intersects_geometry", + "file": "pcpatch_decompose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "extra", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "ensure_same_pcid_pcpoint", + "file": "pcpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pt1", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + }, + { + "name": "pt2", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "ensure_valid_pcpointset_pcpoint", + "file": "pcpoint.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pt", + "cType": "const Pcpoint *", + "canonical": "const struct Pcpoint *" + } + ] + }, + { + "name": "pcpoint_parse", + "file": "pcpoint.h", + "returnType": { + "c": "Pcpoint *", + "canonical": "struct Pcpoint *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "meos_pc_point_serialize", + "file": "pgsql_compat.h", + "returnType": { + "c": "SERIALIZED_POINT *", + "canonical": "SERIALIZED_POINT *" + }, + "params": [ + { + "name": "pcpt", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "meos_pc_point_deserialize", + "file": "pgsql_compat.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "serpt", + "cType": "const SERIALIZED_POINT *", + "canonical": "const SERIALIZED_POINT *" + }, + { + "name": "schema", + "cType": "const PCSCHEMA *", + "canonical": "const struct PCSCHEMA *" + } + ] + }, + { + "name": "meos_pc_patch_serialized_size", + "file": "pgsql_compat.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "patch", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "meos_pc_patch_serialize", + "file": "pgsql_compat.h", + "returnType": { + "c": "SERIALIZED_PATCH *", + "canonical": "struct SERIALIZED_PATCH *" + }, + "params": [ + { + "name": "patch_in", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "userdata", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "meos_pc_patch_serialize_to_uncompressed", + "file": "pgsql_compat.h", + "returnType": { + "c": "SERIALIZED_PATCH *", + "canonical": "struct SERIALIZED_PATCH *" + }, + "params": [ + { + "name": "patch_in", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "meos_pc_patch_deserialize", + "file": "pgsql_compat.h", + "returnType": { + "c": "int *", + "canonical": "int *" + }, + "params": [ + { + "name": "serpatch", + "cType": "const SERIALIZED_PATCH *", + "canonical": "const struct SERIALIZED_PATCH *" + }, + { + "name": "schema", + "cType": "const PCSCHEMA *", + "canonical": "const struct PCSCHEMA *" + } + ] + }, + { + "name": "tpointcloudinst_set_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "TPCBox *", + "canonical": "TPCBox *" + } + ] + }, + { + "name": "tpointcloudinstarr_set_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "box", + "cType": "TPCBox *", + "canonical": "TPCBox *" + } + ] + }, + { + "name": "tpointcloudseq_expand_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tpointcloudseqarr_set_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "TPCBox *", + "canonical": "TPCBox *" + } + ] + }, + { + "name": "tpcbox_extent_transfn", + "file": "tpc_boxops.h", + "returnType": { + "c": "TPCBox *", + "canonical": "TPCBox *" + }, + "params": [ + { + "name": "state", + "cType": "TPCBox *", + "canonical": "TPCBox *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "boxop_tpointcloud_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "func", + "cType": "bool (*)(const TPCBox *, const TPCBox *)", + "canonical": "_Bool (*)(const TPCBox *, const TPCBox *)" + }, + { + "name": "inverted", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boxop_tpointcloud_tpointcloud", + "file": "tpc_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "bool (*)(const TPCBox *, const TPCBox *)", + "canonical": "_Bool (*)(const TPCBox *, const TPCBox *)" + } + ] + }, + { + "name": "tpcbox_set_stbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "src", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "dst", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "nad_tpcbox_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "box1", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "box2", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "nad_tpointcloud_tpcbox", + "file": "tpc_boxops.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + } + ] + }, + { + "name": "nad_tpointcloud_tpointcloud", + "file": "tpc_boxops.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tpcbox_index_leaf_consistent", + "file": "tpcbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "query", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpcbox_gist_inner_consistent", + "file": "tpcbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "query", + "cType": "const TPCBox *", + "canonical": "const TPCBox *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tpcbox_index_recheck", + "file": "tpcbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "ensure_valid_pose_geo", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ensure_valid_pose_stbox", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "ensure_valid_pose_pose", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ensure_valid_poseset_pose", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_collinear", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose3", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "posesegm_interpolate", + "file": "pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "start", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "end", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "posesegm_locate", + "file": "pose.h", + "returnType": { + "c": "long double", + "canonical": "long double" + }, + "params": [ + { + "name": "start", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "end", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "value", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "pose_wkt_out", + "file": "pose.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "extended", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "pose_parse", + "file": "pose.h", + "returnType": { + "c": "Pose *", + "canonical": "struct Pose *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "datum_pose_point", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_rotation", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_yaw", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_pitch", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_roll", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_apply_geo", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "body", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_pose_round", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_distance", + "file": "pose.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "pose1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "pose2", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pose_set_stbox", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "posearr_set_stbox", + "file": "pose.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "values", + "cType": "const Datum *", + "canonical": "const unsigned long *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "pose_timestamptz_set_stbox", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "pose_tstzspan_set_stbox", + "file": "pose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "p", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "ensure_valid_tpose_geo", + "file": "tpose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + } + ] + }, + { + "name": "ensure_valid_tpose_pose", + "file": "tpose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "ensure_valid_tpose_stbox", + "file": "tpose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "ensure_valid_tpose_tpose", + "file": "tpose.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "tposesegm_intersection_value", + "file": "tpose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "tposesegm_intersection", + "file": "tpose.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "tposeinst_set_stbox", + "file": "tpose_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tposeinstarr_set_stbox", + "file": "tpose_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "tposeseq_expand_stbox", + "file": "tpose_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "tpose_restrict_geom", + "file": "tpose_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const int *", + "canonical": "const int *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tpose_restrict_stbox", + "file": "tpose_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tpose_restrict_elevation", + "file": "tpose_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "geo_get_srid", + "file": "postgis_ext_defs.in.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "g", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "ensure_has_geom", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "flags", + "cType": "int16", + "canonical": "short" + } + ] + }, + { + "name": "ensure_valid_trgeo_geo", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "ensure_valid_trgeo_stbox", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + } + ] + }, + { + "name": "ensure_valid_trgeo_trgeo", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "ensure_valid_trgeo_tpoint", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_geom_p", + "file": "trgeo.h", + "returnType": { + "c": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + } + ] + }, + { + "name": "trgeo_wkt_out", + "file": "trgeo.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "extended", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "geo_tposeinst_to_trgeo", + "file": "trgeo.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "geo_tposeseq_to_trgeo", + "file": "trgeo.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "geo_tposeseqset_to_trgeo", + "file": "trgeo.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "trgeo_value_at_timestamptz", + "file": "trgeo.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "trgeoinst_geom_p", + "file": "trgeo_inst.h", + "returnType": { + "c": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "trgeoinst_pose_varsize", + "file": "trgeo_inst.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "trgeoinst_set_pose", + "file": "trgeo_inst.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "inst", + "cType": "TInstant *", + "canonical": "TInstant *" + } + ] + }, + { + "name": "trgeoinst_tposeinst", + "file": "trgeo_inst.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "trgeoinst_make1", + "file": "trgeo_inst.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "trgeoseq_to_tinstant", + "file": "trgeo_inst.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "trgeoseqset_to_tinstant", + "file": "trgeo_inst.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "ts", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "trgeo_restrict_geom", + "file": "trgeo_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeo_restrict_stbox", + "file": "trgeo_spatialfuncs.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const STBox *", + "canonical": "const STBox *" + }, + { + "name": "border_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "spatialrel_trgeo_trav_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "varfunc", + "canonical": "unsigned long (*)(unsigned long, ...)" + }, + { + "name": "numparam", + "cType": "int", + "canonical": "int" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_contains_geo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_contains_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_contains_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_covers_geo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_covers_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_covers_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_disjoint_geo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_disjoint_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_disjoint_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_intersects_geo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_intersects_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_intersects_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_touches_geo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_touches_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_touches_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_dwithin_trgeo_geo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "ea_dwithin_trgeo_trgeo", + "file": "trgeo_spatialrels.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "dist", + "cType": "double", + "canonical": "double" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_geom_p", + "file": "trgeo_seq.h", + "returnType": { + "c": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "trgeoseq_pose_varsize", + "file": "trgeo_seq.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "trgeoseq_set_pose", + "file": "trgeo_seq.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + } + ] + }, + { + "name": "trgeoseq_tposeseq", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + } + ] + }, + { + "name": "trgeoseq_make_valid", + "file": "trgeo_seq.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "linear", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make1_exp", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make1", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make_exp", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make_free_exp", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseq_make_free", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoinst_to_tsequence", + "file": "trgeo_seq.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + } + ] + }, + { + "name": "trgeoseqset_geom_p", + "file": "trgeo_seqset.h", + "returnType": { + "c": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + "params": [ + { + "name": "ts", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "trgeoseqset_tposeseqset", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "trgeoseqset_make1_exp", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseqset_make_exp", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseqset_make", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseqset_make_free", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "trgeoseqset_make_gaps", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "maxt", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "maxdist", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "trgeoseqset_to_tsequence", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + } + ] + }, + { + "name": "trgeo_to_tsequence", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp_str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "trgeo_to_tsequenceset", + "file": "trgeo_seqset.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "interp_str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "trgeoinst_set_stbox", + "file": "trgeo_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "trgeoinstarr_static_stbox", + "file": "trgeo_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "trgeoinstarr_rotating_stbox", + "file": "trgeo_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "box", + "cType": "STBox *", + "canonical": "STBox *" + } + ] + }, + { + "name": "trgeoinstarr_compute_bbox", + "file": "trgeo_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "geom", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "box", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "ensure_span_isof_type", + "file": "span.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_span_isof_basetype", + "file": "span.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_same_span_type", + "file": "span.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "ensure_valid_span_span", + "file": "span.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "span_deserialize", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "lower", + "cType": "SpanBound *", + "canonical": "SpanBound *" + }, + { + "name": "upper", + "cType": "SpanBound *", + "canonical": "SpanBound *" + } + ] + }, + { + "name": "span_bound_cmp", + "file": "span.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "b1", + "cType": "const SpanBound *", + "canonical": "const SpanBound *" + }, + { + "name": "b2", + "cType": "const SpanBound *", + "canonical": "const SpanBound *" + } + ] + }, + { + "name": "span_bound_qsort_cmp", + "file": "span.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "s2", + "cType": "const void *", + "canonical": "const void *" + } + ] + }, + { + "name": "span_lower_cmp", + "file": "span.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "span_upper_cmp", + "file": "span.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s1", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "s2", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "span_decr_bound", + "file": "span.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "upper", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "span_incr_bound", + "file": "span.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "upper", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "spanarr_normalize", + "file": "span.h", + "returnType": { + "c": "Span *", + "canonical": "Span *" + }, + "params": [ + { + "name": "spans", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "sort", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "newcount", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "span_bounds_shift_scale_value", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "lower", + "cType": "Datum *", + "canonical": "unsigned long *" + }, + { + "name": "upper", + "cType": "Datum *", + "canonical": "unsigned long *" + } + ] + }, + { + "name": "span_bounds_shift_scale_time", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "shift", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "lower", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "upper", + "cType": "TimestampTz *", + "canonical": "long *" + } + ] + }, + { + "name": "floatspan_floor_ceil_iter", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "func", + "cType": "datum_func1", + "canonical": "unsigned long (*)(unsigned long)" + } + ] + }, + { + "name": "numspan_delta_scale_iter", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "delta", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasdelta", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "scale", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "tstzspan_delta_scale_iter", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "origin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "delta", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "scale", + "cType": "double", + "canonical": "double" + } + ] + }, + { + "name": "numspan_shift_scale_iter", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "shift", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "width", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasshift", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "haswidth", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "delta", + "cType": "Datum *", + "canonical": "unsigned long *" + }, + { + "name": "scale", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "tstzspan_shift_scale1", + "file": "span.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "s", + "cType": "Span *", + "canonical": "Span *" + }, + { + "name": "shift", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "delta", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "scale", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "mi_span_value", + "file": "span.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" + } + ] + }, + { + "name": "dist_double_value_value", + "file": "span.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "trgeo_geom_clip_polygon", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "a2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "pa", + "cType": "const POINTARRAY *", + "canonical": "const POINTARRAY *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_lwpoly", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "a2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "poly", + "cType": "const LWPOLY *", + "canonical": "const LWPOLY *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_box", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "a2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_polygon_posed", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "p_a_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "p_b_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "pose1", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pa", + "cType": "const POINTARRAY *", + "canonical": "const POINTARRAY *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_lwpoly_posed", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "p_a_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "p_b_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "pose1", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "poly", + "cType": "const LWPOLY *", + "canonical": "const LWPOLY *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_box_posed", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "p_a_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "p_b_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "pose1", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "xmin", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymin", + "cType": "double", + "canonical": "double" + }, + { + "name": "xmax", + "cType": "double", + "canonical": "double" + }, + { + "name": "ymax", + "cType": "double", + "canonical": "double" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_lwgeom", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b1", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "a2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "b2", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "geom", + "cType": "const LWGEOM *", + "canonical": "const LWGEOM *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_geom_clip_lwgeom_posed", + "file": "trgeo_geom_clip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "p_a_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "p_b_local", + "cType": "const POINT2D *", + "canonical": "const POINT2D *" + }, + { + "name": "pose1", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const struct Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "geom", + "cType": "const LWGEOM *", + "canonical": "const LWGEOM *" + }, + { + "name": "intervals_out", + "cType": "Span **", + "canonical": "Span **" + } + ] + }, + { + "name": "trgeo_parse", + "file": "trgeo_parser.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "str", + "cType": "const char **", + "canonical": "const char **" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_same_geom", + "file": "trgeo_utils.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "gs1", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "gs2", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "lwgeom_apply_pose", + "file": "trgeo_utils.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "geom", + "cType": "LWGEOM *", + "canonical": "LWGEOM *" + } + ] + }, + { + "name": "geom_apply_pose", + "file": "trgeo_utils.h", + "returnType": { + "c": "GSERIALIZED *", + "canonical": "GSERIALIZED *" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "geom_radius", + "file": "trgeo_utils.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "gs", + "cType": "const GSERIALIZED *", + "canonical": "const GSERIALIZED *" + } + ] + }, + { + "name": "v_clip_tpoly_point", + "file": "trgeo_vclip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "poly", + "cType": "const LWPOLY *", + "canonical": "const LWPOLY *" + }, + { + "name": "point", + "cType": "const LWPOINT *", + "canonical": "const LWPOINT *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "poly_feature", + "cType": "uint32_t *", + "canonical": "unsigned int *" + }, + { + "name": "dist", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "v_clip_tpoly_tpoly", + "file": "trgeo_vclip.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "poly1", + "cType": "const LWPOLY *", + "canonical": "const LWPOLY *" + }, + { + "name": "poly2", + "cType": "const LWPOLY *", + "canonical": "const LWPOLY *" + }, + { + "name": "pose1", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "pose2", + "cType": "const Pose *", + "canonical": "const struct Pose *" + }, + { + "name": "poly1_feature", + "cType": "uint32_t *", + "canonical": "unsigned int *" + }, + { + "name": "poly2_feature", + "cType": "uint32_t *", + "canonical": "unsigned int *" + }, + { + "name": "dist", + "cType": "double *", + "canonical": "double *" + } + ] + }, + { + "name": "apply_pose_point4d", + "file": "trgeo_vclip.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "p", + "cType": "POINT4D *", + "canonical": "POINT4D *" + }, + { + "name": "pose", + "cType": "const Pose *", + "canonical": "const struct Pose *" + } + ] + }, + { + "name": "tfunc_tinstant", + "file": "lifting.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tsequence", + "file": "lifting.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tsequenceset", + "file": "lifting.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_temporal", + "file": "lifting.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tinstant_base", + "file": "lifting.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tsequence_base", + "file": "lifting.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tsequenceset_base", + "file": "lifting.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_temporal_base", + "file": "lifting.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tinstant_tinstant", + "file": "lifting.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tdiscseq_tdiscseq", + "file": "lifting.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tcontseq_tcontseq", + "file": "lifting.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_tsequenceset_tsequenceset", + "file": "lifting.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "tfunc_temporal_temporal", + "file": "lifting.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "eafunc_temporal_base", + "file": "lifting.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "eafunc_temporal_temporal", + "file": "lifting.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "lfinfo", + "cType": "LiftedFunctionInfo *", + "canonical": "LiftedFunctionInfo *" + } + ] + }, + { + "name": "int4_in", + "file": "postgres_types.h", + "returnType": { + "c": "int32", + "canonical": "int" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "int4_out", + "file": "postgres_types.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "val", + "cType": "int32", + "canonical": "int" + } + ] + }, + { + "name": "int8_in", + "file": "postgres_types.h", + "returnType": { + "c": "int64", + "canonical": "long" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "int8_out", + "file": "postgres_types.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "val", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "float8_in", + "file": "postgres_types.h", + "returnType": { + "c": "float8", + "canonical": "double" + }, + "params": [ + { + "name": "num", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "type_name", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "orig_string", + "cType": "const char *", + "canonical": "const char *" + } + ] + }, + { + "name": "meos_strtod", + "file": "postgres_types.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "str", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "endptr", + "cType": "char **", + "canonical": "char **" + } + ] + }, + { + "name": "pg_dsin", + "file": "postgres_types.h", + "returnType": { + "c": "float8", + "canonical": "double" + }, + "params": [ + { + "name": "arg1", + "cType": "float8", + "canonical": "double" + } + ] + }, + { + "name": "pg_dcos", + "file": "postgres_types.h", + "returnType": { + "c": "float8", + "canonical": "double" + }, + "params": [ + { + "name": "arg1", + "cType": "float8", + "canonical": "double" + } + ] + }, + { + "name": "pg_datan", + "file": "postgres_types.h", + "returnType": { + "c": "float8", + "canonical": "double" + }, + "params": [ + { + "name": "arg1", + "cType": "float8", + "canonical": "double" + } + ] + }, + { + "name": "pg_datan2", + "file": "postgres_types.h", + "returnType": { + "c": "float8", + "canonical": "double" + }, + "params": [ + { + "name": "arg1", + "cType": "float8", + "canonical": "double" + }, + { + "name": "arg2", + "cType": "float8", + "canonical": "double" + } + ] + }, + { + "name": "interval_negate", + "file": "postgres_types.h", + "returnType": { + "c": "Interval *", + "canonical": "Interval *" + }, + "params": [ + { + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "pg_interval_justify_hours", + "file": "postgres_types.h", + "returnType": { + "c": "Interval *", + "canonical": "Interval *" + }, + "params": [ + { + "name": "span", + "cType": "const Interval *", + "canonical": "const Interval *" + } + ] + }, + { + "name": "hash_bytes_uint32", + "file": "postgres_types.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "k", + "cType": "uint32", + "canonical": "unsigned int" + } + ] + }, + { + "name": "pg_hashint8", + "file": "postgres_types.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "val", + "cType": "int64", + "canonical": "long" + } + ] + }, + { + "name": "pg_hashfloat8", + "file": "postgres_types.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "key", + "cType": "float8", + "canonical": "double" + } + ] + }, + { + "name": "hash_bytes_uint32_extended", + "file": "postgres_types.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "k", + "cType": "uint32", + "canonical": "unsigned int" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pg_hashint8extended", + "file": "postgres_types.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "val", + "cType": "int64", + "canonical": "long" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pg_hashfloat8extended", + "file": "postgres_types.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "key", + "cType": "float8", + "canonical": "double" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "pg_hashtext", + "file": "postgres_types.h", + "returnType": { + "c": "uint32", + "canonical": "unsigned int" + }, + "params": [ + { + "name": "key", + "cType": "text *", + "canonical": "struct varlena *" + } + ] + }, + { + "name": "pg_hashtextextended", + "file": "postgres_types.h", + "returnType": { + "c": "uint64", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "key", + "cType": "text *", + "canonical": "struct varlena *" + }, + { + "name": "seed", + "cType": "uint64", + "canonical": "unsigned long" + } + ] + }, + { + "name": "set_out_fn", + "file": "set.h", + "returnType": { + "c": "char *", + "canonical": "char *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "value_out", + "cType": "outfunc", + "canonical": "char *(*)(unsigned long, MeosType, int)" + } + ] + }, + { + "name": "ensure_set_isof_type", + "file": "set.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "settype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_valid_set_set", + "file": "set.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s1", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "s2", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_find_value", + "file": "set.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "arg1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "loc", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "set_unnest_state_make", + "file": "set.h", + "returnType": { + "c": "SetUnnestState *", + "canonical": "SetUnnestState *" + }, + "params": [ + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "set_unnest_state_next", + "file": "set.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "state", + "cType": "SetUnnestState *", + "canonical": "SetUnnestState *" + } + ] + }, + { + "name": "ensure_same_skiplist_subtype", + "file": "skiplist.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "subtype", + "cType": "uint8", + "canonical": "unsigned char" + } + ] + }, + { + "name": "skiplist_set_extra", + "file": "skiplist.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "data", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" + } + ] + }, + { + "name": "skiplist_headval", + "file": "skiplist.h", + "returnType": { + "c": "void *", + "canonical": "void *" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + } + ] + }, + { + "name": "common_entry_cmp", + "file": "span_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "i1", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "i2", + "cType": "const void *", + "canonical": "const void *" + } + ] + }, + { + "name": "span_index_leaf_consistent", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_gist_inner_consistent", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_index_recheck", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "span_lower_qsort_cmp", + "file": "span_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "b", + "cType": "const void *", + "canonical": "const void *" + } + ] + }, + { + "name": "span_upper_qsort_cmp", + "file": "span_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "a", + "cType": "const void *", + "canonical": "const void *" + }, + { + "name": "b", + "cType": "const void *", + "canonical": "const void *" + } + ] + }, + { + "name": "getQuadrant2D", + "file": "span_index.h", + "returnType": { + "c": "uint8", + "canonical": "unsigned char" + }, + "params": [ + { + "name": "centroid", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "overlap2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "contain2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "left2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "overLeft2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "right2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "overRight2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "adjacent2D", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "distance_span_nodespan", + "file": "span_index.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "query", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + } + ] + }, + { + "name": "span_spgist_get_span", + "file": "span_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "Span *", + "canonical": "Span *" + } + ] + }, + { + "name": "spannode_init", + "file": "span_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "nodebox", + "cType": "SpanNode *", + "canonical": "SpanNode *" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "spannode_copy", + "file": "span_index.h", + "returnType": { + "c": "SpanNode *", + "canonical": "SpanNode *" + }, + "params": [ + { + "name": "orig", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + } + ] + }, + { + "name": "spannode_quadtree_next", + "file": "span_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "centroid", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "quadrant", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "next_nodespan", + "cType": "SpanNode *", + "canonical": "SpanNode *" + } + ] + }, + { + "name": "spannode_kdtree_next", + "file": "span_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "nodebox", + "cType": "const SpanNode *", + "canonical": "const SpanNode *" + }, + { + "name": "centroid", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "node", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" + }, + { + "name": "next_nodespan", + "cType": "SpanNode *", + "canonical": "SpanNode *" + } + ] + }, + { + "name": "ensure_spanset_isof_type", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "spansettype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_same_spanset_type", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss1", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "ss2", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + } + ] + }, + { + "name": "ensure_same_spanset_span_type", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "ensure_valid_spanset_span", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "ensure_valid_spanset_spanset", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss1", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "ss2", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + } + ] + }, + { + "name": "spanset_find_value", + "file": "spanset.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "v", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "loc", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "datum_and", + "file": "tbool_ops.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_or", + "file": "tbool_ops.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "boolop_tbool_bool", + "file": "tbool_ops.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "b", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boolop_tbool_tbool", + "file": "tbool_ops.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + } + ] + }, + { + "name": "ensure_same_dimensionality_tbox", + "file": "tbox.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "set_tbox", + "file": "tbox.h", + "returnType": { + "c": "TBox *", + "canonical": "TBox *" + }, + "params": [ + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "span_tbox", + "file": "tbox.h", + "returnType": { + "c": "TBox *", + "canonical": "TBox *" + }, + "params": [ + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "tbox_tstzspan", + "file": "tbox.h", + "returnType": { + "c": "Span *", + "canonical": "Span *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_intspan", + "file": "tbox.h", + "returnType": { + "c": "Span *", + "canonical": "Span *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_floatspan", + "file": "tbox.h", + "returnType": { + "c": "Span *", + "canonical": "Span *" + }, + "params": [ + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_index_leaf_consistent", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tbox_gist_inner_consistent", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "key", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tbox_index_recheck", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "strategy", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tboxnode_init", + "file": "tbox_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "centroid", + "cType": "TBox *", + "canonical": "TBox *" + }, + { + "name": "nodebox", + "cType": "TboxNode *", + "canonical": "TboxNode *" + } + ] + }, + { + "name": "tboxnode_copy", + "file": "tbox_index.h", + "returnType": { + "c": "TboxNode *", + "canonical": "TboxNode *" + }, + "params": [ + { + "name": "box", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + } + ] + }, + { + "name": "getQuadrant4D", + "file": "tbox_index.h", + "returnType": { + "c": "uint8", + "canonical": "unsigned char" + }, + "params": [ + { + "name": "centroid", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "inBox", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tboxnode_quadtree_next", + "file": "tbox_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "centroid", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "quadrant", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "next_nodebox", + "cType": "TboxNode *", + "canonical": "TboxNode *" + } + ] + }, + { + "name": "tboxnode_kdtree_next", + "file": "tbox_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "centroid", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "node", + "cType": "uint8", + "canonical": "unsigned char" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" + }, + { + "name": "next_nodebox", + "cType": "TboxNode *", + "canonical": "TboxNode *" + } + ] + }, + { + "name": "overlap4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "contain4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "left4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "overLeft4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "right4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "overRight4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "before4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "overBefore4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "after4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "overAfter4D", + "file": "tbox_index.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "distance_tbox_nodebox", + "file": "tbox_index.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "nodebox", + "cType": "const TboxNode *", + "canonical": "const TboxNode *" + } + ] + }, + { + "name": "tnumber_spgist_get_tbox", + "file": "tbox_index.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "TBox *", + "canonical": "TBox *" + } + ] + }, + { + "name": "tbox_xmin_cmp", + "file": "tbox_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_xmax_cmp", + "file": "tbox_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_tmin_cmp", + "file": "tbox_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_tmax_cmp", + "file": "tbox_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "box1", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "box2", + "cType": "const TBox *", + "canonical": "const TBox *" + } + ] + }, + { + "name": "tbox_level_cmp", + "file": "tbox_index.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "centroid", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "query", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "level", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "datum_min_int32", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_max_int32", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_min_int64", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_max_int64", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_min_float8", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_max_float8", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_int32", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_int64", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_float8", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_min_text", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_max_text", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_double2", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_double3", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "datum_sum_double4", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Datum", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + } + ] + }, + { + "name": "temporal_skiplist_common", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "list", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "upper", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "update", + "cType": "int[32]", + "canonical": "int[32]" + } + ] + }, + { + "name": "temporal_skiplist_merge", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "void **", + "canonical": "void **" + }, + "params": [ + { + "name": "spliced", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "spliced_count", + "cType": "int", + "canonical": "int" + }, + { + "name": "values", + "cType": "void **", + "canonical": "void **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "newcount", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "tofree", + "cType": "void ***", + "canonical": "void ***" + }, + { + "name": "nfree", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tinstant_tagg", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "TInstant **", + "canonical": "TInstant **" + }, + "params": [ + { + "name": "instants1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count1", + "cType": "int", + "canonical": "int" + }, + { + "name": "instants2", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count2", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "newcount", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "tofree", + "cType": "void ***", + "canonical": "void ***" + }, + { + "name": "nfree", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tsequence_tagg", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "TSequence **", + "canonical": "TSequence **" + }, + "params": [ + { + "name": "sequences1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count1", + "cType": "int", + "canonical": "int" + }, + { + "name": "sequences2", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count2", + "cType": "int", + "canonical": "int" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "newcount", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "tcontseq_tagg_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "interpoint", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_tagg_combinefn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state1", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "state2", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tinstant_tagg_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + } + ] + }, + { + "name": "tinstant_tavg_finalfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tsequence_tavg_finalfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + } + ] + }, + { + "name": "tnumberinst_transform_tavg", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + } + ] + }, + { + "name": "temporal_transform_tcount", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + } + ] + }, + { + "name": "temporal_transform_tagg", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "Temporal **", + "canonical": "Temporal **" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "func", + "cType": "TInstant *(*)(const TInstant *)", + "canonical": "TInstant *(*)(const TInstant *)" + } + ] + }, + { + "name": "tsequenceset_tagg_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_tagg_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + } + ] + }, + { + "name": "temporal_tagg_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "arg2", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "temporal_tagg_transform_transfn", + "file": "temporal_aggfuncs.h", + "returnType": { + "c": "SkipList *", + "canonical": "struct SkipList *" + }, + "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "transform", + "cType": "TInstant *(*)(const TInstant *)", + "canonical": "TInstant *(*)(const TInstant *)" + } + ] + }, + { + "name": "temporal_similarity", + "file": "temporal_analytics.h", + "returnType": { + "c": "double", + "canonical": "double" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "simfunc", + "cType": "SimFunc", + "canonical": "SimFunc" + } + ] + }, + { + "name": "temporal_similarity_path", + "file": "temporal_analytics.h", + "returnType": { + "c": "Match *", + "canonical": "Match *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "simfunc", + "cType": "SimFunc", + "canonical": "SimFunc" + } + ] + }, + { + "name": "temporal_bbox_size", + "file": "temporal_boxops.h", + "returnType": { + "c": "size_t", + "canonical": "unsigned long" + }, + "params": [ + { + "name": "tempype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "tinstarr_set_bbox", + "file": "temporal_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "bbox", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tsequence_compute_bbox", + "file": "temporal_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" + } + ] + }, + { + "name": "tseqarr_compute_bbox", + "file": "temporal_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "bbox", + "cType": "void *", + "canonical": "void *" + } + ] + }, + { + "name": "tsequenceset_compute_bbox", + "file": "temporal_boxops.h", + "returnType": { + "c": "void", + "canonical": "void" + }, + "params": [ + { + "name": "ss", + "cType": "TSequenceSet *", + "canonical": "TSequenceSet *" + } + ] + }, + { + "name": "boxop_temporal_tstzspan", + "file": "temporal_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "func", + "cType": "bool (*)(const Span *, const Span *)", + "canonical": "_Bool (*)(const Span *, const Span *)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boxop_temporal_temporal", + "file": "temporal_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "bool (*)(const Span *, const Span *)", + "canonical": "_Bool (*)(const Span *, const Span *)" + } + ] + }, + { + "name": "boxop_tnumber_numspan", + "file": "temporal_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "func", + "cType": "bool (*)(const Span *, const Span *)", + "canonical": "_Bool (*)(const Span *, const Span *)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boxop_tnumber_tbox", + "file": "temporal_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "func", + "cType": "bool (*)(const TBox *, const TBox *)", + "canonical": "_Bool (*)(const TBox *, const TBox *)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "boxop_tnumber_tnumber", + "file": "temporal_boxops.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "bool (*)(const TBox *, const TBox *)", + "canonical": "_Bool (*)(const TBox *, const TBox *)" + } + ] + }, + { + "name": "eacomp_base_temporal", + "file": "temporal_compops.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "eacomp_temporal_base", + "file": "temporal_compops.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "eacomp_temporal_temporal", + "file": "temporal_compops.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "ever", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcomp_base_temporal", + "file": "temporal_compops.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + } + ] + }, + { + "name": "tcomp_temporal_base", + "file": "temporal_compops.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + } + ] + }, + { + "name": "tcomp_temporal_temporal", + "file": "temporal_compops.h", + "returnType": { + "c": "Temporal *", + "canonical": "Temporal *" + }, + "params": [ + { + "name": "temp1", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + } + ] + }, + { + "name": "tdiscseq_at_timestamptz", + "file": "temporal_restrict.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tdiscseq_restrict_value", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_restrict_values", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_minus_timestamptz", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tdiscseq_restrict_tstzset", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tdiscseq_restrict_tstzspanset", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] }, { - "name": "union_set_pose", - "file": "meos_pose.h", + "name": "tcontseq_restrict_value_iter", + "file": "temporal_restrict.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tcontseq_delete_timestamptz", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + } + ] + }, + { + "name": "tcontseq_delete_tstzset", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, { "name": "s", "cType": "const Set *", "canonical": "const Set *" + } + ] + }, + { + "name": "tcontseq_delete_tstzspanset", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequence *", + "canonical": "TSequence *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" } ] }, { - "name": "tpose_from_mfjson", - "file": "meos_pose.h", + "name": "tcontseq_at_tstzset", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" } ] }, { - "name": "tpose_in", - "file": "meos_pose.h", + "name": "tcontseq_minus_timestamptz", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tposeinst_make", - "file": "meos_pose.h", + "name": "tcontseq_minus_tstzset", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + } + ] + }, + { + "name": "tcontseq_minus_tstzspan", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + } + ] + }, + { + "name": "tcontseq_restrict_value", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tcontseq_restrict_values", + "file": "temporal_restrict.h", + "returnType": { + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + } + ] + }, + { + "name": "tsequence_at_values_iter", + "file": "temporal_restrict.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "set", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tnumberseq_cont_restrict_span_iter", + "file": "temporal_restrict.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tnumberseq_cont_restrict_spanset_iter", + "file": "temporal_restrict.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tsegment_at_timestamptz", + "file": "temporal_restrict.h", "returnType": { "c": "TInstant *", - "canonical": "struct TInstant *" + "canonical": "TInstant *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" }, { "name": "t", @@ -57306,341 +82787,551 @@ ] }, { - "name": "tpose_from_base_temp", - "file": "meos_pose.h", + "name": "tcontseq_minus_timestamp_iter", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "tposeseq_from_base_tstzset", - "file": "meos_pose.h", + "name": "tcontseq_minus_tstzset_iter", + "file": "temporal_restrict.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { "name": "s", "cType": "const Set *", "canonical": "const Set *" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "tposeseq_from_base_tstzspan", - "file": "meos_pose.h", + "name": "tcontseq_at_tstzspanset1", + "file": "temporal_restrict.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tcontseq_minus_tstzspanset_iter", + "file": "temporal_restrict.h", + "returnType": { + "c": "int", + "canonical": "int" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" + } + ] + }, + { + "name": "tcontseq_at_tstzspan", + "file": "temporal_restrict.h", "returnType": { "c": "TSequence *", - "canonical": "struct TSequence *" + "canonical": "TSequence *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { "name": "s", "cType": "const Span *", - "canonical": "const struct Span *" + "canonical": "const Span *" + } + ] + }, + { + "name": "tcontseq_at_timestamptz", + "file": "temporal_restrict.h", + "returnType": { + "c": "TInstant *", + "canonical": "TInstant *" + }, + "params": [ + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tposeseqset_from_base_tstzspanset", - "file": "meos_pose.h", + "name": "tcontseq_restrict_tstzspanset", + "file": "temporal_restrict.h", "returnType": { "c": "TSequenceSet *", - "canonical": "struct TSequenceSet *" + "canonical": "TSequenceSet *" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { "name": "ss", "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "canonical": "const SpanSet *" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_make", - "file": "meos_pose.h", + "name": "tdiscseq_value_at_timestamptz", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "tpoint", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "tradius", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "tpose_to_tpoint", - "file": "meos_pose.h", + "name": "tnumberseq_disc_restrict_span", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_end_value", - "file": "meos_pose.h", + "name": "tnumberseq_disc_restrict_spanset", + "file": "temporal_restrict.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_points", - "file": "meos_pose.h", + "name": "tnumberseq_cont_restrict_span", + "file": "temporal_restrict.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "span", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_rotation", - "file": "meos_pose.h", + "name": "tnumberseq_cont_restrict_spanset", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_yaw", - "file": "meos_pose.h", + "name": "tnumberseq_cont_twavg", + "file": "temporal_restrict.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "tpose_pitch", - "file": "meos_pose.h", + "name": "span_num_bins", + "file": "temporal_tile.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "origin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start_bin", + "cType": "Datum *", + "canonical": "unsigned long *" + }, + { + "name": "end_bin", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "tpose_roll", - "file": "meos_pose.h", + "name": "temporal_time_bin_init", + "file": "temporal_tile.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SpanBinState *", + "canonical": "struct SpanBinState *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "nbins", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpose_speed", - "file": "meos_pose.h", + "name": "tbox_tile_state_make", + "file": "temporal_tile.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TboxGridState *", + "canonical": "struct TboxGridState *" }, "params": [ { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" + }, + { + "name": "box", + "cType": "const TBox *", + "canonical": "const TBox *" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "xorigin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tpose_angular_speed", - "file": "meos_pose.h", + "name": "tbox_tile_state_next", + "file": "temporal_tile.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "TboxGridState *", + "canonical": "struct TboxGridState *" } ] }, { - "name": "tpose_start_value", - "file": "meos_pose.h", + "name": "tbox_tile_state_set", + "file": "temporal_tile.h", "returnType": { - "c": "Pose *", - "canonical": "struct Pose *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "tunits", + "cType": "int64", + "canonical": "long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "box", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tpose_trajectory", - "file": "meos_pose.h", + "name": "interval_units", + "file": "temporal_tile.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int64", + "canonical": "long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" } ] }, { - "name": "tpose_value_at_timestamptz", - "file": "meos_pose.h", + "name": "timestamptz_bin_start", + "file": "temporal_tile.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", + "name": "timestamp", "cType": "TimestampTz", "canonical": "long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "tunits", + "cType": "int64", + "canonical": "long" }, { - "name": "result", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tpose_value_n", - "file": "meos_pose.h", + "name": "datum_bin", + "file": "temporal_tile.h", "returnType": { - "c": "bool", - "canonical": "bool" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "size", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "result", - "cType": "Pose **", - "canonical": "struct Pose **" + "name": "offset", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tpose_values", - "file": "meos_pose.h", + "name": "tnumber_value_time_tile_init", + "file": "temporal_tile.h", "returnType": { - "c": "Pose **", - "canonical": "struct Pose **" + "c": "TboxGridState *", + "canonical": "struct TboxGridState *" }, "params": [ { @@ -57649,38 +83340,58 @@ "canonical": "const Temporal *" }, { - "name": "count", + "name": "vsize", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "duration", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "vorigin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "torigin", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "ntiles", "cType": "int *", "canonical": "int *" } ] }, { - "name": "tpose_at_geom", - "file": "meos_pose.h", + "name": "tbox_tile_state_get", + "file": "temporal_tile.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "state", + "cType": "TboxGridState *", + "canonical": "struct TboxGridState *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "box", + "cType": "TBox *", + "canonical": "TBox *" } ] }, { - "name": "tpose_at_stbox", - "file": "meos_pose.h", + "name": "temporal_transform_wcount", + "file": "temporal_waggfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { @@ -57689,23 +83400,23 @@ "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpose_at_pose", - "file": "meos_pose.h", + "name": "tnumber_transform_wavg", + "file": "temporal_waggfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { @@ -57714,600 +83425,825 @@ "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" + }, + { + "name": "count", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "tpose_minus_geom", - "file": "meos_pose.h", + "name": "temporal_wagg_transfn", + "file": "temporal_waggfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - } - ] - }, - { - "name": "tpose_minus_pose", - "file": "meos_pose.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "min", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "crossings", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tpose_minus_stbox", - "file": "meos_pose.h", + "name": "temporal_wagg_transform_transfn", + "file": "temporal_waggfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "SkipList *", + "canonical": "struct SkipList *" }, "params": [ + { + "name": "state", + "cType": "SkipList *", + "canonical": "struct SkipList *" + }, { "name": "temp", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "interval", + "cType": "const Interval *", + "canonical": "const Interval *" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "transform", + "cType": "TSequence **(*)(const Temporal *, const Interval *, int *)", + "canonical": "TSequence **(*)(const Temporal *, const Interval *, int *)" } ] }, { - "name": "tdistance_tpose_pose", - "file": "meos_pose.h", + "name": "tinstant_set", + "file": "tinstant.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "TInstant *", + "canonical": "TInstant *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "tdistance_tpose_geo", - "file": "meos_pose.h", + "name": "tnumberinst_double", + "file": "tinstant.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" } ] }, { - "name": "tdistance_tpose_tpose", - "file": "meos_pose.h", + "name": "tinstant_to_string", + "file": "tinstant.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "value_out", + "cType": "outfunc", + "canonical": "char *(*)(unsigned long, MeosType, int)" } ] }, { - "name": "nad_tpose_geo", - "file": "meos_pose.h", + "name": "tinstant_restrict_values_test", + "file": "tinstant.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nad_tpose_pose", - "file": "meos_pose.h", + "name": "tnumberinst_restrict_span_test", + "file": "tinstant.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "s", + "cType": "const Span *", + "canonical": "const Span *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nad_tpose_stbox", - "file": "meos_pose.h", + "name": "tnumberinst_restrict_spanset_test", + "file": "tinstant.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nad_tpose_tpose", - "file": "meos_pose.h", + "name": "tinstant_restrict_tstzset_test", + "file": "tinstant.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "s", + "cType": "const Set *", + "canonical": "const Set *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nai_tpose_geo", - "file": "meos_pose.h", + "name": "tinstant_restrict_tstzspanset_test", + "file": "tinstant.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "ss", + "cType": "const SpanSet *", + "canonical": "const SpanSet *" + }, + { + "name": "atfunc", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "nai_tpose_pose", - "file": "meos_pose.h", + "name": "intersection_tinstant_tinstant", + "file": "tinstant.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inter1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "inter2", + "cType": "TInstant **", + "canonical": "TInstant **" } ] }, { - "name": "nai_tpose_tpose", - "file": "meos_pose.h", + "name": "_mulmat", + "file": "tinyekf_meos.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "b", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "c", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "arows", + "cType": "const int", + "canonical": "const int" + }, + { + "name": "acols", + "cType": "const int", + "canonical": "const int" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "bcols", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "shortestline_tpose_geo", - "file": "meos_pose.h", + "name": "_mulvec", + "file": "tinyekf_meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "x", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "y", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "m", + "cType": "const int", + "canonical": "const int" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "shortestline_tpose_pose", - "file": "meos_pose.h", + "name": "_transpose", + "file": "tinyekf_meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "at", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "m", + "cType": "const int", + "canonical": "const int" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "shortestline_tpose_tpose", - "file": "meos_pose.h", + "name": "_addmat", + "file": "tinyekf_meos.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "b", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "c", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "m", + "cType": "const int", + "canonical": "const int" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_eq_pose_tpose", - "file": "meos_pose.h", + "name": "_negate", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "a", + "cType": "float *", + "canonical": "float *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "m", + "cType": "const int", + "canonical": "const int" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_eq_tpose_pose", - "file": "meos_pose.h", + "name": "_addeye", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "float *", + "canonical": "float *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_eq_tpose_tpose", - "file": "meos_pose.h", + "name": "_choldc1", + "file": "tinyekf_meos.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "float *", + "canonical": "float *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "p", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_ne_pose_tpose", - "file": "meos_pose.h", + "name": "_choldcsl", + "file": "tinyekf_meos.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "A", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "p", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_ne_tpose_pose", - "file": "meos_pose.h", + "name": "_cholsl", + "file": "tinyekf_meos.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "A", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "a", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "p", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "always_ne_tpose_tpose", - "file": "meos_pose.h", + "name": "_addvec", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "b", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "c", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "ever_eq_pose_tpose", - "file": "meos_pose.h", + "name": "_sub", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "b", + "cType": "const float *", + "canonical": "const float *" + }, + { + "name": "c", + "cType": "float *", + "canonical": "float *" + }, + { + "name": "n", + "cType": "const int", + "canonical": "const int" } ] }, { - "name": "ever_eq_tpose_pose", - "file": "meos_pose.h", + "name": "invert", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "a", + "cType": "const float *", + "canonical": "const float *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "ainv", + "cType": "float *", + "canonical": "float *" } ] }, { - "name": "ever_eq_tpose_tpose", - "file": "meos_pose.h", + "name": "ekf_initialize", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ekf", + "cType": "ekf_t *", + "canonical": "struct ekf_t *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "pdiag", + "cType": "const float", + "canonical": "const float" } ] }, { - "name": "ever_ne_pose_tpose", - "file": "meos_pose.h", + "name": "ekf_predict", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "ekf", + "cType": "ekf_t *", + "canonical": "struct ekf_t *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "fx", + "cType": "const float", + "canonical": "const float" + }, + { + "name": "F", + "cType": "const float", + "canonical": "const float" + }, + { + "name": "Q", + "cType": "const float", + "canonical": "const float" } ] }, { - "name": "ever_ne_tpose_pose", - "file": "meos_pose.h", + "name": "ekf_update_step3", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ekf", + "cType": "ekf_t *", + "canonical": "struct ekf_t *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "GH", + "cType": "float", + "canonical": "float" } ] }, { - "name": "ever_ne_tpose_tpose", - "file": "meos_pose.h", + "name": "ekf_update", + "file": "tinyekf_meos.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ekf", + "cType": "ekf_t *", + "canonical": "struct ekf_t *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "z", + "cType": "const float", + "canonical": "const float" + }, + { + "name": "hx", + "cType": "const float", + "canonical": "const float" + }, + { + "name": "H", + "cType": "const float", + "canonical": "const float" + }, + { + "name": "R", + "cType": "const float", + "canonical": "const float" } ] }, { - "name": "teq_pose_tpose", - "file": "meos_pose.h", + "name": "tfloat_arithop_turnpt", + "file": "tnumber_mathfuncs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "param", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "teq_tpose_pose", - "file": "meos_pose.h", + "name": "arithop_tnumber_number", + "file": "tnumber_mathfuncs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -58319,859 +84255,1244 @@ "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" - } - ] - }, - { - "name": "tne_pose_tpose", - "file": "meos_pose.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "oper", + "cType": "TArithmetic", + "canonical": "TArithmetic" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "invert", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "tne_tpose_pose", - "file": "meos_pose.h", + "name": "arithop_tnumber_tnumber", + "file": "tnumber_mathfuncs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" + }, + { + "name": "oper", + "cType": "TArithmetic", + "canonical": "TArithmetic" + }, + { + "name": "func", + "cType": "Datum (*)(Datum, Datum, MeosType)", + "canonical": "unsigned long (*)(unsigned long, unsigned long, MeosType)" + }, + { + "name": "tpfunc", + "cType": "tpfunc_temp", + "canonical": "int (*)(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, long, long, long *, long *)" } ] }, { - "name": "trgeometry_out", - "file": "meos_rgeo.h", + "name": "float_collinear", + "file": "tsequence.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "x1", + "cType": "double", + "canonical": "double" + }, + { + "name": "x2", + "cType": "double", + "canonical": "double" + }, + { + "name": "x3", + "cType": "double", + "canonical": "double" + }, + { + "name": "ratio", + "cType": "double", + "canonical": "double" } ] }, { - "name": "trgeoinst_make", - "file": "meos_rgeo.h", + "name": "floatsegm_interpolate", + "file": "tsequence.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "geom", - "cType": "const int *", - "canonical": "const int *" + "name": "value1", + "cType": "double", + "canonical": "double" }, { - "name": "pose", - "cType": "const Pose *", - "canonical": "const struct Pose *" + "name": "value2", + "cType": "double", + "canonical": "double" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "value", + "cType": "long double", + "canonical": "long double" } ] }, { - "name": "geo_tpose_to_trgeometry", - "file": "meos_rgeo.h", + "name": "floatsegm_locate", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "long double", + "canonical": "long double" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "value1", + "cType": "double", + "canonical": "double" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value2", + "cType": "double", + "canonical": "double" + }, + { + "name": "value", + "cType": "double", + "canonical": "double" } ] }, { - "name": "trgeometry_to_tpose", - "file": "meos_rgeo.h", + "name": "tnumbersegm_intersection", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "trgeometry_to_tpoint", - "file": "meos_rgeo.h", + "name": "tsequence_norm_test", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value3", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "t1", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t2", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t3", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "trgeometry_to_tgeometry", - "file": "meos_rgeo.h", + "name": "tsequence_join_test", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "removelast", + "cType": "bool *", + "canonical": "_Bool *" + }, + { + "name": "removefirst", + "cType": "bool *", + "canonical": "_Bool *" } ] }, { - "name": "trgeometry_end_instant", - "file": "meos_rgeo.h", + "name": "tsequence_join", + "file": "tsequence.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "removelast", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "removefirst", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "trgeometry_end_sequence", - "file": "meos_rgeo.h", + "name": "tinstarr_normalize", + "file": "tsequence.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "TInstant **", + "canonical": "TInstant **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "newcount", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "trgeometry_end_value", - "file": "meos_rgeo.h", + "name": "tcontseq_find_timestamptz", + "file": "tsequence.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "trgeometry_geom", - "file": "meos_rgeo.h", + "name": "tdiscseq_find_timestamptz", + "file": "tsequence.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "trgeometry_instant_n", - "file": "meos_rgeo.h", + "name": "tseqarr2_to_tseqarr", + "file": "tsequence.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "sequences", + "cType": "TSequence ***", + "canonical": "TSequence ***" }, { - "name": "n", + "name": "countseqs", + "cType": "int *", + "canonical": "int *" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "totalseqs", "cType": "int", "canonical": "int" } ] }, { - "name": "trgeometry_instants", - "file": "meos_rgeo.h", + "name": "ensure_valid_tinstarr_common", + "file": "tsequence.h", "returnType": { - "c": "TInstant **", - "canonical": "struct TInstant **" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { "name": "count", - "cType": "int *", - "canonical": "int *" + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "trgeometry_points", - "file": "meos_rgeo.h", + "name": "tsequence_make_exp1", + "file": "tsequence.h", "returnType": { - "c": "Set *", - "canonical": "Set *" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "maxcount", + "cType": "int", + "canonical": "int" + }, + { + "name": "lower_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "upper_inc", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "normalize", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "bbox", + "cType": "const void *", + "canonical": "const void *" } ] }, { - "name": "trgeometry_rotation", - "file": "meos_rgeo.h", + "name": "synchronize_tsequence_tsequence", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "sync1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "sync2", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "interpoint", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "trgeometry_segments", - "file": "meos_rgeo.h", + "name": "tfloatsegm_intersection_value", + "file": "tsequence.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "trgeometry_sequence_n", - "file": "meos_rgeo.h", + "name": "tsegment_intersection_value", + "file": "tsequence.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "i", - "cType": "int", - "canonical": "int" + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "trgeometry_sequences", - "file": "meos_rgeo.h", + "name": "tsegment_intersection", + "file": "tsequence.h", "returnType": { - "c": "TSequence **", - "canonical": "struct TSequence **" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start1", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "end1", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "start2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end2", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t1", + "cType": "TimestampTz *", + "canonical": "long *" + }, + { + "name": "t2", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "trgeometry_start_instant", - "file": "meos_rgeo.h", + "name": "tsegment_value_at_timestamptz", + "file": "tsequence.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "start", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "end", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "lower", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "upper", + "cType": "TimestampTz", + "canonical": "long" + }, + { + "name": "t", + "cType": "TimestampTz", + "canonical": "long" } ] }, { - "name": "trgeometry_start_sequence", - "file": "meos_rgeo.h", + "name": "intersection_tdiscseq_tdiscseq", + "file": "tsequence.h", "returnType": { - "c": "TSequence *", - "canonical": "struct TSequence *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inter1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "inter2", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_start_value", - "file": "meos_rgeo.h", + "name": "intersection_tcontseq_tdiscseq", + "file": "tsequence.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq1", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inter1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "inter2", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_value_n", - "file": "meos_rgeo.h", + "name": "intersection_tdiscseq_tcontseq", + "file": "tsequence.h", "returnType": { "c": "bool", "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "is", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "n", - "cType": "int", - "canonical": "int" + "name": "seq2", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "result", - "cType": "int **", - "canonical": "int **" + "name": "inter1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "inter2", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_traversed_area", - "file": "meos_rgeo.h", + "name": "intersection_tsequence_tinstant", + "file": "tsequence.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "unary_union", - "cType": "bool", - "canonical": "bool" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "inter1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "inter2", + "cType": "TInstant **", + "canonical": "TInstant **" } ] }, { - "name": "trgeometry_centroid", - "file": "meos_rgeo.h", + "name": "intersection_tinstant_tsequence", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inter1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "inter2", + "cType": "TInstant **", + "canonical": "TInstant **" } ] }, { - "name": "trgeometry_convex_hull", - "file": "meos_rgeo.h", + "name": "tsequence_to_string", + "file": "tsequence.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" + }, + { + "name": "component", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "value_out", + "cType": "outfunc", + "canonical": "char *(*)(unsigned long, MeosType, int)" } ] }, { - "name": "trgeometry_body_point_trajectory", - "file": "meos_rgeo.h", + "name": "ensure_increasing_timestamps", + "file": "tsequence.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst1", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "inst2", + "cType": "const TInstant *", + "canonical": "const TInstant *" + }, + { + "name": "strict", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "trgeometry_space_boxes", - "file": "meos_rgeo.h", + "name": "bbox_expand", + "file": "tsequence.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" + "name": "box1", + "cType": "const void *", + "canonical": "const void *" }, { - "name": "ysize", - "cType": "double", - "canonical": "double" + "name": "box2", + "cType": "void *", + "canonical": "void *" }, { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + } + ] + }, + { + "name": "ensure_valid_tinstarr", + "file": "tsequence.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "bitmatrix", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "border_inc", + "name": "merge", "cType": "bool", "canonical": "bool" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "trgeometry_space_time_boxes", - "file": "meos_rgeo.h", + "name": "tsequence_make_valid", + "file": "tsequence.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "xsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "ysize", - "cType": "double", - "canonical": "double" - }, - { - "name": "zsize", - "cType": "double", - "canonical": "double" - }, - { - "name": "duration", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "sorigin", - "cType": "const int *", - "canonical": "const int *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "torigin", - "cType": "TimestampTz", - "canonical": "long" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "bitmatrix", + "name": "lower_inc", "cType": "bool", "canonical": "bool" }, { - "name": "border_inc", + "name": "upper_inc", "cType": "bool", "canonical": "bool" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "trgeometry_stboxes", - "file": "meos_rgeo.h", + "name": "tnumberseq_shift_scale_value_iter", + "file": "tsequence.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "origin", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "delta", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "hasdelta", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "scale", + "cType": "double", + "canonical": "double" } ] }, { - "name": "trgeometry_split_n_stboxes", - "file": "meos_rgeo.h", + "name": "tsequence_shift_scale_time_iter", + "file": "tsequence.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "TSequence *", + "canonical": "TSequence *" }, { - "name": "box_count", - "cType": "int", - "canonical": "int" + "name": "delta", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "scale", + "cType": "double", + "canonical": "double" } ] }, { - "name": "trgeometry_split_each_n_stboxes", - "file": "meos_rgeo.h", + "name": "tstepseq_to_linear_iter", + "file": "tsequence.h", "returnType": { - "c": "STBox *", - "canonical": "struct STBox *" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "elem_count", - "cType": "int", - "canonical": "int" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "count", - "cType": "int *", - "canonical": "int *" + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_hausdorff_distance", - "file": "meos_rgeo.h", + "name": "tstepseq_to_linear", + "file": "tsequence.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" } ] }, { - "name": "trgeometry_frechet_distance", - "file": "meos_rgeo.h", + "name": "tsequence_segments_iter", + "file": "tsequence.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "result", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_dyntimewarp_distance", - "file": "meos_rgeo.h", + "name": "tsequence_timestamps_iter", + "file": "tsequence.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "int", + "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "result", + "cType": "TimestampTz *", + "canonical": "long *" } ] }, { - "name": "trgeometry_frechet_path", - "file": "meos_rgeo.h", + "name": "tsequenceset_find_timestamptz", + "file": "tsequenceset.h", "returnType": { - "c": "Match *", - "canonical": "Match *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "t", + "cType": "TimestampTz", + "canonical": "long" }, { - "name": "count", + "name": "loc", "cType": "int *", "canonical": "int *" } ] }, { - "name": "trgeometry_dyntimewarp_path", - "file": "meos_rgeo.h", + "name": "tseqarr_normalize", + "file": "tsequenceset.h", "returnType": { - "c": "Match *", - "canonical": "Match *" + "c": "TSequence **", + "canonical": "TSequence **" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "count", + "name": "newcount", "cType": "int *", "canonical": "int *" } ] }, { - "name": "trgeometry_length", - "file": "meos_rgeo.h", + "name": "datum_distance", + "file": "tsequenceset.h", "returnType": { "c": "double", "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "trgeometry_cumulative_length", - "file": "meos_rgeo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "value1", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "trgeometry_speed", - "file": "meos_rgeo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ + "name": "value2", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "flags", + "cType": "int16", + "canonical": "short" } ] }, { - "name": "trgeometry_twcentroid", - "file": "meos_rgeo.h", + "name": "ensure_valid_tinstarr_gaps", + "file": "tsequenceset.h", "returnType": { "c": "int *", "canonical": "int *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - } - ] - }, - { - "name": "trgeometry_append_tinstant", - "file": "meos_rgeo.h", - "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" - }, - "params": [ - { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "inst", - "cType": "const TInstant *", - "canonical": "const struct TInstant *" + "name": "count", + "cType": "int", + "canonical": "int" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "merge", + "cType": "bool", + "canonical": "bool" }, { "name": "maxdist", @@ -59180,324 +85501,354 @@ }, { "name": "maxt", - "cType": "const int *", - "canonical": "const int *" + "cType": "const Interval *", + "canonical": "const Interval *" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "nsplits", + "cType": "int *", + "canonical": "int *" } ] }, { - "name": "trgeometry_append_tsequence", - "file": "meos_rgeo.h", + "name": "ensure_valid_tseqarr", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "Temporal *", - "canonical": "Temporal *" - }, - { - "name": "seq", - "cType": "const TSequence *", - "canonical": "const struct TSequence *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "expand", - "cType": "bool", - "canonical": "bool" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "trgeometry_delete_timestamptz", - "file": "meos_rgeo.h", + "name": "synchronize_tsequenceset_tsequence", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "mode", + "cType": "SyncMode", + "canonical": "SyncMode" + }, + { + "name": "inter1", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" + }, + { + "name": "inter2", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" } ] }, { - "name": "trgeometry_delete_tstzset", - "file": "meos_rgeo.h", + "name": "synchronize_tsequenceset_tsequenceset", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss1", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" + "name": "ss2", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "mode", + "cType": "SyncMode", + "canonical": "SyncMode" + }, + { + "name": "inter1", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" + }, + { + "name": "inter2", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" } ] }, { - "name": "trgeometry_delete_tstzspan", - "file": "meos_rgeo.h", + "name": "intersection_tsequenceset_tinstant", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "inter1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "inter2", + "cType": "TInstant **", + "canonical": "TInstant **" } ] }, { - "name": "trgeometry_delete_tstzspanset", - "file": "meos_rgeo.h", + "name": "intersection_tinstant_tsequenceset", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "inst", + "cType": "const TInstant *", + "canonical": "const TInstant *" }, { "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "connect", - "cType": "bool", - "canonical": "bool" + "name": "inter1", + "cType": "TInstant **", + "canonical": "TInstant **" + }, + { + "name": "inter2", + "cType": "TInstant **", + "canonical": "TInstant **" } ] }, { - "name": "trgeometry_round", - "file": "meos_rgeo.h", + "name": "intersection_tsequenceset_tdiscseq", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "maxdd", - "cType": "int", - "canonical": "int" + "name": "is", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "inter1", + "cType": "TSequence **", + "canonical": "TSequence **" + }, + { + "name": "inter2", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_set_interp", - "file": "meos_rgeo.h", + "name": "intersection_tdiscseq_tsequenceset", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "is", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "inter1", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "interp", - "cType": "interpType", - "canonical": "interpType" + "name": "inter2", + "cType": "TSequence **", + "canonical": "TSequence **" } ] }, { - "name": "trgeometry_to_tinstant", - "file": "meos_rgeo.h", + "name": "intersection_tsequence_tsequenceset", + "file": "tsequenceset.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "seq", + "cType": "const TSequence *", + "canonical": "const TSequence *" + }, + { + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" + }, + { + "name": "mode", + "cType": "SyncMode", + "canonical": "SyncMode" + }, + { + "name": "inter1", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" + }, + { + "name": "inter2", + "cType": "TSequenceSet **", + "canonical": "TSequenceSet **" } ] }, { - "name": "trgeometry_after_timestamptz", - "file": "meos_rgeo.h", + "name": "tsequenceset_to_string", + "file": "tsequenceset.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "ss", + "cType": "const TSequenceSet *", + "canonical": "const TSequenceSet *" }, { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "maxdd", + "cType": "int", + "canonical": "int" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "value_out", + "cType": "outfunc", + "canonical": "char *(*)(unsigned long, MeosType, int)" } ] }, { - "name": "trgeometry_before_timestamptz", - "file": "meos_rgeo.h", + "name": "datum_textcat", + "file": "ttext_funcs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "strict", - "cType": "bool", - "canonical": "bool" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "trgeometry_restrict_value", - "file": "meos_rgeo.h", + "name": "datum_lower", + "file": "ttext_funcs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, { "name": "value", "cType": "Datum", - "canonical": "int ((int *))()" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "canonical": "unsigned long" } ] }, { - "name": "trgeometry_restrict_values", - "file": "meos_rgeo.h", + "name": "datum_upper", + "file": "ttext_funcs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "trgeometry_restrict_timestamptz", - "file": "meos_rgeo.h", + "name": "datum_initcap", + "file": "ttext_funcs.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" } ] }, { - "name": "trgeometry_restrict_tstzset", - "file": "meos_rgeo.h", + "name": "textfunc_ttext", + "file": "ttext_funcs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -59509,20 +85860,15 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Set *", - "canonical": "const Set *" - }, - { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "func", + "cType": "datum_func1", + "canonical": "unsigned long (*)(unsigned long)" } ] }, { - "name": "trgeometry_restrict_tstzspan", - "file": "meos_rgeo.h", + "name": "textfunc_ttext_text", + "file": "ttext_funcs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" @@ -59534,1354 +85880,1534 @@ "canonical": "const Temporal *" }, { - "name": "s", - "cType": "const Span *", - "canonical": "const struct Span *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "atfunc", + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" + }, + { + "name": "invert", "cType": "bool", "canonical": "bool" } ] }, { - "name": "trgeometry_restrict_tstzspanset", - "file": "meos_rgeo.h", + "name": "textfunc_ttext_ttext", + "file": "ttext_funcs.h", "returnType": { "c": "Temporal *", "canonical": "Temporal *" }, "params": [ { - "name": "temp", + "name": "temp1", "cType": "const Temporal *", "canonical": "const Temporal *" }, { - "name": "ss", - "cType": "const SpanSet *", - "canonical": "const struct SpanSet *" + "name": "temp2", + "cType": "const Temporal *", + "canonical": "const Temporal *" }, { - "name": "atfunc", - "cType": "bool", - "canonical": "bool" + "name": "func", + "cType": "datum_func2", + "canonical": "unsigned long (*)(unsigned long, unsigned long)" } ] }, { - "name": "trgeometry_at_geom", - "file": "meos_rgeo.h", + "name": "datum_as_wkb", + "file": "type_inout.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "uint8_t *", + "canonical": "unsigned char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size_out", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "trgeometry_minus_geom", - "file": "meos_rgeo.h", + "name": "datum_as_hexwkb", + "file": "type_inout.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "variant", + "cType": "uint8_t", + "canonical": "unsigned char" + }, + { + "name": "size", + "cType": "size_t *", + "canonical": "unsigned long *" } ] }, { - "name": "trgeometry_at_stbox", - "file": "meos_rgeo.h", + "name": "type_from_wkb", + "file": "type_inout.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "trgeometry_minus_stbox", - "file": "meos_rgeo.h", + "name": "type_from_hexwkb", + "file": "type_inout.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "hexwkb", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" }, { - "name": "border_inc", - "cType": "bool", - "canonical": "bool" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tdistance_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "ensure_end_input", + "file": "type_parser.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "tdistance_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "p_whitespace", + "file": "type_parser.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "tdistance_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "p_delimchar", + "file": "type_parser.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "delim", + "cType": "char", + "canonical": "char" } ] }, { - "name": "nad_stbox_trgeometry", - "file": "meos_rgeo.h", + "name": "p_obrace", + "file": "type_parser.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "nad_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "ensure_obrace", + "file": "type_parser.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "nad_trgeometry_stbox", - "file": "meos_rgeo.h", + "name": "p_cbrace", + "file": "type_parser.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "box", - "cType": "const STBox *", - "canonical": "const struct STBox *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "nad_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "ensure_cbrace", + "file": "type_parser.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "nad_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "p_obracket", + "file": "type_parser.h", "returnType": { - "c": "double", - "canonical": "double" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "nai_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "p_cbracket", + "file": "type_parser.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, + "name": "str", + "cType": "const char **", + "canonical": "const char **" + } + ] + }, + { + "name": "p_oparen", + "file": "type_parser.h", + "returnType": { + "c": "bool", + "canonical": "bool" + }, + "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "nai_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "ensure_oparen", + "file": "type_parser.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "nai_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "p_cparen", + "file": "type_parser.h", "returnType": { - "c": "TInstant *", - "canonical": "struct TInstant *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "shortestline_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "ensure_cparen", + "file": "type_parser.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "const char *", + "canonical": "const char *" } ] }, { - "name": "shortestline_trgeometry_tpoint", - "file": "meos_rgeo.h", + "name": "p_comma", + "file": "type_parser.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "shortestline_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "basetype_parse", + "file": "type_parser.h", "returnType": { - "c": "int *", - "canonical": "int *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "basetypid", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "delim", + "cType": "char", + "canonical": "char" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "always_eq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "double_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "result", + "cType": "double *", + "canonical": "double *" } ] }, { - "name": "always_eq_trgeometry_geo", - "file": "meos_rgeo.h", - "returnType": { - "c": "int", - "canonical": "int" + "name": "elem_parse", + "file": "type_parser.h", + "returnType": { + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "always_eq_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "set_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Set *", + "canonical": "Set *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "always_ne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "span_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "span", + "cType": "Span *", + "canonical": "Span *" } ] }, { - "name": "always_ne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "spanset_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "SpanSet *", + "canonical": "SpanSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "spantype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "always_ne_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "tbox_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TBox *", + "canonical": "TBox *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "ever_eq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "timestamp_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TimestampTz", + "canonical": "long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" - }, - { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" } ] }, { - "name": "ever_eq_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "tinstant_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TInstant *", + "canonical": "TInstant *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ever_eq_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "tdiscseq_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "ever_ne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "tcontseq_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequence *", + "canonical": "TSequence *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "ever_ne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "tsequenceset_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "TSequenceSet *", + "canonical": "TSequenceSet *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "interp", + "cType": "interpType", + "canonical": "interpType" } ] }, { - "name": "ever_ne_trgeometry_trgeometry", - "file": "meos_rgeo.h", + "name": "temporal_parse", + "file": "type_parser.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Temporal *", + "canonical": "Temporal *" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "str", + "cType": "const char **", + "canonical": "const char **" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "temptype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "teq_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "datum_copy", + "file": "type_util.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "typid", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "teq_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "datum_double", + "file": "type_util.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "d", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tne_geo_trgeometry", - "file": "meos_rgeo.h", + "name": "double_datum", + "file": "type_util.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "d", + "cType": "double", + "canonical": "double" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "tne_trgeometry_geo", - "file": "meos_rgeo.h", + "name": "bstring2bytea", + "file": "type_util.h", "returnType": { - "c": "Temporal *", - "canonical": "Temporal *" + "c": "bytea *", + "canonical": "struct varlena *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "wkb", + "cType": "const uint8_t *", + "canonical": "const unsigned char *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "size", + "cType": "size_t", + "canonical": "unsigned long" } ] }, { - "name": "econtains_geo_trgeo", - "file": "meos_rgeo.h", + "name": "basetype_in", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "end", + "cType": "bool", + "canonical": "bool" + }, + { + "name": "result", + "cType": "Datum *", + "canonical": "unsigned long *" } ] }, { - "name": "acontains_geo_trgeo", - "file": "meos_rgeo.h", + "name": "basetype_out", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "value", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" + }, + { + "name": "maxdd", + "cType": "int", + "canonical": "int" } ] }, { - "name": "ecovers_geo_trgeo", - "file": "meos_rgeo.h", + "name": "pfree_array", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "array", + "cType": "void **", + "canonical": "void **" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "acovers_geo_trgeo", - "file": "meos_rgeo.h", + "name": "string_escape", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "str", + "cType": "const char *", + "canonical": "const char *" }, { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "quotes", + "cType": "int", + "canonical": "int" + }, + { + "name": "result", + "cType": "char **", + "canonical": "char **" } ] }, { - "name": "ecovers_trgeo_geo", - "file": "meos_rgeo.h", + "name": "stringarr_to_string", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "char *", + "canonical": "char *" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "strings", + "cType": "char **", + "canonical": "char **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "prefix", + "cType": "const char *", + "canonical": "const char *" + }, + { + "name": "open", + "cType": "char", + "canonical": "char" + }, + { + "name": "close", + "cType": "char", + "canonical": "char" + }, + { + "name": "quotes", + "cType": "int", + "canonical": "int" + }, + { + "name": "spaces", + "cType": "bool", + "canonical": "bool" } ] }, { - "name": "acovers_trgeo_geo", - "file": "meos_rgeo.h", + "name": "datumarr_sort", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Datum *", + "canonical": "unsigned long *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edisjoint_trgeo_geo", - "file": "meos_rgeo.h", + "name": "tstzarr_sort", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "times", + "cType": "TimestampTz *", + "canonical": "long *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "adisjoint_trgeo_geo", - "file": "meos_rgeo.h", + "name": "spanarr_sort", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "spans", + "cType": "Span *", + "canonical": "Span *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "eintersects_trgeo_geo", - "file": "meos_rgeo.h", + "name": "tinstarr_sort", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "aintersects_trgeo_geo", - "file": "meos_rgeo.h", + "name": "tseqarr_sort", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "void", + "canonical": "void" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "sequences", + "cType": "TSequence **", + "canonical": "TSequence **" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "etouches_trgeo_geo", - "file": "meos_rgeo.h", + "name": "datumarr_remove_duplicates", + "file": "type_util.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "Datum *", + "canonical": "unsigned long *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" + }, + { + "name": "basetype", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "atouches_trgeo_geo", - "file": "meos_rgeo.h", + "name": "tstzarr_remove_duplicates", + "file": "type_util.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "values", + "cType": "TimestampTz *", + "canonical": "long *" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "edwithin_trgeo_geo", - "file": "meos_rgeo.h", + "name": "tinstarr_remove_duplicates", + "file": "type_util.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" - }, - { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "instants", + "cType": "TInstant **", + "canonical": "TInstant **" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "count", + "cType": "int", + "canonical": "int" } ] }, { - "name": "adwithin_trgeo_geo", - "file": "meos_rgeo.h", + "name": "datum_add", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "gs", - "cType": "const int *", - "canonical": "const int *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edisjoint_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_sub", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adisjoint_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_mul", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "eintersects_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_div", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "aintersects_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_cmp", + "file": "type_util.h", "returnType": { "c": "int", "canonical": "int" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "edwithin_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_eq", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "adwithin_trgeo_trgeo", - "file": "meos_rgeo.h", + "name": "datum_ne", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "temp1", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "temp2", - "cType": "const Temporal *", - "canonical": "const Temporal *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "dist", - "cType": "double", - "canonical": "double" + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "geo_get_srid", - "file": "postgis_ext_defs.in.h", + "name": "datum_lt", + "file": "type_util.h", "returnType": { - "c": "int32", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "g", - "cType": "const GSERIALIZED *", - "canonical": "const GSERIALIZED *" - } - ] - }, - { - "name": "date_in", - "file": "postgres_ext_defs.in.h", - "returnType": { - "c": "DateADT", - "canonical": "int" - }, - "params": [ + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "date_out", - "file": "postgres_ext_defs.in.h", + "name": "datum_le", + "file": "type_util.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "d", - "cType": "DateADT", - "canonical": "int" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "interval_cmp", - "file": "postgres_ext_defs.in.h", + "name": "datum_gt", + "file": "type_util.h", "returnType": { - "c": "int", - "canonical": "int" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "interv1", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "interv2", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "interval_in", - "file": "postgres_ext_defs.in.h", + "name": "datum_ge", + "file": "type_util.h", "returnType": { - "c": "Interval *", - "canonical": "Interval *" + "c": "bool", + "canonical": "bool" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "interval_out", - "file": "postgres_ext_defs.in.h", + "name": "datum2_eq", + "file": "type_util.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "interv", - "cType": "const Interval *", - "canonical": "const Interval *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "time_in", - "file": "postgres_ext_defs.in.h", + "name": "datum2_ne", + "file": "type_util.h", "returnType": { - "c": "TimeADT", - "canonical": "long" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "time_out", - "file": "postgres_ext_defs.in.h", + "name": "datum2_lt", + "file": "type_util.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "t", - "cType": "TimeADT", - "canonical": "long" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "timestamp_in", - "file": "postgres_ext_defs.in.h", + "name": "datum2_le", + "file": "type_util.h", "returnType": { - "c": "Timestamp", - "canonical": "long" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "timestamp_out", - "file": "postgres_ext_defs.in.h", + "name": "datum2_gt", + "file": "type_util.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "t", - "cType": "Timestamp", - "canonical": "long" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "timestamptz_in", - "file": "postgres_ext_defs.in.h", + "name": "datum2_ge", + "file": "type_util.h", "returnType": { - "c": "TimestampTz", - "canonical": "long" + "c": "Datum", + "canonical": "unsigned long" }, "params": [ { - "name": "str", - "cType": "const char *", - "canonical": "const char *" + "name": "l", + "cType": "Datum", + "canonical": "unsigned long" }, { - "name": "typmod", - "cType": "int32", - "canonical": "int" + "name": "r", + "cType": "Datum", + "canonical": "unsigned long" + }, + { + "name": "type", + "cType": "MeosType", + "canonical": "MeosType" } ] }, { - "name": "timestamptz_out", - "file": "postgres_ext_defs.in.h", + "name": "hypot3d", + "file": "type_util.h", "returnType": { - "c": "char *", - "canonical": "char *" + "c": "double", + "canonical": "double" }, "params": [ { - "name": "t", - "cType": "TimestampTz", - "canonical": "long" + "name": "x", + "cType": "double", + "canonical": "double" + }, + { + "name": "y", + "cType": "double", + "canonical": "double" + }, + { + "name": "z", + "cType": "double", + "canonical": "double" } ] } @@ -60935,37 +87461,37 @@ { "name": "spantype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "basetype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 8 }, { "name": "lower_inc", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 16 }, { "name": "upper_inc", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 24 }, { "name": "padding", "cType": "char[4]", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "lower", - "cType": "int", - "offset_bits": -1 + "cType": "Datum", + "offset_bits": 64 }, { "name": "upper", - "cType": "int", - "offset_bits": -1 + "cType": "Datum", + "offset_bits": 128 } ] }, @@ -60976,47 +87502,47 @@ { "name": "vl_len_", "cType": "int32", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "spansettype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "spantype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 40 }, { "name": "basetype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 48 }, { "name": "padding", "cType": "char", - "offset_bits": -1 + "offset_bits": 56 }, { "name": "count", "cType": "int32", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "maxcount", "cType": "int32", - "offset_bits": -1 + "offset_bits": 96 }, { "name": "span", "cType": "Span", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "elems", "cType": "Span[1]", - "offset_bits": -1 + "offset_bits": 320 } ] }, @@ -61027,17 +87553,17 @@ { "name": "period", "cType": "Span", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "span", "cType": "Span", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 384 } ] }, @@ -61048,47 +87574,47 @@ { "name": "period", "cType": "Span", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "xmin", "cType": "double", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "ymin", "cType": "double", - "offset_bits": -1 + "offset_bits": 256 }, { "name": "zmin", "cType": "double", - "offset_bits": -1 + "offset_bits": 320 }, { "name": "xmax", "cType": "double", - "offset_bits": -1 + "offset_bits": 384 }, { "name": "ymax", "cType": "double", - "offset_bits": -1 + "offset_bits": 448 }, { "name": "zmax", "cType": "double", - "offset_bits": -1 + "offset_bits": 512 }, { "name": "srid", "cType": "int32_t", - "offset_bits": -1 + "offset_bits": 576 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 608 } ] }, @@ -61125,32 +87651,32 @@ { "name": "vl_len_", "cType": "int32", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "temptype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "subtype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 40 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 48 }, { "name": "t", "cType": "TimestampTz", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "value", - "cType": "int", - "offset_bits": -1 + "cType": "Datum", + "offset_bits": 128 } ], "meosType": "TPointInst" @@ -61162,47 +87688,47 @@ { "name": "vl_len_", "cType": "int32", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "temptype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "subtype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 40 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 48 }, { "name": "count", "cType": "int32", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "maxcount", "cType": "int32", - "offset_bits": -1 + "offset_bits": 96 }, { "name": "bboxsize", "cType": "int16", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "padding", "cType": "char[6]", - "offset_bits": -1 + "offset_bits": 144 }, { "name": "period", "cType": "Span", - "offset_bits": -1 + "offset_bits": 192 } ], "meosType": "TPointSeq" @@ -61214,52 +87740,52 @@ { "name": "vl_len_", "cType": "int32", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "temptype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "subtype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 40 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 48 }, { "name": "count", "cType": "int32", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "totalcount", "cType": "int32", - "offset_bits": -1 + "offset_bits": 96 }, { "name": "maxcount", "cType": "int32", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "bboxsize", "cType": "int16", - "offset_bits": -1 + "offset_bits": 160 }, { "name": "padding", "cType": "int16", - "offset_bits": -1 + "offset_bits": 176 }, { "name": "period", "cType": "Span", - "offset_bits": -1 + "offset_bits": 192 } ] }, @@ -61682,6 +88208,38 @@ } ] }, + { + "name": "STboxNode", + "file": "stbox_index.h", + "fields": [ + { + "name": "left", + "cType": "STBox", + "offset_bits": 0 + }, + { + "name": "right", + "cType": "STBox", + "offset_bits": 640 + } + ] + }, + { + "name": "SortedSTbox", + "file": "stbox_index.h", + "fields": [ + { + "name": "box", + "cType": "STBox", + "offset_bits": 0 + }, + { + "name": "i", + "cType": "int", + "offset_bits": 640 + } + ] + }, { "name": "GeoAggregateState", "file": "tgeo_aggfuncs.h", @@ -61726,97 +88284,97 @@ { "name": "done", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "hasx", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 8 }, { "name": "hasz", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 16 }, { "name": "hast", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 24 }, { "name": "i", "cType": "int", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "xsize", "cType": "double", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "ysize", "cType": "double", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "zsize", "cType": "double", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "tunits", "cType": "int64", - "offset_bits": -1 + "offset_bits": 256 }, { "name": "box", "cType": "STBox", - "offset_bits": -1 + "offset_bits": 320 }, { "name": "temp", "cType": "const Temporal *", - "offset_bits": -1 + "offset_bits": 960 }, { "name": "bm", "cType": "BitMatrix *", - "offset_bits": -1 + "offset_bits": 1024 }, { "name": "x", "cType": "double", - "offset_bits": -1 + "offset_bits": 1088 }, { "name": "y", "cType": "double", - "offset_bits": -1 + "offset_bits": 1152 }, { "name": "z", "cType": "double", - "offset_bits": -1 + "offset_bits": 1216 }, { "name": "t", "cType": "TimestampTz", - "offset_bits": -1 + "offset_bits": 1280 }, { "name": "ntiles", "cType": "int", - "offset_bits": -1 + "offset_bits": 1344 }, { "name": "max_coords", "cType": "int[4]", - "offset_bits": -1 + "offset_bits": 1376 }, { "name": "coords", "cType": "int[4]", - "offset_bits": -1 + "offset_bits": 1504 } ] }, @@ -61879,57 +88437,57 @@ { "name": "period", "cType": "Span", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "xmin", "cType": "double", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "ymin", "cType": "double", - "offset_bits": -1 + "offset_bits": 256 }, { "name": "zmin", "cType": "double", - "offset_bits": -1 + "offset_bits": 320 }, { "name": "xmax", "cType": "double", - "offset_bits": -1 + "offset_bits": 384 }, { "name": "ymax", "cType": "double", - "offset_bits": -1 + "offset_bits": 448 }, { "name": "zmax", "cType": "double", - "offset_bits": -1 + "offset_bits": 512 }, { "name": "srid", "cType": "int32_t", - "offset_bits": -1 + "offset_bits": 576 }, { "name": "pcid", "cType": "uint32_t", - "offset_bits": -1 + "offset_bits": 608 }, { "name": "flags", "cType": "int16", - "offset_bits": -1 + "offset_bits": 640 }, { "name": "padding", "cType": "char[6]", - "offset_bits": -1 + "offset_bits": 656 } ] }, @@ -63089,43 +89647,6 @@ } ] }, - { - "name": "Interval", - "file": "postgres_ext_defs.in.h", - "fields": [ - { - "name": "time", - "cType": "TimeOffset", - "offset_bits": 0 - }, - { - "name": "day", - "cType": "int32", - "offset_bits": 64 - }, - { - "name": "month", - "cType": "int32", - "offset_bits": 96 - } - ] - }, - { - "name": "varlena", - "file": "postgres_ext_defs.in.h", - "fields": [ - { - "name": "vl_len_", - "cType": "char[4]", - "offset_bits": 0 - }, - { - "name": "vl_dat", - "cType": "char[]", - "offset_bits": 32 - } - ] - }, { "name": "cfp_elem", "file": "trgeo_distance.h", @@ -63247,27 +89768,27 @@ { "name": "val", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "inclusive", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "lower", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 72 }, { "name": "spantype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 80 }, { "name": "basetype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 88 } ] }, @@ -63278,67 +89799,67 @@ { "name": "func", "cType": "varfunc", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "numparam", "cType": "int", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "param", - "cType": "int", - "offset_bits": -1 + "cType": "Datum[1]", + "offset_bits": 128 }, { "name": "argtype", "cType": "MeosType[2]", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "restype", "cType": "MeosType", - "offset_bits": -1 + "offset_bits": 256 }, { "name": "reslinear", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 288 }, { "name": "invert", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 296 }, { "name": "discont", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 304 }, { "name": "ever", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 312 }, { "name": "tpfn_unary", "cType": "tpfunc_unary", - "offset_bits": -1 + "offset_bits": 320 }, { "name": "cross_type", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 384 }, { "name": "tpfn_base", "cType": "tpfunc_base", - "offset_bits": -1 + "offset_bits": 448 }, { "name": "tpfn_temp", "cType": "tpfunc_temp", - "offset_bits": -1 + "offset_bits": 512 } ] }, @@ -63373,6 +89894,70 @@ } ] }, + { + "name": "SpanNode", + "file": "span_index.h", + "fields": [ + { + "name": "left", + "cType": "Span", + "offset_bits": 0 + }, + { + "name": "right", + "cType": "Span", + "offset_bits": 192 + } + ] + }, + { + "name": "SortedSpan", + "file": "span_index.h", + "fields": [ + { + "name": "s", + "cType": "Span", + "offset_bits": 0 + }, + { + "name": "i", + "cType": "int", + "offset_bits": 192 + } + ] + }, + { + "name": "TboxNode", + "file": "tbox_index.h", + "fields": [ + { + "name": "left", + "cType": "TBox", + "offset_bits": 0 + }, + { + "name": "right", + "cType": "TBox", + "offset_bits": 448 + } + ] + }, + { + "name": "SortedTbox", + "file": "tbox_index.h", + "fields": [ + { + "name": "box", + "cType": "TBox", + "offset_bits": 0 + }, + { + "name": "i", + "cType": "int", + "offset_bits": 448 + } + ] + }, { "name": "SimilarityPathState", "file": "temporal_analytics.h", @@ -63432,47 +90017,47 @@ { "name": "done", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "basetype", "cType": "uint8", - "offset_bits": -1 + "offset_bits": 8 }, { "name": "i", "cType": "int", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "size", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "origin", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "span", "cType": "Span", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "to_split", "cType": "const void *", - "offset_bits": -1 + "offset_bits": 384 }, { "name": "value", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 448 }, { "name": "nbins", "cType": "int", - "offset_bits": -1 + "offset_bits": 512 } ] }, @@ -63483,56 +90068,72 @@ { "name": "done", "cType": "_Bool", - "offset_bits": -1 + "offset_bits": 0 }, { "name": "i", "cType": "int", - "offset_bits": -1 + "offset_bits": 32 }, { "name": "vsize", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 64 }, { "name": "tunits", "cType": "int64", - "offset_bits": -1 + "offset_bits": 128 }, { "name": "box", "cType": "TBox", - "offset_bits": -1 + "offset_bits": 192 }, { "name": "temp", "cType": "const Temporal *", - "offset_bits": -1 + "offset_bits": 640 }, { "name": "value", "cType": "Datum", - "offset_bits": -1 + "offset_bits": 704 }, { "name": "t", "cType": "TimestampTz", - "offset_bits": -1 + "offset_bits": 768 }, { "name": "ntiles", "cType": "int", - "offset_bits": -1 + "offset_bits": 832 }, { "name": "max_coords", "cType": "int[2]", - "offset_bits": -1 + "offset_bits": 864 }, { "name": "coords", "cType": "int[2]", + "offset_bits": 928 + } + ] + }, + { + "name": "ekf_t", + "file": "tinyekf_meos.h", + "fields": [ + { + "name": "x", + "cType": "float", + "offset_bits": -1 + }, + { + "name": "P", + "cType": "float", "offset_bits": -1 } ] @@ -63970,47 +90571,47 @@ "value": 62 }, { - "name": "T_PCPOINT", + "name": "T_TBIGINT", "value": 63 }, { - "name": "T_PCPOINTSET", + "name": "T_H3INDEX", "value": 64 }, { - "name": "T_TPCPOINT", + "name": "T_H3INDEXSET", "value": 65 }, { - "name": "T_PCPATCH", + "name": "T_TH3INDEX", "value": 66 }, { - "name": "T_PCPATCHSET", + "name": "T_PCPOINT", "value": 67 }, { - "name": "T_TPCPATCH", + "name": "T_PCPOINTSET", "value": 68 }, { - "name": "T_TPCBOX", + "name": "T_TPCPOINT", "value": 69 }, { - "name": "T_TBIGINT", + "name": "T_PCPATCH", "value": 70 }, { - "name": "T_H3INDEX", + "name": "T_PCPATCHSET", "value": 71 }, { - "name": "T_H3INDEXSET", + "name": "T_TPCPATCH", "value": 72 }, { - "name": "T_TH3INDEX", + "name": "T_TPCBOX", "value": 73 }, { @@ -64020,7 +90621,7 @@ ] }, { - "name": "meosOper", + "name": "MeosOper", "file": "meos_catalog.h", "values": [ { @@ -64309,6 +90910,28 @@ } ] }, + { + "name": "ClipOper", + "file": "geo_poly_clip.h", + "values": [ + { + "name": "CL_INTERSECTION", + "value": 0 + }, + { + "name": "CL_UNION", + "value": 1 + }, + { + "name": "CL_DIFFERENCE", + "value": 2 + }, + { + "name": "CL_XOR", + "value": 3 + } + ] + }, { "name": "H3Unit", "file": "th3index_internal.h", @@ -64368,6 +90991,14 @@ { "name": "HAUSDORFF", "value": 2 + }, + { + "name": "LCSS", + "value": 3 + }, + { + "name": "AVERAGEHAUSDORFF", + "value": 4 } ] }, diff --git a/jmeos-core/src/libmeos.so b/jmeos-core/src/libmeos.so index 9cc9bdbd499f0834c899dc861b3330a2373c5ca4..24ebd35a6a4b67fa68e941681b5de2f7a67a673a 100644 GIT binary patch literal 2969864 zcma&u30RDO_%Hs?EY-AWS|!CaEsD@$i7eAXi!hNjQ3-{JBr43bFfCM6N+KnSlV4n$^UPFZW||bMMtF~8vsk2~IAj?4UlSoB zdO+sUyW9Ek?r3W@2zbGiR>*D(v)PyatYPBFb)o1XCB8UM}TbL|)G$c~TG2bW`R z&;P&G@o|o$@9+Qh`SDHLudyRp^c^tom$?q+Ugkb#0>K}LoY{5UtW2**XXg0(5k8)) z>^BS;FyiIx+bwP(3wFj`z+u9{l{he0iYw4UNJ)*3M3ayz5gT_17HgtukmcN0M}yPd z_@R70FTm71U0WpMvh<4L)@KSv5F!#24GD2mb=i{ z77__t)ttE_@K|i(GLz`CZ8Mr3UPwr3hN+N8g4yJYhk+W8Z%zzL2^ocw{jvldls&c8WB_0({skwunzyi6kLJnt zR7E^q0MWBN;A1Gk2^xBYoy}wMRjm@ZRvfOtSGzaM)`TeemdFA~c57w=kEr2e$QbWa zZ=Wd4#o=({q#0I11HM>NMS_W{uRKNOQ4r)iOTgiZ*erpBD{$jV1p6L) zHS-0&M9)pcw-81t;j_Slm8T+cS#Kd>iAb=LK*ozRm9kidd=bm#xwRFSr{nY3lr3ko zRJaM%%0eBkG~L_&<0SG*pJ>klfzBa9Y(1nriF1tlk-x zc48e#M(W571$b&b%6G9%7HwC~;0FlB$>SW8E!gI4++j?Jo*)ai9S@Hq$)xM7&8$i8 zngK(cwc@*Q6J5AOfIE`NcZ-IPz=~6+#+@w5NXXHhmZBjP8e0*mAawK&?+~JDt867- zrsJk6;9DE`Oe8{%mdpAgX(5-#(485+x;e2_JVg z0bB0OH8kX$iNljXL4uNiFCaWyYwf9>{ykgrG)NFzm>?MEg@+PPTY@K1{SqG0RIgzP zGV9D`#FRr4{yjGb30ONsWHn#p%a$xL9u<8CB|W$KlSGQ@+5OtY|e;8`TE&f<0RiYF{N%RYq5 zCfT<9077z!B;mX$A;8yEU5U-skYq?Nll5l(vNfuRX@Cw_?oyAZG^k(x-Rp%CSO>JGIXN;s)(gMDP8R?qJlZO{%r}KPx z0Rl0RNpsA@1^Mh859K(~GTA~4Wu8RYlo$$>2v;KZ5*lt31Ap^irZnGntjsn-@&d&aAux#Tf7PFF`W;TFp?KtK@$0KJRc%?DdAs5ax0B?3gyk$vDo|Rl!4`3~1w@BSY?axnmfcPy zl0;TNUb>zgSBJ!r7T}T2=CTA*u6~HbRAPs(mRuVyE1*_{S4Kp@6>#0u&PtrUc$_jN2_DtT z5`iEihbvqlMri87a#0EpTbL?M*()db@=u(@6XHZfB4Ken2;WBY2$7h1 z#Mx@361Ifzp(nzJOQZoJZ$c6rcs43-5}})iz?^N9VILxQP?e6wBLQC(_;qS>Pj&$r zL&8M^b@Xw+Bte8th^$1LNAU3Bkdekb!vKQUK}3#sRz(^eYi;Y#1jK)0osp`FxX$Yn z1X9)pnR|$7W1}fwLx+{m(=lI6Og%^(VHv9NxVX<6OGv@uk^(cr7C29S!XCips*>;o zQW!+sI9xe9U0}Rk;L0|1m+-mDT$!pS%Z{a~(@TTR(&m2e&oS&W#afN8IjWzMAt43( zbei!5VP~Eovap?AfIG5)@FfzSukt-UUtllgwTYbT&f9a+-E>qrY)-Oe{Y~rTuJN|A z11!-Fo->i)MJjQLGt`{R4&)i=G_NCUT`AEMN#qt>Rh}4EMaW)Kog}tR-&r6a#6z9L zUH7de1*)VoE6!0Z;0GQmMm%Xh5+KoFUf~cT#ES&6`4j=q#mL^OO3W8X`2ttx5`35F zD(Wp_8L=`<3kbUt5zBcWb4ECflJmDGi#R!g0z!18JiWv;2y}%+htDCzI0%1=B2yw(iYF2-VUcFi&D#bT!LpgKD)nwl`a+W`&{6TlaN#apTp({84_0_kP~C& zsvsA9n^CZa%hoI4D-#WYh$muc1d52YT0n`AJ&|WcBq9=LNmzQxd={H0d%^M$ky8NnTsaPX3QoGmfz!k2ooNr9m}aI#Kjx`w4#B;@IG zt@&}HFcFcP5|OQd#Va5Jd`%V*(FskZ1dlp{xO;{?OHnGzy4hCZBP!r%gQA~s)WEOAQ@;`7vX63$43V{A1fDobQ*t>(L$neO1) zmKih&2&-5SM6Bh6w@ar>KfI{X;}MxBk#|YJADTcVF8qZonElv=Xo{OTwwuFUSY{qR zf@^goz>aj$4)x;VxsMb0!dUV+0Iw{qecg0q8s$Wf#HprF=9}PECW{m2X3BRt6J((( zP-YQZJI-W@bDgU&!%`IIaaKPeU_uu*UdbErSOpUH0T(M(Dd8#?CYTd9d>^I3COpl< z(pnW|ZCh!ATwTWZ!lNOce{;mhROUs-{M+iYgoKnxcp?eUg)J3uf^712_0_oN-BM-V zB4RGEmFBb*2&*`1=7wz6W=ob1UP_P>L!Pok7Lr)2ObiV8QuP8tJndQOJXt4qZWmdO zcrp?5P5A-wBA#i2Td>@K9psYiV$BM4BSDsNg%aEJ0vFkQkAD4M$vuMkqJ2D~?ZVpD z79bJu+5FWk5wYV+)^oP)AozaIoVXBtWhHX4hnQc@a^Vq{hk(yYAPIyujfga6vWP&N zFW4g%if~9-M?_fZwxnm2hHa`!vy~){H-46!=&VlnAnZElRDAQoV-XR)x3bgb1r(%n zh>a>2cVHe%Kb*z#)nZ9~ zCYe4B7I5TpB|3>+yM}d_6q}LU1byJmiGU{9QnQ<_?V-NYjyK`<9SF zmnc0m(?@i~?NPJ>sJov&y=%~r)r@&P3SJ+QS9|+8Y zZWhde5MU}4ITz-^d{_YCz|M-q(E9_39KMiuIf@-J%rfO-PL7s*4aDnbF z(qzuNg#I#Ifva?X9eD$8!EI;&#cIUd1b5&r+ykcWBOlPdnP&SDLRv6CgXi!HUPDK{ zQRv^H{{SDM6~4e%_y%q89hmw-vwb4uC!K#GfB)y$pN^T07x172%D|KgQkC}1tcD&> zwxpB7P76IB@a^Ki(xu6K<7)t&!HDimklmm=n1T>G$^yM5^Z+ZchCaYlU!*PAfjtZa zM;Hu4U>FPsXHYCx%x((1k?8RSm3YyeH*z$L1t0K*3Bc4unoK_l{bZOzcYX@TnB)F* zort^O0e&kj~-AC9o8tAqG~!Dv$tEQe+$?!Wu||WJrOvkOt|n z0Wu*AHbM?Cm5a=S&9DWwLIG@pLMVdmz*I4E2b91r*bQY+4vJNQc`sDb{eI*D+IO6H zL}5OL{y3a~lTZcKpjb6@u0@`Kvv3aT;38axt56R&;TAA;8`(hnJIH&qZ$J9Kzr9b7 zJ)qf)d<2i-3Ee$KK8F|Zn(p2p-@$wM2%n%8KEoI2sITb1!FPq-PxQawufh&5_VAYs zc+m?=z!ZLB_7tsa${rkT%pxGH|NPFgh5qcBo1_BU*8CZZN^Z+ZchMv$1`T$dXk@nCJ z9Ki{g8iE`O!|CjdbfG66gVGYQDsU&1Fq(CaH z1E$iE>uKM^+uH*WdtWenPMZXXB zE9?%^{xI?g?T;ak)BY4v4pmSMHBbwRbr$nEx~o$-b{_pjh50h=>yg)Je;s*)_P1y< z*WG}=QDJ6wO_=Y%UAn)AdX3SqKB=!XQP5VE{zf7;( zagBI=jh+o$V18(?0iA#;ZKMw9L1)0v4gXaan(Y(*-W0Pjm_RprtUJ;a%)p%PERj9H z3ap_w^aWdB${yJd2GE(=4Wzvzau5uLAutS_!3Er41Tf`+^rSsAk3#PaV_+T1S$P`G0wXhDDN~4)hGlM2`Y(4r7kg2fCQs{Hg=h1mH zG9R|mc^k42w$r&7xf4pDl4b@NsXF##e zVm?oI7inIic^P>Hu0lOrgImBGJ*EYoQQsn!kmJBox+@sJ`=Ja8**S1sC@KW zU>g)F?3v@+G4D{=l`8aQ=*wX*?1uwz5Dvi+I0j4|r+FGFr+qcDmiA|m=b(XpW=FEPWOFNwlAgoJxB?h2zuE`_p*_%>ZN& z%!Ju=*Z$tx-_F4<1VZVtxise?7r;UYr@M~JEmoK#6#6B!kD|GpCVsPy#KKBg1`V8ISrW(S&$7IAs03QQ+YHu(`0t}wBL#>p#3&v zA#8_YD1lPg1$%(03YzPnzymetD0TE2pap!o*FoxmK6C~{Fai_k1_Cexb6~0m(h7P)FX#<@ zz!sRYqiK)q4+CHzIKm(p3`1ZTbd(6aGvL>Oh&y-yQ=T-vXpW+Z-~1qBX+I9>3lr!( z5jhE_fFIpWL;AyX2!J49YBq8X?L(1sVIItf1+Wm93a8mV;qPSWycih?OX(a%v*SD_ zm;GOMipQBgnx3-)xe}xhPj?B(L|6@LAQ@6&Eu_JE*Z`T(QQ5T5L2iOP*bG}>8x+9~ zV5$UJ3cH{T%ApeW!vQz~C*UN=fvGB*)yP`fpGBU7Iy#?6UW7|<8Lq%psE2F7)OF-d zxD5@^1b5*+F!d1mi1zIpJdQB8DD0k~f2J_Mp#4ka8-@K_^zYz3e1KN?4Bw!m+R*=` z^DmlzkbeQccud%!1j?WaYM=p3Y0>1qOqmbS(8pgm_ z5JN|eLq8rS!X&z%iu9-bbehch0q6rE2!df2bkrR5A#@H!&V?{KFGMbaB@hM6U^y@q zO_S+k(8tnw1#*?bG3L00&T+^DSPe2rh7?!}Y0y#W=rbT2av&EJYm>sf8GXLO%$&D{ z&Rda%wBL>_ru`0NDeR*2ZklB@%V}27+)K0LW7tRM{m6rG7>>{#bIx(}C*TxRK{cF( z^Kb!}x`ez8SKu1mT}R%A20An6HKD&l=ex)U3ddS#|BU8y0Sq^ z3wm_cr)hxf42E=OE^kD8W18J*nj(c@2IgP^*1%Lxqz%~8*$!zB{pj2uIRG4C5DbCg zz?2B-0&XyZ?%a|1jm&@Li5vxE=*%p~(%y&Wc;rOdPeM+HDKHiMVLEiw423=b{Y(gk zS#&>#W(YEr_RMAH(tbX20W73*I5Gkv>AaL?6iw!`%h1O_EZwa@t^^6hK>{$fhNcXe z1SyaTYk{dWnoOULK7-C1klC;ia_BA>xe4-MGi(8-3TQI@HuQy1M0eYf#jpc*LMiNm z-M~~CvH~h$AKmRo9-#d}0LF1Ad>7ID;#U1P>Sm-Y^El-~;1f5->FxIfeFq zG^ZhF&^`z`6J|pQghCi})B^MiAsixL2`mMsmeFMTXoa4cV=%9Pm2|%fDWSa-8BhBJ zWFpAuoQzC`bULp`Wt6M38VO~|`&kIoN}51|b zO)unV7z1O$2bda%^rihI|<7)6)WTUf2OV`D{ROxL*XjNS z&0EOZ&_HMAGIwZy7kLkw>HLT$b50BGpCX^Zb9ezS;T60FrryzPpZ?d|4+{HF=vx)$ z&*;BE8~lKu&{4n8|7PY+_&NeyPy%I81*SBRTC~?i>eJqUCUZ^~^hVHCVP~w+cSA1# zGrF^&X@%?wy}*X4+~%+bX2%P-?3YaU4+7Z z3HnG_s<4Yv=$Fwx8W{tzbY6*+LOdkGYFGm@U@D0w(w{2g((WRiNJs z`xJHu(I0}taD?uUB9FmwI0>hKDLKvdsr_x0!mb*9t-@SK`|~s}(!7kkN_*y7t||1) zd>!)*xJmc7khh@$8tLvH@&WB1B3o$xjOGjEOL#@+*EHWDKhpja%~s?W_zK_PJ23SN z`Iq)A{3i=sPzI({X{ym|-{LWkxzm4kTA2BCr;XJ4&v9MMdI~#z^ajvbVb_KBMhd%b z=mlU3LNEiSERdF94ZWZ@^nt!$3ryM5bfDP}Ie_-e@qy?aVGuaMa1enji~x7=fR6G) zKZ?%Y$k8CCbH_P8n8(3Hn51xQGWsdt2h-@@pXPL$GmrrgMCX~vVA{{78H$_>^I$%N z0aFW+i)g=?CbM6HK2l+hLca{6=`L2`*b3UOLP|hN=Qx_o^>tJN-6bMd(|!$721#^I zL8ii5NTa)s%QKlycNxg_umLjZE*rTKa$pnPDPA@YyL^TH7W4(M4Yoru?0}t60;RAU z%3u#v!hSdahk>ahG>;;W(f$-t4mEUcKl6XRtyS2cq5WCpIoe-9UV^J|4X#52Fx7;- zOZ$5?AJA++1Fwte+>Cq#Pw4!V=5yo=cuD71$k*@&-oiWh1fQX!zS901@;m&5-|!ch zV)5IPd5eFSNt8etcnW(p^qLAYAH6o{D(pJ0MIXD)bZ?040$rgS;J+;RpE5;n2IkNM zte___)eG61_I;4{;6Ug8GzZWeh#Uk?Fcd`K0!+Cg-C!iR(;c(-p#3O?oj3Y13bUB@ zJ_g znd@4t&_|$OLg%H(;1)DMBXm@gLVpMSU3dTwp&6KZjBJ7D zbbf(+32)#nyo2}f5n6$%&&V(Ejn3`c_P5{Z?g!1E$lpwle-F(R8_5AKD1kCCrGn(q zzI}tQ{|d7P?K>g)psjFB7rh>x4HWi<=#8K&7=sBg)g39Iy(!WR%)t_@z#0^*C+1#Y zL-%&b{xApzgA)vaVK5w=L9tvgyTM3s2T$+7Cc$Lr zs42AfQ`j-brqS77VLu&x00hEJ2!`1(2bc<>**@X%j(INK%||Yv{X%3o?HAExE)#)% zDMZ0CSPmT(jXnlq>24KG=HJRoA)d|&G!v0)Kt^ZgdXj0MLNgV)7SbRcGGIMyfK12+ z#oB~954ONoD1bs>stCCqcEC>94NUE!S%IvCeQ=QO4%1}LJ4*ZGG*8f!Bdg&IoQDf= z5tzC}^D@mVG_N6VLj#?ea~sh&!Cknouz!I5Av}U7@D!MOPP2W&;~DdNy8DRy1fSsx z-TgrRgx_@ji)8DxUz&r&|BCXjl#nX4=h0M0YJetm0xjT!VrgU60R!j^hQL%8nnpCc z(lnvjou&|JMtgIlCG-F*um&5j1*Ytf_Rx>c{gIB~1Via=7|r2G5$&1Fx}bLjH@X{v zbf>)sO;4m3jDpc1hH)?+d|?7~)I{1(Moy)@KXN(*Kp@=(A%kf@i)P1l%)uN2p>#hN z83qerAuNI=z*Hnnre8|?DCBa8RXDa1y%gdh5!QeVQXmx+Yb~AA6!sakUr%!bGL!aM z$c>OgXXd(c(Qkr0y4#G*hb?q2L~f@&bAB=U9k3I2DeQME^yRd#KvvRzA96n&ghOxy zm^zL;N&C}CIqjKaRSG>b*I=&w&yLxj!R{>7X&lao{iq@`Bs7hWgTi3wcd5>aY18Z*~8~ z8?iLZJ6F?7XT`>w&(mj)oxvO7EWUDlBr#lJGJTX1>)y^e4SQ#pH#H=?F8{42^Xtu; zbV5+KHma)e+LDsj3u{IPCa%5cYA82O9Y22O#*=H~y*^C*`EkHkmrsY(z6)XwKgH*>~hq2W}lu=M{dR-z;|avoG%sgva7^)oupdzy2|=$4yLPv7slW4@Ww&@K}e8P0#{ntEo0 z#@_71j|GdbeY{;ax2CJBn&-s3lZ>)m{jZ;LY#LPgc#!Mju^U{6etIg^9}}tSJY$DO z@wg+m25cC+S+^x)$&l-(l4P2k_e*YDcvt`Kzl{A`dS>&dHGO;sJlA4%4fOLn)O&dC zzT-xl#Acb7CoS`?{&H*b$TVKxW76B78znt%nF!kOc`o)UN}e;xob&d6$YI{7z(;*@ z`g^)>x$xe>fA<{yC>zH@F|Y4_e4c+YE~XT>wTL5)b(?>UdciB=@9W8T`Vq&9Ir_qA znC12*efY8E=g0iAy3tZM=CEev3faQ2lAYpS?|0_7t}PEq^^7gpV_db_!{M^ush_&X zaznMpb?RMlc39cFxvCE)*K5rd7lzNX5gncq^P9VJRqj*wyS;b&eP5n7AVojxdbU|~ z^jCR&Tc2Amn|=-S{oyaI%RJY%=jV%FCGnm6g%1?Y{d3Ik^65sK)2Fv5z3QjF^ZJtI zvk&NXx`F%2kg8h`f4*oQ*7akskL{dQc9W#R9s&G?o2Mrry|ympYg@oRGZ(yGzJ z$7r12zii>N&#|)|PVcnHF?fGY6IAy1soo|z zIxP^FU+TPUZ!fJG^Q?-`^{AQXm}-pkzdP+IIKA?-a>2kA#_JA!{TX;ltLSdjuP^zx z(vBW(+HpE1*{9^*kK#@8p=|^2zBT!iJ*!Xj$5AsbXu3Jb&-NSsdWFh^>3i;%M^7x@ z6IjdJdGB^s%kJJ)@okO8*^NcB1|3*7E!(ItckK|5Lo2;&O22H@Y(9Uk&%j8s?NiT_ zA-yJ5MC24dNV_oDHg_+pt8Ul9-6l(QXT2HVe9UR&<4rrpSygN>d-^5$qSsu{X*s>l zjA&f^ROhhn;-Z$1L-9V6w^iumy7oxx{Zpl}dCQJIdNJj-5v%_6>gt&~QswvT2HT@= z6Q1VYH){GOb=dkj{bA-Tn~2E5rY0xnm`lU-9gk<>HnBKY@Fqp$^yl~PUiE>vZHC4R zqW(ULDjtj5=F6VXX79oqe)xS(D7hXGJfqm7x6sc`c5G4Ju)YI6t&q>qi<%zw-0Sf| zT+Tsu*X7hG?cdMC)bg5cURzK*a($W5Y-P!h19!JN-$-h?q7=qjzG&W(N9*G+-x}X^ zpvT6i8|4`hIiFn@jb40j*0cDmH?M!H$b5T0INLh>)bT^QYpjRmDMx60;amt971iL` zC%<^cSL<u%N= z?Zof)8U+DwH}-M+7UG=p&dNcgeRtBiHJ=-cggzQ$zsmZ1XIzh16Bwr3+_Nq#e>Xnw zhY58q(|BGNTlC+w6eoEfIBq+o&o@(l!OsMX(3*?fsxSR6j&+$eu&VRnzQOiC+*X){ zxteNvw|dyV#5MD!V9y}9V(YLC{lo;i}VSHq_cI@KzS zXiaIIwdh(?w8={CI7@&CSKVZ|yfbW#`qf@$BOxf4=7R6jx># zx)cb?Jf{7wHf!jFWGs)4tVNFEdN|nTxuy3x{ zUk&qlDi*V{`y2N*UUto-r=!iF@5x>%yDx9l^?$Q*P%|!bWdEvi)y^y3&s(MV$?EQU ziXWcb>#4Wywc)bW6B8$9UQQT1uKHcY!ZWUiBJGksH|%^Ju&3ASHJLl*_p^Af_dDFH z{I;o{%bzjN**q#jU2R)=zs_6U*DUxk^kY%{=|@`oW?l<@>@{W6=gspzs*UQLH2P*s zzvQ~2kRAs5xXiF+kC$zV9XZOyG2WHi{g>$Q(^qdVRYvZ2I@>4ip-QZkQtTt%0nIsg zhIe@|B5KR0Zg)MzuM5ij&+*-wPRAzgYHj^kn^yX%Lfx@3Eot_PLDH8hj)})5W7yB$ z7a7^^Jg2H}YSA)h44J229pCoJqA6KrP3k5;pXv=?Ew}uzE12N8A#O=-=~fSR->&Oj z###TA1aWZ##GLu!}an53f87;<@_$7B3& zP=nf>Z$3#%tG?)t&z--nNc{8Ib8pq)L4P%5Pcvt#Nm=U#51neFBJ9O#=1!gSsORt3 zFA_v0pKlfZ-VrDY22G+_R3&c*<_v6$+MYqXe;hNnik9E zJvSH5*IP9;smvi$A#0I?l8vO)EeCk5-MW$YjMUo55;V#j(E*i;H!d!Z!6h zIP2;xrSqcv{IuGpJ(js2e(i89`+4Qer~H)WF4?Jh6E^rCs@pbo`w5M7jWtny`Mck} z9p33=eyi)+^$l-&{W*GZH#xjyW`*`43w?{|(c*F+{bIY*kzF}WtGq_6yO(pbr*Gch z^GZ!Ap?7UN@3s;Nf7r+LGi|P&+xNS}G3!24ZLQWU4sfan>eb>I*=tkO@akK0#;BI8 zUUJ;DY)$$u|4E;|$RDq4G+pGQ=fQip#8q5mRA7|uE7{H$KDC=2R(Y#us(Zfg2J`3l z(|Y%Kc_C(E!>T5Y$DC^gS3VWq5==1>&xlxPTQ&s#61{d~3kuG zM@UOjRupVF&~=Mnetcq7@`gE~o)=ce9rKe4=f&_lFHmi5=`Q<{=e}&(4s-tzdn&8c zhqIS9?QwVAHl>$&+C9ymG4HkZ-=Eud#5}s_s@nOReY(~y;a}bEaL1#807_C6K!X6ACbM%NO9 zy-A^?A8^N%Wy~s2S@3O$i}S_bAKk8(&pfU7>dgi#-m~Jvvy4Zs`nt$&gU*t&w$ruu z8wMqf@$rfMrJ?@glpt-!wl^=o)YXhLJ$R&5-Abev8OK_D<5MR0q@B!o_^=zFSCu^+ zx9m7qHXx(>m{T9d-;P~$b6k+SbjwSno4<>rUdAro1C(K4;N%fl*uQNtR z&98hot74>4?>}W5C#6<2O+56du4dlb`Ibkv{_;E&=@Z2FoA*1Z_<7ysG?hQU)LvX( zUh?a1V@|D?V6=J54!NpQ*H?>7`Zt|ccaII&wS7rUiQI#e=fif~nQ+Y7Xry5B4)qip z)r1@JNR9FPH2?bLsI(ZYY}%(flyzNm-t;evrY^Z&-t*LOZ@W+XXPBlst4#P?Setf0 zcedB~wJ-b3stzwTax@QbHAbf@@c^7NxOoYz}Cd1qvAJJYGTzx2ayU#qJ5M^qM0 z-Ox}rHfPC`?y|ji(?>VRTxx|+19%JTOGf%QSlu#789b%f!}UsvN7iYz0ljjP&KeKZ z^s=$>GdNB>pI(k1NmOE=9!-l~7Ot7QC|PQHWP$sjLl1JyOM91<=GPxucS9$1+4ugv zHV1Fom^)%GchQ!c*Z29H%C>mxd#uOh+}B0D=fo$Qt)JXK_fXeC61&Le1ltQgRBL07 z2iq+;HLKWU_LYIlhB|rPbexku@AA|W#TC!>2R7&6eVtD{H>ot+;mAF8_f%eL+5KK0 zG>S$}d{8s!#o+y&-HmNus3b}(e0GUk42*{Su&u5&dHFD=+Us@Fo->Q4>@R<1yb;6W_e=^2s2usQdY?AG^)TOant{czVM{Dhh=)8WSL*m^5BU(=l;cQ90 zLt4(ceTyF4%R+1O_d~s%-sd=MT4nWNf$FhU^EWL`+J1hm!K&xvmTv4tr{y2-MK;`A zx+e2Rjj6?Sl~{K7^C8dIo(a9{b?{8_qt}kE%g!rppV4>Z!g*h=@SJuR{W;vo`?+cR z*!{CZZ4Isc7p}|DHndgS>UDd8$jyIC)YxwZ28IuYbpLbEVDS1qUsw8Na(VsJ%cJ{` zD;M>+Z9J)U_t!nyMH4m6dj@f(L5q_ zULU*XejC5oVf=V@*BN_j-@dE67yWx+{~e2@vkR8LOH(^94cRtp%GS4z)2AGovtM88 zbG+Bn)y`WVTU~Jbz+T*!aeCCNH|R&GfyhUUhBhY~C9S z!QvT~O_e2o4;}0FrKxGrEy;;lX0t=)EtPJMJb34(y8GF|^1ovyR6I?*wmam!NxtFR z``M`(qk)}Ahol7UE+;P8=A9~en zvO#CZy2DGHTuWB?Cscja`#$pahKTC@(}IWkKXV+f>T%dUDD=H;L3eElCtfNznCCw& zXIb0Q8r$q=5mQe%3)}WIZx?yT9}9hyUtYU=cKyn>*k;qjZGp*SOb@PB-79~g+Gy(5 zBXRYMjSVq#*I%%oWYBlyu*%5pF+1_OJpViE+P;H_bo~}jpV{AQh1Gc974UKYu@R( zD_U1o;{LJZ{0;Y?M+F+aB=bMaxL#~rz%|K;x@hY-IePQegRMQk#%vP*xqGb9$>wH7 z_Z2H9)Qnj;{q(m^-$KqFYjX8}nbY)R@XPdkan0L`Z&!jEo}AB7f4#DMzyz)STiPOe zmhL?7{^Ho%-DeCVZF+n%d1!rDlJjn}(x*xNrgq(3YG&1n&%rIS^Q;+>()ya*+?$D6 zdx^Pweax%{9&`HF>8pxfCPY37FPUO-_l`^FX|JMdMvqE5-91b9)HiKT68`*3{a=mQ zcqz@Nswnzi59c|j^M+=P8`}8lP1hgkTZ=4HTHZO-H|@TX!oL0FLeW&K$f3cGy_Wmy z9M7sdnc<}Dtd^(acz27cpSAg$>Ds?5vTuL>co?6P}AUGtFunW5pJ zrD5Z}cFc9r-PD}$u;=Jkyb1SyJI5K{dpYK*-bG1~`+b9f&&T;s`)WUa&%o)&?)YcD z&omyekXQF|-h&YvQ*yQi6-K_T2&hQDDW94=!)oaLsl|dkE%OUU_piQJe{oJ?$%eYP zgc)ny*MtbqTp74H^3xmb15&f{-{o8E53ejg6J4e>`N2U=zt*cg$$|a72E^{T(Pvlj zy%A=cH{oM_>KDsZDlu_>H*JvT6hD_8S)5Zc-$1V(qi;)2w?+OC0o0P zIr)^W@Hwo1?Dhn&FMV6*v+^{x>Sx{>lV@$YihE-Agw30Gc9NY`ebQzfcCIoYbNH)9 z|8S3`UYuw_*C{u~b$hdbl)auDw<6tf=mTem-F9nrD?MamGqg{>88p#wXUoSE2KEh6 zYZG{xUzpx)Ra%q}Vwfx-W>cY-1 z)tnFMEm0QfU0rW8+B8W#*4Q5XooEI_bm5&TBsVoWYqc#Kg%!Xls}x<|IN)~ zIcI0M&0U@Px!mge{06?7tGC9faG%i9Zr-vUk(O6FuWUB;j*5z|xxseqQ)=n|YTU$; zVGS)Gr??M%bpRhrgog9l(9)%Y`}{rlVm*7_X=lqmO`79PkkmgK-2@|*m*;jIA%<3F}q)+9x5!(f2srNaDW`*N(ULB!VFtIK+R@cd` zt}amb(u}B^+bhf?Dp@B+-S$(eUHz;-&v^3a)~zRTod>?J-FIxDfx{$E`@Dpy*PP~9 znyft7lyUCjflf0dxUP7O9WBbomz(yCoE_+s>F+gThRA8^=9bW-W$Oa}mb*?)X$_X0 z89kv%bM&wXRl$~tf}4}OJdJ z=ROA;$IG|<7&>aJAbtz$>U*uPRiOfhtvwDa-3#h+z0`FZ>#f$b>V5l+9^|iyN&76% zvx`5KJ*}ignsD*8-OI#^^lH zk(Z0&%YPlZap7sPu*<7A$(wF?m!Q1gX!#L zyG`5T_iCq)UHR%^n$Fz&Uk^VTx^`ISm&wO&UE7ykYd2y3aKCH4eFL)0PvUl2_erbl zoSu@y#J``TOr8r8tJbro4k``r)#K^>6nEQaoi1bw&W5}AC+4>4o8E8h(l@;N?-ZNQ zfnlw@XAg3pFI(;Ms3c;~6XETfzthCA4FRh6sU-nT#*N%j%dLi3b)PO>w>4wR(AB-7oU@dj?=&pDn)iI;!yMz` zeXPPg#r~PgxRdTQtqdJ>?j&xfJ3~_(?NUC!(|Gy%cchclJ=BM@_V@9Xy~<33Yx=)F zudcl3>)DGfziplyyXKMp`fG~U9MKzks;y#B{u;-Nxcotrky-N9J&xSJ^y6{5RZNVg z{^_`~SWC6y14kDb1}Uc|Z7#TODqk#LNF`2M z`&$B~zit@ptqM5t!Fa>zQ$uA}VpV#5XnsB@w=K#mX~T_#lkqQd!fXcA>>OHoX5Pxq zTkk0q{D%qXxHFY^~G^_YM5K(sUocC3GMe?if$E8skOJy zyj?u^eB!65ikNjdk)ho>Y4}-{>q+bH^cP)k?hser^{T327qyLq(f+ko%vX5TwhsAJ zEH8br9`B72FKs^Dd;`;=tTDf5_WZ<|#!5Azb1c6vsQ(Oi z+q%V(iD&s}xt-jz`FAuHbu>yIuKPY*J{j2BR+CQiJM7+=BlWY9pTtt#eFnMSj5nYE zrsI)Oljzv^_E?Ljeqw9da`d>e%s@`ihw>|8w3~KzjosWp8+o{{-^Z<0M`EYj=o5DK z;P80j)y!y3O;cfdt}FU+pG}wU4?i(C;-gg%DsjSM)=evsEA&g~xu)9XO`JI`JLUd< zv8JakFgh9;WmZUdJ~P^+rI%{%_F7A+lFxiTw8h%@N^O^l^6mJ*Up`Fl&Kg{KVz$>4 z?neGUDtE6PykGrF?PuV0vM4=M-WS380>=mQQ;rq+#e8Rd!?=95CDn3U zWX1M*{;tz-_q%Yaz2>FQnrX+1<}$+41rMXUwAlY2(k0s2^Qs7D1q=kxV_&=18;r{c z9`bbmzGr51Eb>r<);eN>`vuOci#;J}n9qEVEf?O>iCr~+=Hi(4H=`|V$)7$p{`FO+ zjTPt5V{5qGcSEtz?&~$X?`O0;?sFEbek5gbUNYnPd+zxOv)BjvbjKpcMQ4&W#?Z1! zn`bxaP{&y+)a}^mz|$kV)l2No--^&zm)id{ZkF5`w{GesU1|o#Ki)T{RdYM)YW0a0 z(FQJQ@2HP!#li+?Ge0Z1$S0~_V>?BqA$>{Kt54;&-;R-|RBEL!c4#wZZxMS!FPpJd z>W21M>Cc5Afv2YvR%e>m8(!27{=zdL^fWE{QFOmISCJ#_DxJGnd+N=H zwm+DDuU_lZWxv$m%-qsO?{xf(kqpLReNIe%1moEUvDY2!<^3zIypn z{h?v7wd~^-#t+*soLv`l;O+bsx%~DppNCIk>67lefAQ~(D=>~@Ryi7#<+VrL_c>R? zqI!Ev<-u>J1_|HU`qM5IpFdCCCd+!4`M3DJ5*=sxYoc#) zYa3N>KR-+BMak{mk2~BJvY*nwN*Rf{^l2g9Sn@WDr5zgj=M3(vPQ9f zi5!b8F`wV9kt4V}=Eft3?|<7^;=fe)xzDW!#G*F!75~-sX*i(l*g; zAw@02bUR%1shNHS&1)$LHI)Vx4YhY|cfDeB`q;8T;^1qV(BCET{(XUyw>(c3+%<35 z_0c%<$$@Y>&P@tCi@7hk_O$Cb|HAG2I?;kJpR`Rl;49ojOyl502X zWu!<3Tcma{Oa47G~QgcMRvvKUjCfCgj2P zzSgNN)uNZ%MeU=L3pD3c+#(+fGZbQ z-EF5iek|qtR?F%;^KD5whYa6h`FmEOHoe(oK;Tr~#Mwv%OWJcRS49;c(r&fAv1wqE zNA_@Jto|-f<4E&zF2&;f*HjLgzxloQ_;=iBnwZUEx*O|n@^NA9g5NpcobSQ+9&#L% zQr#_~Do}mwS@I4~x@P(H{?4V>d#(M|r^?kvj#1ywb+vrTv-}a8SN%iodEXRGVuxyc zPNmlG%}w7qM9#eMmKK+gIbeEGP3UBf^3#rAEY=UL92AeKsk*Dt(u-K!Y6`M%P2A$# zFdU_j^~OS_vqG%*vB_62o-QZxH)mgW{ot2c>Q>3|jFM5FHdp?yM^4J()34$(E~e`>cNG$M z>4-i&bz|IQF=wH({-D5Kz3uEzQ+Flz@3p=Du{4PG&DpwR$6g<7&N{wz5L-J#+0TW# z{t?Cc(a7rZO*HGyFsF9Dd0?k|s)Xn&5Voz+JkG|cXJXY{anZ@hoo9|$s0a|;a_7!1 z9Tz&Dbj&kK)au$m%p}HBcJfAabv+Nq#?CFr0$tW;cD)c(llw`RdXfHey;RS3)512p zV;Kymq!W#e8)KU@3;G^-7G1x0=yCp|TTQ~!)4mT@sdCtc5R84DC$zH6ztdV7X>~p7 zqxrL@+CDgIJb2fXcAjde&0(Q{msAg9U5iX3_N=ap*|;G-!&P)dhf}5{eQc~&O+x$4 z(~!zyI@y!+&PuNjMe**-`+d-;<3r3KXV=8Xbq=*{pAXJgdI8)V+}p`RvQoDt6&4LB};P z%1HBlWp{6))fp>W9+d$9PpaG4Wm@x}2=>pX>L{M@-omwO?11Ofx#Mkh%dP5H1jOGQ z_K^HgR2&$)ex#%Cn~Ah(53~4a@V%}~;vp+N@s?_j#HcMMe|sJYo*qkQ_?(~iu+;eT z*9VelB$*8m%rSzb-n?HGSNBfRuR_LR6f!WAS zQcIgP7H?gOS^X&_efe@@^ryAk2JfGXx!q{2k$*3z;~slwtn)%}_3$&r$n%PU>*aa+ z#s$l=PCr|p%ux^}_}j91o@qM2CyHToIoC?n`3$$Hz0&A$At6(f zqQg}Eg4Kfib$;GD*%p3SJ}FW)ph!G9 zc)3wpX$Sl1f^2p6>M_w{l`c(-JlbZr8smb;lEz29Zb_N-w#!H{9HP3o`}2ukQdbp^ zRt@RAta~ZK7m~hP_-domRqw5}9oDY4J--KMry6V*ez4QF@m2u+>p9Gt3Hn`>OfnwA*)c3b*dTc)*fmz;_&D)s!@ zXjxGb7--gY5__PlRW~%hf1~4hfqQ@bFIy~Ih3warsWTrF-JAaVLZZP7CW9H*JuKxTS?xY1NvlJ7I_EwAY@Zd7b8v#<$z-ko(p9rRKC1dN$olqmN{-=cJjE!G4!=`E9MK03RONjJH7N+!bwRl zJ^NCA`H$iLkZ&1WOU@5&l=_9X*_(*0<+!cXy+!6vtTOTb=Sd5eTvz&oG^4D)vp(m2 zu}tUuko$C(uhpFI38%=byLyFRoWI0(Rq}!Dqn$d3;EOrwY+QnvOU0*03VTg1v zXb6zZsnt2sBj%AtTXV;ls*B@!e8S44*stUVA(eZOx zOKeP?WoF?7F@}MO(_QNY4Mo@^5)`Q9#zusz_=;;Q^6a-C^4MHvcTBgoFriBOs>Qt< z8=LIUh~7_`NOnH5yf4Y;-3x{oDIqG3Jo|mvyk9<)4>N@mpPpr(gJ^h|i_W~A{Te_q?}m{;^y;+bV3eoepD%0!9r){f@v?!h%2 zi!z_;KdmvJzv{}j_?D%3L!9E*EFW9CvO})BFP$jlGq`UxdQ9QXt0>l}(l-Z_tPUQI z?D8;8itS%LUfc5Jjm^j24y~DOVm<}?8pBVQDA>@-R`5+-Z45lmppzOZdZd1<)k4vR zTUMj*ybHg~=cS-@tAZyZ@W zT|~oxFT=Vv0`>M>Z;m|U^(Ta$$vH3aqe_OG7!#hf!TH)O*o)yN8917POY-I<+`RcF#N?7O;igLeEwkW#HO{k6@a4IDJNIdW3=x`*Z z&pBN?%d#!-W}4nl*X5}b+rtm0Tq8cjd=qUmvQ3*B@ho$pyDzi;`u=6N~cmho>mz2?C;s@vD!#2M*bTbEG!;*w+iMOV7hYpzrrTXXGmiTS?wicCk=1QX{? zSVm*jWM3>bJMVrcF+Thx=LzBFmeN9pg+FI8E!+EsFUj(X@O8!B+Fx-dk&VkFF1>|* zEw!u)U&M6*B?4_y%ac8wK?5{9qYO_k_WfM6@h-6BH-CIy?dCh___bFZn3UfCvcDK$ zTDEc1tY?D1vxqT$?k*l9=3#n|aq-vehFNc-evZdC%m^3xiL(8QZs#+u_AqP;T2&`j zw^>_%C&ycnX^q!|uZTQAciO~wV0HO$M_s3QZ%<~`1zML0 zIa`;FOTjh2bqycv)49jHC&hllAdPO&MCzr#v5i(r=SGae@3CgR4V($DJ^Q)!!&kaM zy{DQ*gbRF1uVh#PTd%O*nOgd4UD19(Ywxhol<&za>?%TeR;LFU6h)7RZ;B$WF8eaH zKH+*&NE+|r%r%=$*W;(I=%wB>@{(sYtgk5T|K)9#`tbNzwJd{D<3P|c0{fmdYSR8) z8}yU*Ox{fqEFY=EYS{mwt(n8Cx#)(S`|IW3Uu$3ePHf^1kKA(|zos`rL9=h4WLBK7 zm%Yw$Bd6A`PhwBI$GfvRQi6|DJ=g|?^4@Q=+QgoIES>d|P`1ZFglW2 zQ;{~RjPfH{;r0h!xk)sfY82M+<`v@BD0LFf_?h#_%y`Ga zz`#2nL%6*hGr3M4WExLc;EX@oJEXF`P-xrZMWd;Gz2&b9JF9)2OwW~b(3J}@JyH)G zd$EY+YHQrWL9SI@f^4VS*^Z1p*&y3<#{Tlas)_Szd%J!;D}8a>QKw$ETe4oeN|ei@ z{kIBZ%cH-&gbPCD4xLAuh{D`zs{8@&E(Xo`qze?r(wy=Sf}0p1@m*e#@~Lu z5&M0Nv11-?g*3%3PajtublShfLw9h$tK>yzn$-{k_xoeb*2~>}LZ<1E zxApNue=dJHH_Uv+I%TTu)g|ZAkgm7fZHkeU9RxG5eTvY2?9O@vHO% zs-MiVH|3wPPtx3?(=;w}t>9if;h}Bxf>qc41uL%|@o)`2qe}LSvZBbYjrxBZ$D0M& zB2}*M9bk;-I->gagutZ<^>Ev9;a}W5olPBDr*B&G{b`5~^s6u85_FjoW$sEgt6A5m z!go>Tq)Gqzvb{09FPQ^u}S7~eMreXHdgYPQ)J)!AXc_rB};V*8CYk@4C&0eV&z zj`6xR4TIJDTwZ_E=h|5K`(m6AN68t#wW6wffBHDqti5YAy78D3_O~}GayAtCnYL@|t4_8<@A_Ob=QzHXTc*zNunW_f0IBu8s!9JwW6@7M% zdQ=U&g9uypPl2x+FP>2R6XAFAT4#B^#_c;^atqY43_dq#dfv;atd<%VaM@H^>0WUo zRyrUgl1ffp+^reS*ULaYAIJ;pt) zx!&7f>ExZ=v9IgCV8ZOq!>kwOsEkBYzR5aIY%gJrRxGY~!O_(|YPxRhi?@l?;kT!x z`14f7)1%r7KfKG>P}^<7yXNqqQ7+BLX)ULV!)K|wT08f=x*7D#W^r|R-g|BaH+#|e zlBVem=fsORR2Y<$pPCh@NpNhvxgon)=q-C@1*dOKdBu*S1fdzd;LG!?oLH_#C>G|w z%h6*`OimG!teMNZ#Vg*^Y#%yrw`39^Bwd@ar}En*BXxDe+QiJV$g>*;xCE4rM1Slb zz9Q;-z|>FS_NI)|%EKiaZd$U1To;|5*2{V%x}R^-%IT(rq13?5$MN&B0Zo~*=cRLv zSFajAzkj(XiPM7dukBh|g>P$P`yV`THa=RMnE&-*bRL%f59pdEX+<*j_Ppw1WOk2S zuorfz7=9hE?VjoV?Qrx31D1;qM)UZW8_wMguxLM<6Pz+_F=(CwX!8?8BVyW%RaxzR za(i~C=(zldS67X|To6xSt5Lto=Vhy1bgTo920mL;uYGe;aYL!rmQq6UD{<=eJM0+c zn(i)V@%jpUW$5@)dfr1MRd_E$MZ@K%-g~FLZTEcAQWB8msEty5WL*&&OOtq{SbOfz zxv{N#+VA*1q+vM1)N|Q;iigReBU0v0$3r2PE2~p3r6+Q2dJ=x4#Ct?k_Ri%AWAB|& zj(6v>v)IF=JO-=YWwH4#yD;@#RXlj1ck^0#uy)g$%JK0+qqj$6^Um-J99n7S>VFN>(n+K)sDr<ekb!tK8*Ge*s{w6sZCn>K&pnEjQwsCD?a75h#q zrUU6LgEI>??tVtA3%?zz_2$svQtxyxELz&xcRR7XE>Ud%+T_{Q^{Q$gujP00)MTU? zk8x>sDVqXnksD+&SVgcVBxygPRun-D5=<>QtU6&6$igOKJbUdgHNBM7kf9TwrY?{oBgj z?|ZvXMHHOhtic`GdN1on2x~f(PJg(t!*dPV@=xnt`f$i6?2n-7rcVqt-b!v*`3_}kgHnv3hgMBB*7)8L-o>E>)Lk#f4wDD$BIR(+Z}aSzErIq zi)`6=Yp=ulVBPR+k;$hI>5{4soGd8nm9L)TdTxJhZ=bBtp7Um6>tpYk%ISrd=p5;t zSmu_uVfaHkCTyQcZ9S(aI(K6?-_X98%++_EaW`Nb?q#orGi=>Mv-4XDWmzga-;YIQ%;@tb zhtBdhB`kgj3fkYFf2)J3J;^ZEV&cTLhcvfB8S;03`!J|6*v+I~rqSnqXY76Q)N})b z*M_-#^L^57ZwutTKKs3h%1}(x*!@`OZe_0MrL)_Oxr(&aq${YJmFSi2+-v5kynk)k zwbVD8=$NW{IxN6(V)@+uHGi47{3dt!TA$+I`racc%ZSCRxG+C>;lA3v-9*bfVuFKw zb`=2@LaBjV-PYR_8=Sdx2c>k))|w`FFy?c+O14}wI`6bTShDBEhM3DYn@5gSu+v1Y zl|KD>cUglIt(?N*#h{6foR9Jcs*+1-_qp&~8rsv)|J#q>cqm=KurN?^XW0+EWZK?3 zMti-f&v8_C#QRDjZnNt=8})YbiQ323^fN0K$FcgpQVHanALIYh-*cf%M^lo|P4L&3 z_flWq*tK>D@(Xbkb07D7<8^WSX)!ACv2AU#Dia?wa`?AznF{~0R#fNS1y76l%m`B= z{lhc+YpW|yD=v!?%w@U*hGwE#&NZ^B1~K_0YwkPnP?e!9UBmZLC$)*+0EXtgK&YE zCgR$av`(%$Vm3M2OsDj>%=B=v#ovg(8}=2@Kh^#w={pdWT)3upm&NAadWF*>N<3p* z(%o28x|pLXRmLVH&M*arC4pZ`^Ae%Y z6u32>Cd5ru`1{M;-1se-e_^;V^Cy2z&F_SbC+eF{s4IUOq}j!!ANkTg{epC*?EJLW z+V5;HC!Sn6kbCmY3D=g}-`r03>K7@}7g`2~T2`v?ehB(2-gs0&Q?n~jB5E6Lisi{9 zlTBgsx*A76bgMF5afqTzoKRk)YkF=j=)H73>zBtL?{XVue^EW7A@{>uE;cISdwH4c zh^_ww9cHubns6Hf_V*#(mT%t-c>8R*%T_yaABUynq9L>W zIX0KDfHmUmwNKyXx>3pHtM4B5pNyytlT`e{9o9!Pu;oMUma=o*B}~?-H?a3Rp*npJ#crq|60AP;E1c#vGwnIue8_QA3auYx0-LyKyOrMn?c&4 zuVU02JY^mdt_qA?PH$JEd-FR%;Sr1du)`VWj7ZUv9rexAzna*Y%|7OhtR1y9@aEh5 zt46KX=2>NX42PNLI;F46--fH2^gRV8?tQq%eU-JDoiV`W5_@wGt$;i-qg5Z<@rRoIDGyJe0WN5@2~g8cTG#eURM7Py(6 zS~zv%@o>drMpb771IHdCNhxM3pWk|1v1_iFMm!l#k+i2%O~m3?-ryA^nXdK0fB)|< zInU@86f$PKxJOSzrM@A)cZ=yuQ1D&J;4u{f)Us3U7 ztusif`6QOZKf;tv>zf(h%jve@{8Hoc`hKl|fQ8a&&90mYzH^d}XAW!aaDSN3M2yPV zcRx!>`30q&AyKIyf zW4L=vw{2R?cE`;hTx#}J;lFzoeoQjI4Kkolm6BjQmM}QFZK`WhGP9)ou;P$pOMu+~zV%XJ z>USy*+y5@gx{Bop|I*po&fu?69$JHz`d<9}pISa0%^d1tJaav!;+Xt5lg!LG+M0K| z8^@KjxUSsX@8jE*z={tX5YtqSfhldABONWizZ8jCQ%X9orVO4+YDz^E@7A>2+dlt>SCTa(Z zcFlZy(xXM4_AVf$ucLvZpMjsdZlHeq6yy8vKo2D9xH}x(n(HF($GO)c&*;!?f zldW(=_t20lHgCI6MsRXu`2iYU;hS4_{oYhu5Ei~X)5Kq)t>O0du5aYa92(<}%v=10 zo1f-x5^wB{V+pUFzIP*v@%f@1bw=`~b)_61nVH|0WJiDbG528c>9xmQ3xUFR{WjW4 zx*>`Oo-b@7+_)CO5FS!lZInW7^{4phc%EcgUA^kDc;57bPBQhP4*7zGVZM!1(&CGIL*Yc? zVC|UviQbyi25B{XsWM4jscHvlqYv70GHU@TF^rN&ap|Qlx_4>4HzP4^DeH=94>GLP<*0&ydo)16D%*AU<74xLqzHO#X z8qiIUi(MPW>qx)8HK;6mtJ><`Yj6BrQjMuQ74P(JK5D@c&gyw7u{3VE=Iq1zl3?$j zpWQ;-Sh72}Yq4Ym);i{}$aT-in#|NK7+QOIzS%pKTO!n&_=Pz|MQ3fL8na04Jkyx6 zpjLjyvuk_R=gbGAv7fz?bSQ4zp=t zT3VfX<*&=HpW3gEw>E3(qzC95&)+%qJE%myv=CFvw!?bQ zVANBFzij?Di*zoymYvK}Uh)|_^ecqEx@MPs^>P$$ZLV;8o!m8DE>6h zEL-lMig;J{Gw$(ut#82!v*S-U!o%(rtQi!s89w`_r9O zku?dsM(>JGWZN9~W&b^T(>(q|+vZhCj;hV`AqF1b)z*Z%Er<4q7(9@Yp7J76)v> z+qHS|`D?9veB8#tpA#)N7q$y`CJ4wK$((+E+f2GesGUhfQFV{&Gf{?yCii`M528=l zO`jCevoIRD^}1OK`>^o|v8lnC9goiR?WFrIDcJBj{d0r$Mw+^1kL|ske^m8ig&$ms zFXfnNwoiSn_dSuTIJ3p%Iq!=D%x|s@?VtD_tn^S%aY+7zvfKRWBZIa@^5Puw{+0dv z+5K3RU-njti50{f+@yXf822U2Afoy=HC0E2@mw8?0aSh+~j^NNH35z`X3-eXO#j*m=9Ra}n~7M#h@OBg8`=4)>*T2;~I zHXzj6c22NkR5$gsRv#1gyDr|R%V!!@*okwxO$e|LXT1JvW!d$2qT$K6stb44=)3+| zHq>2pVMugyTiowC*C{4;$&Dk}=K?rRP;sO@zw~VUUYk&dh^~#nxdP(?fuym0>^ggL8 zRR4-Q-}WbI=klHRx#$i(udIuAtL_hdIZ4CvZS9}osx^Jl-eX4G**?GS6lWSozkJZf zOQUx;B=ecdxh?It?yV}n&lyJu?(O1wa`%JGu4bbRn^r3+C?9#WII)fR=)PEQRpjrn z(|QZtYM*{ex7KR@=BD;IE1VF{PH*4HTj6}r-o2v8x=O6-tKhBb5(itM`!-iufA4m( z)haD%lgk=p6ipkPN-~#98fhOiCjD+1ysHJpa@j1OR zK6Z9x{I>1NxWtB)=UtFl8Lz|9?fAKs`F)SC%wvnQE-##Xkj25px>x3xJ+(5v4M*oV zoOSuzth_F6|CRAVocvM2iHjFbUOmF`N4R+9b=@yq8LwemIX_FDeGX0@ ze#X&Rc41{6_PLdDH5{Hq9D6n#op0@2nZFE&UmL6DZU3ui_~Hci*Gl#4kCP8~vEL`T zlKp8Moi%ZI{^Hm(;HGrx3?} zr{~J{@i_H+1=D|}_4?uDe=m;z1L7;^l>}BuEAhAE^fy|Z{(l}v{|Fo%>~Qv}$2jZS zk7K_EXMd-`>F4^NR$lK~9NZr#e+F>sz53b8{9Ei+)}IEa9;b15tbeUskAHCb`Bj{} z>c#0ZF*v$?#yL;^#j*c^Gw%paUpk4CKkh$Q)^iePAI!wzzmF3~N9UFKpWx*A9L~Bb zu|B_2pLD~S_Yux{*bpb5N$(6@sZL4nb6E+u#^Jw?leZUf_TT+D_Q5#%Ea99pX>j_? zJsh4U9Q+2(zTk+%Uxwp@F?Td^|!K>Nr#6lbBRKv1$Ig}c zO>p$7!Ks(h!IgO!arXB^IQx4p&blt*>{Hut_EVaPmHi>TPkp8Q@5I3yaMmS@Q(wPu z>X!khPGxY;OMlj`?B{izmG_0yIC1%oa~V#5c!IO<|G|kD5eNTeyYjlO zv!O#Hd18p8gBJbDJnBzZ z#*g9L2cyS{S1*nZZ8-M*I6Bnf_#cV0Z+76+dlt@h_ZW^pLpc1$arV_v4(0U2%A3aQXuuj-Q8d*2{^LS7A6h%;NNU;qjI8a63-lJByPi z>NxxO7M%XZhf{Ykv@83gg5%F49DYumI`zPbOA}5$h~TU@11E1Man2jzICT+#v%mkr z`q)bQ%Op-;O~JVyxr4J0`q`}9R~>NlRKdyrDjYxUaL%8baPnjTXI<+t5mwTH3%hT* z67Gx>mtq_p=yA?Fn~`|sb;gQI^8PJA_S>WB{~Z#!}N z%ubxX@z;H2or`g<>xFRgSr%tqk~sIfEOGp-!in!+oc)OOo}iWTWDuthv*P&gfTJfb zjt*Z>t~~E|oa>``9Di7F^5+BR%GdSUIM>ULI5<|mE9T)1oIIDq(cuKnxnc(n|4*Fw zlHTF8QoNYHuZ&yc%o~8SZ?@v}4ST$ElsIW#W{-OXAFREThXDD00yCjf5MGF>i*Vo5U~jSp_+KD=gnYfj zOz7*NCnIkVPLCOo^x@qCJf!=}q#^DB{-m5{Cw~p!#onET^fW2^zn-Lb!jO2P=|P8k z4k>az`{WueEzo%F(OY*ZjzTp!lO8wBg3Mfg@r!23P}ZiVKp;sd-%0lMM^5^SWz)d*+zup^I!jtTY z51}rw?TkDaOA-Gez$tl7h2p|%3~|BIl03d*2~Xmwd=BfSN@!8iuhL>1HXC-;E@R5pbR)c0B}lNX50Yp;{oOoWN-HY`1>rte{ALC@i+wec@*@A z?84rsh&4d6{*r*(Ap7_#z#Vg8UUP)YHv+D{9rz;1)aETxAl*bU47=-sA9f;e(A4)z%%YnV)DdA4_lYsM!X1bSB`!2)}{yEyWuAe~IGjWeE1Xeh^>ROFsTnb+-To_M?NQGeZUOjn~Lna%pmT8&p-!CUX^3CWIahYV6j2b z&1@gwj{o$x<_^I77-3yovHhMjxW@pGCcU5&8){Kshj(!XL6#s{?#3SK-eGnH9WUqM{a2Egn>+Fp5>AMX2v>|&NL!?hE}Pr-jm9xhw~dqNQSPr=94z&_6o{P#sXdZ_QQ!~uT}!na{R zPFk1xE2uB{DeOI?p2(lgFmEif_c#SOk@Vt7Z0IBW;|?@$6X4Du6F~$!D3bUI&fq6S z&!|zr1D}FE@Ke~kEPo)p5O7Mpc%l7>I14;RXkK0!u(5U zd3V7%fe+z67Xfdw1%D{{Y&i%x3uyzw#!h4(ffWeZPaW_RD?{>#L;ZyK40O{&xV#qV z>}U-BoJTy-4!}e3gmv*Ce9tMsqq(7SuOOavSlN>1o%{v)K=D655O7`#@LwPC$khT) z0drU?i z_q_mbS_FPdAO5r#cnJF-F7C+wmIB}`yns{sgO(BCc_DyHAp01^!)y3|9zQHVWdGB^ zf69IrPrkp6<@pb=r|22y4E*ZHpzkRm{$l~a6DSXQ3LsoH7Vwl*zzq@p$sf%t3-~^S z??m-$atP+d+7x*(V+$wwscr)L+(I~~AmDvv;6Fu&eJH+;XMmrQZ!WsvKk)?cQ~aT} z1fHf6Ix;iqIVfoa7ywRi!D5Due)69Lg3J@ZiLQ`u@LlX3&I1U)0QE@0Co#E5{->}) z-8mtiC)mM*giART0ZP(PoX2LFwaeMm6H9&kN`+e^T@n#MqZYJ@umfqkCo|8c-xp7$8^gl><$+uRNDj{*J*)w^0J;7#nnpM~bN3k7`A4c4oM z@HOcC+4r5Ej9_U)9uxh@{v_~F{Hgi~IME;U;Ya>Q$$`#&bdWz39dz=+zVZ8X{|m z=KYFo=w$nIFs~-U>(_w2)EMYMiKB8a;*SM99@#(Y13bkAGRhd?`>@0#^WTH@W+S`| z-M8cogM5fWcqSHTl6{IP^l`|g3g2AcOK<-TGl=oW}@eSS1=4)nb$gj;U` zoOly(UDTJh-vKIC?ofp{3OgeR>l`X|&cgcvML|zW zp8H~Qk?bqkL5FE%{|M9Y$taJcR;JXBZ z7P_7_`R97p3QIf^&!jT=*@XBXDWG*x0rN1zB`>3OoduoYrw9aHbS`4q2{=Ye9yAGH z&you`<-UhBI?puybG>s9=}$!ZQ}lfE8h9!%fie#ee+;q@)B-#g;bNEpd0oF@UUh_f zIsx7k4)M}OxC+uo3h6_c_XO$#QeB_}1&>GhOeg>ztgOgGwi);ds-Qf@{siU*$)D)g z&>wanduG&ErAYta4jax0|9%+RqkR+ml05v15q~z!n}zyJ2m^YqRLn}YtE2+^D-mGd zcM)`;#HHZ?pBhQ_j`Cl)e!P`F|AI?~n$2buO&YVIvvg!>7@_ zbTDrZ!uL|v_0Ro~*CN8>=k#R{Fi{ba6ot&y8jma&;2)l8JIV(l%8z473t7F z0C*re-%{4qPw9J&Fs~`%R}qAHqxVDIQS7BKT5{bLK^%>dz0@ACCs>1@HxbT{_KQFn z(1)@vTa1>>L-&6@&9F2h=Sey6^CF(=U4RpJ0}o|Cs>Kq9Y###a#g;=J=YJ6heAr#d zyd+-o*W3UT7}0fBU;_B*iSW98;D6s8z@H#I0Npnub^uQ4d(@}EJ}($D9KK5+tUC|> zsH=mXl)g8Jr6qa2e_>r|Xy0+j1H8`>^34X#D~4?xw7 z(t0-$K2eL1zvcy)Ky?y$DxEQ5u_24_a1^gf7x26k;d4RAA9L_uAK}l_0GIj-_;rLQ zqJEOs3Hm=r>+-|gAo-v23F1rH2c=M65&y}n3*}(1E(?9k5%E`}JRyDq|5?|-H$Dg= zf2x50BC=0HeU-%>)m}e)1u!oU!V3{Ui!SIu=_fZ(+zE33k2`ZF@Z_BXd=~LYBb`&wb4iMy z3lnhvIqx&<3w+4F5^HFrJXF5{@uI}h9@V?aZSWII8}jJ!M12g^HDn!ua7GTTw+0f& z8}YNA1Dsdo|8cB533!tX@arJ^2daQaYe61jX5{gs4B=d`Z<-_gj2qxmYha%mUJc(U zM|w*AqbCRUK%cZ;6DgRNvR^ztf%=;UD283;lgBx%Udi@)(3jw+2n4rCz#Xr_x@3^O z?-9URo`4QCNVlAPz=_I%5=fS>j5AfR~d{rgj1S5z$<$CY| z5pdqu5D_V4Z@m+6sf#c#M43Ri)e3mD8R$ug<4ctPylWx<(KLhx^f?6HMo<8|EG3T^ zR7dLneEz3uH}JE#z>HSNpQFg1=)JIBia*yMfqmuv|JQHMZNO8iK?gg;v&Rx}-W{NG zCyKj>Jm5_yfmsyU&wK`aav$Ws1j66FL3k19c^$1wfRcw3z~6!FubM!-95X=&4}>>0 zqj?QLPs)Cwg*ia(^PizlW+8hOZQ#kX2Odv^*Y_cR(DkV%mVcxXi}(XIfFEnW&^QKcm%R1U|}WUl{HXDTnHcA3b;uu=tJR2KL_}vD#V@A57#<@ZY&N^ z?=Fa^4C&LS_kVr7DS3#V&r!nAV_`^<3P7v2rt3R$o@}*|FkGB zW-5TEs6f9uh3uob5x*a-%M0PLhXI#D8>}wEX*&VWV*`J%HbNe9F0fw0MOZKPAsVKs|P+d3afNr%2H$(lOxEt(?5PwA=;{WG)&AR=76CZ*;;)v%1mIfpp zq6eT-DEhxu2HZp$;=TvjD?9}}6z!XVfv~@TR|EnRy1q+6*LUM6uf)+l zmG{p+rDFm7QhDH~0-9GD-M7rM0e*@<>$$*Q{R{ZN3E3xpKs;7ZFBE^aJ_9^27yQSj zBM(2Mk7EwZD~WJsI*6l*0pvpo^8YWImxTrNkwf+(+Q9F~`TsgyQUaWy2=+Y4{xiz| z%FqpDq#EJNJz&qP0&%xTI&<{_&hpRwB?3CnNF_mCQ~JPE74pXl_{9;=$Wy>gZi5ao zXx=TDjHG47N&Y+Tg}N?5>$Q~zJmsIyxpiRM z3dz1{-T&iA=mR_t-PeNMhd^)-1w4>+LjxNR$bS+Dl31fA>y`}r2nGL!>eOTj{3%5C z!jwLV?gOwR{4;u95Qy%(V%rCKaBl(rzKg&^@uv~>6J8s@DfN5wE!YzWA@g}4Yy?Ae zKi}j#W-~ZxQqlK{zMUK?>=yM9;Cx?*zKYb$z^*6`U zu-31R_hx^L})HfQ1?g3rl12;57&Sz+^~FU4*Yi{fEd2I#cwQQ~~=G zBFszC$14@#;lNKhpTr#le^Lsdj`kw{A#_g8BZ8lly3RrUXHp093On|YhcglQD_;V? z6v8*4x|6B^f3W3{2Ms#UNU_7bF$iD4!b;B1eXy=m=sJaT+ku3qYyl;AB74sazSZ`fBP&Tf96nMT8;Dx?1p^UgLt@a08cb}PGp2|Z2`b1pFuvv zBfJjzld=l@*@5tMq+1ixjgsf(==0l-B~ZV`$Ua{Z;*$3V^vBvPd2GQhkV!fa)WH8p zgr_xwKb7cu2i;~O7(WGEJsSMM%*aE;3vj7CYV~ABf7}&qrkc z$rpG`#6dSbgbyl#pHlp=E=rzn!~#e1pO+Wn8;$HEke<=SFmD*b4LHF*#R+gqett#g z*vfydPp_iqcYPr+uR7upM)zq6iGWl3Z3ULVB!7rez)y)|)qx_+eO&rU1EGXV8VsnefV0cQyZ-CU8Md&l9vQ#AVgEkv0>aKQ4E zJTJPh!iVfxG(hJ`MOYX1c#Aw-Q^7v)^Z(=W6P*WG%)oO>9-5#$mqPa~DR~}%cv$}V zcTD>)0zdJe&!LUJ1-x$t%Ta7l{C`{uIDr#zS@L(W^L!@YQYQh&j&0=OkMvJb0R1sq z^5`A|d&eTkC~UhVk3E>f_T{fDClW&9`vE~ zy+v)XC%lEctwK6qH~=`ySC|(oTk^Pz6*9@6zGkSq3B*r&>`TIdU&_*YxN16PBdM-cug5b!4B|J!r9fu4OFkZD!OUX&W~tbzU$f$(c+ zAB;v%U@3jWybtUv?E$%i?9H(RBd=>71oJ}phd{ttEdTFM!X?0^4g-D?*#}_z44LOE z_@jaF+{1u3{d508|1RQb0UlFie+%__DQ$=&rM|>@z}_SP`V8f|j1hf4q>ljcl|}he zhzU;eC+{#s+yU{I1q06O2=nS8Tqhgwz}=7!qX=inMLeW`NRADPp6#&+PX`_&WIv0} zt0@~ckP&P;@<_zCU6MadgP`+fPr~qCxO&pu|Zky`-5Q5Vg~kxe@zKnD%9 z?~^_jLb5mc2%j#3n` zEQ<89^bSjrCS~bdxWJ)zSbB%07by!!Q-r06beE3QrAn2hC?Z!`Q0(9eC{1uJsQhf- zB=4K=dG5&{=zZ_pH&TV?sK@G zT+){*)0R=5`PonWC(i#Poc}*gzx3z~dGB8E-ywdH^X)jFJ3>eY>bdVB?^_D}r;|VL zdf=gRuumF!8m|WKi6MThU%Jsgv32lE3G&Qh9`kYC+vc%>Rar03*L0-(Z03jX64YCr z_`jT2_&KkTVa1d^{SYUysfd&L#24H3&pyCc5--hpOQ6Dw04=h5w$?#{&VOiMJ?TSr;#gJ8$YFP&I z!S7*z2^&++HwEsygh1{uzHZQed{&XfHPulkjJ0(!HAHz%G!7b$ZhWX0xgZ_4ZRAr9u{=(?F z)^4eMKJt%*KK02HVm!;Y)(vu+_HQkJsOwGUfhCJm{$ojNCO(fNu67cC^8oNT^G`|Q z8^;3=a9zm8Ljy?^n#YMjA3NS{7c*)+;JU|PS3cm05oqsi@{eS`QWIfG+uq!1`q{^$ zj<56@NluH@7hM1Gxz>Nyu-*jsvq^QPY#M}m9qw13OZ>TyfG7EW|0Uw7*MNJL!^*iRJz$fYZX;JQr@N!>-?Z2xl!){*JeFAj{0ry2v?=?0!wKeLE zF>ly-YeoGNT+gxkPydPM{&h5CoY6kR4bWX45 ziE_YW*`74a?aAM7D)6N1d3lb+mu_#Y3GDV3<^PfSti~f5rNc_G{kP6o;GxG*uc&QG zJ2AN7DS>v0Sxos!I-15q5#)!F#Je&7cuQn6$h*YPGoB+HXRUuf<-W&cMcBcPvlT0V zU*!kSL-v<}2Y`DQ!{fWi?<)#CUJ!Xe(!MFjKLzga{h&Plm{PYJaNm9OAUpr5K)**^ z=Tff^gWnT;z8DM|_1ISO{FgpX4%0pneF44{D?d!!mtAhbiFYq$aGQU^tH9$u0iIOz zTc!RLd2Q$TRoG`D@vqMSj~0esiV&a3_ptstISew2_^!NrLE+okw!M`jHIi8doW>v&|c2UIreh1pV#2r7+_#+7NNrjP?F?5b}P$ zpRGvzXWAk5ZhAX}S3=%*Bt2fk3*5UL`ZOU=x1GR)t)PER;(O)Kwf+vr5ow7jbwmM; z`@OJ$9k2Z-fhTK0a}Zx_B;0vB&$N+&TsQ=WWBebzn?sF*ska&>DyIA_;h=d&0zl`l>c11p~juB5I@6+ zUmpQIef>~lN8+dY0FSuNS2k({JkImN!zn*r0>jkny60*S*L(eZ|C^Wcm-a#4!*h$d ziH}|nJkE9Fs>G|azbDI~ze{&ErRRLMYdq{={a(n%!z|bnURLTS?(6VyKctw^lxcqI z^8kLCLjG2FfG5@?{-ruo8npu+TbITByoh*auHPmnLzC*n-1p{eXL1@85mrDgQ0{U1qlHmMqj5{>s@6vrOAe zX)+7){+_UB3i1C*0BiZ^Z15B$et86N@2lviS>PV^xg>Bc?{(eFQF0*a4J?G9&YQaQ zXMRp*g1_ zya7MHL4D4?fPGV;?_i%>lz;AZ$cOmeBuISB4B*POUhQL?`vxEaZJZxt-f+Um8^@Uk zJ{bU>z+tpkrVXZ)lnb47yL>OE&kr@LQvWhCfJ%v&f0f#{6}aE^9QNN(zFpusMfnCdfIG7xS&jNXFOJjv5x$R>>P(5e z2RuFpab^4ODdK7_a9i*5&oXWY!7rIIfG2~5pRo`3`Q#)2So$kIAMtGcmGu+W+XnWx zdFd$Edt+@7pEgcLY=FG~26#G=Uo8io&<}1>tbAVibE8iY*vIOBye#n8@4y?=KDi5` zUH+fZuIxzPs=1Z_8S-hYcR&O@@h?zs8{)-e;;rkAT|)enA-?Mi>hnF?JCF6oj}ZR_ z@d;}yb$BswXEpc-k>|G%aIXWrIdSz4aF6~_j+C~<|KdE#!*$D=#Iy4~X>dB?`6O|_ z48&UhIM=l#%uE^54tV4(M668nOxbk+xR3XElmx7XodX^$g!amxn=+K^U6FgJHy81a z`&lo?qshddsR2CsIP%+U*88*kUhA2x4@cQ}e(_Dj-8c2@7~pZPH&!73 z!NKhB+#k}0_{lKqU5WPEyfK6MC&qh7dQ<+s1cr&LPtcDfY)q*z0eGM&cx*fe*^d%+ zkPl~2{!k_MQ;t)J3Z*{z9z4O7=;>CU_NRa=?pJI_o{95;M_*1~?_u^w5BsC#PY#B> zuPBiGukqM!;MIsn*e^Wy5f3u_nX-f9MVR~X ze3b8-2|V$|;1PG2a_~2-p9Fq~9qLdY{hX@nb@*H$?l$FgTi7$ed)2Jn{_P3*U_Ioq z;p9o}#Cl5tzfZhRJ@6!4<73&Hz=K85F6oA*eAAkK+zdR8`0Wc=H(RmNYmkh@JMq0_ z@E^!a7?^Tc9!zw*6z_|(grezx$4&A8jYkp5l?@Pum~ScdcJ=oheq z&F61_1$k8fem_S31378`>Copdi5p$6ehB&C|B#>W(hg&L0QVPx;!hL*n9ns4?t8KE z+?x40_95g^yHZC#0FQGSBbp2=rfmO|{9Gro{p<7&;DJ=w-#%aT;&WWAINEFT(m%`_ z;S%ZXzbD9gd9Ejw^;Quv)9-kHR{`S97+0}J;Qxg4z;%5g?|BXFlE)uY=1@MA4ViWW z@kX?#dWiNmA^(b(VE;%t@DC)OVHx%0zA``Y&EEnK^F6YC4*lp0>i+}$^&0Cve+IbX zeaLnkOy#`Dw-ffUc6izLyN%Gt*8ADJ;PF?7{sHRKqXYDhbDexF@qgPwKH%CXU+@o{ zlMS!-8p%AAAHEIpp^WM0IbWRs?k$gcrQ4eFxlGKozXIK$=WybuMgsRugk@sH2OI@Y z@=x%$Cf?ZEzbtrcemgB4NAm}(rypN##EIVqPafL2WD(Sxq zLuvj$=HoN_hjIc zQjzVtlMi^DdGBNLAN>ZnuLAf3#NVh4Jje%G*(PdAHjXb5jxVT1sZJrtCtIf1XY(%L z-VX4i%|E@QI^Et7_g`6_@28TdE_kH-o6?Q;_fLhtULjudIOGF`(%UWDWb$x7BwDA` z!bQM?%fR22JYM#@B-it+5dW0>rjq$#`8&j`SqD7fx?knZvcT0t=s%eC&TIzUTOS#q zAo2JZ*eA;SYHXZ;z;&~LYu)Tz96XNRfFZ^5wCxW(eh0WcS38^IR3bn8Zs!SwnlO*K z&NH@MPyMe!-uB1)Yk)^w=MlcC20V5S_RmGX>>UZ*-x%#J$@Z3FUWzO5OIkLizN8Cn ze-F>s*CIZGeoRz`rydc%!2am1hPbl+>i;8n;;!eW!G(#hhhMBd-97~FaNPWz{8c1j zYJHq@=)WBi7OLP_*iF3-Ps#9S%I8-o&->HlHHs;7WC2I>1o_^l7hpA*=K?&tp}&p8 zwCaopo(~#D`K@AJ6Q4(+$WG$EPk<|)3(ilx6#Hq2`<887J)Rr#zV@&~8_KV3ih8|+ zq0a*1t*S#lSm{ZF3?berMxNHt-16+=I2EVg1C&qe1^$TZevhJDe~x#ChMO%vpZgS_ z`%;Mq7NK7M(x(h!^XgI=fQ-M2A`btc`~}V*lBdzGRm7j%P5Dmg^Yc2!Npu73GmG+% z*Qb0x*g?YBlsx~#^G=NS#L6;`DFGQkwLboL!Gm6)R0H{QjeDZ-;~|cmH@0`f8=aL>x337g@I6tpRylhG8{~`Eo z{2btZ%lJpoM_yN%a-H!X;B)bC@+25n&MffQxO%J!_=86g&u>xwUUBH@^hJ$3*sy|? zARpm*AM4*S%nuRnm;Qh}%NakhiHIMW_M7r}9@g6(`q+4w^bG0^41nEUr=9CccxXHO zd4Enr@*n0tA8(Hw23biww+x6{-gyQ5xrpDf?;Tb_Ubb(U(wBM9=?8m`qWq+V;7PoW zIO$A$y$ERjIL{50rJlYLz(YL0mY4Fq<-b}!^fCIo^=|{teBXX`fh+^!6$0 z1&^}~__NgiGuk;a1$O>C6Dr>M3FIRj7iLnQygh;Y^uZz>hXhhDx*E>(IX<`6m)jd<)#>tFGLqr%u2=9Vzd$ zM4UvY0pCk}Xb}8Kp8rZE{@e)Q%Jn^qR(08~duZ>+ls{V-cw!^;xk0=$=OM95$hWq= zLz_W9dLR8Ln-70*at!eJ-^gzh$kTir@Sq3wEKmFI9tu2J8}jWLS4GQ`CkcIQz3XIv z)Au6!ysQ-vjhJtfbWGQ{YMThW?c(e@y~a$7ix1_=gei#JGwMKwMRk{Al3^>EAzl!Beu8g0kYyaEeacHlTE2oirp7DI47I1%Q^c344*GYoX_VFhWKi{ExwdXEz*FAwn zt^kjAhhKhSzX*N`Jjw6E*!XWo`-ffjzatOAx?bOI*s}rkTtqv>c`tz-FTNZMc@Oug zUZovs%7CtU;+GJIZHWKHeX#MVXs_)TcdJ7_l7{xKqx{Yo@L+r7jY4eK3i%(+pUeb5 zmPYqhAD)JMbUyeOSsu<$oMPawMf`e0*6V@Y>^$&i&Wpn3!PATKC#%w5PXdQlN(H2W z#$WtClwD7F<^*srzh7qKKh1-2%9|#EB&9t0-}xEy`RGp`gZP<;_e=YXU)H0c8EJ zHUsYP9`DZN*%JcpbDa}x$LCg65BzVF$9oX+-p$B|w!I}50{1USZ=XKxfk${R%>nk` zkxPLGHbCCS^CCV^g{mOINO+i1F*oEBd`_=V{U?NpuK{DaKaleO$%bCz7k$Bt6pO!82lC-@A-aD^49_X6KwCBo5-I8zwKZBc@8DW{pZ8T|6nWR zRR+XcP2z*@0uQ+EwO(rTB%epD{TsXr`Oq}fYvVA%{Vf5GgRRLwnE5lz{Mm;19aa;+ydLsSBE3HIxSsFiLmseseu|y{l)!ju`{VS# zz~laI+Kv(A{{!-pUQD^fd4-Sjid5<|r84BBVaOvp$#`86xbF(|@5wmXE9t_-=PAVJ zaPs^f2cB39e@VAB<#FlAT0S`h{oUs6FOF0GhbN4j&D+JB1NXOwCPHh4(wi@j!M?9@8aL=F6$FAF)f57<$?_0=4`E`8H zp5%UJ+fRS`fjqAFVwWW#wH+cKq24swbLs)$ah@aCO8#&?%D05w@)6I&^^j0+_{-XV z`{$7Na=&6x%5NRS{ICc4!RpzC?G68e_U@s4Q^tehewE_HXVwFca^;`0Gf=PN`aZ>$ zFM$XDebz8+M6=cBVsLE-?^9@36Y|#_K%OfSU{b98^R!02@d(;mmGW!HuJWh>%AR` zH{rTylJ`WtO?g@5O`TBKcDY{uIIb8A5nkTcc!jzUJ)M&e>JlD)P;Q< z*L&wsZ~BGj$`RG_K2Qc4ZU2z#oNR^6koVWgZkTOLc+ zmw|gKLEescfA0kD@VkM-C|{NOL|o_ZqRc-@=AR0buR*&xw43c0_vL}n^rI|jsf3>? zPf7>OsYHqczO{eLA&^(4AwQJzhtB{{jz`aZnsGaDD)1=Jmr1uZMNgk}yg<=V=|7R}*uQ$9$}}Ec2>bgLo*O5xL#rSk z<9ROIzwYb+9(Co(_vAst#AgxIJCE(nR|I%?Gwid7_@c|e9o}~btIGW|UjX+fU^jUj zFy)7nly3q4^=#J&$e1e7ll03P6dAW8gI<=z84=DN>hy?|33wzcJh-3oeKr9PK7f25;*V7Zo+yL}m+oN7r}T?*?W<|Q z=YoWO;V8w9g9BQDC*-;}auVY$z8mpo^S~C47v2%j$Kql3$8b&Xmov2}HAcitKjk^% z+{7mi1fDztJIkp5S+r*d2z@+gg*JIx!9?GZB{pD6Z z?mM#eZezZR>J4~OI#WLL4DbY9``FXU01y3$I9yNprS>1*F58_I?RJ{zv)O z==Ve^)NA|8@LiDixbDqs~4m)h1eY(zve89C&I3M$*$_;;6eWLF}KDrwb9wg5t zJ_mXEo$i&?vyJ?Z*57v+dZrTZR0_Dm{TLFirX2l;csYzCUlT7H0Ur1qJoSm^+Xvj^ z+CS6Jj{BF9uPRW!5}#9|xzVCi#E-NEkAHO*AZ(Y9dDY=PcoQgJb2j9o1E7!PUv-Q; zJhyK3jGO@OD+9ZIMxJCGc!c|H@)G}4D$;gK76-reZ!5|7#-2PUX#LXqKJXatRVYZF z13v)wuR&&OXzOiE`6K9GQR015IbY&;Z6*_cDgb$>1^U-U;(O{tJ~RM!mgbwXp6zw+ zAKn3V8VPHz0wZNTo@JlN3>tb*%ADstz>-T!% zIE{NcAg+AkKV2>kgxw-5(Z3D=R(l2ze+{^p(Uj-@!hF)V68&Nu@p6ne^&H}=De*EF zsDDP-=M?R*M)CdWTJS6+{^skD_rHpE4J1$HM$jkedT;f6f3|A_;z1r~Olk23@X$8! zG$2pt5b!YX;Ssl*@`D)A*k?NIvzhpnQNXoRp(Hjp=j?q;!!^5MhBzb z1;j^}WWA%GGe}9|x$}T0&V36tiI2|&JivRRY`>bv!M^7MX5p3VYQy|chDbmk!QaA zSL2a-nGJ&0DfQ;7z+= zrzJ6Jo^WUMqc+69`51Vp6#8#~_<7pda~eFU#CI}pJ8!^`w!N=}z!Pr|c}Yj6l;^r@ zd;shzkI$y;-T?W?O~{K`Olih*E@7T?K`)T+mCS&=zg>F%{W3u4c6sjt_mihhf67mR zo_C42+y&fe2Mc#0uK!%~1o)i@{FPGOrGdu&ZQx&-KAAFxeowmn{wCx-d!bJ%`73`3 z-1i6U{HKkpVZgnu5K*To|3Dn1>kV@K{AJ=}7$^Sspic+ld!z$u`D8VWFQbWH`W(1t zDe4_UJVHPETz*_adq(a+|LT-~EIW7-{0=pGw^9cfZ}C4M--+@MypVU+LC>nhGjrdU z?<_35iuif@H`E0@Hh$`FBF}x`3n{-WAMxSfpGSL+V?K#8pZFmE9W-sIfeBe=KL_p`604|QofAfPx7A6-Q>yn6>x73=wt1< zrZ#Xtzpq+@^0A%79mH*Y;$68;<;?~?ZJumupD!lBKCe*zH&H;xN!az=x2Fj3=r+j9 zFlS2nW56RZ#Aj3DwL}fg6FQ&SAXfivm4GJ-A`Z_}erH+YuKnaMjzwOLb04zp?-{K< zc@K|$4w`WvJj(Tcc`WUapdCW=OFur(hPY2d9%oGHZr8y&V|=v!y;=kM_?Um-9T~4A zJal^_u6sxd$O~w_PfS$=Pj2zIE{z#)u^PawzlIJ5kJokHr|wI@{rsMbbbnL&)de2r z{BSt*Meg=PW|x$^U0sg&ouXf}E7l?Lv;fp}O(e5G_u z%^&1_s$SwlLcsm4()XjA5-?gmd>QfJQ2$)BfJb^j-s&Hbgl72poe_S%QO#KbT)hSP zUaa@BOoX(&?;>z(w||1b6Ys-54=5iR3Ovg1Yd`xqezAw|#eDCgAAwD&{A`zM3B=~5 zqU^su_TMFJ*G1{DTAu*F!#jiZRuIE#Jh}q*lzx#pBPr_lbo8>AhPUZ%C%d-eXj3)*JXbXyVgIKh{Br3aed#g zALB62?|bH9y0Uj-der?CQa&M8x zwO=bG3+xbTg?PI`KdzL(Gk)QFe;L+I`A=TNXx!s^f7hMQiT)Odli`&AnCn{pmcV5g zHRTD$q30yxur+ai5!4&o0zb|r-i!G&J`C;si*^`XnEDilA7_f3E~|S2PqfZqezx<; zs}dNdUAtlDRP$T8&r>>x#-n`yQiu3t#(C_K1gez3iR)>JmQT3O+s@^DGVnL%A$I>{ zQp}eC8hWL$WpWw|VkZ zWyr^ipufC9o~miU6a1bXqExAMyMaf$A|7m9JwZK#UDMm`eQ}evL#zbq)$>kWO16Q0 zoL#Vw&6DeYguLQ99OA?{UfJdzJc6g+3{$R_%Tlc)<1j&|7>T>g$QP z>QDKaZ6Tjr4v&l{zM>!W_wzpLvBdA}gS?OToY;2#!ugVa4EpaG%2%V^Jl)dk8EXvw zWLMayuhl0N{1NW!w*GpP`CN^FXB$yopD)q&ceo!3URG*Be#{S}Wgvg?ar{Ah_Ah@! z*g?Y8l-={#u1V0dIq?kFfvb`5lx=USBtTtnSbv~d$}YMAIaXy>z;O_=I zbR^Gzl0ZzmentHMOMG5A@OXG1{(j<_&r{D&(cX!~r^x?ko|qSUTK)sn)A<>AFUtSZ z3;aGWcv=w8KZg9S@%M+`z$4>e&)by$jrLSLmuLIM#3qmrpGAbokEV>2fz{Z*GW2Oh z{FF>QG#=!6>YBuV<+u}V3%gnSXS+iFZWtGGar}BELi|hcw;|7hallm$;5N_vMZYIc zXEu_shTNCM{1A1mdu(U_3Uvn$da>;LtpfhobMUylzBEN|x6thh{0ROO_KUOhyVrG( zlfI5v%lj`tzC6d@VK;y~u6uHp@%i23THlz+cnI-*mW_w*d%zQR-TRmLmi*n&?-0F8 z)w%>cxef7Y?eh-L$tHMC*4p7N`&}##{Jw$quUs5F%5}anP28v38~Oq5y-EAL@+svz z!oQ_x&$jeSn0|SI{1>J`-dhuX=|FrupLYV>2Wai^QA@}N=0o%0ly5H&ZdxC;4H>}p zmv}Sa(c!>TDc_&_Ktf%iiF6-RYK5skpCh^w&t>hC6ZVlXFy%i9Z&U9OjB96!ms|ln z;(896N53bRK_6>}M}r|Bd`JSKqglkiN2lsLLHbMV`#Q&6umbOFu5qR1YuW=1{ zv<~9a;tz)b54J|XJ5BljN&)w9AD5LMIh*`^K7EVw`DOx-x#k-=UIXs9?%jPp4fhTm zUg#2X7=W6Zq*EeEt6A$^oQ=jrH zivsuWfq!?gU!3>~c&q^I^Bd(?7bMSI$lJWC*8_~5dCtg7`C0+sk+#V5GsvHb&nf=y z@R#i`|D-@Z(Hi|I#Qs~1c_z;FH=Bp=vHyCGL!Sn$_o67E_3^ApujgjImkDq`JiM$_ zfdQ~*avtnCnLL$OgC}+p@smn?*>}K$BVZq!-@0}IPn6$N=uP>aTu+N~ADx|_&s`24 zFVBlv{&!AL|FZDcGV;7F9n-`^d9-U3@yEFy=y^>9q}-&PQ}~`M-WPVZ@=cC|C&K$f z7LiBw1Rg63e+7sai~$d~f<9t)Q;Kb)ylWrzt?GU1X4mcV zDde#L`B$C>9-0mdwnRqzM6Kl3K>cmvwMKHA%zc&WPJ3G%y;(->Dvc)mN%`$_iG zZd=YnUU7fa9rC=yc#Ctt0j#Z5PrheYoDWZ;e8&5%*Y)1NY+vC1`LJ_Y$`|LnCHfNL z&E~htoVPeF5T9>TzRMTj3D1E&eZx0uSeazr-x2G=37#t%3cR7hRwqzgh!%$8~>B&P~80_t36Iy;WZ0{p5Q z_^UC1Qn=4Hb`Tbm>5wTq_#Q3#3~-4UQ*Ql%`{?4Uz2@hc|r}T&gi2P zi+fQe`3|v)#-DJ2or3Ldq%=KP=GkH8N9!~}Ecwa!Cna6r} zaK02N2mTcDk8BG0_(zZr6OWSL=i;xy`wIL8avI52jKf`fz!U8W58C{>|0UoK_mdYQ z|4UKep+I{1<-8Xwa0>RfaWa$RvWN3(SX-&hUhw#{Auq|}j4Ab)H@rUJHg62)yxPxs zbrtF}+XtTb(~z%E{NCr(llyJ#bLa*;Ubyzpmp=q~PZaIS%RKNp-)ls9ZqCL@ne~wO zU4>u7eWtXhJ|UhLu1LIINy@wKU;3sj@W3PJzl8E1a6LB0`-p}U&&Tm1% zt$*%p0G{Y5#HY<;kvG|1*S@S0X~2W}!-7(*{(tegAQ?uzc^J3)lRP>2OY*xC`G{Zt2J-P2qLjeC|L{_Bz_a+LD&J6$qxxH_~Fc>GBEIA6zp?c@3V=Hw|U z319Pjt0FJi{PQ~f6=%GSrF@G@;1A`8zrG_ri}M!cx<7NSq*KiwY7YJ7x&u>kTmT-- zAOR-D^8EH3&XxS>x@Tz{^MJ$eI1Dy_rPM+Bujcpp5uY~iJ)oT<hR0o#22@Qze2pvc`NbOY2b;kLH}w+e0zJ~o}b9iewTWM@_bH&wsIc! zGH@T~EqTb(XE^Fjq`qJf>&G9OLEg)K$kv{7*}uHphk1ZJ%eXEb8L3srvZ=p;dlG|RdNJyKj$-5DgV0+#F{5E9sShy zyYU|acYcRu_AxKbl0ee(;X1IV%_qNeAA5W(7$nS0`DzFGUFY(;avxD}Cj4vl$xsJ& z@cDq}BG2)X;0eSLhaIWUQ8BF6C$JQLe~$RV*}#3=ca)tx8Ano{?>p?g<>^+yo!8JV zX}&4hIG^|Q&tZN(OMKcZkdO6+od*){{TgupOyFWJQ}Q)LyCQr~fm)RM);=!`0e=_D z|2K0kHTb>|)3B=n5 z;zO#iU0k<8)>7&VjxSCtw5uQGdvZP#;CyB%@&2NZ*5Awf9K_wGtYN$bUHLy-J<7YD zALl2iXFt^Y19`ggeYC$l{FqAoyfj4D8~^?(gDfF_{{rl@#$}(Uv!T6-&WPAT8Sn=i zX$POn4vm;6V=uw}5(cJJy1{yz!c*uSN}UmdXnmY|uw-ZQN52Q|aeYtZ*S^3*%On7# z%ryVXzS+Nk`-?%()x=Ak0v_xPKaM5-pQvZ-Uj+RZ)>G;n^Ldi*(HzPzre6Xszq~IA zR`VnZz@E)5zf24?uIMjhX{EZ110Kl^`9CQ?S~`xF4|5;B?RVYQ1NXb`qn<2@NXy6C zLjTs}ai#$GRs(-A;vJ-0Y55TE-L>)jR6F2mC+wL<`#<^+c;qxJQ-%i0!g?JC_1ga4 z>3zt1w!+RG*}=YS06aDt{dzz3xfKQ;TnRm`eQrq@XgwpYb>^G@Vco;O3jQrjp0(m= zEg#@>L@M#x{Sddo35frz#3Ovq9(TQGKUfAl{<~;bR>tl88Ni*k(9`<2X%*m}k+55J z@_)OK`h+3hjkxbD@MH+~v35IA9C#v@-jC&kP`AtBIZ7XShV}#=tA=_L#Dm-y6mjhf zYAgmfe&;%QL&~q{3f%t#GGv(TeM5e)<)d8htwZ_RyMQO#qUYN9ocR&)TxeIu$MFX( zR{{4PhaIe6_EiS%;eNJ*%i?ymxmyY3yTH3@ix^Ld;9 zuf~9T>miWalRv=xljQq!S!H2e7Ow_TUcK_Xk=sN0zxceCs0RMElY##fR?-|292W0K}CF3XB0P&EQ zet)(K_(R+mEos4&PRCiV7k(*A{1f^m)CcvRBHlt2(Ctc=fgO_6zf>FG5!Z8#cQSCr z{pZ&HLpgpWo52pYUAOpNG8{m?(^zjyX`rb$U;4OuuRP)>k{~nN`y!u1{f(fftvB-~ z@C5iis4DqCD+)Zc5AxaAu6<*GJFa_%f9L!m?mFk#BQN#jcL6NFzYqC&(Wy)eP3g=1 zhauiCgwaQ-`I6X8{QQczwey_eje&>v!ETkv6On|k<%7JRstob27lAuv(SNNzqqxrC z3!}XsP=1Ll1R0)M(BwApr@jV{*NaGQMf|;I@IJzK8uEY8ZqL&WUfQ8MyKFA-+z+ zUhAX2$ZU|d#IH!0X*|j2%{;`v8%_K0yseGf|IV;oQ_+va9j55(Pc={CZ}5N5_$*9+ z`Cf$nZ7BcOEyz2ra~Am~k)Pv^%_sN8(V9PYAAUSco>}dPM-V^Fh>sf#{T+Vyp%L+4 zIG>44&tZ@?#Lv7B9$$XMj~(CdQvYB)tC5s6V#=9(kdKdqKAVaE#eF-mpU|%-6E7Zw zeE1adRcqq+B@A@CJoAA+NxKy<4cz$}{6i_fra$oLThM1N<##a-6MZ3X`JdVV`M`I` zCtb)h=sn;;zQ4Bq&9j=gYoAhl5b-4Hm1&YG*XS1?{W72Y)A(N1$M>q1zYz6_Q6C!* z8%l!T&vgKs#{vQ1;V!6GmLp7AJ_>kXJI2AS#Ba|8u6m>&*Lwbpei6Tph|=fnb=jOs z`KgE>S#C8Y|1RJ@*F5dIjkhh3FAj0lTRN2XV|)ehVZ@`Y5QmXp8va zKHx#uIkGN1x9d3%p2O60B>nE|1Haq&Y(e{kI8PH=Q_6k|e&xUpmxvEJ!g{a6p1)+o zFH&;>Px3jXKIOmVJR#W)_1boo3qam!34evC=c4Asd2X=)d3J6A9{vaZYD4_|O5nbu zz*C9WU_VN*A5|be{d>s!SD;)SzeGJBa@{!C3i5Vb z*4Gzk`K0UquID7+H6EM{J*AnZye(-&0$`omS)C&+t6ijY4n30d1e-Y~mCy0Tv! z=lj9%RkXJ@v4Rd|f_PZzNfX6!odiJG!llOrKHzNYyq@D+v_ktfo&v%Iz zy9oJkY1n@wc^390PmQbw`IPvdcHOuM;%6=K+AAQRS+mEum3_RuokBzqljH?Lu>EW-GdTlo39j>=q9{u?q9X}D*zOPSc|M+*X z|1ieG$Qh9L>x-eJ*myX;9=J*Xug~^A;`}qr`6sNT)RM)J53Yi|OiN4|Q5m?m5$YX6 z{7DHUt!E+y42y^_p9MVBE4>}+ai3&}_lcp`D^>P74)2v}P5vUZTXGs&YVDTtHRL0OVTT0e^NQniyW;&MFr?jrr=G67_v%veZvcNP zd2TZQC+=l6$SLC2UW9zIJnUAC_>AqqojT~DGCeaTDGPeqKH(Rkr`6{n*HyxNzW^)A z_v7l(J}&uBPJ%!1H#+W3@<;Cg_iTjUUnQP826&9;@~RT|@%=@z7W6q!yejP+;QatL z&dvk(cEWQ|_H1|0M7qB;JqtJlX;L zb%@{2j_3X4M~KXCAHy%+DhD194TMU$?A2i=j_3@)xLpcKPq2 zT?5HK?<(r`a$V8p+ff^d^L`|&PX}?R)<4MaeRLpoJ4<3f<*g6DBmoS*(mgrIqt`qY$-g_B=;qDp}a%8MY!+U>OW*B*fcW}5 zkdO0wnl|q>Y6*GoO4zvq<>&qb`6Ty^+kFn_PEa47&l*BIH_HP&$nW=Azn|m#sc4fN zhS}2yOZq)j6Mnb#o@xyK z#9_4e0OcD8z?1Bf!yvZbJ^TmqzVgWDwp~-k1CQngzqRuY?%xQx_Io$&PyJ_tzaQ(p z!2TX)ewJ=%$`R&=0Qce8{@yY`ecGdc$#lq+=ksBon1}Zd!+J_R&Ac7q{iS^&uJ$hk zkAD&L??!w%pMMjrk(n2hf0lF*ZRbQ4>GM(o=3k}0e4RY6fd^KSX=+d4p}Nr1&Ij(u zpKG4jSLk=PUDITuXyRcRcm|XIy`r#NyfyM+TU&1<^0$GWHa@>71^L7z$V)R#DJBbU znm@wxm~)7i?Eu`_oy8zuvAsEYp2E-lGtzuhde?`%e*oeqLi{eD)59I%U)$d=@%ho? z+MmziZZ=W{)$_f65l<&F)xbJW1?_IV<1P3pa2s!L zw1B+B^Bp!19HN~SzmHRjJe4?J1csx%_PoQJpHa_F=z0XxiQ55KxU{wo~-4_^91UBiTJu1ly~h9DarXjl+Q0EDc^V|v^`$Q|H8&VRtBR4VtoCb-|#jtfVAguK^ve)-*_ z)F%rV^3V>>UCQr;XKg>~aFzJ4lF+2UdP?c-#M=H5u756PyF3?xd$=wqW-%q>LEyo+ zz+m^QT%|stY|v*IC%**l%>q47N`KSktB$~v{7z+`$AJ%^-{ZAW z?3ce0uZ^@Tl$3)8_Mi)ZfGBom|wv(Vuuv zr}#Y`)UMP%j%!{8`#i}!{7P2pc_g!85L#0@GzK0U4f)l?PXvKS<2>#Mj&g?tKe( zvwrFOE8iR51744QeCrV8om24R74j^24|vpdF1R5h?uvPi^Ca}N>*3cw z2T%Mm>fI~t)Md+c;C{|0@mEUi;QCL5` zS~aW;a1XzOR+acWgdZ*e``=h}}^r4IGv_gU7E zXI3ZRq3h^Dwq1vLp39dXHHvzsq`e6F1lJqUI*BXx_lWCzf;q(A+AmH+^t%q^+06CQ zz(uLa zZ1vyD_ah;$6WToU=S|2*m!N-1_?dDj0zC2+;@Qrx_ND<(K8tzdZpv@HMSLxIauXlZ zlYVT49@?9DNxmOZUtuJ*`S#la)Mp09Ss&$p=eV5YxV)VBq?M3Q9EP5$#HTaPV>94i znUC2Sf`G7k^flsEt?ppglgoXW-fAl`&!+YVuOU#qm z*8%rmNUvurnQ&@92DuJq9~uB&)l>nf+jutv{muvzDo~fG0{q zpM{j)&wScz7^y{>yUw#h~s-7fDK z#Nim~vvD}&eVwuy{#G|C*a@Xls_#E)cg^yOY|T<^b&C8dj9Gz z1GJV8#K6;?@;~~4d-z^S(w!+oq(d3~=fghLiGMMj@~->je-?LWdCwu_D?5)}Isv#U zj(VGu$G;i4?>FELh}S2Nqd(*=WfJj<)F;G!<~BZio&ir_=rcz06#GTa{J_I}e~sQM z828mD%OijGB7f^8koT{HKB>eraa~36Jjey&xn@9KbxPl^^Wq3?hcM@*)-Nyfc{Z{Z z_1but%kd~U3l_6>Ys7UG5AS=o?VZ|}an%+rnooT`t%Q0V?%TBO-FqLnkN3%2{vi)A z?}}c9e{J4gA_>;SNk`tiO7Mi3Z*6=IJW2ii@b4R}_iSh2p1RQgY4VSiiICPmo&x>frhN4gz*Rr=yPCvb zw5<6okG0c3Gf8&z@E*BubN4Hx}#kw#E;PaiDrx{MR|_dQ#1 z9u>-ic(Z<4bQ|@?xv$mMn`u1oSkClzuGIv%m(Q&=SZ_zhbCUBt8IDa^dkyl*6vUN& z|DlWCeyr{3>_%Q10$4emCx>~?Ma*c*FnIx|Fw6H8t|y=yIs8x z0goMi+AzFKeGW@tX#P0olZYavp32PpP&>Pke}VFof{^#0LHzruPsXX_sg+)zN9Tbn zzW2BMb*X1?L>9wPnmikpKtAvmcv6XXp#CB1Z^x0m1t6acAx^CPNzOC9tq_N(MX9tj z$U9umY)by$S_6-`&Skus5q1dh{{KRh&oL45zCzH`jz_)(`MbmKIVnGvdBex`5b3t2 zd=P+qVgTkj6KUsF^-*t<@5O9hePJ);lf2)cFnI>qbBJ}34@VLAaQ@&Qg&x#}c#-Mg zQB9$LGuB&2CSWE$`v9Ls`Kxl^TI1n*=y%qhjhU~!+@B`yFlEOC@PrGbw~wbR>rKL6 zX_PNt5P19*;I>`MtYiVO%9k zq_^9cw;`X*h5jownerOvpYgxpcbUeUQk&zW;=PnIeKqBWzTgQjLA>1|-n0bp$XT>k zx`Qe0F9TORk8kVE=?5NS|Ef*-?H>S7UV@~Jw{S<|r(l0szB8rEZs5KyXqT0L^ryZ@ zE4OOK_iLpnpZ`tB2lv1}sl;F4KF`1xutR;~w|I^t_%q^v4)F#uFlm1!Uj$Dv;+G^{ zXxv){J+~11#pTk#W7lDyHk2=zA9$4W!)e4z{tMjUd(4L9*)$G#AP4FdcbIZ!KKaK3 zM>Hx`)9w@7i+Ho`{b~&4)xXHYR-XgcfQMTk|D>|scV&Umw3pv)xAGI|ufR$8>qpAZ zoqiC0nM3G#2L3wh62k3;gS5P^-S=4aFUKp`I+`~et~={@#mMbT|3g_Gvp6Vdmq3K)hORF z2t3GrR*i|zI}F@^330WA_|-JvF^=!KiQlI_5tlv>S3*91G`&90@O@Uqb>9E;&gA!@ zzx+o2pEwVR&O%%bB0iCMCd%{aRf%tif+x}&`rCZlQxb)?Lz4UXC4HGPvohoZVc4fW zdG`GcJXAsgM#>DzCuRT-w?n(Ezk-ri^>?^De4fHzDOKu2@^hZHmi$xNkY@?`oJ;&I4}n@lO2gr13O9`p0N z#2fLsBf@>lHlK{*y1Hr!`_!gO^bV!!PlSBjHLrVt>rPGs zNY*6J%>e&H;w`rWcliEj6!ACt-Y_%~J$E7T<69t~{0DYOAzow%?5wV#UQy4K zm)o&lzk~M5@M=n9##_uauKiI1{C+;yBkCk?$S|k<;%y1P$g+khS#JUNaef6aEA_oh zY>a%ftVYi2|DZeYSbpG_L8E^71%6E4fgkPu%*rv!^M2{Ulwb8d@aR&=Tf0pei1s>* zVF#PX-fIH+_DhV4ExFRk2GBKgzCXQ zBZ$8t9Z=)WK-Bv=@uiFhCy01hVtKrfkMlc^dx;Ma^)!zEENWA@0$S2n$&ifGmfX^u&-d|Lj_~PA= zcU<51`L{f9#rqiTb9bgcF>jogsgz+5Gn(Qp1Nrz(=x^;XmgA218Q|N{40UZ93Kk5qHe;XDa@;G>A z@O{09^D9J`?BiWT{w2`U=G&As;7NWj$<9w!-2k4Lh5ogZdae=y?Z@Oov}-)^2JCm? zMd){SeQE0i$UCm}*b%P+_fCgCDdai)I`HVLz=Oo6k3@VX$0Nhoc1=10`QR)7f2>z`@{6+R_^%U&Wm-X(K1C^TJ<66h=WA)q& zJ&#hKt9`+*7J)~Wr%b7T3V4$D4z**wn>iowd<^^B_*}&G=MeYXOLe9+E((1dem6nX zHf8q=wyR5eKj!}yc&IhnJCX96xqnsVM^6-Ym~wG6i z;}Mw>#-=Q19EKJ`AL+KH^kMu2wt=TJ@nSZg)Q5Zz;=R(q?|BOO-1gI{BY`^`)9ZOy z8mRphDh(d1f6q<86Aysfy!r+AGdS0vPi@wlHVg8>Kzg3bd4PKYh^th}C!``1C;U!_ zjpqT?VK>EdyEiHS>T1fL0>9-Muo$?H@4xK0lMDe5bcDR^r(el>8rX9u?=l zQ#;=EWc-J6A|8fQzKWzTt-qi5U$tc1e)%SFXCLad@wSfRsn<20E|~)PP<6=LI2p%z zT5LV?SPH^LU9;_719?dori`)hf$)qzJVBQKq1y>a|XbKbm_A>AY*RTFRPAUUWjE6og_={`}f%`s%C9R&thzAd%y<^CKqb20y{0`JR z#QVJj+*=!Z+PGcq10EX&9z>~9hp4}o`WGV49~Ur>+O*PZkc`BCkPfcf8=eCm``ovF zBk;r>*x&Z|tn$EO{KfC>iWyDWRhs(n9+=_8=WPHUxdEO|#P3T7H-2&L$9S9jrIXw* zZS6d~B;*4hBcIrK?mrNCnCBhrI9s3Na+K$c3OtUAi^v2|*Bj^$o@W>*BZ>p}tp#q^ z>uLv)m;93v;X|l@tsfvCcb#{bFb;U+d9=3+1Bb3e}g_liT}s`5^D~By-GYL0j8hF6Yqk5JKHsJ7OOLbb_%lC;)OKM7M;L7#BBSQpu=^6hT!wD1a~JX_<+)Cm*F{X@;ggxo&$-RN@}1eU#CadJwc85&KBXSUP5WMEJ>w+q zTEF$m3o^~Gf~Yq^e%~7Ec_zIbrZdhX56~l$l;0rj(>%cx=-G(&dBqDn^d{_Yp9lLj z03P7E-9F?gCI6#&LK6^gGl}c#DKwtg1%BJ#XY+kQ>>k=Xhw>%1LO%8%^p`YZN($eD z1YGYyat(%j@_(rJDCO_GbuDa1cb1y6+grmUV{OG4Im@Nzw~JmuR-!!_>jjQn%vas1*f z=EGPnv{#nbOsP^B@=gT!Uh)k6n0QIF%kuwH8F;8T#?7|mDSiZa?6ap0Lns4?ZmkC% z;k^Xb{>?bvg?XPZdZI2>}JQi!N^Sn&1n?yDB2GGz=LhEPDDyU=QK_no=ddfDbChCxufU$YX#c6w z5Ur15ezW6gD*X~D2s_*P>VCezh;YB9)xYK$@Pr1Ty{}WxpLw1xJQwp%5i_L&=ds?! zuv-!0SDM2!kgx=kdxAuQ^A?l6symK+~WW57C89{`L8BIy44?Nx*v#UK|a_X@niM*>Hu)>8sH_#b43);_H>TH&hHT4E)LSTuK?^>jd*UZ zCkMEmZ2g#W4Du1)+hF$%j*)bydBQoMzwLLM>QR5!dDsrp5G|ib1G7v6OzFgVSD5oI ztN$&o7lmBwMTRlh0z@8O?k$w-WU)fO=&bW6EQlA@Ak;WjhYOxE}I>tLWDi zD8KJC>(v)nN!dp|C-(vFnU3*MjxC$grYZ3>)NAF>^L?MED0pmK`DFs5?dIcs2tsSh z1+Fs$8$%y!hqq~m=tJ1q;;Y21nnx8!oZE5aYJ1>bp3|&I{`qOZ9j;f{@qMz*lZ6pi zFH+vW5%K|^H@9}{CF+@ac~0Nvs}p%(=fHgU*UAUNkdLiEyYiENDfJ9K2YcFfEuRPZ z#6-x;uw}}I;oy()9BUQgtC-)MIf(P##J~OkJf2U`t~SK~Swa3o;7=t!EEn()@2R%> zPZqZtf9=J*q9Nt?N<|tE@;z)(;w7I)oI78`4%diBML^3Zqwv?C#2eLTyIgtWW-H(k zJwQtlwM{w9b+dR^c-+R-=U2fWt_9r2!wgBhy50!SsoC-C3GPo&+@E0agE=7|N`;=w zS?`3mfIFYSZq}Y*#*eoM?A)F5Y4TrVxB9RftfAB#KiU;?wfFu~$g54@Z$O?eIL{Aq zo?npo>FJP4|n#Bfd5bxaVoqYy0~lag+8-fcKO>M|~2@fUB)&m$m=@L=7W90RH`g{EtV0 z$9rM?ZB2ZgEG!$pa~(J@@s1bBpB4ImP423Fo+BKmq??;^z8vHuXAqxW;=+{a?$zsH-bHwwF@ zlILPQ;6CoN%1!(L=l@BbU$gx*+!1z5q#@o$QGOrinL*e3Ky%L1d@~_$^HqHr__Y0# zuIKlbd{3uFBd$7;e;oT)tO)#K{kWIU(N2Bvcc%RNLGZ_UzR$L|ZxQGp^@G0;<-2Ev zy#Fxl+>7|KKY>Rc!2(|5^=LPLON^&BPO5NRh)jT;ZGXS{FZUa)M1~2F=Y=1^AK*E9 zYv)NKpzRZK#lv+uaHacQ>?(K;W&lxBj#KJE76W8tfBAVec%rAFkF`VZd%zQ}^P8Dz zpE&O~Xi7b^Q_rAF&u?UYr}d1igx&18e3R!%y(i%pNrR@mUz+j5?=M?FZhsd%u@_;< z0OcR!JSw&f`D8fp1$>@L@_rSxTE4S19z32RXs@;Z*QbDc`+$D{?NhWq@I(dp@k8=& zmtk7B%forgHp)Nb^L~`i`!?RZH_5~E7vc_6!fnxBuPZ<2KM8q%P3U9eaN`KzP7?V_ zrpKmCW&ZJU|Gyo-s+^#nCBS3nCpUKjPx2gMH}YKE4Lsfr{9TA=*$mwOE9};ixS!)- zvKRcglK5@uD1R@B85(1)zBqaQ1=6Pn{ecwCt|L^Bx>-O2%+1c6I z+4AnYFZegrFuu4wyv}+1@Sf735(%CR?FD%Jjy3_p+;+s&VRg?8DTdr8_+ISk^g;L08iFj(vWQyM8XXh0w3jbPq*8@?Mc6J z4ETF}-##Anh1@-s|HpGU#UZr&AuRXL?VvB##NkVLk9cb@@L}G|I-dBGvY)K-*LFtx z-a`Bianz>IPtcB{MhmA;0)5MOA?LBg_o3e_o&f!e8Z8_qj>!0*137OX{f~A9|3SW& z*G7Dl<4%#|wcGiXVtA%!&a2Tor{VSHbN^grf!+S~^_ zbbsC{Vpx5D2mb%0eoj9L_z3T3_#W}sIo=g=tqb}4iFfin+!nrvE8 zXM(=D3wm(>GtKUaYD#KX6^w(=V;`Fg`jHjU?_AHza(`_2HrVI+EccVA@f>jQ3h<%Z zNdECT__Xc_4(E}6;SGTgbDiSPtybal`a%=RyWE%Cx@1X5SeCMsfr-|9j=2Q8&DqZ-y&C%%$W`TMc()5@~X}QC5 zmM{)?lh0@D7tJeRW_T>|k4^)9QyVzDf4<<`?7x479!{km#x4f^VD6m2-jg9`p$qNh zcJDBwPSUXbU1hG}o7kbb*2$mbYPid(aAV+-Y+ zwz$PbT^8=U8u-|6p@%8NH@p#e^M8Q15Z|>5d~hmoF;@$p4FWIx8TkIhpQGK5wJv9f z?@x~JMZ1ii29GN0wQ%fN;FBDite30{PUpK9PC-6c$ zC^sOVk3;~Kzv-v&Kid+2;x6J{pg(sJB#d1HeC!X|c7O0d;MMElN&LG=k97hcSs5+v z^P(M}0p9W_@PC~1r7vy;KAijh=C?NlKKNV6DQqoV^f%I9nbqg7PA7c_sFks8{KS`TYnV7be{TylG9?Ly_e^b~EtiRe)bi{p@%#@Ubf(C%mg1C*U|+H~~Fw zI{CahfPOm6^Nlk6S$Jqm@>vJ=xjON?e#LShLAfszKm6CkzXW~{@y(9}|Jtf68shzZ z7WFxlTbJ#}^-eLj-g%1iz2V&Rh*RE2xr4cT!=7Ffc+1&nM`;cVt6m3ug#LL8;y>a( zVIlY3=Q7t>g+0LMa?+pt6Ywd11U>tF4Lud&?!fH=>;kz@pqv)})=(dY3TD-ARAoB9!y|MGg5A1- z7p*fv-$MSYaQ;@Eg>t75f0cGMO1oN{c$?d8?%s(jHer3=fjv(q{b8hUp&h#X?|ne| zd5<5gH%V6bJNe}H71eCaZr6q#N_V!f689yVK7;+7&H8TnbI{jv-(7lQU*O3FXcw2~ z6BMV=B3-izBUoL0y3yH7)4(N-y_maMp4Sbcq_Fc&T z7Wo%11U}67$2TYbiWH~xqo2Xfe@OhH3|rJ+^M;bWn7Ur>kjok>ni5M1sCk>?K4&4a)sl+#;-45o?PY&?h{s^Df$n@31 z8SIZO`@#|~qka~+ANTs zBUSQ$;+LRry-gG-!S?|szCb>l|F25=jcy0tl-qwkYculUJ=;Ei>su4`t$qbL49f=XXU>Ky)E}AE8L$%Z<6=Q#qO+L zyQ85VCI4HvkKM8hF8{$p`3N?+yqhYyJFcMBd_b~%vv0&9`axfu5kA^z#Xz=wFw*5_R>oDRH+ zaWqhQ;4s;F!0JvXkR%dYGLVTu-|z16$Oh6nT5qTKOa67^0=S;73cX0 z=lO0|U7R;IbKZC)`HXPCag_J=yS;Vn2YE(0e{lYDxbHNYJ8${6xOZ!p_s}jUlK&m@ zL-Axg)K}DHp><>6#lJxQQ;7eK^TTTH9OJdEpdUOE`sty5R(lTkXl~y4UG6_8+DxspX~Fj1o{@9OWc?A%Z~yd(m={*>^LB0;$PB!#`Hst5}g0nec;o~aiK{1gQX(Mr)d?~&)&q>KLYsR8_?&? z#OH1Ryz(gOHJSKc+$S94KB2ff3#Yb%e)tI3l}v*ze9HcnoC7{d6n&3 z$ellb>;}-c@_R88NWUWePxC#{=TXFO+8y-6_n=;~jcH*uF-WWL`zZGm(y#FX@Ui{T z?y#0589xztk>`Q?N#DVBM|B?js;_^y;kZ1uBjnkR^lM3nwQ?_8!H^!}%l!;^bs_k3 z_g4eY0B_E{zxk}NHT&VcD7%r*saF9{9!I%Th;PPoJ7Z6x+*OI+NO=;TUv<0f?1P;* z<-XgyZa4V1w4=Yc{y#Ys_#pRn4=4XO9{@hOE;P9h@m1N6TJ@l^gss>v`%A-Vy{aq0 zZto)f`)rrufoPXgiBFdwNWf~JBwv1v`AqR$cpjO?SlD(`(2wQr2YcjM;DwFA zzm@#&5ycw+Js_tH_ZF795cnwfbM`0w$+U;z6JZZ-C%Zlk`sPK!|Cxo5VT%o+=Rw|| zCTg^>%TA=<8FqU;@fXel-qMTuy5CszO5jbu0WNB^@JITM0{0c+os#5iaYR-xz6a`d za^V5w^C;}_GuC%~`p@Cq_Y{tJ2lTbvJ!x7^O`lvyNz}qe(}_O-`G4d1*1!w7{ef4W z1YYI)LDNXTyEqW#U*LJpeTgshBjCwhutT@2ZO;bYGyvS~_B@VX1>SE7EhWha*Adm+ zd6=zb;-}?~?hi^)i-kY_7I^Jrv}2KWbwM-fZ$*9G{-5eZzbo?lnBIT?!}UcI=jS(( z{}o$N{x#7br8o-{dCqN+-%ap-_t-&{=Qdc{1+>FuFC)(9Yg5VRYuZ~gzcV6cW?|&y{>^J< z+w0$dBz_tE*j+0?&bNOGeB?{ePon%cc>kRZfB19a|Eh3&IT?P{=O;&hkM&v`?IrHT z!i)3|qidtw&4^EZ8}y@>p~p$oLMP`rwQJDdClFtodTwREMy@1zR|w3WSA)hrBmGM2 zK+eJru$=vf|7kq+wipzETF7@`*}hGDZsqN}`Q6~3oWHbjxPtmWX)5@P=FTymE6t(u zjIsZ2!*UOp0ldifns+9?_+Nn!^Lr4-u^m@B0{mOXAm{7Er~eQ1gIl28KOvtbzXD!e zANcCTzrQE=jC6p{2gHwZe{u)f>pkMHY)E;YhyEuL-(fTGY2tfEPY~Z#Hqf-bLtmrZ zo#FnHn-8G;JU{93e3$+<$@$wupJTbXdj?j$3V3VoJ=r(8pHuuV$~}ns*-ae2$}{pN z`mda@9r{d2|6lg6*1i>u(#NSyIe#0@`PJq7!KaWw&YzI~OVY|U^IF`P zIB65&e*-S%pOH^8_cVq3Vi6ZqIlsL?3#$&UeV=6!KJ#J@Tic*{!QFVjv7 z-=jYn`5EflLcEJ|R(}skmXP^`hG!>$PqG>0S(NpfcO&r1S6Mziw^E)xU~h|(&ui4% z@FKu{KEL9Vps)TCE$IICp!3uUa`7$v-)m!pw^rPFz=gXCv7L*Q-=OWPJ{n>nEm2IsgCNo`UvzaZo$G=9W3`m@b`8+ z;053#QpF>K0o1oCKJhj!X=;|y&Ci-;;Xy}d@MJAJNOacgB{Sr zfuw)=W86nK$ouHFBfi+lpdaG>a(fXkKMlMo_kPpe-N2J=mp950($D4io8-pd_kT(H zJ78Dhb}X#10dekAtwwy$CxKV=#V!e=E(^1k<#X7_W#Eu7XA%38{C67Y3unU~eh)bL zk3YZYfStQtt@jhqH-7+qUO@V`rzp=uC|8c1Sg4*!`q`j&``=9rUhQEl_kGEVC{Xd? z9ntUHepa9zj_nIOnay&){~G9POTqppu-t3*0bcz8{YZ{aSa{|Q^6!R4p%vu$-6-%8 z?u$BpGxbwE75X{KxFpFMe*t~rQsCZyAKU`=KlTwg$n@UAmR!d*eGhUvpDB}E9{9bB zNxuxoo#7$y_i^FZr-HtA6!hu#wlK%#N)h^5fc5>!*5uD~ztBdKY`8A)%B_&+VU~L= z-!CZq9ej=_{;@>0T}BI__x1b5zb5~G!#?NIu4+F5-ttSxIfZ;q=KU4TFMz-6XJwga z>3R6dk71v8Q2sq01)ru)*wuaug3)I;10Pxq6t((`%QHKbp3 z6W|5jCn>|9h0+bcN8g3~I}zXibmG&1?@4?oJ_ku=!tXhL72l&7;d?YS(*Nio@EM$d zdbJY&tC!1tS1)&SK6kG2UV=4Azb@^3up9klL*g%#B(Um8{)_GKKTmolXpM-;hp4PhCO)yU0`?Mwejdj|DpVA zOhP{`>;OCbE&1R6d(by?{X3rcm@EKQ&SZV)&G)yrk^$P}pNW0}ZOi8a_F%b>qhHIg zYhm@JD{oA^VAfX~n) zu-mhUuP*8`Ir;vtxBEX{0$x28@_d{0FUtWT)AIz_kLzJUsi5JxbHe+J!6-h;d!=}M zJXuT(K=HxXAkV$zf08gX`t@K}O~el%URyVd-?1y`i##9b_Ao>}6i>uB?)`D6t;m0M z*yq*cKj~BK=a1yRzj;s*^o86$_Vc0;m9u&vSPXIo=l^BMEy@>x~OZtrj?S2pOUHRO(pZF1H0B@ZE-226H7Xu&Sxp!ER ze2;+rW$<(KYuV1Vu+|Xh3$3sR9|y0H`J>8HyBzhEZ9@xxmX5D@A$K12{Heg3_&p#o zZwqrS2R?Ee!bf7L%72jeN%}hOn74tC{Sba*Khk&p5qQ(t@B=Hl zK8Jx9zJ`BudDeX$cQ6&AN6H#uH zeu!Mcw}~(OH}GlVxmLHUsUMJk?!DCY_648XmEf}>`P|$Jy!9v+LmqJ8`~m==io=PgP%s z9uCEyWEC+yEq8E{Y&#y#b!Fiy=;sdF=Rv!GzBTv#?i2e_Zfzmd_a4gmB%hNO`J8kM z;z!X=sz*Q&slJ8x*9V{BhqL~w{el-!&WoY9cJhBt6r%cR z-WdExi0|?s@K)Z}F`4)%?Xam0cK9ao&-t8dPcM25c*|PSp(JcZ z`t`R4-o*ED_91=?{a9^jlslRIdiOTyvxVo74zW=hqF~Ey_F5~mAcImJxPjwjM zwYSSH{{ud#4{9ZxOL^wJ27GKg^gG!uwy@SyO0Es+Pj|h_`31`mnd9T)Pox}k;FxQ|i! zJ}l<};(vGld=%`>>38LMgVujS|Eozq*YJi^bGhU@$z}&{WN~rJ7M9X&q1-xj+b789+shiA+ryS3hRQR{??g-@pT*W7 zJ?EL;kNWo}ekA(c2)jsTyb_kqhcpoPvB;KR$q&hMg}$8`g5<-IOlaIg5PHVq?;OG)(@7prx)M{*$S|tGVwx zH=PK)X={}0ext(m*C^LtuIIOfpSIT^@0;D7{F7-cm-qi{PW*zKfDbJI`7b1XuSAtk z^$!>y#r;|s;5n1Q6EUAbEt2G~Y_Fj*+T}*l_w0)HE$jySclwtG!M`=P&-Neg!!$3E zrJt}Z`_bya&t?1mY&!T9c+PoOmRs!xeGAX4oIrdb_Ul338|mXw$7$eGI~sc4i}X+Z z0r>Fd=%E|ZJ|8#>_}H`fsfpD7T6CM$V=@v-bu*bSmt``^!g7cwSI^27cxe@>%v^$TPe${D%9(Z5IN4?KaT+ zIQ8-d;6L1h`hLK2S7tjlu^o|`BwL;f{>>+$9o?>$d>(jZD(otuJU`^P-^%ynwj%#g z_KQNUUtGQ*8RG@Q=htq=B^E zYfFHBjCg4>@Yd6yXK{BHT3-iV*#ms!S`Q14$}psSD!+g~`4iye@_z#_t_wZ)5dYS; zzzY?$i|g}lX&|%1RWPo-N&0L#7aa zQ52>8ht~vWAICr8Jb8FB`qxRU*P^ty+V`{e);9t^BR@kwg0xApBkx@q<97jE&zGD@ zdY)g}m-4JB1B}YktO}GM(*p~&_kh=~2kv&&N_~zU0DLw2?FH5ced`0zk4$4M9QQ8p z;cGw-tCMx)y0G)seIVh*AWvSs3G^ciqFye~PA$Nz3xGe5xg^(d{AxN0e7xNk<-9S; z-Gh4FkHM$%AoS_&@{~;QR1byR`Goc|@Z>YJ?_`b_ubmBiWFGkJP5Dp$8}M50zN`oS z0KB*v{6i=8vs5qe;nmUZ?)T=LM?R-!+kJ2L_X_VbJdovnJP!0t8=@aQM0}OslFwhD zd2jbi-U8lSL%R%-{^$1rANm;jFA?8T3R3-yTn&5ne)<^C=eLYN{~e@1@Ho&H3R(Re z%J!`#;C}(>uNwh<26)_nl< zgKMHiP9^&(#0O;aUA((n~(vS9JOn&H_H%lcitxufT`CLVaZ$$HHBlFSYV}E+U47GWTZ& zxj%#6C!fXK9rYSK415lv{AbetRIi18)+e8&lk)r%_}lcu*H0$Ch8T>5%`glnlZJth z70@E%Ej3AQ=RB>zd79VvkvlXg6zeDG;H6MEZ| z^lu4)p7$8s2$sAo+jCqSErR|k;$PD~2YGI4ZQ_3wwVVAvh>kAPJPQwrc`IIh1-OW3VJ`b! zmERZh@$|Aups!S5x8ta{@Baw+SnmG1S05z(NAN%AkpIoTk5NRu4kvy&&)YZO4!x~S z{vS+7dlfDK{UGUYyA}MK_kkaF`jxp4P~|?rQKTRIDd>m3fc_69zKpO{J&f=Kq4$bMKXZD&v6CkMSO3x93xD z0N(l@pW99Z-pYGL4kEr(0r=1lpwB_# zE6N6o_Pf?=;TZfJ%QZazFuXc;a>}INP5PzjQy*kV_%`u%ZYI7m?Br?U1KR*^`3ipN zyKJvlcLzRrAMD)si--&ze4dA0Ze}!I|Bps&%Z*GS^ecajjEZ|L*te)5A ze6M;x@F|q@hcd95KG(?7@7jlcF~axYe3|?8MW7$K9P~$!&jTOvTpZ6)$Z%|7so#RW zx+45-jsESzU5JlEyL>|WU3W&gOIZ#w<&}*C{!fzCPXYaK zFk&lS%mpU3xv{4K|zzT)mIOqL0f(zl)gIhP^*b(;epY=Zs#m-Nqb-BjfF8ajwq z-5>4;|8^Pi-DtNXx%;T+Z3q5i8u4u3Ck$%79fj9H~v(NY5dLQ^;?z>J)+zPzF{b#q^YuF!) zJ!r?R$^S|j__W-yN5#M-G!ws==R<~fhTf!`Sh$h(8qC$}z#YJ+wjK1g8|mNmb-{a( zd>-5J=vP5sT?ak-4bty+3h>tbvv%7>J8b2>!RwH|PpV^jyAS=s<$PpY;6;9qTg=B%{*A}+{Z`v3BAGJ=Bokq#$D75cH^10*= z@;MsxKHlwh9dX`U==Iu)`}xglzz_V0e9o?dzLwL^H1?yxNzj}3qkkR*`WEg7o`7m4 zpIrdFmG`l@|9tR0;Da|n{{NBwkRG;sKWe%l{rRfms8#=?lhD6>KWYsjQ@r*USi+g) zbLsbi5A6&&cOt&=c;HQZFX>t07wm#^E4lMsGuZD&+3z+Z{Xd?eJgcG|yp#!df1yL7Xk-t-3e)N=EpTlsvX$a@-hX1NPGeJAW$h9L`IaNbzu z{R2~ouR1{fOF=)c5x;&f*hzIB^ziZmNO)5^xYcV0@aKv5aedKpF7!W0J~RIf{srz2 zZ$$jGraeuG53O!UvuiJ)NZsl9>4+j!oq6~Rjt0?zj;@`gw^a<}t*o*ix zl(Y4G&_76g6Z+M{dZ^b~#E;w@{F`2dJXf+^em@cXM|ciF9=ljrh5MW>lR@wNcjxov zBA+k&cyZ5p;8Q&f`gb|+-+=Nzf%;1Kw{XE)z?&}yegyG8&a21xJ=UFx|9S%XZ;J7{ zO8oVkffx85;`zjTm&STw^nT1({CkC$ZcIL-D7TID2R{zH$nP?s)=Ba`+FNlO)XV+P zFz3BPx%ZD=e*}DzL(nc4k^c`kKQHp0vF{PTnfoWzBhX&$#8NW^^K>24=;(H=VG=z}K-^7z=oT=Hqk@u?mH`eB}DlVQ%n5;IWl zaBknD>t4{0{Q)KJLHbYE06uyO?7SIllHLAJ{<-n)kJkgQ{0;3W-O56f3^b;P1HNVP z7s&qr&U1=<-`3}oAHD|qLEisd1)HS*hrox1!2c-X&x-?8{)0aOf4_I}XTJkJ`aft` z-)GRUv}9NMgzpKW*Cff`9wq%e(4Rv8w&a1-8{g~qe*Kng$XL1i0of4jlecaGpRwHe z!z1aRM^AV1^sRk^|mwpf8|do_j1y&+yy_cK7NN%F`Gz?*aU^FHqX5Bz;!^m7@$RnJZTggj{FBspOU$}L`s7CeXY?D-bx zTQ0=7e>?HHw71cmz0ISYxAHv~pPv^OLBB5Cj(+_b+hsw{5650bzc`Wj;Xg&WBcH)O zC$Zd~JAqd}hx~UFKXNMVhxb|exUdS>kE2gR5ALs?cmRAVd_Q+J@|nI5@YY^v<_+RI z(Z7ks8*&lx6D|gQ@yC!8rO5a1W&t1B6?Vw!b#jL&(Da`>f8Nmtyp}sJeacI~2M>nb zE=4=6Nkx=T>u;bpFSoV<@L}GAQJ|a~UqSx7r*sPO4>%uAc>jMZ@g05)`jOmz*T!$N zTt4TO=CIJl_44TNAm>xW+ogM|oRvl4Z=L>d+Iewn*m*m$$$K(r$L7h)8HbhWH%_E} zn)p3v@29u!2Kw3**zIhVdtVFj-2FC-?L>K&K)Y;0`cDr8K6WG8{bbtV(o&GhUwaS& zZbkY-$iGPbs6~?8x+cmU{R;BCAK2La%pA1TUF0)W49xh?LjSsk`0DQiAG{g3h;89< z>TP&el=x@j*Kxc^-hv%oLcDxD_!PPS18%avCk|7`+5GpdCW&FFJcGx=uFfEz%Voi< zci%(pPiuQLZtW_)DwR>T2GEK5@4E^WG_o4sO zDd&eXVOK-^uIRqR7nX)rd77?9yBtRR&HI42@EoReXA3V$HI=?Kckj?o9|fNDiA_kj z$^Mspr}a_pAn%8CJ?u_992*Zr9uHZ#o&L7=2h{XB^7-&a@E`pj60Y8A>_%`ud|H^XD z0UsYXfBPQJ$v5+yJX$$PR{0I+hqi~_rjgINocAWV_wPopB>zVs&lJ+@a=_%|`K8^6 zpUU$mqX&s2mEib9={QQC@OuHyXW^@Xk39kY(j6?kb1m@E{{y~1@t1k7Z}27PL8c`Z z9()?~LtMY0c1iLi=hemBd!7Fk$EETVN3#6?{W9hGR3<_a?y>)qWP?8fuW=u8HR4}W zZ#C)-y)sF@5_y)B`&fQzOchq*6RlD3)Q$Ux(fJb#9yF1#Va5Ww3;OMj|Y9ru}c``fuz5b^Zb^3VONI`--7Ks$o1fo#QSDZ zKYVWJ{BPVB{6};CdE&E_a|77b4dk=Kx|HWO=u_OOg=-H0KE&^8ozM0?Rt9vfZ)@)S zx$eg(KEiR|+iUhH>5qngaC?|2=MeP1pvqMRE6>ZF!u7()BmK0m{r4%h``Dd}8RbQ!Ke`+AO_!j)-y(kc=D?emg?@fO{6fCh z*}637r_fH8Z3BJv80hC`q+h}PRc?Rdu??W-CY}fWDd~SJ1F^PmA@@GiX|#vJXOMpu z=_g+Y`r+45-wDL;yqSDfLBIBP{1>0swD4Sz-k~M!;AcGCR#H|nsxwvfeTRgOLtxhy!A%dgP4JZ8@Qib;Cqo` zW){wT5cEUuK@X=9UwdWp-wilgS^S%yXWkO}ce`4CEzno_-Jd7e?hA6hI`ks+u)u;S zVCfFn$uRF3ewFyyFOU!K!*u=pT{^zDODmr%O{1Jo{2q9X-%0Nzei-Z3x*<5sBYx#i zK;JwD{kZ)5T|oZl0PiOKCL*?$+rs+_#uHy)6UaYUg=V%V{xR*RvKQJ>wreb0_g(NA z=6haSkbcISl;;GDJO3p8AH=a}xy`xz&(D|YC|>*{{Pu0+v+X$GP5d6>LBv)e#Grt*l{<|x7+{=mu0wxqgQ3QN5c+%-dptf?epLxYO!!2+iQf+i>DLc zcn0{?euH+ol>DE23;5W@s8@~jcXA)Hbuwyt7V$aKaH{`W0iMVE=|0=S9x7`>p7Th5 z59f8Y3xSJzEsX5Vdhz|Kt%+~O^8>B9^8=5|z@+82E+Q3_a5(87o&>zm3%y-Id|mp7 z7W#)hiBILZ)6pNJUVnlaCCfhsJ|ibXlWR~v?{HkG^L=pTmnK)bjG)b_i{Zl znp=-7Lc1N}_~mx{0{d^vdf;<4`8@m%_&4$W2=8BGivS7CteU7g35la8JNp&wW38R$=@clEUOZ)ZRI`g^;|-O22>uCAVTDY&n@(%aeHKfTmG zb5_XHSMCqLXSdBtnYDFvB<;xR{L9CZbiDBgJie5&7+;E5j4vq*CklBdM0qDfc_+kq zCq#KCltSKdrS_h#uFmdqTW?^TM<&$KjO#1Um|c>ZmwPKcU2Xkd$MN&QC)DAy%RPOi za&K>UkEpS~tFJVp+^-V$CTR+)Ql8#6(ABTBJ-wxwZQUJR<=&*PUs||VvQCd0pnP0s zf1JIy+}GdJTh2k!Iwh1`l16On@9gPLGR!Gf#Xw~4?C$LEG|R}zVZuhK-90KqBO-7s zmF8q@Mog%`t$mi-PicBvXIIi+o?YpmS1FgKwTThPkEElme_*yYSidT<+}#ho_m$gK z^wONRt^pE_D^+@=O{{S>)3{77BP_M`m-;(ri(=ZOoZ}NOr8I3G81;8{OPVkNc_j&e z*`dgA>_EA@y$sW;Oz$n1OKrWqZS%5(B~3`7{+?2r6G?$lL%GbfN_~|!>DTgKTKAm% zDc5{Ldr!9}YM1WFRJq?%@;QP;T2oe_k;;?)j?TVz<=s$pW#1-Rg!HkpgRs)Fjq_$G z>LqsxHGf7(wuu&&^vo&ucC}SdzEY|J<*(`xbP5_NOsiWOYWhHTyI^R0k2-xmZp@HF zthJ}NP0TjKz>L>1=aK>8aU>~&I;je%mgy{5N(OT~%?s^q0%_x%nO4<=5sH__j_ zBC|@iZ%=<`dwDWke0}onIs&ArV!YzUL@nY%We}dBj9V%Hbe-P14jAZ*3DCy4LDUtQ@4upI%c zcSq%+TGzAL`V zyu7;XWOirwKwrbCW`!5iUul`y66*?pL8@?Ct}&S^L)^rUV+Q*A4-zr<=;=LZUS)Pq zhf!+%R5+_#meA(sf!apCl11(9J+oy+thx(zr!GUh|9CImic%38W>d3>`A9y6 zVm@9~Av1p|Epzir_VCn^JNh(O^#42@Zb1T$(4!!%4a#!Z{oUv5j<8MDcc{x^D4`_#15H>6P&b#Z#eRiW$ksxZjs$3dFWJ|#y z9yo@m2r*FZONA2w`mkc_b7!n|?Ck5Ap7FYpud_p^vbJ?W=Wo&8&W?~%CNZTx1<;CW z9DIh`fF8dEyNHFc{?l}h!`i^Y)%m;hp8TC50c#w5Stk=OOA+^q+-J%srtBx%CsXhfx3?j>< zLsym9Y!NorYqOB()PZsb2&`)|pJ1kSp-PwO+6)4)45pN&S&YA>8L>i|8^vZI&96Xj z=Zu+gKJXOZl_q96AcJDcVxU_mG${q*sTgUxQrk%7+k$DP44mf8z)GzwFk+@eh^M^L zxKhhji_F_(FEAz0U-nOC zQ7Kkka$s)1WK~-3#fENVvo=0ky7i~hv3=r0Q_#A28nr&2MmxLPd(jWUv7?-gYh8`E z4Mg^w6pug3nT17<5(>iA`8ek!d(DbJZ`Ua>9 z01v1|X30}L{4(Y#6@9BpnH49S!OKn2NEqoQeU8sGr8^1$VeZ3;Y9;N{j(X+ck$paY>P<7CQcvWD4g)l8Rv|5v7e$DWmLI zq#1np(Msr$-rdtH&!O~TRnMHZj$?8r9;N_Z?ecMwuOn_xB59cfLY*0R4jtvL{x*zF zs7xTNOYtnxK$6Q6rEHZnAkVBYj5ux8D6jW&9~9BW z@x=H`+y)#&^jA9GD5UNNh>YB_H`*st5hJxxDT`?z%E5UjW&K=bFlS|q zljn&&GV_whm$FJt2NtDP!g%xuSUM60NUWl*T^|@3cgtzN^ueg~eAy(9%dsSg&|7Yw zS#F<&>WR;%?>36rZO1X1EfGB^9arhrRNNFa4*H+0^kUhNxodiN){sNhBW3|JUdWh^ zra3|mr>YT9>Ks|78#b&4J;^SRsG<&)bZsPi&>~#{+7RcX1#7R5GJrXNNCfe6WpVL% zP#4LY!M~B-bd?#ErEnRh(WEGrgR)k~fvCl!RAZ)&kIP$-Gn0vjAuc!WVW7)`-8~(; zJtNOsHJ`=8xMs0q2iiLN_2HmR=K|5J2$bd7{z4^PsejyVF!Q#G{Gz$YuP&KlF=+~Z zT7wcgKqpu7+f7M+2Cr_lQ9<+vTCT5RcCY*O26~4S0&V8HwOpT1Cp5M3j6zdlUZQ@^ zH9STBTIm|M=Xq!$&7=@!03NfAk~o6hZ%3eD6(+Soj-$#;(BR6o*f^qzDQOr=na%yU z=8Ar6CLcXD$>oqmbg56r9S2}FG64z*Ohys9b}fkmFUMF#!k`+L8o;P*TN_$DBfCsL zWrC)729`BKJ*ZTrbQWR7t0Up5~~825Zf&uUBZ$P24Lj;72sd%3NBX5isToFr&2&J*;f zPZjhxXAAZ-wRX-K6rGWFiZF9fJUe;FjFXxSA5aGeYmjppb%`o<77cZ6NGs(ydAjgL zJ4U#2&GXSUF&jKCGzTkx8;bKM4YH`S3QpPqD#3j>hawhSPi>L}VvRYY#mkjYnH?xC^4Gy8 zbVJm**fzZEh3S|h-da~x_$B_bU-!u5DP~Xl(9REqq!SEH?vY1C`d79Lgf@d9J5uM) zEXxW(cmKjhww`M1?QD1H1Fr7FmqXY$FNGak$8Am%P}|qFXRbO-+e1#_A>)l64b#zI zWH>G)@jOe6tD@pzuRblGDe`f)WcL!R<)lR{ZX<;DH3vA7q=1hhDFRVcUS$#QgIHWD z6YWuO>L+fxbQtKx5UtgnI1>+}8)$`B9$__I&C2*75FaO|C{wR?kICvO#G=uUrq~Z5 zwFbTz7fIr%l^g@@k;6|h^I__|Q^>3%jRtp{Lc#H6AvmQhHmy8e&R#~` zHE-K=SrA1S98#Lm{6Um%abG~CWYa~d$#hwX#tJ_oj%YUwfOK=2mK(2%6RDQu@nFwD z_Sr|4$P|)N=2+m&Kn|3X4-N6qP0bB7+`0@T@nR!@mXF6?yb`FGA3k6&`Nl+bV400k z&#cPLrMTm&&*LdBTrQ(K6a4i=dwRgCSNG3M7X%p@JKE-@Db_+#ab2(X z%M{&Zv6X$Lzc)MDgk=Ab^v&yTpV`~fEen|ROsaVrKkt|0;BbaIM-vVsI>O;zoX(jP8`phzkpy_hhCE#{Qv9o)6j~$6~>SOxkK}&lea%+*! zomvmkXGLB!Hz0G^WIVQNbfOVwT3ESViEv#mvCEUQC5UmYd*=n@jOeWG;B==~s% z+ayEBa=KDNutkoG}PNxU6uv$jE zecHhE>7tbw>&6+Y7?SjMdbE`uy1z|L!pau(K&_ah+|-CQG)h>OeVPK(e?k+=FB!fGG;Knq#o`3>tWN zazv=jV?M1C4nOzHY+BC5*b(SZ3$q3GrL+sr2laA&K;+_^()vn~ zpH}wuXaqU4l!%@QfVd`^!~kN`HcTMLnA{pOCibFo>a|T$qf>uxJ&#L;pd{T;B!yR1 z*DZwHW=q7feI$S(XLv#sR4xxu?5R;Mr-Rf;+ngC*WJV#xBQ=!*@|TdoBg;Z|EG&NDFY6+m0mNzcl2ZGf95>bR0H!!_)K2Q8|t)uR#Q0*Us-ocXd( zT6=TRAt7yxoXfY}Q$EePK#3uj>~06CRP*1E+$hbt zs&?ngbH0i45>zgm^NV=p+b5S)mm{Z#Kpx?#r~-NmG$gb)W$SynX-Z$ZO_N-X`Q*@d zpgZTt>j!dd6mwVK(#+~VA`AT_#=I*^WAtc~+hkWj#Qj)D++RT##6wi9Lw6W;c%ETz z3<6L_4KS^49xnCI6}KOa0!oy}vVdyZ&vJ*#>8rHf1om1j&%4@@++dn~cQ$=vQc1l| z`pTsLwkJO!o63|$81)j7=$Uae+*en+muHCUT)AZc#GF?qw>+&1GRgUt@H;*!Ef1_< z3Vr4X`^S%C90On!w-G6d+rZhs%><`MdK#B>Tb67W5o7_O&;zegdK9HRfuF`R*%jbR z^W=~s(&rCxv{!#8{=Mv(y4oG;aQEirdXMpt7KwChzm>=_IdrsISeEqz`A<*sF#@o{DIv zo8)*|uHHEHl;RmNb9q7u^TX2$8$%t3(&w`sSJq99h`9 zIENJR+m#~d4)x8YY>C7T3J+E z!PJK<5|lzARbGB=kr6K%e8bbh)I+(d;w;LVuM$e@XuBmQftMx8fNlFOP)F7-p0%RG zOj=H}0oDvv?`Z#BAhje}ub=LsGggmM*l4vF4crdEI&e@$^ zZSvBUzNE#$S(-!+MVjb#=siv8m?w{tW|!x-^;QDAG&SWVr@iFhaUH`f8Z*nL%xoLz z>*(p7K0PWVC|^pE5lr5E(}7&;ls1g&yFs$ot3gs@u5#mwod5j>zE04PvnMv-EmH|d zT%U3NNgcA*cKSAbvN)qG6Rmm;IZao4pSb$?5_YwbVd|S-I%x_Zthwq zwKrfxvEtWcJQ$=r=}L+yQO z0vvuFEcBtP<_fg3u)8b=2lS0Z5r@nnM?fOk0@gUYjjOHz&?;2NK*9NPXdnc~x_yeg`tWq3-(EP-r8 z$Hl>fEWKJE@f^9bj&q=%ez-yMX)*c?VnB{(W@KPmRI?yLjy@XxvMD|==+O?*dB~rO zTM-~}cafuzqfzlO#J~wTGf63jZ-6rg664m@men(hcG2(7Lig9FnL|WTqBQ@K+ZQAJ!il2NA;USm31CMhC~V%3$dq-ibj+&4~_%B4hg&Zfj#%B3{QLz&~Y z3%QuqP(Ig{~jrNtEjHnWtd99go%ZHX>@ZHTsX+?B^Qk`GUHDVftxC|52!3<5;-1a+uZQPaxW zGE#=wt#aAYU7idV*9&R^DPwN9aKWi`5NVh_B&3sbqjMdK+qdg*M9ZBWndMc6o$rc? zg36g%Ip74cBq{49FaAU#ezqX{-}Q-}QI<(^^-Ct7EDr2sQ-dVWAi^TB3%z1c!rpf4v}et)}?rssEllmY$=xJd2-COH_W#rOZ1F&JT0|xy`;npV~OZf zsBDYICo+@(J0G#3xvY)aSaaaKN~0XE_W7kX60mUvzkx$)>0USYt^*aB6o`NGcw^R{ z`u|nUGp2&qU8lHE7je38JXg3k-*i9iF&{>;<5AOilroKczLlx4~i30 z?yd-1)&<@ActgjiS+RoB9*3JPbYh%c+}T1YZF8GU2Q$m^H%)rcR#^TD*f6Yob824V zy0)|Iy3e6no=>VTY&1D5Kl5S2U!OexjH)q|IlsK7f;xf1-fv@heMytDuXA#2y2iMy z;p%)Q6m0hZ%qKB5Fl{Aj6d6!EF(=){YR@XqwbMA&>R%_N3>$iYzFrVd@ErMTavitV zSu^g&Q-Z0u5_yKv9#q@;EI-mu6{dAlon`CBxzab0q?O=U=pK@Jy&?R$T|D4Mqo){B zwr!#`ab>wgXNEyUrdi)4p;}SC8SATR4dudS3r`t%dQdW~B(j{4;_5fP?ue9Apvdb# zlL)thYNc6XRCw0qu)-Q;vV?|GNL9@g-Ax7Y=9`c)ySi-b+Nnx1Lb|@{vduTa_2_ME z9#nTL*yg(FuCqylyc78QFK&xEHTAY@l;)Z#HA-}*e1E19&jv|>KW3Q#*TTXm<+hGd!JRg-B!<`hZVHO+CA8do%XHPmR}( zdP!om39H#OJ#4)3>!M1n43OJkDdWXXyysK>)HCFM|5uEzxkenM`ebdy^u~H^~!Y# zCAs%szN{cmz|kOLqxNv6)IZSMT?rMhbNWtiJ1%vZQh+`Le{9)G_DrB+vu}0EZl$y^ zZ*P>_M66SyXId=FG={AAW&oDl)f1|yj|6Ax#wThRqFJta*ahWZ)oZD3TCg?gX}PHN zxs)K6s_R<0hsTV~O+$ESrUoe)3=P%RJ!3$gZpu7D-(=9s{3AB1O_~yLw zAWKdYL`5mH4CXP2DU*0Nl`gSPfYKOSHOr1mxH)7(xH&|AsehF@v;5MVLztvDhsaNR zN0HD0dUJ^UhKC|J$zE8Lh&dpF6ZM5f`JI}jdIP;!#GE}FKDt^2gMbp*o1gYT2Qhi{ z6Jq@`V#KjHtxGl^yDSk^PQS+C&lyvM4<}Q=9$ltU*?Yo6$rLiC)+z1l7u>my0Wggb zE+NDQTHZGz`t1<^O8jVwk3yBLgl#&{%648vQ=zE^bcN_v6pyp8jXKKY$a0mK=n z<1am&G^*|RFzQ2|=FfV(+>W34IX(Q^aFW$E3!OoaCBabQ>;;)sXzUpeTKo~E=7 zyLNfuN4{&GlG@`(>`nV3Jcuc$+2nV+p{M-`DoSfARnc1Z$}U+3l&humu)6#&EVRP@ z(yE=HslzjQ{jO{nzvho$9>E}p$!;oY^tOr(wz+gn^mKP9bBJD^KiU^h`Z#$G{K7cz zDL%78>G>r~*5J7KkUHUAuGBt5O5W%~f^?`E)}{?I>DKT3(o$Wiq&%dGc?tWldlX=wZD9HvKVBJfuNjg0 zt7X%JgechdVCqWGn5MU^)ymdpWdc+A(sGmrVrmGs(l&%VSVfC657k>wSHK&M7-Pj;rIt*^8Ky*uNi9iL+}) zIw<{qP_KN6!7gae)99<8W!Xf|XU1DyQgRQ$h|CbpQBtW)}H7c;1Fx>tZC8=y4Ne3 z-D;Z#;P`P3z-=bvL9~1wsw*6;YFbcmfOQFaATmd+mXw3M(Q+_-Q4Y1n&S5ss&STn6 zdYyE>w6L^koT>)rtP(Rni_I(_Cl%&lCZUnLwh3hlw`;7BKS~ZZqb!s@03=Ff(l3T6 zRTd!`HDbqGU1{dz?L?N`^C8Mr3rb8$;-!#??pYE$X_KpHwE^_CZ==y4&PjiJk1@AL zKgBbL!k&F0Hc}z9sF$H`i$_JZlGbl!a979%R05_n$!kWWCz8Zi#V(1+P^f^|WCYM2 zV?=E+iU&Kyg)z!oImKmZ93!1nNA>KLH=W`?8WqEL?x6$;*37z$rl0JR6T=oODAfIHQ>2!3?3Hj{}8gj7TRzUU_ZeP{!9YlmFs2Zra0#sDB z9z1s;eF_-&H0rfT5&gwyK{oy5jn2H=hA%d74=W2|ftSUk=4IYRiv1qlnMrSD$`b4J zBu9*bR3;g-xhk{YN=sPF;7{(ADsh@q-BQS^5zni?J+t9hl$di%v)d8Lkl$j?z#`58 zDP&<0YDpZ7hzAjDI;b;Ottt~tNBkWthfpes?f-GBBnT9PE?11XcroT`im|j9bsK2< zP)G`S5h>yYq=>Umk(4=>G*MeR;EX-)Y(4HwJ)UFPmo~9c=#C^TgwYH?U1#8BiHO)g zW?*w?Z87EGpc@&G`kvY0hO7BWFHoV2JMP1?;o zK`uR%63rNySr8PN1Fg&)riJDpEj0(l2CO;^cWimd0f-6?SXyp?La~Z)6F!t1Ve>6m zTTT@nI4VFzXD}!_1DT?uLNu$XI)_DtTRFHwEUq$;T%7@CD-A4DYdk~9RJ!i5f;EFm zh5T`)QzWW&3Z~Ugu~2W6lc{zJ#kGbf_hQo+i%bC&m&UEAG-}#SqxD6&Qb7|b6hNv> z#DgLc4N7Ec+DS}-!aTa-nub#cvQBk4s#XVE4eL;=XdN2YHs9DK_fw|Ts#yMk|-7xkL0vm#6y9IhLV_?Q$A2Pp)^KyrvUVv#!bO#)HIt$qne}} z-(HIEQ)#W-DP%B|m4S?Z25DG?=!&JtpR{DuCM_OZOks-TDN#0???7lxO(#Yn7Rt*{jf5ha8)-~Sw8@c1 zBHacoD%fty;P9(uAs%E#G?a~Kl-+LCh_WLdvLhO@BWkNR<0J~kE#W0gv1r5`SA?fp zK|CUeCk825j0QH=+J6b2@EOrAR$|b|f<} zs7b#>lLJle9HwGBA}B9=g)}@#4l~iS zd85M8nUc1$l^iBTag_oX)hL=5rB#Z+sF)n*P^ZAw5Y{ORqB$bAMryUngHeI`nVB|= zl4IJFuNlx>)#90$XKyeS^CV8FytUH8@>Pon)4Fk@rMW}ZA}p>M3_qw4(a?HPD%A-j zu5v^J2>?X(k0?wW#M4%e((6Tw5VX4p7tOR>L-i;Hu1|oJ^|;Aa4@UyATz6R zAZ8HHZ9JV8q1!N`0ztFW6a|!p&q_2N=`x11!o)*)(2^D!C&a?Vc$O9BGZ`k?8IQ8f zPkI!?OeT{tJJ(5xvL)u`G)e|2Gp;HuCgh_YhE@f^tR6Q>>S5J_qtO^EoFWuFLnEbI z8^*K&Zms5Rnv%zj=c$=N(rZ-*vQ~9CYE=hYt?JOI_;duO9HvYiKJ+Az*T|Jwhoe}9 zxnJU3tl$QC!=l|ksxO6-DnCj)o*SsM@Hdz3 z%2NAPfzz>BxWqcoCZtMF$7szEbe@GH8Th@6xXu_$bIJyo)pTwU)_MYp_y_$WC9Yo< zp&4gE)GLcwow86=o<3K}j_s-kRcFHlmfA24g*Qwx85*XrFyO^ru*|DC4ROQxM6)G8H66_JUhL_wsWEJ~A-xL8UN z{Z0v7G9`$9b3PNlq^UCmJ78(WHcWw>floe%FYTQX$*pKT(dpSU<%Cog%S6|^NfaVX zR8TvSo&vRRe~@#CgI9=xR$s`GjDePMr`4zs>Uq+5h7)}?Bm-NvI%4@=jeT@RH7TE- zkwevXO4>g~6U9j&2VQWAJm@8A3HWkNe~6MAq{h_mbOWS>j%aP|3~WHCTG3XXO3udC zQN@_?(#rtzR2hsXb?xG{Kxn(ISvd&B1^8(ryrLX3XJL6>FZ()r>s~l&Ag_B2NIj#J zR5x{?XeYvgej+T=P=ta~&kv^pIAsXO+{#`mU=MDGuCQEt3}PtG$lmJVxWpO z?Nl*lRGFqERR*IVdO>KggD}5#ry`Fdaj?dx!qKfvPSYqUmrJJAPF=@Q)7&te$XRC6 zoTtqP?K3>VHPt88aZGcCB+q5H7Jg&J_nRE-FK2#bgl{5!yLlOi0McezO^$m(<%Nga&j z3{Y0e0K1F)8OWkg-mXi>SE8p_p3rd$Q0a^tb0KR+NS5ErD;z*!?1&I)8Xr^_T?BlO2kQzO}m+2wSp zLN%I}m#>MY#^p&gELTE#u~X@nNVYry;`(Vcl&6tQ{S=7Gv%GwX!wc4%;G%|;NUl7U zF|D88sh5@~k!*Pa#N}z;y7H{ub^8f?!sq=I0yq6-Y_Lfs6G3~dr}XxN{l|VIhyAoH zAkfK)y{&_nR7D6Bm&eE{53^GG3Qokp_~%JgC~R-pF`7`D3$jQL_H zEl*zJ5qrwzj^1cxN?dj}iz>;8u^jagc4G9ETJkhZF#ZG;X!B z?D{#MpmmMJYS%b;1zO|eFyg zv!|W;Wx1AyM{kW%EK7dDo@Qy3f-Lb;KBCXVUY9)1YUJUJIJO}W@s9Ti6n5TuoV@dJ zmN!zPCzf7S{NU*s#4)>rhlSy2qH9#=?i8tRo>R>~#4v{ufB#1Wm2n94FB++#g%&0Y`tGrcTl zcZfMu1j-_K=?>+~+p2mwC?b93w%+!cj36bQvLW9X6grB47PQW21W`Pak!aj8Gf*lOvB8C zLbpLljj)(F6`GWBNrY0GIA=^4ViTfVqwSV&Er`rqRs}f zlo8^A6{6wUxV495jjyFbCG7vi?vc{EDvd=NrdpSclGC`fo@Q4du#n&2qUir)?@hq- zI;w;JH(`k&EDDq$b^!szk|23i*s9o8A}3D#)^ZX-QY2ZDEyc3*BFV8F2#8Wzu@w=P zh%G2kKw%XHih$CJvWcaj4=9MOh_3}y%A!CiV(tH&nKN^LckU}Y;iKR4J^#mPvEKWe zGiT16S?}DrbCYz`ASUFit88M9udCUt$04U$V`#YP^a>S(`H^>>lZp9t;XVc;Sf3om zO*xn*UBpooQ`L)HstS@+9nu(Trn_LO4kW3{%fe}@iejpIkxNxUlBz=?Rd>Nu9Y|7@ z7n9Re6~$EbBA2RyBvpq(s_ufRI*_C)HDGv9&PZZ7$jcjp&8yMr$b4!hqLm5!hOp1UT zfz759NO;RmAQ0?3frwdo0*UB3l?mOUnVwaH5XdAo6#Dg2sz!KE*DoYwNWcqk`cgj+1v&$>zwj&xCH7O6O}2we_}Sko!e=p0{)OfJ^n09la& z3+~EC*R%@J)A|rpB()&mXjv@U5E9ZX1X!{Kt|{jYlr;0er_TO z4$2vh{#7&rISE5PV>mEaBJ3WN^W$E*G( z;e+l7h@Qctast$d?2{hrm)fdf`al0mxfPS`-hLpXYfWPifY+u-iep$6ua0RePLi`s-HUgE{+WPotHJK4gm`DG zXEvF~RZ@@9vU(w(g9|BU$8QRWMdI($c6v{UwE5}sA+i4Qp$xS5jkWLFy~}&WW z)}h{=-IeySLFTwe{_hPcX_s)z0=*;7^Wr_sUMfvG#B} zV0E!}`9jNJU;BXEh!E`A(Ufgd?w6y0)8^nX81TIa0SY zc&suqe2u&BDEgGuukbaT!ryHgq)Krbzhr$j~+-Y-;U`S9v$>yN_;2aYEh|M zc3^HAEXgOYf`n+6Pi9y8<&-!3K&tP}k68_LUDifIN3`1dlr|KR(>jmKnN9tD`ten% ztm1h$ID{_ikbDrPuUm6?DBtNE3jL8YK~BmUJ0u;J+%D=@8ID(u4EvVklROWmPdiD#l=u2IX^dNmd6d|l?!WMxyS z>-rA)y!#6+c#)Qv+99~6?TNHFymkD$6pmNw(yK z{Yk8h?n+h$JQpmTxs|kE>T!dX4sQN~r0T;u|!?OH_l zVHK}KV5bg{7NVDOCHSnWij z&7{#*pKUp#D!5R7UT682pTXq=qhbdg<@SgB$m6>F>3<&A#nSLI((5vMT_&sBn}eg} zr_|S22o#bBCs~MV?Oy-2!-GfVU@m`=O*s7Zhz_gjGYfau{gH=4!T=${tyyq6hlq-YKV1WxEf^zXd7{S*A7x4c$G5 zi_jfjUBLbk1vS_^NU+s)V7Zua2PPwO3X_xeLNbpNN9n?ID7NrTQyG1{hxDQ?-%?8G+D{Mn*%sOdqSn2*ZciVTQBhu*sk4C(Qog)kq_eZjfsupPSW zZX(^fp7m3bwwxwC)_JL$>}KC>lc`^*MA}OnIwVg|Wg*>S0f}2Qz@O=ixxiQ$wqsBL zaj$y#m}}uw2b+_l({bINGd}9gK0EKn3EgZGlL*H+1ha|(k_D#^U7a3!mohu3GR1Zv zUW)xWdMUN+=uI_J%cz4{S8A3eJ##QF!LTn0fr&{-W@Qo}DXWp8Kk`F@CS0VJZZW`; zEe7~h3*6(pA(~{KnASXuwbiu~eO_T1NUo#PO~kik$|ui`Opl9KCCHvNh40y_n?#vR zjNM(Cn@PHvK_LDe8i!;xRUWOldnzAGEOyffQDAM$&0TdODHGTz?K+vxp&+WU5|qlC zb(*T^&LZTwgzBdqLW6UT3*Vy+FoXsJZ9*A>MRf>qLsb3)m6>iQ=f7#I{&oG0edE?$ z>pyWXx(eh#7DYx5{d#R)LN{>*rM8bvDsq&`P%1@DCPiIt2cPyVQI#V>L@_qEXHtnO zC#O5yq8i8!z~C`g z-(06Jk1fL*iM%Qxhm<<4ZlbP_d0YdsX}8>F>M8p6`4RiNiI{|w;0wXl5m$?u$%d?1 zb0>BA z$V$9Wi+%krU}tEk^hqVpgfor4EmdAm905{|zu z8|oe`19A(+{1)*o6R4J5{YB#M~hpPZ%}2&!Aad8kZl+_!zoDs@1U$FI7USvXHEIpZAXC%-N97vt&q? za&(Qf=#P_yxhO?fX|x!W_mmHcu5fc^y=fZOk9tIG{)-t-Vrlo(IXZBpBHx%QM3Pn; zTCoF=g-N$Kc-$?{xU@v28lEKKY0lX`ZTUBqb=GPbXA<$khk4g$!Rd8OT-MdD z)ec&oJNcOLo;?83ToCf=GW@hlFX$*eRsZSGe|B83^ODkq`}SV8zqEgExwK>N{{4F| zE$!QVQQQ8~p4JQZmv&#)zI#`zKR9*&LL#ll5SeAM@}*dLN^TghN$_6Ujm7)m`^3*KVO9 z8)tL_ZcZfW**DbSdjSM%x9Yo8^t1l9$^h4dT;FTl4-T$lgg&F83#Ornps|AeNsKse zQyHmPGL6t*a&BE1>9w^uBtKl^md_Tsr@{eBtMS~6`QLqGvg$62JWj|h(K>Dek_E^k z8X0pfgDUCL_eJRDwg^%)HVn~*TRo6Crr;Y}%%aPoiypEVau{I9VyBN;%%YzURmq~C z3HbjNQYxEHPc+b`SL2ZBa12Q;soEC*#^R zQe~NOK`KY0oY|&AVGxta@L0h12|bsJH&`TnPtdK)fA%0U>zzch)K@(yw(cZcm21t> zc%h^n&~$|O4|O5zgb_-8QAd=MdpP?_b3~bxtF*%PQI1JPRItd~nHO{{iR|UnX04@J zZln-=HXY8aDM)HI@-mV_9t4SKZIFn-nV%WpjiO18BJ&(^r&B3c{iynJhA(D;$+Al!8-Gu)MoK)M)D% zoHC#3BFe`sO66|A7=6P4b9v4c6h1I8cBFf3WWctW_}P!{5|-N`?PT5ZLV@bwT7X0P zOte5{dTdZS!XDj$9Je8R*?@IVafrQvh+z|pk6SXGRYK&x!)sOXn0T10>nz0fL~GFp zTPz_NAM~TQNr+#011$h<`^_Tz2MX~XAvHfUxW0qQ0>X+ahq04DE9HRJjbpikq&vN8$NN zs!eFzpWqzzm^?f5L3$yJE!o9&`6VhYP`Rh??wd?~BYc{?MW3qp2lHWBRqLYr0-r6a z>UHrWd6)tE+-LUCdK=Cv3e26;DWwmV#; zX2_`ef?n_gctbH;Z-&1cwPba;;Vwx!Lws>e55s&>`946oFR8980c7D}C|} zpeWwib5s_GWpW`;+j7xtD!ftfiQ>t}9OEMuzt9k@buA?Z!iwGjc@%{kVoN>6(rXvw zI>Ronm?upo4-1#YFZLdg1svUq;7s-Z%GYo`^O~ze9~K*q?GkF$?QFR{Oa4)Y7OEDY zFW1o8EK*sg)ECMQj1FyV8p!=k(grU(DlJheiL~#y;p|fBUXC0+vTs;>+TMNQMfqNF z+=Qg!`{ilD?y%uUw3v$Hmsuja!a}M~QzTmDaCKRt8QJIdX2iTnh%+%nR7Jwt^<_#I zknb^MOH>uQ$JJNuOe&gPDQMl%moDyT5vI5RtdbO0hkR2too=^Zd+SA=yD!_{y03Hp zQ_HRTH8$=4+zYna(sa^p{$SI&@+K0(@BDVn)cBn2lxY1szrk-UV%`3?H%{Fe2Sbk*in{a|% zngy9T^w{1UVx8O4&)Gx7!tAY=`cUkl$`kgs}^Be}w#YJ0grp*D>Vc%6QTEmcgHX-*!IdK_vqP!Qf{g!@xEK4M0HzUZehkCEfiSa1aUu09a52c*q{7OI4&36kN{C{2%FfJ8mB@aQjtq0o>A?3*fHaT!45iZtTqk9LVLVu^4SQYcHg4`J{wg6d^V~C_-s@OaM`HFeKx9u_-s@O$Y&!6 zpg;o3ro2@$6NFs6BtN;ZBulxle6I3ANyc)4N#1f{IKZRG13@7<`N+c$48r;9na#QL z6`{yeRdL&Um4JZEE>k8kVnF!8?ecjRu1ts9k`P(=A!iRc>fibZ6MI9N#w%f#SYnaVe#`4P~UXo)EixJ?_l}bBhnwb_kG6( z#t&+m?PJ@nb-Vs{=ap|Q>w47g!PeIHZh0@Xv$ZwYa64j{Sy_yBS$2vU+a!K0CZox1 zshZsFiCjo|Q1nV>ikS!jg%~F@bi3?d>KnPXuT^~dw4r1AuhgK%&d#y^5qX8fFCTZh zL8yF5Pu|z%ZF{bi70pXEvrUrOrtR`pfxJSe?@UXT)AyuzU%c-U7uI_1W#@Nx9vV8@ z*)u*ag7OZ+$dPV2xIz{h_q#HO+K$=Pv)Eu$VH|)F>0}XB?Hi1Y;vfVYAV+isY8wzJuMeZ(H6o9+cOV zeKl*nc7JF4_D(fFS5p{ym#@%ibE1fAP^ftS$9Adnwg%?~!@FgJ-B7Qq0UKMpb*H?L zGU8k4|Aa-wI{klM3L&?3-onfnrl<5=~oM$NPGYO81~EtKy+njjbcAi>((I z4h#r6jZ$ z(~{8IFRAQr&v#wTVP@k3lP)|TDAO4k?_^l&J}_`?llrq~uzOUNCZ$|u7&|yzO@Gc- zO+QJZ5S~v(N7&JU+mcY`uxdFuacJz$w3ci1bp9uG$?vXi9q;L@=o0XjWBuJW3(U_I z&kqjWwc$*$X}hc4y0E)P9w@ZSSrgKtv|u;KfXn3JL#vFug^JNsv}L0KvMA~D);@NA zU&w~*&~^X*f#Wg(yiJMu$!)$CRWqvUSW+};=cd*;VbUrkv!14=O|pP6&?D1$eJs7Z zM_O-FPrs}R%X;3x*y!#at?=;%5VE<-FL)K$(m&LWK%NP(A$%nk;P)xxo8!W zcQyr6a*|v24_7*T0d2cL9@NVuaIom9&ANinJw9-xyWBl6k{2&ZH?<$@uIxQ3&((UQ zH47CX20Qk=iOz%44n+b0#)z-sg`eap9vUmOX#>=oNh<$J=FEIk8x(!2*q4) zEL(LVa{_Tc!%XUQZd_{GF zL%n;3M}0?<9HIo@m-D^Wod5XRA~?JqYB2zQMgCy?sdosoK%y{J&+lyHC=m#<#)h ztzOzaP%em9YhpQ{H*MAPYJBT-6M&qLPHL-8lYBePm6E&2CXoeKZ`yXD6p~tdr5s6f zsm>atyrr&4O>qtSwpF;M&Az5yD0^uxXx)=Dy^v-;+s)c3m4`R9$>aDhgzVX(5gLdneO|J4y(7e@qyO$*xqj*Ph+m|JBcl}sB z*=UZAbal?9Gx3d7RLvTckTJanl{N;pYHZdnR!1^|`@pyH6hC=35$BYdP%*wEwuPz~qmWx)us^#*BshMi5>v229 z1(`vzj#a$HR8vAD%e#A@%DW-jGOJ=cMBD|WHT1R=^F@}{#qw7=Q8`-BZs>4FncVpo z`r3_)^Z&wq^>%Y?&aK*va|^$^sF8Q2<{~SHv|`98Cz~$gnz5@GCtobfjqBTOdUV0y zpw~9)r$ljNa&vV?!IU$dJjO`zJ}#1inyOR8D6R_Zw(54~zp$?Rhv~8#FO^l^c0F^$ z&+fMc-&eU`$mQbv%leL)Y;k&?lWf}RyG1uQ)w|f-+(ELD%wSHkl(W@Yo70gfC^V6c z%;_G#4d$Fg+vc79eLaVDV&~?Nyyr^HI!V5ownR;Se);>WI)B%&bJE_5pWs6V;WnWf2BS?FM2+|=yWCZh^n&hm>R z8x=%Tla_>?)p?S_aQ?70iQg;p8yS%w_2Qi7HVj>HQCOB@(M%5r-~<33|7y32$}rd?#{D4m-=WVR=3m9`{O7hUwdhE!os4Bl^*iQCa13s`skayh)nx z+{!RU$c=7{aAOnZY#YuNGOP1#sdzW|hf{>b$L?s1Adf!bwH7Tkn;SMEVV?vaiqq?1D}JAI(wA937{hr!vZ z`0aiaoJHMWojVh7tqh(^Zs>AeK&;zzBYM)#A#A@VBHRTVP-?UBqzBk@~_~Hl;q5lUoS9@lWc|9b&K|QK^N0G(8T@RMs(?YjF zMBgEfk8A9%Q;*CiEIw5$K4+1(;grV5jZ*8kckY*co5ODF(*bwf_wJMKJ~>exYdYzA ziS}_@Y- zJx8u{PFvN!OJrm``A{?HCXIf_j|>jE3K%c+p0#QFl6}5p%b7 z+7>eR%7i>hK4}w9yp%q3uI?vyE7I9HTp4ZJ+PPcyX6T72vKd@{?Ji$ssnhg#LEJ(qU#~gT zD!aCPoRjThJn4|;rfla+&6iS=n!ls7{eqL^f2(^+=GHmW?Ko9-CFrDf|88#DP>^in z*?4i;N6)wUlSn7JW8V~3Rnx??IZn02@}Y?#`XtI016a2H0SIo>rE_urzt0{xMVnlI zxmC0z(X&ZL;dWf__ocs*ySHXtV(Dzwhf?~;Q*ME(Y`EFf)UNNyiO{I*!;pvPJ%^7C z$TlH9pvY;_no^YYuUECwalTThm3_A^T z_qJ6YCl)k6;SpV#$=8u;ePs1``6_zi4hYQb{(;`(-up*zgY4$5Xee$0Vw>w*vs#=t zHEYVTWmVm4@7vey+-hH#cq0pcXqRl4a&!;p{Z=FMLeYz9(cIQ}Fnzo2xXpEF;vg(e zSeM`mz*c~6gDJnC-tdBUIISaGhXXyrwY-~kM2_@05MN+-z&>6Rgd`G05+qE!b{Wc%ReR-6V!7;Pg&JOvg0jc9$byg;(|+vO+%e-K8HvA=dwWS~JTJ2)eRXy!s_ zu*zP_@^6mnE@%y^A6HGAllSg( zZ>7um5PHZnO3hZc8*3!$G!fM)F^i;XK6$k2joB* z)94Rc!?k@LE{1yrazwhGktnIkVQX^Ueu(YAP?KHDTZ^)FSiWXhFjzDcm_J6NfTI%M zWMg8YA|YNu0%LUbU}l=c&I2FWv5+0)(H#fkHCGGO!PtG6AO?mnylGi(5ELVY&#i>W z_E*kIb*o%4$Kgl(97~8$2nZlLIeZ?adJO$;N(c#wXWwQCAwh&+RtaHAEKwLj(pc5f zil1{SL<)8XEz!&s+vv?=G`lEq5j zb^0w*H`4jfrMfSohAE3qbbXAhp?e-<3J?&?zXfWG3O-r;-wJaGrQl)L9xu;gyo>K$>Er+D^8Qm!Jr@q zGX=r65FAgfF9ZZdg@8<1P!gRG54aDJ?5}z!Z+{4=qAX~QrUj6>uAnZ6!$GWB@8d#2{A6ePSSlhPYMJ41pWu@5Gv8XjRoQRCI?G zjKD%K8F=1nf##&Mj|+s1nez+M$WsUlQG!N%_8SjBWgNVR;NKw%6jYK%dmGA!Z* z=3P^jW*-p`7{{Ajb;BvJIkTg5pqb4vD4^J9S5X#ZWc#US@(e<_tZa1sS*0TM9yE=L*_!{fc4}#-S(ts z0~G@umG}I!kVr(O(-9P^HL@mVXGzBhiru=c6COHxw`Otg#sh>Fvzx82*J>iflk@r%br*6tZqlKD-9L_l^7ZN;`!H|7l6E@;f zndQ?7R(nx#6nmHX!>1v^I#g84(1P+p;6_P=dI$XhsgZfd6x$@Cxh9%6$}BwkI@k8H za4o@HP^WK}Cz3$B%*66a#GnKESXItzROc5056PL1A-qrkzT#%8ts;v~`3}sWd=5}F zW=vGM=Qf#q%yX(J*N!szP?KcWkRIZ94XaCFNkK*&3QJ5%SsKOJ9!pmu1j{2Ucp}Sh zurb6bS|9x>njsx=Ub$O{43c`0SnIlW``(U-;W80CBynY&^N->~AEh1?ORI+Y_$pw% z+F>WH7kZFTyr{@A2EHF;dAOckx_-yxDOR^WHqkbq;OLM(3CJNEWYPu_2Q>A)uO{*_ zB{fRg!$8mQXm@{KuN?W?c~JIyCC8|bg}yNSNS>;OVEem4s6I>!-{1@}^ckf6b`yVG z>#AP<(xx}L2>vOfsn94X&`3F!TyY8%H1i2rury46qKpHwu$vcgJZg1)gy5vcutGpS}Z;yu1WDLsj!Wa}oV;`ZFCsQUkKL#;E9D^bZ?aaoY z4Y(gB3V|FfG7ExAhHj)F3>kIKy6HhC_}++F3}IfiLGpS$s-nqgmWoz`3y}3*T_y zizyT(IPgWWoPIT^n2(S{8;@etY!I`KK88f=(E24x|EsAVeU`^f>@ zC?HQ)T&F94dSp9-&h(-UPNy3uBEm4>>V|#MsA@kSAHT-fp~;8mn6bL#0`zfY2uTA1 z4+7y4rapoUVIfZTWHy8Zkr1m|N)}6k3bBIOK}}53=akxlNJxqHrD0X$>EqWR7%V9% zELf$_WQ&s3?9b^8QT&tIf>vq0T44g0VIvl&F&#;w5_>!-$CJ7j;p9#w88hXk%Nr^%;G~J+hiCFayQEH!i|yf%75%DUdlLZO2tKimVD;5!$hb(-SzwFFce~=L{OFO z6j9ITBNn$wgjgXYi((E|CEl0-w8TtpKrxm|YK)j01!lESKf(5YwB&M%3!u{@0I15{VJhJ!iV#Y{NjeWi5tkn$T;tSsi8?oEh0P zL@z^-W*`gEE4lsX**H`esu8M5=b|H3Z38ZvvC()EqSsQVIE(-g=DaRvy{5BAM=xB z^%%u8;v_MN5G)M|*k4W%lNi}dG>zjXawhHnNEIsN7W?5$R=ON+hf6eswVUX*V4~X; z2Nk@wD z6m**3s^%m_s+x}^Fv&#-Eu9oqB2 zN41vZa;$EMw<~&~bHtEaTM7&Y`!}VsKu$t3nmrB8SeS?;B)JFFHVksDqU`xKBAvFmq)eX zUO}`-uJu(ena;THbGy4(ci|?!dQ+NR**$BJje*(ysta;&#Q6n%cO6r8SF+}2cq>)e`fUu>j*`l^5}xLj8y4g<&;&)y|2jy&=fu-1co*L7E(WIyFz)gif0 zb${g^)&K1)T_fMC=^Q?wot}P+-fhz+(@);`;GC%9-r=M2;egK3T!5+S?(NOtOum3^ zIgyDH1kqe2^NQ55Rj|`sg;%MpUXT0N zr>QFd(u>+FiFgCeS+2Lt`ooP-;X(%&{MJeyF8%#(xHWew{B3qrl3nuN*xhrhjOtGA zne`@OgCKXmZDDFg5>tYOns4>4*Ect(P40877x9$yuCSxPOhXaDVK~kdamY zT2}m!;Xs()J1LiJykqeuW>PXEPo;E{?wFIx?m8fs!J=edBkm6}oxwgI+5MZXPM;td zFPWQ&Kbo4GTC(M;#AXJaiZx!jN;9Wad^oorbg28ke)64)ahmT?Yc3iSPMrwnGnE< zWnfvu4HrH1Dxlq52p)XQWt=_LFFFNWqic+Hj*%F!sB^$5un(#3IN`RSvL zJhFSrPxkX8(TJ3hwSy`F#SzWPOYw+t$ynz@^xx8${%f~1t| z8Ng6&9NM6d&$8h)YmU2haX1T5-Bqw5eK$ChH7J8j#=K(j?$JJ-J0nCjSL1=@bqAVL z9)`Irxoo7)m_4}2#gyJj)+OSbh%n2~i2<}Qavl&RqUFY zJb%t|5IZDSsHR0aF<$zn2;!??K5EVfF$mA&s-_x0`(DK&7v|KK|Y4u&L|OoC!WS5@5Nu-tg+ zSK-{!uqGBld>tJ+WMQr!2rtf4PWN!>bL0b2gU_f_DVwoSK}Pjk3!Ot=W3?bzW$s6K zm>x;ma$^^}nt(Ip?k63V*-kZSoytW8PCA>pCGuH7^%%tzFb~V8QN_?qXExExA|bS@ z8O88?#t^R4z$9ln6-<#%2eb4g)K3ZXDC_=Zl$CbBrMEOXCbyttrGp0tkLnI%*+Q^M zrbil0>yPs=q11LCwREj)tsaoKbSv^P3`0f1!Q**3C!I@06{@vKTTnEB;_iuUdw$(7o*VSw{*PI>S}b$F<|VuMW~L5b*drG=t)Gtn4$ zdjeb*tq9@-CG(yQ_2E%LY&4y`iBpq8;lVk$tNt zh^srrX%ge5Vd3FUW{{1p%Le@TD9s1Rzc^?hWAcW&ofMEU#&)jvy?pNQ1kat;{HXzINPHtc(;41` z&xlJ!Zy&sNZ+Ce8-epHMg?QD{OKg)uwfE!A8P1Zb6fd$|J>W&OdrzFQN>>8lldanyj!4}dUXzY6JM2x7TSIp`^_M$LAs531b&eh%>e(O+Z(_S7ynTr=9uCV!ec6>= zk~dR&^>2^+9IyP4B|z+4Y$FN&f$Xxb$AQ0b7AtqMa%X+ z$*2~Hd8|)R_Yd!I-_uCLB+4#H zR!+N=1I#V(B2lw%_b$5{7;Tj!-HyjFnQuy@n5Ivwt$XxoQDW?}qeph@Bcy@hk$v)- z6Z8^aW)Y$)|K;?QN*Q!KwJHoLMg<~TV4C?0@*w_0@=x;hab8qwne{RoL#{G$<-`o-FHK;D%vLF)?!^tyFlKJiYZNYebV2g*HXJBzHV%B)#~ygdC~Fmp}f9b0|yWG$*XETeMlsO z7PbBOk&Hnw$4yo$;m)u(&nN7>Aw{ea2eiJLq|5%^q4uLA`T|?DGH;+Bti9v-KJ9V5 zHuo{C3#6FsdSJADz`Z);gWHF?D;Cl&O|H+r0_y|!x}IU@(Gi(Pc_KDRXPI2}MlXjJ zU}C*4EBR^^g0eWV*6->Y>^?fweSH6je6Qk=o501)Uok9i?hOy@8t6VW(tX6N**QGa zBWs^+GJP$Qy$7vYN27c#S83;hfrFuHiyo=z()slDp2&tvha9D&d#(^;PsEkaABFYh4t(QocoQ>3G-25Tkjw#!xe-eg8fgppd~`(WZ;rWb4N*c~X&R`E%5GI3DPC%atarCEDCvWH9~$2{={zXM8(cdudQ|%b zzf%ULcwyN=5!00tm!aTLpPUgtpmT;^dFCYv^vK*owx!4fp(HmlIu{u3J*X229o1x^ zT8Cs2tB7@n`lNXEuz&wcmoT&&EfSftxHYl7oGpq5HEt2#U&stcTCfg`nxrJ&J?hHg zVE4da$!0XA!GQz1C*$0n^G1iy+p3phkK|7;oAgq1uNRwq;OL;c*sej6+n&chR-zh>Xp;rbcsaoxq|~kN5{_{Z{Bw9wk=MLizeyGMd_lQJ3BX@*I2q}&+Z*N zJ2#!TxpZ;+-ph7&HlEkCC4RsKD)D!G@t z@>E0AlbJ;DrH>nOdT$peq!_fRXU~xTsRr+NU)raY{z$I9^j+NFGfL{8`#3HBuP?nb zOJ^GkzVV*8gTzwpnj4>*S`yOtzp{`Zaq90W51jJADG!|Tz$p)$^1vw%obtda51jJA zDG!|Tz$p)$^1vw%obtda51jJADG!|Tz$p)$^1vw%obtda51jJADG!|Tz$p)$^1vw% zobtda5B&ev10TQsG}%{FD%H#X%8xvLW=Zzr{6?7mr@8(n!tXsWaQBkz;<@9qv+xmw z-|^pHb$UtmL-?8)|3onbl`Io)w&L!E`bUz8#G+*GZ&n%r|*Y9`NHKoVf_0jte z+@&Ntex4BZol$zb>6?)F&se`v(mT6!p~>%X*Y_@6Zr9`g>)n!{dzE_a`nbEUEj=S# zJNdhoo^97(diUWwm1N)2OYC~=(KpnTWUtY*ToQ~lxddncD)y&k)t=Ku84=S5!stNqEN++Q)u z{kQfMai{!Om+(2`^$DMvdWe&6NcgLbHzxdT#+wuV0pl$RZ!_MO@IA)M3GX-FmGA}Q z{RwY0UP<^CLG>HTkuKf8F?c!vDp1X)RyhzGJ*5;U9dDPq#MVt0rHU@Z-ko z6Mnt%hJ-)Ucw@r9bBj;6IpNPS`IdzLnen!SKi_yc;giNY68<9NT?zjyy1w*{AS}b34gQk*@WL>d@kYdG(Mm3_ZVMD`1_47 zCj5iOmlFOFdluHzxf1##<8J`#Rq)+7kYn8$2&3{69=jN5a>PcP0G4jrS+~E~dYd z@Ux7MC;a}#ClWqmd@|v;7@tb`-x!}x_#=(aB>Y_CvkBj3d@kWF#^)1$squw`?=!xb z@NVNv2_H4Sobc<7uOxiZ_-eur8(&L!#rS%{uQOiyX}+F6-*`>JUv9iM;jcDcm+)5@ zuTS_Jj5j2F)_7yW-($Qv;b*_NpHKLT@r8sx&-h}( z|H}AM!f!IZobb0BUrG4i8(&TMKN(+3_&1ENCw%d}KEI{^%-84d8LvtBlZ@9U{4?+N zdg>DXQj@Pw_|IH34gfpu7p3%cz?nh zjaL%B#rSx_n~hH-{7J?q6W(HcD&f0~Pba+1_)Nn07@tje+4x+-_Zy#2c!%+ogg@#{ zzFgK5eunYdpXck<y6JO{5{6!6aF{Gml8f; z>j0|>f3C@w{wtr~=Nqp}`1OD5{nnW9Nt16&_=}BqC49>Gc*0*{d@AA7#%B}$I^zoo zpE16i@HZJ>OZcqunqTDo@J{3P37<3Gobcz`{YW|C?>G7WgwGqFNccyLPbd7N#^)0L z%D?vIvY7CXoBT?`KWThD;h#2MyPo&M=ZrTb{ENn068;tA9SQ%M@k+wKZG1A}|7v_D z;ins)Px#%8FD3kY##a-*YP|Hze18AKcwNGOXuL7uKQ`W$@LP>{CHxZ~^5r$2@Glyl zN_g4Y?`*<4ZPT_*}v_8DC8JlZ>w<{0`P$))W2^8!u{qo%h2glW$1)X5%dhzq9d6MnJr za>6e)-k-IavD>1|&BdcrR^`P$#*{cwfx zhJ^Qi*z0LY_!sSdza!zlvV2t%ewFE;OnBcLy#ASlKi%Z#6W(ilDdAnlR}=on#!LU5 z&+lKDKU)(1N$Vdv5(3_>K4|hY3IBqnJD>1x8edBIaInAB;GTDd=Vc?t zYZ88~@!EvH?p5B;bqPOi^7RRSmhpy!Ki7C;!k=%vIpHrb-jeW1<82AQ-gr6T&oOQ+@QPZ*bL5+3@W+JuMurn-cOd0I=t!#LiS@X(Ky6CUofIuah{ zdlLx{^Nq=bhk3$O!o&UGbi%`Z+(N>`{A4lVVZO1H@NoaQobbn4y(*oa_y5gSUNs5- zw#nBf{LLm`m+)JR*C+g)#v2m;9^;J(f4}jTgn!U@Tf#qTyqxgQ81G2>4cwd>(UDeA9#oF9~KjS%WFJeO87C8 zUrzX>@s)(X-1ut3KWBU`;eTm-J>fSPFWn(u58r6KCgJZkUYqd0GhUbQPZ_UI__Fba zg#W;JW5R!HygA`_d#CqjOTzDGye;96G+s`4qw$V}Kf!oc!rP4ZC;W2bm4yGP@$rO@ z8lOn`vyD$C{AI?c68;+F(+LmHO=c4QMw6dS_cF^wYZGCHyzWrxSiBTj!ri_=MsLd@%eJuKG?=&PlJl|s=O8AE@-RXpX z&iG8i7ft_c!dFdxF5w~Fm4xq^xBfQa-NtLL$ov1O@rH!Iz<5i-UuV1{;cqowN%(t= zPbU1s#%B`#apUs|UpBs!@c%Hrn(*HlFI}0>Z|w)Yf9eu`w(-VA%9gumN(IpH5M-kBaAmBe6#VEgtr*)NccYE zm4x>gpG^3e@tK7Gx$*ggzufpz!f!Udn(%iUFFh@v-@h|nm+(&;Z%p_<8*fYacZ_!> zyw&)4!ml(wmGFM!vk8CuTYWoSNcay;emUX4Fus=X(`>!8=Bm6O&NN=1@Hbn%YEJn3 zjF%JskH-5GzGQqN;U6_SrxX5p<8ulBy79$?f6w?z!pqNjkQ+Bw6W;P{&({(@cfIH9 z37;`ux;pQ-DdRN>pDpFCDH$C@9gVI%Ii1a{m}E%J9-`ZZw37CRj&n2 zZotT7cikyCDC5*xwI+Bg%Ii{4b$@0{ls^e-eBL>|ef1WfzBVY62lkmd=_}{^vW$?#B{|b0J{L^gtMbmPbYdO=~pYk>Ujkm?kSCfzYF>&z^7o(B>3wf zKL!3p)VFEyYfw*S!1urpv*3S;_BaRrXvoil|268*0{DxN?jrcV!Tu%iy^vo4|JmJw z_e-T!@K>Cb@ilP&#M+0ggLh#ZDWSc*8Rb<2{sj257W`qbvkv@R_@^HHJFv3>{4>zs z2>ub|w;B9jP~Td>PlKK|@GsV6{wah10{T0^pN#RMiyZ0pgMSGXx&r=NG}dwODWp3A z{vg;n1%7Ynp9a4f@-yJyg8j4LPeS?5flr|v=fS^*{4Rj&w=2Sbi{OpWvjqNIl*=;s zXHg$kz+a5~t{PWYUX6OSW?WT}uR~80>?v8lsw#E`rErRby{a*tA z9P})MpN;Wi1^m_U^D6i=VdomSyjmasTL*t6%B6()^CRJh8t^jOOD*^&=&1w$80720 zcR{`Z{0jK35&W6a`ckPG{6%O-E#R+5Kh_4m8S-WDF4V&g@JGVWUEmj@T>8O(3_TU_ z3*rB9@Ta04PJllb{+|NB3FSKt{(Q8T8SodvZ?oX0)|=M?x$pnn$p0Q!MB@b^LgJouL}?ks|T2>O@6x1-%HgLlHt74Qe5e^>?o5d66Y z-iGpB2Y)=urDXR_impO_YrsE&`cMnrje6by{t~pKM)1R|Kj6PYx-H;KXkTsML-1P} z{K?2~2lx!~+XcRieD#CZp}Z>KUx)lS_&+1R6W~uo{hS2C3{uB729{e=e(*WKC-Uxm-*wYMt0Dfx$KO5!M z2L2A%Uk0yZJqPcHo__GXDEA6@GxU#x*P(t+fWHfT68urf?-Y0o?3@OFEaYdvp8@~R zf`1L=J_o*la-0YMDAHX3pM`%G!S}%rOW@xFZ?@<7YWlCxPD`~7?n+JnH`r4Hj_j6d z!Ryff*Ma{6dg{SHf_ycA-v{lk5&R7Jtr;BZOD*89MZet!K9BlS21j)$b$~;>)CDe| zKaBtNgP(=$Qt8I{Y~Uz7rXn1-}~O^&B{= zTWKEr&ah{JJbI^8S_JoILs-vfZu}gs15vKu%`?T z_m?`rcc9?Az)y!g{orTA{tEbY$nZFLEBFNXOTZ_=uYmq3@Xx~k)8M~>{0#VC!Vk0H z&q03Y!2cZ;aULAaw6p;Je)wk*{JYS<1b!tHErY)u^Y#_+-$KtS_}{^AYv5gI@9W_I z4PLregKM>#)h{C58t^@kuLXZG+Djeyt?*kt_>aLGz_%k`jo{w^ZwBvxpIgB1$odcd zB((Q3`2A5II=~+e`7Ur|x6}{*RrH?~a8$$6IQYF#UK8LiMtztBKOO#`0{;cdYZ@H5 zGz0!uNOu2O^e=!P#lXA>{#%sG68PQFK`etm0`+7C{Fjhl1z&~# z*T8SW0KX1ihy0fQD69Vq&{G5capbEO{9%x<1OIoFdp-CA(f>4ne--Vq5&V9zvl;yR zkZ%Eh8tP{o_}M7OGWegspB>=eM7`<){}}3LKlmq*ZUy}QuzwuJs&s+{!{3m2Y)d1EP(Gvxh#Tj#yGnK?ssN-Wy|14 zP+lwG&qcjj1%D;-y9Ry)<+Tp}0Qj?XpRE4h1NPT|??ijA1-};d)PbJ?`Fik=pI*k8vNm~X9oQ5VE-)mIgprmfjz$<8vv*6!^o;mPd=$Qv!0AB$A67sbO z{!d7E3H(mr%i#BcJuBdMfS*^v7a+d|?rXL$wWvdo%cr(9;55Lch@l{->z7W$^ohcYr?z{^HMk0{%g?$8qpU_;UjM2e4-n{6^$!3jDe7|1|hns1GyXPlWzi@G1Ct4*Y!dSM%Tx zf&2par;+X=_~%i+OW<#Wf0n`j2IImC_|?#}3Vs3V?Hc%T^por0??yS6>azMj3xC#t z{~GzN1s{byb>Odt-|E3%fO^sZejN3o5&S6p(+vJ-lw%9{yU^dZfxiLyErZWOz61QH z(BB3A82Gs#{PVE00)80fI1c_{*fRmX0{={cUkp7{;GL*%)8NgpX9oPW&@&5u0OdXh zel_?!`2CUY0{BfR$3^f%$k!71IQ+Q`epl4n74WaZZ>!)x!#rUP{Nu>)I{4q9KPla> z!S!}pWgh|kHQ+yjKWo7c!2UY$Vfd#W{ITd)8^B)!J&oY+Mf++7|2FDp3;0!NcWvOW zM83-4kApoO;MYKZ7x-IHj{V^8$9Pl$ejGgWrJqvjF}8*s}=!aoE2E{wwr9%ixcPJuBePNBdd@KNo&m z1OGPcUk862+C}O9S^e(>uK|A+(yawwfgkF?zXSi*gMS9~xdHs)sJD&auZ2IG!Jmru z-U5Cz`i(a5mx7nUABOyPfbU29?E;@iJ?{r!#C)#;{&UuU@RuTA6X2UrPbR_d4?R=h ze+Btz@aG}FGvIf@I6e!$AN6n!d>rY{gTDpkwE%u2>fs{z`%oX2z<-JQvkZO->{$VC zLb)`)}e3c%M)&D!g{u=NP!Oyke=Rr>$_)8&Q559tYHGm&LJ8cC2 z5!y>L_`iX-fIkcQZ37=cxtGE3fqL5k{z0_&F7QV5Oa0(KK)a}bUjaSi;0NL73GjQv z&Pnj6LC+NUTj959@JGX*8Sp09KMVdPl-C@1J^VQjehchh03U#!Mew7LUjlzK+R-xj z0{W#D@GIemRq&rfehvJ2=x5f!pAP?&9+=htP4G_*_|s4>wct;N{dM4b(ErqfAA=tn zz}w*GM({!CX$Id6J6ph?3_IJvFNK|D@W-M4bb#+gKhp*NAe3)E`1R0J0lyc@YaIOP zuyX=@EAll7{tehO1^z(vKhxm9fSoho-+`ZJ!M7pZIq<8XXCC}wq`LtA0O(%?U&eU4 z1il^VE`#46^>YQh8S<;(zeBxR17AjeyAFOf>?u7ctN-^yxzvESpd4$#AA)vQ2mS)^ zdhqw6JvM+}1KtRJANaW${5Po2E#QwwzS_Xghu_NJk3zle0RJ_{moD&6pHn;R^Wcp=TBR2dHmr;6Frpt%KJ?PwBx~{eKetPy_x# z_`eqXQQ&ppPlld)@cpO{4dDNX{5FE0f%!=@_;XnQ!M_aoHt<{FpE7tm{L=yc6xiPd z{wuVve(+DAy;Q*8i*(1q8)4@J_}@eSB=|4jpDFM^hMm*kD=3#4@J}P%S@0I4BCX9~O(_DqBGoRb;wSHqvP z;P-~#=D;t6{(0~%s8cb@X4anCN_~(%BH25Ie?+o}$ zAU_L!J^G(H@E^dQdGKM#FMwZweqa&&T;z8N{PVDL8T@}ieg*uUDEC$Hi&0){;J<_X zI{4Qx?vx&y)&HGnzct{OKz}XxM)ne?R=w0)8p< zw1NK^@@4RUfIS`HPeQxv0{=RAKlry{X9fIIkRJ#C9sDx^z6bST61)-hb_)EvsE5j@Ef709=slU8o*zK{5FFB8v2{T z_rlLD;B&}t8~7tougc($MY(r?UkdxXz{^OtAN*(Ve+7Ii+TA$#nb1E0{&47-1pgDH zI|aTEd>Z^+Xm>Nztw?%59L@7J_dUlz#oVD z*$93)^f!b5BkXAbuZ2I`z#oHlR|dZV`a8fM4*4$dD+ z1o+3$e@=qG4CzjRuR;Gb_*t-L2K6GD8&N;k$T425gWm)@OOMFv|EIxg!26-U7W|dyf9k-W4*%4H zKLPcv0eljEZUmo)-sTEXHZYpz}KK>9sJAiTj`Nm{hx!L8u07j&sy*`j5~GU z4~Bd_cn|Dv0RIWvX(RY{w8v)fI+SAzcrWy~fqxkJDuaIudOE=Spr;G`Ab3CcA@BOM|hCPem z4@CdD1b!dbxeWeEw3ij|AEG|2f**uG*T4s1&pP-l>?u7etN%wJUjsgc`dkZs9qgQ({t&dg7VrVs*#^EDddlE`0p0<=6TA!jzfphs!Pih9 zD&WJ&*EsmIAwL2B0r+PU{G;&a6nF*tr@_}CKLh?BuzwbOAL`*8_|M_bdGKc--39RH zL4FbZW3Xol{AZ|#%ivGMd|(Cq3z(;^g8vfw*TBDuda@4wpBR@*4O#s^1OBf8KNtC` z1^))dmpbqP*i#SQ1N{x)Bk*S<_%Q5j20sJ(Tfhgw+rVFf@-2fOfj>LIU(EUs{we6` z2Y(ahbrtX@pnS){zl3xr!2bw(Cc(dod`*FW664D>_&n^K0slLc<1F|r_#F7hk?uVB zt*BQE;FqC)UIf1bq8$6de}nd00e?5@`8fDfkgo~w8Tf4y{N2dc6!^2?&uQ@M!DqmCq5jN* z-yL?&fxi!ao(JED@>&3YHqu=Le-8K(_(#!iFN4>iUaf#%4LeuC_rRZP;BSFH*TMe; z^`Z3Gtp0xu>DGY%4tCap-xd1nz$cL3dhnMb-3IU-NVgIEA*ff);D3T~xdr?*^z&`t z&xJi@@HNz{4)E8bf9nGO7VPW?e-_fMfRCWQje~c=pA+DJi~f8P{Lf(j6!<-m?lkye z_<08WN3drW{7lsIIq>Hp-Ffh<;hzQYb<~GN@WYT_0{>^!=VkCl_+bV7Gw6R-!T%g~ zu7N)vd>#D1P=88~%j*A&!E3s)Q1`Huc91h!CwOXbKp-vxy*ylVcc8*e>Tc@5&SIpX9@fpuzwl+ z%dm3={Clux75uMY{~Gv1P`>NncSO4@otM@BmqJes_-j$_wct~buLFMy?5_uZ8RQ$l zYf&E>!T%NGNHh4apuYwDJ?Mwqz&`|D20shs*a3bF<<$k=gLz9o_!g971^gb!*Esm2 zVgCg9-$MT+_+!xTO_8I$OoQJSdS<{UV9zZ06zbI+_y?hX9{f8PcNV})@be=0pTo~f z;15K5Sq85|epkTzP!CtZZ$Q0T1OHd}c^&-WDBsfK8(eHn@(S=8@By@!TJUYiZyor{ zVNX5yH1srpw}Ll|(w+8V425$tv9{Fkpzb|+T_)Fl=Ht<&=zh&^BBflNsCFtn_e>(Ep z5B_r0s|xr8<{{(YPe*7{7!*?9sR>JIm&AWyaN5R;4gvxIq(}%Z|A{B zS^vS;;I~Ead!aopflr{lFN6OD>|6owhx{t|TTm`*;8&qs*1@NduToQ1|KEu6ssVpH z{9FtEYUrs0zY6_EJ@{+E8^9|_w-I~+^|KlL)@Y6Jt=L<>i?IK zuNv@+(B5moUk`igz;6Pt2Y&;21NcXfZX@`!(2q5P|1aE`X#;NsFN41V^`ry* z8?dJf{DbgwKllvtRROPspU1&J#r_|B349X#J!mge;5D#k8vH8wX9oQ3D92gw`=Wi# zfqww?b{_n0NOuAJblATL{z$Z=CGbzM{)68Pf3ARUhd)=rAB}vifxi)Y*1_KdUfP`1 z{}Hs`8t}h>A8Nr@P=D&ccR{`${FCrQ1Ncp-Z;jwLK)xBggz{|x|7ZBW4g5I#QwDz& zcnA33qP}&3KN0!r2Y(;>nF{zi%4;0_ui^g*@IOYqngl-w^<)bC?a)6B{!aAsGvMcd z&w{@h_RN9b5B{77{|B^}1@Lv0<0AN*(ElufKNRJ-4E`F-msY?JLeDDr8)45H__M*+ z!S|qEm9}K{zXAGdz#Ac73;ssfSqJ_Gq+1XEOSG2;@NYoA5&UA5S2OqpsBbOc1JK_F z{x;N~GWa)9ULD{cgPtyOLGN06TapN0H1_$82^ z0sjL0HVgg{$j^ayfX{>9f^-+a-->cv1b-Xkm%zURdzQfuLC*^Kk5C_0!S}}_t3wsfnNhZtb?D1c30Y#)&C~sw+8&DDEC_MJHh@s@CCH5dhq{`y?c$1d_MU9 zpN@*?A+|%)b&55Jls49sh*QKM;uLF;ZmD#QN|#o;2C+`D2C)u}7^LeIYY^KajZqP& zSc6!nbUP)s4zZ>hJ4LK^@jqA?!xSp?kedqf*e7}=Ec9IOr z^;b(z$oc0=KUI32^w(uSG)VtM=AlXY`?4hLS z&lgJ{lKX3k^k2$(mP)@s#@i$PS~-51^n>O6%cUPC$FGonqwJGG>5bBdrT5D`tdxGD zoPU+{9pw5~OW#9|Un6~cx&F1%GxGh(I_ZzdzFjZG z`O-I+`ClOY7J1!;(m$5#TqHdrue(_Kg|dH^NPk9Ncd7LAr2kyTwOslp zGXE>2?=AakQ2Iu4J;T!PmT|3=o|gTvO8Sso|7z*?%kgWZ*T{ZeEBzsP-F4DGmGiHc zzEGae)6&n9eNs}#{ePjXZ<+M7W!`29gd0tx5U=a-Mn8hh_iFmwtiF+XCtL$-FI;zFNK?TO|EX>5HYWlh<7$eOR6w zOQnBD?ynx{hsiuIlm2}<|8nUM$o#C3ezNpI=~v3@4oe@B`CKXeZP~Z0q;D_txmx;% zGTt@PkC1(`R(eSG$vWw`$@$kye^rj3mVUI%PsyI#{~`H)qfGkurO%Q+DEn}>^i^`d z%#r?}%v-heE#>&R((ji2RwsQx=BGjWJ@UM2l76T3dD3r|=j43pugUorNdL9W+d}Dk z$o^R*{cf56#nOjm9+pUdNcvLgC(3iLNBXa1ewIo9ja=t)>0iqJTp|5odEG(j$H=-2 zOTS*`ZKd=P*@vs7|4puEwe)#%o;A`>lzCe#{Y>fWq;D(ZS}*;#^19Q~Lo%+Cy}17$ zk$EVS9+LH)B|RbMpDleq>2su)%luSJZ6H%Jr<3ew575I_Zzf zzFjXpF7q?3U9PiaZ|?u=;?we%4=&s^yd8E>8R zJ>>cuq(3I}&?Nmb8P`1NU&y-5mwvv?{{rc+%lC&1rO%OlwMhC8q9 zj$bPMF?s*$k$!|6zf5{co`=h&pDoX^719^UJPb--Aoty{^h0F+S4#h<%)=__X<5hB z(zloWutxg*GS6$JKQ70wlfIFhf4%ey8Sk|8t7Uyl_Tm0NR*o-|zC_MHOZt`a{o8Em z@5pmwj`X9XS4&?h`(dv1PFa^a>08M>G)Uh|#?>VK2|52f>6gpCnlF7u_Rj+8oig5q z(lc`YMbdYY`+BkT4diu~NWVeGyHxshPm%KsO20<# zuVLv6<@#4jKSZ80tEBHC>%Ln0GcuoRq(3a{yH@(Kay{#$$K*a;Fa0_h*R=GQtZ&J_ z-2eN_{aYseQh6VlCH)pzui4TMl6jaT{V7?;YUzKFeLGkBowAN~(vOk%qXy~UlJPc4 z-&*E#p7bs`|9t6hN?#zoN7iwn^d+*d7D*qG=j3APqcRUmq&LXxE|q?x^d9MF$bMKR zJtXtLT>7DM{0iw!vJVHP-zf7oEd3!cqm>#|<@)3Q&drPs=Jmeh0q-zmLJdZXMIv!ov?q@O3}sg|CR@y?Zg zysS%|^bKVG8>H9E>o!S$M)uo0>1WG*Jzx5E(icd7O3uGfdO)5(i==;7?u*6JFO+pz zB7K!y=ThmvmwnhH{aHDFne=&bJ1RqGl-?`rJ1l*H^p(=@m+M?5{cBmr z)zXJ$-PcIZ$@Q<5ey_~`I_cZUeY9Tsu5$iq>5t3vq+~zt|L0^r%cMUqeU|hRxnE{W zkI6jDk-k=5w_5rOa{jr}ACmi}PI{ZXZiDpQWZyPPzf0D4p7e3K&iT^Mk-k8ByX@PA z()W^mzDW9EvR;d&A0hLwMEb7sx=W?!=-{*au1Pn@XC zC;M}`^sF4eLi#B(-a+Xy(^gZOcR4x4rIsaVg zJInd&q@OPLQG@hjWV}t%FO&1nlfIeUck`vcB3uT) ztEIm#*S|*kGC9v$=^x0xT_-&#*STK$dGfwCEq!}=E|o;M|I6fgTPFQt>9eH&UDjo` z^w*@%kzSDdx?1|_vMzI_?sciIYuV3>rMJlSERlYiT+dSJ|B!X;kzOJ5woLk0vQL&vZ@&x6vp zl0GcGOU}PidWX!zD(P>^cvnk*R`%^0=?BPo*GgY0*S}8s4)PpZFTGmsyJ_hYvW_JO zaQ|;E*Iy?6VOhsn(!V3mf!We`kv>QIq>QUtdXMb4xze|m|6Nlj{RVl?H%Na|#?>T! zQ<>*^(w~#-nJ@jSdmGoU@9al^5mU&(y{b)J=TIr9; zdDcn)Nbbk=(yy2KoR+?ejH~28?*AE?pEBudWnayb{sY;Ev!(x2)@6?LYvlT?rJpa) znYq%xmUXO?eyfbDLHeKM{7uqFWPavJ|DK#@zVs1!-38L$l6hDtJtuvU^nXZSEPV&r zCrhL^$?Gna{7~*eq`x8eb(8c-*+287XXU<|FTGTr0}G^I zE5|RC{wFzpk@QDp9u`YqC)cw?`e*V!wN!duj_;BFpsd$2=`YAUFPGjR`*4Ny8oB;K z>AT538J7Mpxt^8M-<7^fdZoA{4bT>D)&*3^l7=@ zmq|ZC=4ZL|z2tRQNWV|M-x!qsxUBoI^wVYktdzd7?1xp--CH*bAA7@M7Qr2sZ^bh4c)zS;n z=StsG=BG~jyRyCw(qESQu1WeGGN1FLZz|`XFa0CAo(0m6mi@3$`WZ40i==NR*Rxo9 zLY@Olq#q~u?^5X>%k}g~|3vyS>Bq=EUoQP~nYR_vXXH6EDE(#W!_t2z`)Z~1f60BZ zO8TdAovWp1<-S`Z{WCd!t@Lf=b=OIMTHXiOOJ6GMGA(_ctYb+N_y4rKZkhDOvQK77 zKS9=Uw)8XQKAI!_3b`+;rGGB3J6HO0d7jis?~?UxkiLyvPm}b`b^lAhUglxG^e^Rl z7D(Sx#J|^=v zEqzk5ocZCOs(YyIlH=?6(!tx0Z1YN*|T`eOUUXvW_dIpD6RWO8UF?*CooI?JT*FV{0m`qwg_v!#C~^D{^K{jxu+ zrGGBhKUew#@|>@e{)Sv)QxzQxOME1!%>5t34oiDvku4jStHaX8i>Hn7VERuej zT>oO}yUF}4ksg(CEtUQadEFlASIE9yCjC&Ehvm|{Wn3$y?;`tlQ2L$Hhoz6mxK>KP zO!n0(>6J1+tEC?&^RPzxK60IFr3Yjl)=7UyUU$9pI_cBWzbUU|)$1r^vjO zNk324WtQ|7+0V13Un27}NBRbG{ngU9m3f{keN^uEI_WFqIvb>aQ_kNcJt5aQPx{9) zuKChmm-$&B{dRc{ER?>XyzV0Dx5{}IOHau6bxWjA%KPk6>5s`i?~(qQe1Eb``or?v zTP}S=InN5|x5+#YN`F-Pu=JZ`-d0M#R9<(L^l6#@)zTw!{x#A|Wj@zRpD*KGC%sYT zZN2o37UB+)zZ(B`+ctT_oUZJ z-%;+D2I-H>xSFJw$vn@K{;KSU`O+Vf^;#hPGFkV9(vOwz(-uij$aoh^|4goDiS$W% zUM-bABjfFne!r~CGU;V9|I4LsEPaLaZ%H4N{%z^Q()(qeS4w|f_rLU=f-bNyE5J~=@oLGS<;`A@y?e1g!DPm z50~>-OFvom&s^z)GCy_FSIG4=NUxQ3X_Eeq%-cNa<#IjqrQa<3e1Y`cW!@G_zgnK> zi=>|~`*X4M7iFI>ksg(KSSo!Jxy~Nxv!pMR{-n(Ra_L9P`BzAPS*~+XdRFFhSb9|U z+e+y>$n$EI^s{7sR!hH5o-=Ete^17>R{9AtZ|kHVBmp&lpUm(3!=3$}qN9Fn#Nl(kZS}gtNa{LnMHF7;mrPs>wJ9@$ZmPmg? z_Rmu3he+>{{)O~q(!VX^S}uL1%-ag-kIDQGO5aN6VOaXkGOm@>W1aLla{dPClQN%8(sz*8ohQ9no`>_L|4R1B0_odIUnsp# zo@0xo?=R1p#nL~L^DL2mqFm=v>9@)K)g%3JS+8Z%b8`OW((7ftR!HAg=5tW`pzM=j z=^x5Guay2vdEHggx0m95N3r$PG7vfrAdpDC|9 zPkKP+f4=l(vc3zX|5WB-q4W)9T^332m-~0I^sVH5c8T=$GOnf4XUlx{NdKkWcgv(_ z8W(yL^CrlnsX^H37y{;!r^CjD)hhgs53mU*5n{R-JXbEL14b+4Abg^X*i^kp)i zb<&TQ{njA;hjRT*(jS-e&y&8B96w+BDtT@!kRFuzTqwOmu4j?-rE;Fd(%+GJTO$2a zIsa1WS$S^vNWWOFf0^|CWxUI!|3L1?719^Vb9+#FTGoA7dbjMimC`SfeZETiVe;Hq zE&W27pEc4Cm*dw;-%MV2o%HAA`LDtX(U_oAvwND`et(cJn8$%{LGjBGnxMd(l?jB zPqXLck#$)t{bU*M66rsd`CKY}iHxg9dbP~wGU<6a&vNNC(pO0TTIOL;`g=0o zVd*Eze6EzK^`O-g?d0Qa;GCBW3>EDv`FOq(f?9av0=gRY8iS%7$e=e0iS9*{1yJY^C zN#9kDUoL%1xy}{RH<0lTN)O9$p<-O>+KK(pSqotd@R;9KS~TYw~orUItH{z2$eKly7J7x*Q=W@eyZ%r|GDn3cYp3b`Rg5C_|N~{WSfQ( z9KR4>$>+ZQ`s=oy|1sVl@>v@1`}quw=XgF%<9#EaqVfFCCuuz2^9dTy<9wXP_X+tJ zjrXm5l*ao^K0@RDJs+m=yv~Pcd|#6f(s&=q2WY(C=L<8%@#6h9pQG{pNj^*CeI=iv zH-*#mW^juBKAfa0-~{~xI8M)oWAx^5l->f4&|AV`dMh|YZw&|ON;p7o0~h{X9RD0R zM{f&f=@6Wuw}aF4_Hc^c0Z!6YaDv_uj?;Ln&d2BWQ92gm3=;V8Wq9HIAy!}LCI zh~5_t()DnF-VZK(SsZ@@oTK-LvvdT`&hqH7X&d_JT zY5Gh!MV|#H=?*wSpAE<9#c+&12aeL`!V&sBI82`phv*C7Al(TE=nLV(XT|X^fphdl zaF$NM8Tw*4Ot5LaE`tP&eBOZLthK0>FeMWeLb9{d*KBAdpJ%ngJbj!aFo6gj?g#3Vftn`MBf4j z={`6>-wGE#DUN?RoTG1pvvdm1(6_^B`VKfn-w7w_emFtj1;^7{{$C4E{=Z?&e8Y5Svn18==GRI7UAN zN9l**2>l2grXPhv^kZ<49)Sb&<8a}l;`mp>Ir<4WOK0E={Un^GpMq2L({Pd=g%k8M zaGYKR$LMF_DE%B9p`VAt^b2r^ei07RV{m}}3tT7^$G;lR(SL=rbQaFge}mKXOK^&Q z8BWsUaDsjXj?-)482xuRO1}z6=-1#d{W=_?-++Vk1RS8>gbN=Q$G;ZN(Qm<7ItORy zf52(_Z8$~$6Hd~TaDsjZj??Sl7@dcs^uOQ;{Vp7)--AQ+`*4t+f&=siaAAFM{OjQy z{UMyC3vh=12u{-LesCn8r166f`2>w0V93X5e6T$q zqw#_Ee3Zrq+4B(^A7Iai>F>ZH8Xx%12WfmDIv=3%!Q*^ksyKdp;5eV7@j=~umc|ES z^BEc+gw3aEe4sU-qVYk>e3Hfo8S@DmA3V&*X?%b%AEWVszkHO&2mSI98Xx4#hiQDE zEgz!s!L)pk#s|;x0U96t$`{@*jvpVq%I9c&a44Up@xhvWhQ z;~!%3IU4`alF!ok2a|k;{t29>@e5`0DSCG}N!P*&dJi~G*TFG*PdG~N1xIN7KuQo4+rS|;KIAb@i)LZdVe@eN8k*70Gy@|gj4iEaFT9>6ZFAwoNj_+^dWGR zJ`|47hrwYQKY)=B(MP~Rx)~18N5X}F6~{jh&e2D~Svm@5=%e8@eGHtUkA;(T3!I?w z3xD!)dOjSZe+EbCj=!@Vioq#j+#c-Ow1WwVH!b!RdPSBUZae65nqc4Y}^c8S~z7h`8SHU6rcW{vI zh6D7~aAC4I{vJ3-Ujt|9B%GnIh12wPaEiVjPSU+_g8n@mrt3^Z-cXR3eM2C!)f{sI7QzHC+U7TLEi<(=@oE{{sSDP z{|HCuyWuc>4;-TJg@g0}9H9RM7v3(8e-O^m_rX~@4QJ^4;WYhcI7L4IC+Q(LK|ct` z>0vlVKLkhVhv5kQ2ppy#g+ugXaF8B>1N7r?;UC5EuY_~-6L6N!z!~~UI88qVr|75Q zBs~fz=x5+Ky$X)e&%#mqIXFT;4~OX&;1K;H9HhtK0R0!ZkSmUVHJqdW3TNpooT2{) zr|FmA6#X)sq{ra|{R$kX*T6CQ?{JiU6^_ua!D0G!I7Ghz2k8koK)(qW-YSlNEu5p@ zg0plE&d~pW)AZYLivA~@q$lA7{SF+b*TFG54@c>L!4djhI846>hv@g=AUy>K=nvq+ z+T!@v!#VmxI7=7c4E+(Dray*L^e1qV{uEBopTTi@8jjJQ!%_MRI6{93hv~225dCjB zNYB6l`fIrGW^w!_f&Vy1e*@0a_(jn947~xIrtt?_^C@~mI7yen33?+qPU9EU=VSE7 zaFqTQ9HGArhw1OYA^N*;kS>P<^d@j&qBws1LhF2v{vMpAgK&o46i(Bd!6_QQI6j}G zE8qnE12|64hGR5-VR=4EZvjW>E#WY|6&#|shJ!SIQA<8RZvz+JD2{&)oTImevvdf~ z(A&Xj8h^knpQ3kwlXMlFpm&7hbTu5Ke+WnEo!|()GaROW1czw+p|X6Cu7LyeE^y)X z;`rynIeJ$(ONZeM{S!D%?*^yn-QgsSAN0*9=sn;#T?fbLJ>e*gKY*E!(0jvSdLKAM z?+XWM`~kImfZh)-yjC241DvDxhqH79&d>+IY5G7oMIQtw=|(s~9}LIoCOAgp2Sf8w z`cODR;}1~f!}Q^Bh&}=i(#>#yJ`ygxS{y%q5q&;K9|dRWD4e13i`?^R`WQGx9}6ex z7C1rw6pqvL;TZihI7%M}N9g0>FpVEP&xhy};2_-!2k2kGg})cazW~nBC&F1e250D# z;57Y9I7OcfC+RjgLH`Pl(+lAkeF_|BVr2#t#tZqx89Oggy@r)91q>`T{secftYs zLb&isar{f*9DNa-r4w+5z8Fr^m%u6dQaDL>!3p{@I8HBxWAx>4l)eIv&{x7?`YJd? z{|*k)-Ee@u8ZL|%$KM0z=xg9CorE*=wQ!og4o=b6!%4aqPSC%Hu`ZhRAr{D~IJDjHPfK&9HaFXta6ZBnhoL&LP z=s&kHBI2Q8+|D1_$X8I6yxR7yecp|4KMVKLKay44k2#gwym> zaEg8!PST@rf_?^$)2rYZ{VW`%pMxXx^Kh7c0S?hG!a;fr4$yyr3)$lMSHn5_uW**m z!WsH+aGHJzPSG#JNqQVk(67L8dJP<-{|-m#SK$c#8XTryhePxmaFCvW1N574;jhK< zuZ45;TX2@n!5R7=aGHJ_PSO8_lk_B7C#Ry)zu9e*}lz=aoz zg;-Wv|n`@kW3 zUpPqD!vPwXKDQ5`h12y08Y~f!YTS7I7v6c3Ho3-PU8<` z~bM>1H@U9|;$pD~^92oTHC|vvd^B&_}~*`WQGx9}6ex z7C1rw6pqvQMRxfZ{WCa99|uS1~%nHaJ253XanY;TU}i9Hmc%BlNG~F#Q`iM4tu+>2^3k{}wK+ zDvo~NvveHJ&}YDD`b;=Qp9LrB4md%d4ae!laEv|&j?(AC5&AqhOrH;j=nLQ= z-3bTi3*o{u#qlqJbM!@UmQKJK`eHauUjnD-OW`El1t;js;5fY$j?tIHQThrvLSG4o z>8s!n{W~~Fcf$etYPc|39Dfg-qpyLpbP~?c*TQM~IygmN4=3qfI6?m&j?>HF7<~gA zrEi2I^i6P>z8MbDx4=QV4-U|`!iA@c<6jQv=-c2doq{v;?QojD15VL*!b!RxPSAJ3 zae4(DqyGR$=|92|`ffN(-vfu}d*L8G00-zl!G))a;~#``^nGxaPQw}cemG748BWm; zz)5-tPS6j+ae5ez(GS5<`e8UiKLUs8N8u3t7#yTW-~jzNTzIlL{*`c!ege+Y88|~f z38(3&;1vBdoTNwL1pN#gr&qx-`dK(iKLAm0xy*C`D_klz7zHpGn zFNn6crBgOGIz&UzeP(TBiM`cODR z;}1sU!}Q^Bh&}=i(#>#yJ`yfGTpa&AI7c4^XXz-Mp^t{s^f7RXJ{C^WEpUSVDIBNg z!!i12aFjj{j?l-$VfyEAh&}-h(yefS{smlks5t%waE?9^&eAbBL!Shv>0iPr`eZms zx4{YeS8$wO2*>DC;3$169HD;=hw0zIA^J2pNVmfQ`nPalxH$eraE?A5&eCx>L!SYs z=`-OJeHNUgJKzL;HXNrH!!i0CI7;IW#N{LOd2pCM9}dwMz(Kkb4$v3Eg$Ik{Ujpao zi{LDsfHU;PaGJgZPSKabNxBP8(3in+dMO;EFNdS_6>x;U5)RW>!6Ev0aFFhX1N7B! zVW>F%9ymu|1834;0709L~|V!C5*5XXxAEG<^r0qVI&0bU&P+?}Fp>3OGjp0glptgd_Cb zaG1Ua4$=3*L3#iV(0_spe=d%H5YEx}!C5*DXXyLkH2r5dMLz&1=^;2lKM2R^VK_!V z1V`zI;RyW*9Ht+IL-b>CkRE{p^y6^h{^Iyo!a4d0I7?^X4E-dWrk{dS^wV&X9)%P1 zGjN<<1;^-T;VAta9HF0w!}JSqh<*_c(qnLd{tH}47stOE&e4B`vvd~D(0_x|^hB52aeP0;252Uqx8Sv2>mV`rr(1@^!sp-o`M7P2XJAqIR5o; zj{XqN(gip}e*~xLkKq*k37n)qg%k8=aGaioWAx{6l>P#a&|kt~`YSj@{~Hd{GjM?Z z8ZP{)IR26i|Kl9}4LC~&;0(P1oTk4Cr|1pgBwY$8=#AhwT?WVKjo~PbU&Nb_(BFo` z^mpJ8{arXnm%{;i6Sy!?9RDmhM}H5_(m^;wZwjaB&EORMeK<*1zzO;XaGahE$7uXQ z?tGNq0*=u5g}?bQy%ijyw}yjsB^;o)feZH*$3F+o(c8jVIs|8E{2`Bgn%*8x(L2CN zx(ZIvJHm0g8jjIFgroFMaD?6&4%0t^L-dc~AYB6o=w0B#J;m|Qg>&?-aF!0k8Tu!1 zn%)gg(YwP*x)x5*d%$tJ4vx`#!clrJI706Yhv|Lb5WO!Pr0d}Ty&qh-yEy&^I7jaf zXXyx>p$~x5^nq}SJ_t_Ijc|g-AK1#r=_WWv9|A||L*WRGKRl2R(}%+$`Up5kH^Tw? zNVxFF;`rymIr=C#OGn`heKee=kAYM4v2c=ZffF?T;7UGD&xd0)eo=ouN*@PD=;Prq z{c|`(p8yBxRyaWa0xtZaIQ|82jy@62(lIzgp9H7rU&1N+WH?E;!3p|TaGYKU$LLew zD19m%p??jB>EFO1`ZPF5x5EMYw{T%aar}$m9DO>RrQ>jh#xFR}r|C1{6pcR&nNQOA zLsFeMWeLb9{d*KBAdpJ%ngJbj!aFo6gj?g#3Vftn`MBf4j={`6>-wGG* zERKIUoTG1pvvdm1(6_^B`VKfn-w7w_emFtj1;^7{{$EAD2{&+&e8Y5Svn18==GRI7UANN9l**2>l2g zrXPhv^kZ<49)Sb&<8a~j;`mp>Ir<4WOK0E={Un^GpMq2L({Pd=g%k8MaGYKR$LMF_ zDE%B9p`VAt^b2r^ei07RV{m}}3tUJQ$G;lR(SL=rbQaFge}mKXOK^&Q8BWsUaDsjX zj?-)482xuRO1}z6=-1#d{W=_?-++Vk1RS8>gbTM7$G;ZN(Qm<7ItORyf52(_Z8$~$ z6Hd~TaDsjZj??Sl7@dcs^uOQ;{Vp7)--AQ+`*4t+f&=siaAA3I{OjQy{UMyC3vh=1 z2u{-2Ja*dP6u#m%<5pBREc%!7+McI7)vDj?nl+u=z0k9XLdP7Y@?p zaDd(fF7y@0KMT&$--EMs5YEt>!fARlI7NRSPSO={g2o?g%g5>2aE#s@j?!De5qe8F zOm78;=&j)(T?q&1ZQ#N!#qrO9bM&@wmJY!gdOJ8xZx5&F9pEHg1t;ho;W%9l$LJrz zQF6d=9f33S0dSf= z5Khqt!AZIiPS6L#ak>eP(TBiM`cODR9|ni%!{HEp1RSKB;Q)OkT)43~{&{eYJ_^p# zQ8+^%4X5d2;1qo%Iu2*(GvG9RCY++rf|GOyoS@H!2u)- zeI6X9&xb?w1#pn=gah=2aN+mG@h^dM^hI!%PQV%ZVmM7-0;lLp;UwJ!C+N%IIK32( z(U-$f`U*HgUkQiltKbm*J2*&p!vXqgxX@c1e-E6auYt3463)=q!fEmgL84l66z(KkX4$!y4h3kvsUk>N!+u$snf;05(aGJgY zPSJP5NxC0S(09RcdIcP#{{TnnKf)3EZa7Te1Bd8);UGN#2k1Y+h3ksrAB1!CeQ=ge z!x{R1I8FZzxVAX{ zm2i%J0?yJII72@Pr|GBQ6#X=uq(|Wd{R|wZSHUs*SvX2R2S@1V;V}II9HL)@gY+02 zp#K6FlEv|_hI8~^;VhknGxXo!H2o5sqF;uS^f;WLUxDNF8aPJ(9gfnk!V&s4I846| zhv+xpAUy#G=r`fQHO29-g>&>#^dy|1-+|-wIygq>;VAtt zI6}V*hw1m=5dA(Jq^IBj{Q+F)DUN?VoTER4vvdK@&>z8R`eQgne*!1zPvHdp862ml z;TZin9Hqa2BlMSWnEnb5(f@{n^b8!JzlIA}7sp?+(SMwyzX50I0Gy#WfYbCh;S{|g zoTN+P1icX)r_10Ny)hi6zXeC=Z^L2wJ8+2pE*zxG;Q+k}T<9*2e-@mhzXxaOAe^B$ zh12wAaEksuoTMw@1pNazPS1v8^yYAs-U5!$Tf$*_D>y`N4F~B;I6!X$7k*b9{~S0+ zZwqJX5S*d6gVXf(aEjgmPSRCyg5D91)75Z{{vjNtcY-7I&TyFi5gej_3h7=;0%2LoTd+iQ}jV_l5T_(^uchPZh~XLrO$;U^m%ZYJ|7Oz7r;Tf6AsW9!iCF<<6i>j=!@Vi zoq#j+#c-Ow1WwVH!b!RdPSBUZae65nqc4Y}^c8S~z7h`8SHU6rcW{vIh6D7~aG|R> z{vJ3-Ujt|9B%GnIh12wPaEiVjPSU+_g8n@mrr0UB#Pr-4d>{;!dW^CXXwAdY5FBNMZXLu z>2WwgzXHeUHE@jnI~=87g(LK9aF~7_4$*JGL3#oX&~L(pi;Cl43+L#!;4GbkGxR^; zH2pT5qW=je=}9<2zXQkVb#RQ%!%_NQaD;vr4%6?!A^LqdNKe55`UAMIq&WWdaE|^E z&e8=qLw^LP>5t(Q{Ry0;KZO(YXKSaFqT6j?iDiVfrgLME@HO(lc;?{u(Y^ zSR8*z*?*j)zX50I0Gy#WfYbCh;S{|goTN+P1icX)r_10Ny)hi6zXeC=Z^L2wJ8+2p zE*zxG;Q+k}T<9#0e-@mhzXxaOAe^B$h12wAaEksuoTMw@1pNazPS1v8^yYAs-U5!$ zTf$*_D>y`N4F~B;I6!X$7cMA{e-50Zw}rEG2+q*k!D)JXI7ROOC+R9ULGK91>1sGe z{}7JSJHZipXE;p%2oBLdhJ$ns9H4iB3+ETdKNrr?yTVyI3}@({z-f9nI7ROcC+S)^ zLGJ;_={h(@?+Higz2FGFHyoz-fkX7ZaFDKt1N44y;k@Gb8{izhKb)l_aE3krPSXd% zDf%EdNjJg?`d~OtH^DLb5I9O73PbPJrIe+tLx`EZQ>862gLgCq3uaG3r%9HLKvgLEq#pnm}u&MA(6 z0i2^xgtK%E&d?{pY5JFNiar@m(rs{p{uLaj7s4_66gWzs3PNp5JshW( z!7=&wbKt{rB#A`?}k&&+XUaUvIVZ zyIbt*&E__9yV<|)9yzeB&7}+e_j=F#fBbr-{rB!F`?|Z$zTRqXG5gm$ z?Cb63UUR>B;J`XVqf>?@qm53-`r>J zHFul4%$?>AbGy0C+-hzyH=7&H_2yc0jk(HPX|6Drn@i3A?faK0`+mm1|Cz9_kDJHL zqvjFwka@t|Z|*bqn!C+i=1y~mx!v4mZZ)@H{kD5o!L*@Z&><18grGo z(p+IKH519wd{pLP% zuesaYW$rY0nA^>5=2mlyx!K%kt~b}3Ys^*VN^^y|++1p&`I)W1dCEL#o-mJ_$IPSV z5%Z9Fz}#={GxwUi&0XeBbBDRz+-7byx0svFjpllDt+~crWv(<=n9I$j=9&4n{^lw3 zq*W7LHGIyFg%JHFul4%$?>AbGy0C+-hzyH=7&H_2yc0jk(HPX|6Drn@i0zN7(wCr_7V) z3G=vl%sgryF%Ovs%>Cv*bFaDE+-2@GcbMDFZRS>Ui@Dj{Xs$QcnrqBe=1Oygx!hc8 zo;lps-#lfWG*6hv&12?K^N4xKJYeoO_nCXm-R3THr@6!2Zf-NTnp@1x=0H{kD5o!L*@Z&><18grGo(p+IKHJHFul4%$?>AbGy0C+-hzyH=7&H_2yc0jk(HPX|6Drn@i0z2iy9a zr_7V)3G=vl%sgryF%Ovs%>Cv*bFaDE+-2@GcbMDFZRS>Ui@Dj{Xs$QcnrqBe=1Oyg zx!hc8o@uo8H&2--%@gKv^O$+mJYpU)519MSedbE-<`#3axzSv2 zt~J+~tIU<=3Uj%+)I4*Lt-pE7JZYXVkDJHLqvjFwka@t|Z|*bqn!C+i=1y~mx!v4m zZZ)@*=6-XZx!2rn z?lO0pJIw9oHgl`F#oTOeG}oJJ%{AsKbEUb$Ty8Ek&m3UuZ=NzwnkUTT<}vfAdBi+q z9x(Tt`^>%OZgZEp)7)WhH@BHv%`N6;bECQ5Tx+f|SD7o#73Oktsd*-1>u;ViPnsvp zGp?lpItyUd;D4s*M?&D?5kF*lnV&GqJ5bB(#m zTxqT_mzzt?GYz)><|*@}dBQwy9y5=cN6bU!0dv2(&)jS7Hg}mj%^l`;bDO!<++uDv zH=66swdNXgmATSfVJzYUv$@e+Z>}}hn5)c{<_dGUxzs#UZ|iTKGEbT(%;V-U^Qd{mJY*g)_nZ67 zz2^OSkgJYgO;kC{i! zBjzFVfVtn?XYMt3o4d@N<_>eaxy{^aZZS8T8_o6RT62xL%3Nu#FqfN4%`^Mh`kSZB zljaHYxOvPxY928UnFq}M=00<;x!c@j?lgCp+s$p}R&$HF+1zNZH`khL%vI(}bA`Fw zTxy=#+t%MaWu7!on8(dy=27#AdB{9q?lSDGu#<>pfJ%wD$s<|*@}dBQwy9y5=cN6bU!0dv2(&)jS7Hg}mj%^l`;bDO!< z++uDvH=66swdNXgmATSfVJzYUv$@e+Z>}}hn5)c{<_dGUxzs#UXX|gCGEbT(%;V-U^Qd{mJY*g) z_nZ67z2eaxy{^aZZS8T8_o6RT62xL%3Nu#FqfN4%`>&O z{^lw3q z519wd{pLP%uesaYW$rY0nA^>5=2mlyx!K%kt~b}3Ys^*VN^^y|++1p&+11wHJY}9V zPngHeW9Cuwh519wd{pLP%uesaYW$rY0nA^>5=2mly zx!K%kt~b}3Ys^*VN^^y|++1p&sj>ApPnjpp6XtRAn0eGZVjeONnETCr=3aBRxy#&X z?lAv9*4_m?s_JSVpGiU-HF8D`7z8ou0I^a`TA+y_W?&M|=mer%m5a2YkyeTnCV&bd zI1}V_m`JUnwU*i&)lW-p)rdDp2qbu;fQlCskSgpkLJ&m}g!#Si-e)e^K)>(#KYyNw z%)IC9%i8O<*Is*{GqW^Yt>LK}9)o^bOch_)N4QFfkShIeRqi-ub@yiUW78eXH})f!%<;guS0(C|_X*J^m4hG%KGTEkN{JYK`2 zG+eIXVHzH+;Q<=%tKr@n?yljk8qU`6$^M%BHGELR`!u{u!#gy*MZ>KcUZ>$k4X@Gg zY7MW_@JbCgXn3iHYc)Ji!?QG8t>LK}9)o^bOch_)N4QFfk zKcUZ>$k4X@GgY7MW_@JbCgXn3iHYc)Ji!?QG8t>LK} z9)o^bOch_)N4QFfkShIeRqi-ub@yiUW7 z8eXH})f!%<;guS0(C|_X*J^m4hG%KGTEkN{JYK`2G+eIXVHzH+;Q<=%tKr@n?yljk z8qU`6$tyMaYxtms_i1>ShIeRqi-ub@yiUW78eXH})f!%<;guS0(C|_X*J^m4hG%KG zTEkN{JYK`2G+eIXVHzH+;Q<=%tKr@n?yljk8qU`6$pTIO8a}AueHz}S;T;;@qTyBz zuhVd&hSz9#wT4$|c%_CLG`v*9wHltM;aM84*6>sfkJs=h4VP!)r9WTEnX}yi&sr8eXd5S`E+B z@GK2iYj~=L$7^_$hRZcPOv8gUJV3*JHQZan-8I}*!`T`>*;kXlh7W3ZpN4m7c!!3! zXt-6w>onY`;WZjwt>IM~Ua8>*4KLMjt%m1mc$S8%H9S?r<25`=!{r(trs2UF9-!gA z8t$#(?i%i@;cN|`?4!wF!v{6IPs6)3yhFoVG~BA;bsBEe@EQ%T*6=C~uhejZhL>u% zR>Si&JWIpX8lI}*@fseb;c^WR)9_#o572O54fob?cMW&daJGg|dNlcK_@IXOX?T~0 zcW8KvhFdkfPQ#5FUZdgF8eXO0l^Sl)@KO!eYIvT8XKA=v!&5apUc;j_T(03^8Xm0S z0UGYB;ochVuHmj4&erhBD>V6Q_@IXOX?T~0cW8KvhFdkfPQ#5FUZdgF8eXO0l^Sl) z@KO!eYIvT8XKA=v!&5apUc;j_T(03^8Xm0S0UGYB;ochVuHmj4&erhB%Qg9H_@IXO zX?T~0cW8KvhFdkfPQ#5FUZdgF8eXO0l^Sl)@KO!eYIvT8XKA=v!&5apUc;j_T(03^ z8Xm0S0UGYB;ochVuHmj4&erhB%QX3G_@IXOX?T~0cW8KvhFdkfPQ#5FUZdgF8eXO0 zl^Sl)@KO!eYIvT8XKA=v!&5apUc;j_T(03^8Xm0S0UGYB;ochVuHmj4&erhBd`csBQo{`zUaH|*4bRi?EDcv{c&diS zYj~7~%QZYq!-F+EK*N1C+*`xlHQZIh*&051i6(yyAJp(Z4e!$M4h?V7aI1#bX}D3t zYc#xC!>csBQo{`zUaH|*4bRi?EDcv{c&diSYj~7~%QZYq!-F+EK*N1C+*`xlHQZIh z*&06COOwBb4{CUyhIeUrhlaOkxK+dJG~B4+H5y*6;Z+)5so@3SK=dJ?H9+60^){sTy*ejq>KBl%N%H>-~>>p$!%KoPou0T z`YrFi;>KmMNtS$N2EV_czUT9Mv|X0T<9F}d^7}-7AB67#>l^WXd97@7l6a&39t?p4 z_(?}R{-x3Tm}#|$@=s*dLQ)!eu9P2%aqL_R5MA_iAo|=2w%n6FM(f=yW7U%&psoC{ z>PZIB(+ZK0*vL5QTol3eNE#L3&s*zpqwBjQvqS9rhV?rF(V(X=5S{6%6k~tGDqW6j zBWo6V@)Tpjo~@u>T=cN2_77C!DF4Rlk+A1Ih%hFjg zj0`a&bKS{dpUXZ&EqU!9lPzvD67=M&n>CdjYpT8ANHG9CC3NKSz3i}a70B_W##89n zOvYz&46AUn{Rv1`d<8QKSaI>8P{s37WJ{L5jr(H#E06(8Rc|_dsWmM1TUF{CvEmGE zEn}&sKm<-i)4=_Ez(XZHO*z+(N)!6VRii)*pfaRaI%Wpn&`QNkrGL%1TxU>4G zL4e#mdo&4Gh7opGH_hmIKfCxM$BT4vMPIX*YmUU@xSyr&w^R=>E)Da$!?@JvaQtuB zj9z;uf+I89Wez_|jt0BIYt$6mjT{_N9Wjv2XjRQJmr z;)$8y$#nRg)-E4m-gZtw-^u=2KQfiK%@z*Vo| zhWT5&O>2{A#s!Fz{&MLue%mZ5*qFv4z z-^1}@2H0R)ZADGuZx70r#6Oy3GvaUj3~kH{SbHW-@lN(mX~CeC5J+#ek=tyXe-?&O z>L4Dop6ZBx+=q?xK_33*c*KS_sRcP6(2tAgiIn!=Bb&yg^4=u!f%V6k)`|6;?JyC3 zDLox&79Yc_RvYdz2mYK}ZA?U;=wzd7639s^1?!VR)y9DAyDqQE$M=ygfO6N1XwYH& zuE{9dkXF8^siitqyLtudd&hgn`K=S)vE#-lUSl$z9#q^e1GCB2u?g%}%=ZDqb~vQ7 z@0Hy1Tdm^cQprF+r1K@dj*iY8(8cfEL{U7`8jp{uus((y#!1#g7?8x~Tf8}LJE6!dgxSnq0KV%G;svGD|IKtmy$py z`F*dZ02OTc-PNn+Vj?%C=}wm>#|1e`JCyR9KnX&8&?99t7^1Y9RdeLvln`6ReKv#) zDWWpUpxF(o487Tm4eR4SBS+QoqTDwX+ft&S6+#Lcc$|#)7e5N z`}#(*>~mLz^@VA@50Z94%6%(rd!u2uNnv}(iNgC8cj@&8+Mc|>{M;`*_@oN-;-@sl zqY2@AZ%xx@j-U33|8GJ3)Pi&skorAlef}Bc53%&}i0&X7EbB#EJ-sIQHYi%9CZy@u zsrq2|H2|k7vcXoUmCTS?x}@dv1?HCztT941^*8;&gsvB zwBX_R(|Itw&}lF$PRDOKpKwazd;(j{6N9lXk_w1cGtovFsh;H8Inz@J!F*h8bo&H` z0E_-GKtDM7!;dCQe~2qAgL}Zd$LrNbcU(_RNO_!)()CyNPq&!tzY!BEyH<^*z}oh@K~(o9Zf^NLC~t$D}b#-Ukag2>Jlp zzg=50JuyJ~2wn%9RY`aXdI`y9Nk82y;#bgA);v5sTSbODO& zYeEqVMXZNegfT~&btdLV@MD{G#Ef=}j_lz;<#jSLVkeOQc=bX(jCV zXRO!y3eo0qbIIp>vKSOD_n7z$SYc14{9Nvth|h3Su++FR?3sq|#+A!Gv*qUlo;vyY zsAq-z{EO!?`T3ORY5DoAr%8Uk?AeOX>0G@qYhj}C0$czeu)xmuTU!HB$lHvDJ&rC8 z#|sYJvqMybxIT}29k1|qAwJt+fwVAu<`l}-5VVMY$P7i7x(g7=BijF=X?^Ci_F22* zTe-YpZ>i-?nYm=+9$ew9nl_(83LkQu}Ex@1xL5mcN%Nr?kK?{5(hm86epxj%x zs3!zag|D%R_>-8g*z{jP?^=*8xy-y`uC!32ei$yoOU+1&Jf-wTqJj1|rMy#vGcAl* zj&ONzcpIa!tY7Gm(`amJe;n;g-t1?+2a|eYgm>^ln0}Z8F8mjW`#Ub7eEoK#;RTRX zv@;OBEzfU#-JYlVqxSrkw1!%o-jXS<+Hx>voZDYjk>ihMeP~99zGh|)bqAdLg?l!c z@maw78X^=w`Hn=5>lfZ0e37H5Kbt<$Ze{U{p~IkcL+o4GeW}AV)=zMoRU>H_8_Z1K zMPT;Av+~5tcXUz=k%Ly*+Jj9PY3wD`E^3NB%SO;u`~QfAPr^T>9K;Im1i$r-TCQM; zZ-(0P#$hUc3!Zl~2L;c&LVi-Z)>w~;!9nxWEIsU5OSUxmtKj-fYoTWbDTL|f<^`ey z&*EAlk2G2z1f+-Ia^|+<(6cIOjXq@8n)hc34<@Y0-TBm&Qt|Gup&-c6xqt?Sj?-Vj z1$&Lgg`O<&B5#IJ*-1-hO3sYT&c{uk=i+5y&oWSBG`w<_!%q+{=>;p4jR_N4zt!w-j$P+>Hv6}I>vz5yfSx~&PL0MfS>g$VJL%HI`goIg_Ner> zg;dZ5V&032pA8%(G{X%F22%J7NY;B#umL3|#3&1S?d@7#n@mAvb`n%i5GiGJxok5y zfPj*#6mHc^{q-+P-dTkLBAOEJQt-^YEo7%zJt>nWBh zp+sgzY}-bOQd?kFhFKN%)L~RU>twXj2?;h!`NH&z6G9iuJ_0?ECe;Ln0gENOW;2rz zow?N|?Z_Xw&L3)XiO-*cqL*~kbR-y}2tFctJQ+1Lc5FmofEJ5el_fKvs-%J;IwM)J zZ5X^9r|NdHXQDUMmf??#PZ@<7ot)7o1vUhrC^Qb5l2|^S6;iHF8plIN zQpQm!ZblqRZ?%}BwC$pjQc}A3;%ey-rMcwuQYFmmuehk3A)ML7fK8Fn_^fm@W;Ae) z%dAo^3KEzYi1vC16geuKm{lH?WlCMbC!Nq_&w^z>&uk;yLT3jvlzTn&rL*Zb1Gd|z zLR@z@dxiJp4O}26I8r!MafN+vHij@UVKGTdfq9@%snPhRxa$LGmF+(LRtAmYDt1{4 z9#6*(Cq&f3$t6sJ9SOU58$QBcvYU3H`XmXVBTgx<(q%I}v&A3pB6X*+ksrcksF@Ai z8z^GWDSkWXN#LDqQ{jX-+nx|(Uw>=M^+g(!H0juN$K;M)z*Fk4YV*OuU1sy1Oc3Ba z1Uq&fH6v3TVloYt3Pa~z30|t{R%DSlrk=|j!iBN;z$RDhZFHmN(N5|rcHC(XCEct+ zE;v2Hg(iy==6x76N&UloU9>ay2HKOBHIwoQz`cSWn3x}sdqbFSAjG?5+t`XuaFUnL z;+<*o4r=`u5f;5FUU*Ll@L`Ha7ocfsf#vI_zV>{i1ilc%9?!cN__NVR)Z=fqy8FfZ8O)RwtZHxP4N)CMfBrD064-A`$`V;5tVrEwqHdU^u0t%9UTml*VC^M!@8Yb2(RgItIUa;cv5x1cNjSJ1Uh$lLk6i8G0a#lnjY{R zg7l?_N@Hml5w1!{j6}g8LQrPv5ig5n_r>F7MLX$ZBghz-k*7RI*}#yeJPuSb!uu~| zSldKn&8u6`7wfDCQO;{TKQ5csT-G+@`O@rfwuL^c*cahmu!W_ap4W=zE6-ppI!saY;d zRC4a;Vu%`+&jiadRN(3!i)plKFBH1vq0j_(AnM8VbAf}x1@9*0m0PgsWwkrDY;8z`YS7I)Nx zbZbB8o+jr0gqnw7N^XcK^Al5X5mt%COIZ>AVp}XMCkXLZoN#~$ZlT z8;rn0y`rkk4;LSBHdEQ;qH|_86eG0JiRFL~1j4s|!!+AkvS%8NQSL=?+zgIHg>9eM zirp{y!D#s51DMgDl`JI(5#q{_P{t^gF7f_cayIBOLoZ9k$qc}|u>;e}Ho`;BCX;9f zD6)Xr8#A$r5Z9sM0QhOj83_EP3oDD>mSOjHeKg>JW?(4dFH_hFzLgcdiX0nb)jD-sl7; zkB&gbL${_D(0=$Me`upiWc~^J+$H;Kum%E80x;N0sWS*i5?aHi$VFm$chELXT(w5c z-aqUjXK%N+1gg_;Ef8&FhOM@2G^J-Qs?B}d;H^nfr4RE92UGX5=SzIR+*cb|{vr^$ z-W!Tz;kF)DV>B+8cT=3fYSUlU;*Cy{K}TU?c9Oh`_HRXqBUWvLhqZQcmWOmEQZO`O zA6SL`a9EGzuQ&@+h7U}GhAOX>wxn}igaI$vNWbUnyrz@$y!0I2$gM7K<`g)Noo4fY z;AeJ=Tu!g@6d1K>n#cmi1hNPLX;^BJ7lvYI7g1mVU?SOw0whxWdI|Z1vr)M3_C`jg z8U8%nvOQA(6R2_xXnrJe3C~Jr%86KMshy2vN~2pIOl}Meawt@3L?RV)Ayk(x%lRHj zHT@;?UB>c*aKRLsX%3l9S>;OKR7l_CeTjeDln&rq(pkZIRTAUY=OwYvF`Dk_p*Y(Kn6~dZlG8syTOB3Hn>O(1277lwJcT6_ab*+ig6F4} zPFAW5$I>G1lz<+HLvCemwN)r@0*yzMWWo#EPEC1Se~#aJ2OjrbtdDKioY^1l_5@27 zvQB~Ro26rZ7s;Z{fy{v!e&BB zZQ&ybGwL&W544(MK5pUAhYT5$@eIw`I>@ODW8W=C$Q7DO`y`CS))A1EA?9MIh*L3j zTTY9`iMcpB!x@`-)Q;=PA#hc#>!R0VoSq$U;1i8y_n@ZC)PST)C=(PJQ7+lRNug9+ z{#!K}l=`hK52?Koi-Q#$K(Sc*DD;+APUm@F3lFq^FgB&%SKR5%F+lWSpxaG8*o2 zWGQFeaPRXmR_wgN&f?F?Gn-~~xr_pD3|L>>gs?Oa8Hw~EcZxzAr2@i^FkSfBinYUR z-iy;<@0y_vKrhSr$+QcX{-vF?!ua#BA~;8%DJ854;UB%1PTC#L-(*i47r&a#xqHYX-yRH68Mpq2omg| zY4)f8HBR{F?W~5WS5BTxfb5i7Q-}T?0qh@e@X9ltIg7UkW#PytWQo0Fxa2_%)TD1h z79)9664oNtqlk(7Xl{YMM_f65Q^WNa3Jf)!3E*OXcEy=?3J%srxcV{xG+Rc0bmNd+PQ?xvY ze&KM`90pRYXQdB`z4C3R^&sb9G59Vl;8YMz6U&P%$QPI6S}NMdUG^a-PY`qz-%YhI z&<*~opaN8J6jf5l)5b8yYi6F+2lh_x9`fM(O#u#amCAj0Hf8^Rx17h;43-eqwC<_o6PP` zG#Z9?CADg<^(p+DI5{p!O`-UL03s+1aLwE%ynBg}p5gk~iv=<+j*5Cd7He;! zV3A#Pv3@l8e4b3XOE0Nnr9j1D{;$js^LcWz_b4drNwT!u@+R4P@Ztfb9|4#0Ik zbV!Pz(jWPy3nyF`oo%Ad@(b8IgyI%!m$^Y1zR~sl2eS_1)jIGgdIQ67elx3Hr$S7` zRtUBY1Dwgp@dsRamWoh~EWIENQ_(ImrGH$f}Ib#mL6OC~S+Yh?JoLHF*WBect%E zQu=4FwShz9jx4!UnD8~+z73STYJ`uYG4A6sp^SRmdQz(ot^i6#D{-P4?%HmOiU3hHY z2D1u#U%Aa{LUJKUvhlqTEkSEJX{&dAr%i12RgrO-2bk zEO~a?!9Rg?4F{Bw8nk%OzIIM(kYb5_ZNEznD)vLnnJfH|6LbV7K#Pa9i)-d9HbX({s(+8k!)A=Tc9KXrCL8O z+gM+k-Fz$qIUaRbqhzZwYOB}U8akF))0OPcLoik9@nT7ozKCRcMXedR@5iaD@>gtj zGM**DrjA_X#M+Vfv*U`+3jooA6e-uDPoo)`CH2AMuLa;VNd`?*jbky7mC5L6aF9zF zEsC}10II9hn)=IyIu2fP|JINEte^SWx%YEDez4|X+O!PEA5yiPVg&jpvD1)}CJl0N zL!*RrVH%k)!T%(8pJEHXw8tSM@D3Rj%Y>7->UV5M&2aLFE;LrneE}<9Ou>BJIVuh{ zao^e6?c%idCNxA6f=a53$?12wGz(E8ZzC^8vT29(C42a3eIVZ03HLl#`VTp0V;=IOTcdF< zLcX?8Yle8_RmC_dWf=_=%#rEbAOBw2(bY&PQEjk)v>;2It8V(#&H7KI6L?us^6wRh zX13!>DxV@_H->DG6=J=FI~2LscZ%lhVruMmH1~y{gmqfSo%{f!!3HRn3t|J-2sHCz ztfzQQ{L{X0F)t`%k$Q}{2#mOJIa`Ah=D~$;yqH3q@(Ly=Iv8pSp^;#-*6KyTQA1{{VaC zT(7Q#$O53T3D?!7go8(#N-U59O(eA7Os!oBV*;h@SeX(sVBp&uV)J^orh37KNBz#) zs~|2!x3C5%A=Z!fmWMCRp02nLl}g&N-;v1lsTsx_`by@HW+W`jx9l(KDYTDoRf;kV z>Qx6KU{vB-SPO+P20UkumIH--$Sq!JaZE8JtPpG>@v-9_@wilFwQn^XmSa{)f)S2K zCvulMiW>co7%2?e8O$Iv|4}|emDhnndD7JX}J?dA=N8!?q(5HlZ zR@p6hreIgBq1S?{3?uvkA{==-g?W{9*GQ@p5@7cbNWz&R>J?e8&u zfsVs7H%~r|`Y_icM&Bjo!k4`RdiH$Fl4cC$7e)N=RoYI=X<~>v3 znuftO!MTWjC=q)fvpAfRxR~H2fHajf5cx5G)*FkcPLlyPPF1=xfX(*G-^j^8CIO-5 z6g?EjL2Zrk88{js{hsKDg7iJiB8_qTq6?hZp@lSCQ)?wkGbcNC;xJ3TtQLHA5$cW# z*JAZp@Ff&WRHxq=Y2RW0B4FR4&Be~f9gg=$xET9F7Gu0wKzPnKY>z>955oQOZh~H^ zf+|^)7(T`!BQNHLCftvxG(GFdVXKL-Fn01YMd%)q^9n+U*m|ru8JCwKA&bYxzTlca zsv>f$vla8>8C8bF+cV$wq&3i;x0Dv803>ohlfj%)|9iX+BJ_oioAj{sj3!x z&pYD~BCHHVSp7X>hKbv!iK^U_cpXpSWO+m`dQoxI_N97khU%y7t@e1EP;Q~plRe@i zL;#W6Lgm?T9#Ox~0* zmaB&FkG_+q;vIG>)tErXL;Ka-Km-=M#ol@^l#v{~o{!A?#GtjyCk{kibw zt-Q!D^Tm%wz%u6Z#D+?eI z2l?-ZMDk4VTppgQZ(7_V_G{e2eh2d`ILjzgMA1dK<}3Myt9CvK^H<4`queL}1SZ2wiy3w2_lSj^-$Ia;7*pKG{+pO~|qC=IoT{)XvsrdyJ&5Yb#AjEv8 z?t@`t*)DXK?0w-<#^cbf)D!7OJ*PeC$*D+S9QP;xixQl-h?16Z7dneV6{V`sDbIOC zDfVknKBZMOaw>M-RvG2ud4A}%_~6%4h~pU|70?kt-(eWs^9)a&Xs-aTc z`4F-4M>vMT9KCcPDQ>2QCPmfk$^90EHQ2jLOh|D2c?upll?JcIBz zarkasKDMWXO6PVqk35Lyt!0w+6pxA6BO#s^ao3Yc@hnDn)Xn+$Oo`{LlsFE+HB$&k zC*u#iXwTSAFdcf7^rIy~EZiG5;i_-QFK~$EB?^T)tsE#)$r0niT?97S#vthKETo^axK=)SiIxpmS>h6SiZpHptaBk8SPnn~3QLhF27mSgv zSPtO6>u^Ew9hQ`2yENjIEnW?27Id;j`JC1tl_0mXzVv^5PNb-*y;%&y9!DpK2Y+Wq zN8@=A_&ocloN4_VmbT<`YIB;C3(I{pC{(l@20{0tmgdsPutQE?JVX2)0m-tkCxW^R zNFI?Jc~7a+GWLQjK;D$RV}xIJ!95$#PxfS6?}hf{RELhbYA(Qq;n_Aa!Z-1B54Hom znGkmXYGpo*2U1Fq#>6V5yg#3E!kJQEWj zYA5Fc?Bw)!`b%cPl81IdT}-^j@?YT_mh=nJ7(aQ4jh_L2TJIqNfjOR};B1-E_>|{g zxQw%9P|6^(k;BuDbcn6DLL)F*YXh`3;2na-jA%8s+pKnYu-S;YF{bI@hTi z_=$=5=h0ULCAfxy3qXX@r-W)}gvTM-!Xdc**ou|MydyWdWSuLJk&v4K(d8aCb)%X1 zauX|<(h;!1Qt4AFus^FdXVGE(VA(8E5?H|n|KQDXZsa3tTwh3nx2y4@$4XB10n#>u zv`v#f6s_qiM$Bk9|HpGYn9ia(I88ViBpK^5=~b26r&+SjH=Rcj<$!Io5g#DD7vIj3 zHdg-xI^?9ucpYppbS;-kLW$6$x9P#tE#8|?k zVOMf2{9^CJ2R#e9Y^_6MV)2iq)4sJISJ9hsB^g*7^^d4WMQCN6juqMSDbE?8A+^2a zi~fYE)osSI1LPirPzd!1g8vu`IRe3$F42T}Qx1s3!&4iGrjQ@tFx3d_d&8+nw+jIIe_MB^xgg|EfE4u55E6@2i#pM;1eN zCD@ghF&;`v3#FsZGa6>0J?z-S9^4gplN}mHR)_87#a5wTxgKDsK;yUmE$+nH9Z?ha z2xjps+H~`51ac|sHUQJXe+#l@%;YPlz;XHy7Jy*6#C(KoE zr)~8^v{Vc4Gy2KTc&azY!wGKyi~`E-ijH?$nB=Q=NVCP9y~9}cduiIg#8e4m#0n6j z7AtSzI05`tHa611ZfK4xb`X9kHCZ8l_6+3|9K?`%%pguwcpFWNFy&Xg7;l%%H#I|V z>K4;ZUqxxjuEEd}(3A4y&%w4~<+t_=ed#nBcgC(l0W+F-xRk12v{Sl1@jE+9p&X%Y z3M~3C8W)S?-DmCH^TZbTG0}}g$k2lQKiDE3KpF@Fd=olPTjAXQIvPNkyRyW5b@OT5 zq?2C7d?V%@*~1Wch1halq1=B2#>Qq4N&BQWB6?%&OT84ei&&FSj8-l59p6nTY#I9Sl@C=?=_Pe-GgJJtnmg=e%8_);UqiHTrbE~su;ZcM)6ZHRw`^O74D%`65&Z*@o11E+btfz=UVn( z7Cyk|`@!I3TyNCxpd#wAeH|`h0Xeb&tA~6uIu_X=^*F9eeEm~qb7y*TnL9EX?nS|h zs!s#aMS1?_PcqxRsreJHF$n%TvF>+?kABM7Xu-{C>4gfJUKmMn`a>ICTtzJ^L6lXN zYgX}52!{T>wg#L>1J>c|GkfJTr+@)HgB@mXT`iV4kFt+P@z{1>3=axhZm$_*-GRkR zzv#3CNxbjKUfa9GlSO1u8`39u*TZG;3-O)D54oocY9>vI-34cn8V`ozmWA5imwu7$ zQD$+qo>33gEctvHIFh!Q!NI@u*E^V@+5!ji6``Yy<6X#9gf|%VSJLrREq38$5pu!d zy^EB!l+_=oy#{&Bis<~j>J`wwk(f$G=OERx4=Ri02^4T>M!@-vm<9%vMecB2Z)M>S z)kZw8{ORI8_pP%Arzb#IT8x;5m>xwZTp-$m3AY3)K8mJro;$wdQX{ud45S4!ZWYNF4e&PJ8Ph^ALPy z=21~p$mj^HmM69FC<`*z(_4;;_lHw^)waP$zmy^!-BXety8#kaaS9_KfArQovGXPv z+#=?jP4RDh$Cm)xO0L_EEs!%X-Ufj19l0EY+48X&wI;hrp00!Gh(BG8u0o6X=8QI@ z;WN%C$id9!v+i!B0XX}jZYdt>X}>I`4}RqPXbE}VXgS_zFcQ}AV>yA~#TIf73s|4B zW4N`^$kAtgjZH;l=ci}5{LZh~?N#Vj#e+01JYG=7^A34Tw(>YjG*>P`eFN=2X~VIpGP`d5wm_n{ErQ@lHQB10C$vpgQgIE}<%IUI1w z`55&ASm+^Z>hQ890_>6@b1H6yhviJeV}7_65Too1gK+_ho9{I4v(OWm!pHpbVhxyZ z?YI>&L!w^@2MTSS_Vs^CZ!dWJ-!#fLwV;XS&cO zV{b6(-Rq#!l1F6@aSgmYf_^eBAil4_kH8VSj=b1H(wh*3tNqWiGqHLW<`uroLXJW_ zMEE-!y2LWT_E%KNh5Y^(1~CO{C+L!H6gp&3C}>^SCkx(uYJ`j_Fl$+HE!V8%$!YfNIWV#411nCfG zfn*fT_FGLjc!rZ^ctg52Gr6dQ*rJ(zlabfPeaDk8xG?4P2j;R4B(;<5RR zf)FawhfPpEY^>~1)TiGnpx5D%&ij5Ro!Lk_Ggs`#u(TCSMZpEYYx3BFdIN}}ip=jF zC7*7<`$NWDEFYmS!#NqB$7j#YtR~L+38|Y*kBZz&=L!7)-L#s%WsWvwOnBE}9d5!y za_*AvIcl#b%gL+RkcQ-+luUwU&2Xw}on-BW>6jL__1}Cpjbo@L8R-(;hv*!0OODOL zVgbHvIKWu(V+Bf~P%;dPRZ8Crw=4D`z)(-fZ?wIZTWn8Wdr)3OmU2BVwLe4dxx_R4 z{;YTd`xI&Buig)fJ)Oj!z5Na@7~5j_9jp@&x=APY7IrOVv=y)QVy>@v78hB_Flsu& zsLv4fB|@lj%=R-|a4LgSA08!bz}$`?gHxfnA3j}?Bp;}cVJ1QQ(m%@g6(>C;jjryl zzK-CC$VgY(R^mUgL`gVKgeuM4S~<{&YjD_5R^_d&R{7+4EcXVw<5I_Z7nDrQW7W{z z#W>Nl3D2)vAE3H)z#ZauSlRmV<^-yH2h5+X@g=3|0rnNi4#nkIb3j1tJJQ5!(=Yez z?D>gq8n2AR3ISTu!kn*0z*h>Wy%MVBEYk^M!ki7b7738>z2ehv!A!hfI{6YSa5muS3vH>vY_|xrT^3$sG4v!9r4T2} z0?s(XuuYEetHCv?R#;m+NuT3v<*Tq3zlg!-oqq1y=vVwywfFK7FL{DmoI4#NhS@`r z9Wexe_PiZg?22^-!dTj$NaGmgZO@;*hGx{bjps*ZbGJ0uJ=P4-zaXCUlUX7KcB`8dnsj4tphqw&ge(BC+!nwAk=H} zD8FK}Y998px#f=axUXb~zv>u0Yk$)ibrNPcILD~i*+eI+N2h8A`w z9S3#_#Czkp2(EbwmdPB(mGrCX6~?`#i0XyP4RpSranZx zo_&ZH5rSliw=N~OkOVOyGkn(O!qt6Yj6aim4;XHy+9=TzZpV&|Fl- zn>0IRUgUU|W3k4(3MfHX13fMN?*}u2QjOI6#VOc#c(}!OF$w=N2`|XW?Brrb-A;dn z1C%&%Ll*;k7oWX?=&6-!{3?~>!s5RX0YYd2muj1Wzfc}S*dD{4*QnRh_sF9FI4gkV zcJfp}%}O}zOuQs9ksocZPsDr3=QF$TQ`iFAon%@@Kc!n5t_>csGAlBRZblDY4$<0xR1@$Pc*PeZg%3$d|xstV4wO?p`mjV*Q-2m zi9;MEFH;k1u*A8$!0X&3Vq@HhTF??LG>0or?nx}THc8;}TY;%pe7|@B&TH#|f18iK zs1CHtUEba(&Jo5g!58~F()`Mi@mvVr%t2X4v#v89*igL9C_5VaD`E!nOZppo>-lY! ztwB&9`n2#tvMr4t<+tgsB)}^-css1Eqc(a|Umh z?aAj)>Vlp=cRm&wm2DCdkNz@{Ui!q;(T)*)hE{cn4$TkZ@dvg*jtPUN^l59lx zHYbhx3G8^qJ7~>5HzYE50PKPmsdX_r4qo9sEj!<5HTeojj4L@Nu>tB5`#l2x@HEU9s`qPJhXc+IG35yv6prUxHD5*>HBCuDqv`}y9f_SO z`wf~%z?yuCW}-;!Qq;El7gfDzBZt`qT;y|)$K#WxU`v3nA;QZwy;Jde%@(8arhcKr z&Ph}7rcU0#4$zn{&SE7cjr0NNHCa0ppVIC!Q9|0uaIB|!uI7HI9JGp2?!EX5i^tw9 zqnwg^CF1$6VN>`O=MC^Fk9J*xR{YVC$ruCS7yUNQ4@tj0G4?rHr@l*h#Sn+!JQfn{ zSOJUXQR>{lWhkOvCJBn^+4FIMgE$AD*pAJDYj1TT5Xe&b#^2(yZ^&FY`up%rtxvF< zpB2DSGTYaWh7fac5XpnrDtI#Zr~~!FPoIvggIlE{lP=x*O#bG@K{5J6tl0VD-!PWx zaY-`2$facLPf#zMm!sds`5DQ>4#~_6qrNY`FkzuA6(?=rm@X&vG*@^YJcEc=?eYa| zqMfel=A^yKc1EgpYJP4!KO!4$wGZC9UzP{W;Xxg`y=CM2R2w_W;PTkA+Tuf-Cm}C! zF#_uJ_y)PiG=H`T0)jtVkkDbgEK|mJbv1o(fH`q88uMFoSspe$u;nLsp4Hj_rv+8o z9$Z7+nAby1SOxak;MTtaV`h_Yk!_D4t|jI2<}Q?1=Zms}*N98@!3kg?mh`vD(JAUN z#>4>TU&uy#uh-v~bm4~9l#N9Ba-P!eERksPgf_!*EIQukA@ z5sv*5S5`bcjt2CSB!BjEY+rOC zfLwXtK~I;Mdc9nE{11KBzq;E)gnJTy1yG)Yp?8}&@+W2ac+V%!5BjKU?SG`-A|-i* z_LxWK;DjTb3&`jX=h7eVY&j7NN}ftNv3hgtwc|Vx7`x*;%zod)CQZsd`J+8%8t$j#t!w5}c%-lE;hk2b$QE!DD22)v`-$A+tdNGG^C_W=zr&i0Ao@XF8}E zY=uuni9g~hUmqhL=9jiId6)4$9(fgEd2@(ZDDS~3*l&{Ww3iqC{^4x=q5viz6CE;L zl>R1XCOactdj14&n@8XIY{D1G$E5{7zRVGEVErYghN)3@QtUo^fl1&7v{1Uju*D!E@4C;@9KRXyk_#^*Dn38&vn!4TEQAv?{Vk;n%I8GU}yp zJcf)dE1c5Ygy*%#apKJW+Be*pA3PuazOfwpw5?8gq2`bo9aOR}59afY__(XVW$iD# zq3@jDmoX}AaW;AL+vIfNGkiza;*!HC6J}%*2*x1lfI(6FBcM?n9>+0%yN*9Bw!Rzw z@a$)|b)V)r#BDyP&w&_YX};?uA8(qDU8w99{l9`D?ElBIf3-IS8t?$#B$xMP%rR%A zqkd;i9aE=B>@tNo8x)v)lpZ?U$He;55j@+BE^vtna1`=Jq*&Y_3t<&MTz(lMuHh$~ z&=2^TP=wO(0VC`M5A6KcWZa{$2ZL&4k$hIZHCry~k)yx{A5Z5;c(qD zHyj=G&VOwAD~gIjLp@HAWGmqRLeOl8_C=$eRwXeS|I|%*(mvZe(zm`R7M&ai_&c-DZ ztIv; zZQh#)`zkt+vNn++cV}q_Gf!-7|HmI>yVoMcAoN^!LX`P&vT0~tEF#j|gfKgA-RxEs(4@jkA;K3QG;4X(C^*cPV# zP%%E+|8D08+24n^py|b_{?KmlLiECd_)(Z-K1&=&4iwEkI#o40v{PqO?aun1(iz%F zp66hHGufYk{?HM+DI~Fwn=4UHeA!2if;ZCpPw=Nd>;HRhqJF_C^{=2yhz@#cYj;FW zm?1(eA}ZkN%*ac!cy!PmTP|>ji_3UP-kzj>ABTtfqFoMO#}Q^7J@xls)ct?`FZbu1 z`9AXJc0!a>Ewbn)7Fc_aQqh9=iHls189DC?$U5=^t0;0k{8+bo4A(jbPAe~+oJ4+i zto)^-abv_R&bDAEI9VQu^x2JCUQX572ut||`8@ISAt-|sq5b1AyOBI>#!s;I-;?Kf zAs;+i$3NI({g($ns&|XMRe&H~n_}RFkrj%j9+Qy)u z_|vtFfuJiXWliX}WRJKJ^Rvwy9N_M90m#LC(_V?I(QZX(LXI4iA~A~b??q-%|1~$Y zA2J3J!1RIWEiPV}!rIrangDI|VguF;t)<3d-hUE*aVN|>{nQ<59XQbvyahLI=Z&to zVH-HFXH04lzxx?liF6qX@#A-u#E0`qMZ%a*PE=Q0akaBCC++4c1kT{yvu}3N`*G6w zB=mm%>(Kkl>EdBPYJG$5Mcw7HFAgAv^0;CDex)eSfTz9jPW*Y9fo$~JzmEs?l?<^W za=`q_r3=}{Q}hRIA;|>AfqPiAk18tdj`|r7y2X#t9*Rn?pr|O?egQdl6U!e#fQ6<@ z*+ioJKRJdr$qHO%(S9uYnkq_1l`Ohc73DSlL(%WXq39n_w6)IUr3AmI&*RpShB0Q< zZu|FW@Do&F>3%lRk_J^9cXY`*r-uVSCRV?5!60laorT#U^q-?#Yd7zM1y6Cyn#;=a z#0|1ySw3tPHxOZ{_3t{q$K@sbR{=o#>vmp;{gWLRAq#`UxQp|}^#Kf%zjN)ymld7W zS;-?Ut%^V$dpMCFv8Gvacy1}?dOSU`-8BAzUj})%?(RGXexKFCgGD2d%?C*ddSo7H zgE(lO}L03N-?OVRV;L;2vC%Qv-M-93;l<}p!SiRJPF#Q;QFF-ct~s9|F`h3n38f5nuo(x z?<=9-$Q^;!lz*cT*_$Xjgs=70oq$Q06- zSSzK;Bf&R0{%Dsw5%Y)Q{`ozTR)}^PIRs`O?KT}3IU_+SO~bcA@|WdhnLn4DI$b5^ zhY3YZ_6|L^KGa5$B)!_o7Pp^|{19JOq{cs@Zs>q~qy7j+&fWGviKzKpzMma6&5%IS z^lUhA7+Sj_=W{dEj%z&M>a82vJ3rWAI(Lix^r_Y+yq?9lM{eu!=XFKk${6!mjk(#& za-oZOyHH8X+>XGN!gPvOw%NfSGrIPJVp!@sZZ5D|DZ|W*au_10{#33oWRB zJga68>WGW|2|Y@S=9A-jk$NZdmK|bihMcRKs=Zb(Oobg{x0!fIvMDisIo80H9WldR z|2Pplw1{r05rvo}f@Q~0IWE2%Er(iBf1swF>$qiQ%D`ioJ(>4N%I69UOAjX!@);Y5 z_Q}M3sZ&Ke+jCP>m_633g1xck{t#9xUK<;aV;Q(l?cpc%W>QfT_R&=QBK2YJkN$gq zV{qT@&mS51p_+}slP8@rfQHAgnfx(+>&>=bxi)|z{-|pYhxh^3T6V7(hfR&#kCO|_ zFQ4z>Xg?Rvqe9N1qZbCdmkixd^M(0v#J3?UEuNJA;ajxNc^^$@p=q@Q**+*C*L0gD zKV|zrTnmSMsROMBC)u5JMf)&F{ABhui07sGz}%D=<3Q{~vMV^!;~b|GOAfD4&?A7~~TxjCsKTL9M#ag`Qx)XhP-FGK^o`&(n~JuF z;)9J5>Ay#gpA3AkDNWy${h`?W^UbxWUgyXy#V(wzp0tmS?}hfCz^VTh6|aXnzE{)~ zig%x%v$kwSdTF0S+7oXUu)R;v;6_ewdV5`1WGIU)$DB8-7}8wM)os3)z2yXCOoq9UEla`#6id zkT8$63_~%(ZANH4zD+(hX3;NTR@j=KvPGvvGn-(`e9M+@2<`G>9W z2G=0|SsTZziAae9>-sBY_cbG;BaVlT4mIwTzdre5nxSl%Tg0B@SaYpF`EPrZ+?oqf zzWv?MahDN(2wjDapIvkPT6z=NZs>Tyyem=zz_38`hB?oNj+Yqs-iXH3Ufl|FZCxqe z@1e%{-kgVG$C0N4U2F4Yo97ty*|O)v{LOa%V>4-KHExBD`;Dazd_mZdxiilZbK!g1 zeCL)FCF4ojJLLrf>($wW=6aH;56DMcs7Be&4lfKHzjEHkOirv2$1jnie@i30Me1vi zTecL=oM*6czty(ar2aTguRqi->U-zAXViDA3-mqMKWSH|)px1SPbRI9lO&{Bpd=wN zUktPT*X)cYmp{eCGZSl>+Jguypf|$tIxZ(|4X}jMt$gkfr;tgJ2U^; zAN9d;27MSKp9iv9VAN#Px0xEFTxgq&O2k)ekNQJ}O_83`uTaMT7Rg1CD?T|ttqAOj z{KI|T%}u|H(Phyeoo4=e0`!RRm1iEGY|m+|OvMXm-#Je{9ih#IQMOf_YHNi(hb7}< zMc+`=Pj8R-wC(+Z?TLaUZKrK7I&ve=hOBH#5K67L*9Ytm_s3`jsI|d!71Qfzx7s+4 zWT4;K=vPxD3O?I-6^G|I)5szI>`CbV5I!j%rlke5M zo11?3zsUF39LryDjQWiJ1NPui@xUqe0G3J-Qb2O`s4;3L8y}f!ocvC{S_c{T$w&Zm zd#DjS_9Eqh7jE}Js1%44A{&s!guC}^UpcmRd#HF12N|&*#?m@*qXv&X?iQcMPa>zV zp*rVLR55PS2{1ZJKrAFfcvnuNeym@0-d{1(I zvWv~T&eo3#Yfmaw4hBWfd-HWHPNLm*Ix(u6^%Z``#72H$vU}zQVfIW_Sa_95h1Hs+1~ehFTRAhVEo;)4E(Rg`{@k+L|<9B$&mdOWO z4~o~(0$(4DpP~Xgqi7uaAMyzgc@S_Y)BV`r!WMU4a*Ml$J4FSib(HVeycp`3if5$$ z;(3&`95VNA7Tu4?51T9U#|>p}7+F&uA&lLgFXO2|^!qzLN9q>w3Dap}Y!3VFQpS3a zKN3=#ioTXfaPhNC6Ne*$=hhXEsOeR=!0D*z4wA6z#RG(P%fIf%=d+@Ne6MnUdB6Aq zNqZ>JyZm1N6YiuQlnwGsU^ld>DvMiCjYnAUE~0(%{$b;MA9hs_Bj94ybCAP1Y`AfW zJ*vLA$VkmE>S;^+#5{SQZ!})2vp=Y+$RHDzigvXbbve9 zo_^;*R|lAqg|~Cm1kC8TOn@$HkFW%&ip_>KsQxREr?ozYe|YHxcd%2wLk!365Ne(G z2x?Uu1|2j>vA3I&yrO>((@`tk>#EuKZ83-Yu+`rRaPmz23cAy)4o> zCs~ibyOF5(tMq!K)9UpEowDBWWWCQ$AfbFabS-rJa-)6@TB$ZVUX^-NZ4788^DjZ+ zyE1~v*I(T{{{md;b|J0+Z8erYiRwz=cox94@P?i1Zp9UBC#R&Sp7}7Z{H!$#jw#yh z#BoYlRKv*WUbYlT8KZuz2f9!As~>gc_d0Mw`Y-ysOYohhlV@AsSH%gdOZvW|8?Xf_ zjb8b_WPMh{fSOcQ<5v%(E%BR=Pg1?mwK5y3n3x4$jkBrU<{iwV`r;=3UXu4EhdlN* zwDJ0U*v(kHYiYn+^M|st)cn;gcN4aBDR!Ay!6@tCL|Fg5!_WbgMHelJ^7b&Uebrz` za31adl(YFQE8*`HE(&*KNM^NwvE#$(IEv zn7;Z+%%^Ci`L4dQ{WtfXOt$||%pYw3X133l_Tnr9+IM#;WIMKg+5J7&mK?`vo=4>T zCHG60d|rSFDb00q5uQ4i>@S`Zdx2>{<^O7#DXuXE@rst2|(| zTaLPgt;`9yE^{?}4Lk>wcEI`((!69N$8FDTvVQ2;xiyb*m+W|NH{bQ(SrX^Zpe`D{ zB>oUSYx?2Yvi#7=b835&WKsWf9;t}d{q3O-;!BSG6ltM(zfp8p@2A@gDE?0~l0Id< z5HtM@G_#o{@oj&(*-_iLB)%P=HE*b7D(@e|a5c^j>tb zICS*Hyg_&mKVJv3OXPta^iH$!DgttZ^KFtNHD%z&d$^+FE1pHhVf>&ccS+mLGy0(3 zrxYNbxZ!bv+$5?N2Czv*&&3-#Fq$#6aMa9tnAbL9kuQB4>6hbUk9hO zaSH+M9a$2`XPpuLK6Gsf1-v+DEQuf7KRLU0L0cJfR1TSflehE-fqsYEu!&L%H7(zr zXp=7lvD^w|Sv)!o*MdL_fm> z1Fn!6|Bt(O509$49{w}Az#zdhXq2cZQKJ$?B??MP)Qrr)1SW!V5f!Z8Mx$1|&j^)U zbQ0xsI*7fgwOU(kYqhP`wuo9G36OA62%v(Xf~atYk*f+3mAs#|_c?P30qpnvJ?|es zo(Gt7+k5S`*IxI%wzkb^yEgur5c4Q9&N9Pp)Fl97lif?*>6|a zZ*Q{S7QfO1i2W3?!{cA>rHIO=OQ`ZX$Wo%D%u9--4z}Nzznk_RNX;MfF+NR(_$c)t zJX`+M2FhAOQzh|1e*8%76m3vzid_i8YOHULRVn}H3tJUND7@D?^ClzfT*ZF4P5Bag zyI*(^D||cv3Vk2&SsFll_5cuRt|m z|y!r**|5e8B$=K`mpKf+&%(&oH4PC~t6NY%r#e-bt6SN^o)# z=f|V0+M8_|d%s|`z}XIp5vOG=$?u3`k+DT0V+*a358Eo~3ylH)eUYsV)?DdcC z@xbR6gH9uwx?+(*;$T5h5Xzw93!4EaP{!m0U_C)2G5DCxN&;PzJnq^IT znTLS=OY{|iSXxOzd=wB%M`FicC9o)Y8jN;@1Of{bm;f3iMsWs=|JeNCjGAGU^zEg8x@dKavs8#<=rnp5zXu8yC9+edw`{1K|Y zgm;XW4eV+=qErF8r6bXe*F=}7)I^t{8zH)v714!??|NP0PFj--#{OEoNuDcJZ5Q|z zO6nIB#jZO`^P20$OY|4skm6nah5Cxnon#9#Uj#|bF7{px*$oh~V`mf8WUUE7VJ+jY zt=H8c!dI~4x+wDXQAS;yc8o`4$4BIAG6nXlAKi@l-}57lkw6%@WJoXP1d1 zUF7TT;ghVIc{)?`55cd;C}FY@GJjzY3XbCJ`-;Z%5OGDm2|< zUBY*XW^3HZVx~Cq7Wx@`bsGI}?N7gcT?9+~0&eN`qOVU&ULSh>rj3rO(`cc_!^;J? zkO2jDS=kkJd&85o6p(Fb+pKSU=uM@vH$;esg?{U~EcDeZ1zG;%OP4a)zNmXN7%8xN zz+oh*dZYEMB#w1l@J79mQEJiG%%Lxm!-Y&S>9<)i)m`{XyQ>5JPR&xI6OBiDla8cX zNg>qfQ9VBSSD|;=1YS$i3CLH8HZ~~{=XGRG&uiv% z1;R(H&PTws*Zds!O@j)RGvVIGZ$0(fWdoDSjdtXvQNq?XpApz3((eXgT&;Y|TcTf4v1SV{(`zGbZ1-*CcBK8lyl-WV#g6;KzZ4T;UzpYP z&jzgd(?FC8-I{acp3#@)IaC704sw(61kFtu%tQMVh4R>H$z~N8qz})aVyR!lDuc{P zZ|_x10*sXk8^R_%*0)b+HYqzgqf+e(W7w!02xw&T)K3I7y#sF%=9a3aVlIk&-P5R- zy=OwNIFn_o=&uaDtftF{+l^UXJ~S=k)wdhlJeNrFfl+s?3|F=%KcRlWd3Vu9q>W^_ zt?CE;?%>fSS-9}@Cgw{d3EQaa#b__dBCv1N$$?LoxYY|QNKls}wVAwl>8CxAA}SdXk>KkP3q$Ti3SX9{9Q) zGt{V)Bj6%mcQGD$T^`~DM6UGtxrqIN>mF5Ne+jjYR*0TBgvui5iAzN89|)AJsxG@^ z!V70N?(Y+5Y&*52HI`e^xGCEU5#_5AIyS#b=@lBq!1I9Rq>#VV9RSXxn^b(m=_>vu z;}6VRT=H2?zXkt(oD|pMz&;eR+zSGY2QGU(>$zWWXnk9sK*=t#8Kjs`yh(jgvi46y z%Bs(Pq{A1ye1g1uYeUwOqnf|`){Vr+v?FtmaZTRd4-2z~#0u{7#tI&jw$G$(o}Rpg`{t_R1u>L#!)Lx?J>r$sWHYb*<(!L z|8ca`w<$5VW=;n=)8%CrgN0-ecOVHeD&{1|k2(H8!H?tX6HT}imD^f(nQ-0EG$o+} z(ZPC8x;TB1nCBd&gvBrfb5UR1J|h2MG@^o|h(tZsPhZd)_%Q*X=qQlG=cI(Ok_XVA z?8j9i&G9Su1%CW3P1Z}|O-<3FBQN7;!M@VxI~jemPFA2Bb-!Y0q7?S9uj{$ijPl7- zVU%O@Ww)`}7#)%y8{jEz+PAuNmzSNo`SndxE@5{kRlqXtySaZxAWFT$v5a_tCs5iH z*ta@Rx~tM;9q>>JFD(&Ilaq8f{qOc7N6#DY*37Bl1je;A@lM*1l>RRB@dbk57QKnh z+?O^foF_sHLod~G@F5x2>+o**GgGu(w|Ioaw{TH(M1K9!@MQLvu(7p%5-c~(fs~Vz z=3U|o*aAmGth%R2+-4{b$@)1XV9L~)PP7^zA^iU02v$AJ|D*QLcnZ=bHGHlo$gu{ zE4Zq0b2jw`2EfQhxe$l_p|O5@8*_|$DRFk|s*(whG(FHXYThY%jmxqh*xz@;BiY8o zePqzptIU;wTUYm~Ph8p94l~?;R>}Tb_lv)}MGB(>9^iN>?#5+@uk|@P??LpQti~r)e^8*_8b282 zq$x#VR59rbmmL8M-Ps_kP#JtR#(t#Zx&Wevx+BoDRf|(y=ve~yx*k-xE418Kto<8- z!{Hy|hSAJmHWD`wz0fBcx)nDtz4?K8kIno2xYsV*dVvTyG{wfY%Rs|vfs&>WIj33A z^xd2QT_WZJ)Ip5p5}GbGy>2jl0dBe}J>Uf5d(--!tU>MP6`z-D4=;*lVD^+(SYM%4 zd^6)M@#X4vWq*h3J?FL33~!t5FF6=#DO^Fmj9K_Wz_m*(uF2<$j;vIgKncDb*|fUV z`Zp>^2UMLZsG`16%9dp9FD8@SdOSz*vJW;p0}@)sr(h#qUy zJtv%NK6slce*#Lp#{RLi6E z_l^47XpMA^2PiJ174_-+AA7_!{oW z3fW`yTeZh)oV|z!n0fROt>l!c=jS&W51+4ptur1zLw~cHw$C_~mPCos|Mx@HIGg(u zmeEX)fjpDI>m_6?qk8P&-dp@1N2#Ie&v_pj4-cWGJ;wFi-ML-Aadw=q7t`Xo?e9p- zKxK??v`0s)6NtcH!}Dtv@%|E8k^nU0kkAY*rQJRM?R$#k9qxjae!Ha&*X~>Q)?Vr2 z&9hh7ZSe*7m!VFb-JNDZ92H=6TIb_`IO?jS+jD{Bw5tNf=x>@Ia^?kej5-F@s-#9Nqb zl~WF;=32+lk+YjWHNSTIB4VsLs&%98c|bAdoSlV?_yWDESf_JMPKZOZ>69m z$%{L!90nJN-OFIv+qqdZr+=_bi2pBd&MnG9y=)Wpa!y6-cF9x>#%@wY3~6_Wi`w#o z%%%r6AD|zJke^e2%$uljS@U}GkFIRP20d$@pd@JcHYFZO!TYA<4SD6L!K`?g*({YZ zcxIc#Ocg(r@x(9wAY*>U2CCzu(OAv*0@Z6|X39RK%9bNWe=qTgq1}f;q zd|9$W^e*XI`cU+1%Rv5~j}?{j%MOTt{{jeO$5NxG~uHY(Q}+3dn) z`<_%5oX)5Ix((s}(Tf{*WJh-7N@Z$FhfqLW0{E?QWA4&O+~u8jBUeFlWxRm&7m-h` zmN9o%WQR-64{0TZw8Hh8j1`ovF>_k z;&aW{UviE#h)Vm~sJnw3<;Q3vMzC!7_QkK|9{Y2nZotuPHO8}{(D+Yi5#-kKUUEI_ ztoC8<~2>dSB+Dl1Cw zm+N3`$hX)~vD~L*6ke3DN}MdYp|fPtI1?lg3v&u&BlEXQd0TwwXPeF!Cl=NW$P&JTWJhgM}_P@@R(o;2c5kiFfLzS zS<)b7vR#dqn{mZi>kgejTsNeHGrIhkH}b&JJn=z#HIFfT>zwu2rYgf>#6yan;#*NKGVSBhvd8`+VM-ea zd@2wa{%$x<}2*w|;^VqJ6|g&lJHs^|yhWb!^L#4mn6Jt`6>H2SXS zJW;nby#fcMVA`ry8fD(U)VnfJ;JNy*Q+SVY53Ou6_Hr8 z!Q=NC&$!fhmUG6lJ)Sw*kE7+6&5!@zjE6&2IvvmabHCqswk%7|&o}QT$J2lxBn^v7 zzWl!#&zg+!Am0M!e(bs;R)yKPZP_49N-|$Hmh7dr846x1vC6)~iR0o+7!HEULV_$=_BEn#2aJudp;E zw{i(UcW9EryKQ!Z_AL#asxfiRIHCR?w=wy2e5R%j^bjA12 z1qn$UPzoi|lB;EId?SyN>nAA>Lrc=v&l~CMN0!eEX&80-C*HmXE_uQ8uF&x!p&Md% zK^b)Z-8|_5{!d6=`c=z4zE$0=74)Ua;n3UZOtt|DE}~b(><#}CbA_tMrRHv5{nF4y zk+0iB!^;A_Lw*j$3q~s{I9+}e9v>oN`FEoO8rE>gN^Tz{*R0WZG-EWV!OsX)?&$=NyOLKm6AxC`%&0E|p6`rhI zbl7O#J~AePW_3ltye&X+m_lnDpI~-wRhbk+MqzDwxZI>J=R8mI$rC5oVR8_DB`czI zZ)tnHeIc4g3U-H{lcntg=2}?q8tY-<-R4BpV7(K<4}4otIa^RU<7cz&DAk7OgVe|w z6{xtSLReO5%I=`6Yq`x)47Phk4yO${W4igHmD4ipgBUSA*5xaX@_T zh-%-PxkTN<{S&uqJKWsZzKTs);p^2S+!}OMFsd>-bd(e-b>0tMhV1&#J9udC5c!P- z4V-OT;k*ZEt;spv5dIrehs0B@hF);=F99Yp8KDYf1xoRz0Pa3BZY?AXQctu|Aa(gJfX2 z5MpmOoeb8mJ*Hmccu@6`DOc4)3TS4Opy(}YvfNSPXeYIJZsjT|Pt&O(Ip0?YsyY2+ zpLd)bek5ul!Al3$K|$QCMd}nCi8vNYrWsRpCI?M+X{(I=1of4ad0%#0Fv=#1t!;sl zuZ1~b^hV;fl`SIsvl`<$l`Y;W^7D(pi-G9GQPHU$(bi^N%X4Ygt*Xpg!D^C1IIqWN zenplMTR`Lx*S=Ne&LsSt7gJTelT(Hw1v1vM#C>`lGIQSc*2?HOP~ZyxPi3qsmzScL z4g(sH{h;tJP)I5z_xMoJ#d>dRp$c{pN|*>1Tq?A3+In`X>1+U&(ZEnvFVWPptxcrnF83!R_U#076DH=PXdyr%1O~ z?Jtlrw2DXt-hxq-mSWobwfdCBXIFy`exo++K)B2WUSK!wBz_k8%)ZR{AfK4cx)eD? z2oB?S16JA^SN5mm|ClTEdG%ki{>TrA{%@Z7qVGZ7qHvO%VY6XQSOL@ttZ zM9-fha#~a>rrElU3*TT8zWLf`?lXe=R8o0ZB!&CrNRwge1M>VhQq7p%4cn8*xO_lb z(Cqz?02NxjN+HA*SH8Xq7vOB-a+y2WW$wzDSB@YoXBVJgn7e~0Y3?ff#)$n|fVP1*Vzap7 zXld!Hf1rA~logK-SSFVYn>bFiUlT-O)OmoIN=a`?*GP%nMj0&mZvcnyfw+D9s0t~L z8UXcba*SD0-%0sXrFVg1xH+b+O&)rNo0HmDND82z-6`xu!6|vbG|4#2 zi)9a{9`3ZZw)kXak}%HHghK=RO!U;p@IRYg&E-@?eDGl zIJBi$c|mh@s0ThZvv=Z58-M0dk2mtUEAnHHOFx^DF9Ct-C4;BUE(m=rkWI%%Bwi|j z(!nIv0Y4O5B|=sA0M8ZV=6fQiNl@|?-vS4zE3V~T^+VR2`tdXQ;U#s6(<{Z~9xsEe zki3#XRv8AcP&5y?WV-vyaf*=L8aelq6SXmQIlV>Z+guYg$!A-fnzE#f`r=zrQKkdY zLN*32c3YddL4~sLhk`0~OdGxeLVhDb(_azfm-9>NTQi2~Man5uS^a^uJ3+ANvFB6H zhy|}WLkk+HXg-PqSU5@eidgxXevZ26ofu@l=Z%hexIpS@4Kc?&o{PVd!eiA14+TN- z@L0j+{Eri@H5j`#*IzbiPC;m8WwdLh>08E`Xu~)n%eR#3bO5zZ@`|eceFyvd8Fd9< zh^S~~i>|0=jwJ=M-@^geAgAdTL~bwOKn=!8nh-DQL7l@dyccousW^%z;i{@m7_;8C zX?YNsh9f7D4$<|OTa38^9 z{=N}^flG2h|47rmsJ}4k_jt=1jM!IP2cuP^ys-+G>F3NRlpaxhdXJJ>gG~w52VKjB ztv=09DtdDeW8bWhS3>S0nOOV6ob-v;ZtESF@LuJZQk!)lqgBJB11xJQAw8L>LYW@k z=P530bFgZI&+TUT(wftu4G2)TaWQT9%zHhm9Taj-0-~+xe~N3tN@exlQVcrVf5&8k z`Fuje1;Z<2`Ky>rwwmU0bkL)@98VM}pua~s_+rt_?$NQm%hrZ+<)$jIR<AD)IaW770I1W9sSad2A7kNan`$_YFMG7WfBcYATsyX2+fxr5>o+ssE9zGOmi546-!B0*#w<0uStm zCNGyYIUR?rqgegbI!VU8qeC9nK(a(HlsL2x_oBsWLylR)t6Ce|h2wzugA(>U^EERJ% zNr3U28IiD1_}%AjpZPw%vV&Q09dL}oYiTpyL5lIpH1@Z4u}NOoO$9s`jhlwz4>I@` zf4?F=T2RYBBJaRqus9&}YBOx>0Gw5Lwa{Y)Xn;^5YhDtT5P(ib#Xm=H1cUOW>F>up z#s(;Cr#15c$-u(<^q0C7-6E~1_Jw`L|3FJpfFGiV=b6jnCzAn3`0JR3gumd8$?cyH zu(wF)Ch*2B%-{%~c*R_r89x_fm2QZC)+X_P*hZRqs{Ccj-B&%cKm z=Vt1Dp8Zbx8DaNxrRwKGA)RtryZ0+nbP=mA3z+4o+?6b|;6Nn&h*5z^GhL49DW8N_ zGIu(hArtMyGp^1p+ao7Gkh{Ony7i>?_Eg~xF!$G=ibF?gAYZ|5b~|<79$!cQg3^c7 z(Q`5atBQCqWnj9MZr8>2@f~cn2659|OokRwk0Ij6$MIeVJNlUKaX4jUOINeiy9)LCEAQT6U0h-F$lXrnV31_jvCy8vKo0!} zT?bS#jU>PE$7?Q3&Q3YmYBS%1Xa>$1q1k1PiYVoYte?XFoh|@0QAeJlQPlIeg_33>N-wm(%bBo)@y59QWp}t| zj0LUZJWRlSdFEQqaNgS0yLTwK{Nwj%y0Ur(XUpV@PjY`@We#U>1zr2(3^h5MV@4i% zVv+Vfp#pt|EXCkL-K^0BB4C?KWD%)jX3dSSO=UPgCa5=^|DnfoULac|+83H8Qzc!R zb)ZLaZE)D9_BvU=IYX9^m_En#$s%Eq^(#RR@tn-`B>nbsTjKbg`%h9kxXk4M7*Mlk zu7t{!T2f^FiVP~szi}o>KTfo0DrzET*4LnR zi7t4=!ofN!TO1l92JEcK2z_xo@2MmUM3N#%l0YLOC&Ed;AdTXBRRAIMPnG!4XhfQ5 zWlzxPw@KSW)ikIbmN8#bVP&iz96~8nJFIz24@mUwUE+VUK8oc^O1Fvt3QXm4G)H|6 z;+~VXe8pYNjgd_UB1^KV5zLi!yI}lPUIXs>Hr@j6V*jj3oDDW>LUEqF?!EV(i<7$6)kjJ4qf`iBpSMo^=_s0M(E5m`nCHc4hsnI251S&Eh!=Kk|s! zn1QIL1Khf*UAN84d$4mh^5Y!P(PEG15@` z6eFgyV$ja{ODSwBeC@w?Hy9J@$SM>=?BV`NGH z$j2KaOFi_}ml%4Z*;qWYc4;k_tSWz_rXc}5NhfM3LUMKQ(zdEmr1>8R`8^1!Vg8Fa z^NSa7Udy#F+QlmY zUgpzWEYo?L!U;GPR6`KuRpz%4fYw4NZ9UrjbUVI;UMnb0lP5LTwS zUff$-t(%FdI=`JOFqkZk4?{Ur{fH+NK3d7SR!_WqfV}<7%#Y-}v2yf1v#F+W zTON}yOwep<*w&RF{osSfY&j_}R&}5%cC*`OEU>C#(^h&C*wk_iq`Rt&k-xoPb^(+Z zGu{ds#^p$>$3LT#nhWd)Yj?_noyLM)*3Sqp!rcp*??(O7ztv${1?USXPS3+b<3WXD zVFD})kcu;9_FHr#S~>H*%=@~`n)fxCN#aG=1{3x zQ46Zc9r?Ixpkx_loV(KXP7n*XZmMd~W6V8DQcad{p113DaS}2O#m;hGwjShVLE?xhF8ZTv`oB5y@Eaa&Kbdw)ZU(EX z@kf0oo*E(ZIlBe27I6~FegWgv(H@_igQ&DobCox;$>p$!Sng3ak7za)G@)T`?)th& z9s-;wg4Jx^%D*tt2Rc?_m*mUbo`h<131T*2EjGCk0igjkxQ4SuYW-Hu-a)iYw)6XBNUA^BcmQS!%)UX_1 zk3w&(JU4kBv7@&pV?s8(a^Gjl0i&f$uY3J8MwJX3#b;4~!=bOv@%J7Z!IJnplaB>| ztL7d8e}Nr`#$VNcfj?!8SogDUEQ!FtL;9I?a zuk-#8IioA7KXvxLn720Bh&3BJM@D=o{Uy?biMTot&F!V^Nn`Hhyu-cDfyrptxImz; zK#s3hVZhZA-$&+a8h`KD|Aj|rP%V39!TYj3cHYwWfJ1+l-=aXW;W^49@Z6jU4`=0o z!ZoFi3#~s#2^6z6Z9WuS@a51c zd|%^jY%}=B>fv)W!Qy=-O~!)NC9AamNdqPg`WgjSJq0#vIeQNi&n4$K&1Bd^3nhD; z26UiS`%8$x>*QuFhJ)32B9@Z++1J}_wmjpW?<0~9%aV^{r)oEc1q(;6#7I0z;pVfB zY&fwN{_QpUQKwf#KayFPN~S^V#Ov%6={3JqK8b)ipg8H5xQHQO|AmUX;3HwLU5oiu z4lUd~Sr(hj%Izo9S?Cq_i!j*{ zX72gIWPN43joDJVLH7)=AY2pK;=)c}g7>0^BW0ezi1HP)AohkX`hFcvb7A2(Tc6?U zOvFUK9|63|YIYIAY!GnMcBh!l8_xPa^7oj$m9YVQ50%012g0m2*{A2gZ&=vHCMty_ z&Dt|$yPY(@arn8Ne}g=%{z$22IXIt%rEdU1s0DT8^2+5~T;i>9D?vDub*3CN;tV_u z$E-MFun#1v{{}B&c#9Kngu;XP@eXYt>zNY&k_%tgN8(@dw!b6o5yHO&b-#uA+A-r6 zX6Xu#xq=zmlJYMdvFXa{`vl2HJ4jCXmk!0x8P>QwP1rj%M^7>HDUWuLhsk<)=(Msp zaVj{*(*%|~*x~rn86jDn#;a2ueKE52Aa(K3Ycu!4#EGKsu|8RAWAZQnMN`xZ^hBs6 zoUuOH=DA+2Ph;+gJp6UK<_RjYwOmDW*?YUtx?v-*skOV#S-WZe*-G;}y%FgP(XXv9 z2!}fKkUSD<$KSPxZ&p+>J>_V;i5-vl2XHhl7GjvMh+(fdV${|FAqh=?A{tIONKc~B zK}u2biCZ02seO$%8fFEzkSxJH4(WA!%l1vb36dD=$UE;|KU&fYM{KpSx(b5u9fzAx z%lIxVo1KZ@&MDm>Yb7mRPUUV@pc?P=Dj)4@qFS4KtcWB+%O2*1R^dl1b~YqA@;wk8 z=(mcp;-gSKWqon|;pbde*w?zAg~qQ$9t6F=WK)@-w*Y>ZMDHVi)997Dc4CR2?-qai zB5%~s?m=UAg4@`6i@g*VQ;SWhpyJ$eCw`LRlbx~09Vzyx&|B^Xixbc`*X>={l@H!` z3>n+kp%vHV$_+pckW50*^@U7vr zG?MgNWFz#vzaD~q|48iO|5x;DQfthi;69ArT8Qy0>&d3!;s$7Vk)1yr9r*9hz-Jao z6At~#^)Avw?dyR;-<#~~wERu4N@CSCoe_B$v)MuDLSYD(D6y`j!*y!iKpwhohzPvz zB`887D0W)6L4G18L}EDc2qc9udp)C6(gN{*Ul%3Rx44k&{<=@Yj|w%GfA6l8Oxj^( z(N*FXdYyldZ#x${bN?6LheR_7iO|}sjz@v+m7(^!n#uR^W7!c9k;B*G_0v4eO7pln z{5G{dyyn{^cAAS2`AV&%AoiVv&O&6a;RE)}3Kk#jBl=*ZrBC^a14xiKF$GyktHeP{ zB+x2+Mc-)P26A&Tf4@Y93l$fM577F{Q~L4mc?|M74-<3OLk;tnZ53k{55)B_3K2t& z=iVX0GoF>!7Yy;3P0x2lLNq2B(lSw#mx-F(Dk6{!1lhD0%%Mc#m{!b@Rrp6FuH9Gu z8HD$Quvz}{K+YJqCm1U~Rx(H{M8h#Dlh1$%@QOp5(gDKUiUhX4Qg$q0J&KtM0gdxe z<>v@4U~)tyHHy9}%`sgHrKJiE4j{o}1sHXEqzwM-=b-syDwv-G)az$5Ms|}PciC@b zziUsTL*U1#FXVP)syo}5eK((Y7YMh~`;+2-<)^(~zGu9y+(QwLp%J{S?1F5uCjDN@ zB(u-AkhQZB<-~6+s3C8HG(^%`edZ?b-bGzQC!;ddH15aSy{(6A?_w&(Np@8b-dp9oV18Tc*e7n|t z^d-H}oRJm!g_;$4YfyTm(WqxQ$eF_?usrb^o?17oOqZu(gMMqL zN~~c49bAW@^=rM*Ezw~dFVJ%QTf!~Y2=%K#sx|&un_tK+GMBKlH(EJV1eNz*r%ytBG(|MF~t%)2o%-F>(v4T>GkATPtG)@5uUh2XjIm zPnBzn)X_i!l9wY%!%~3|%CqL}Qwu-Lvf#0~i)}9w|Jj{nK~DUq8U05bZg?X0vhWA8 z@KrlasFsTvZLo`8`67y>dRqNRaMCW<>x(z7bFtfEP*iD z!@fjZ{;EVxWLpkR4=f_=_HN&Riz=hrjk*&AV=jfs3COytE|HH(t@WS-hm9)q+$+R! z9CR%Uy0%IBjynkVoV5s$q&MlKNdmoMPpG}@yvhENwm?~1=nR4QU%Kt^bIRf%uqUE_ZhN)vHKG<09 zq9BIR_LQ^{V`e2n(R!7Z1tsJ?No2Ej;4)S>*pu_1 zq^_Er1}zhwM2|WeMB5h&t#)#6I*GT)HjZO!FUtxa9UYcSDyTUucknQ`K3}Q1t1I2Z zl3}lXrI)Ax?6xAd_gc!du~k}t@DBF7jrwd^Nf{Ocw!|Zn2^^2}PlnylG4IAy>iQn# zzgBj`01`gbggO}?;-%K7@dzU>JSd~Y+?ke6g2+WYEwdhr%GwX#CT4}$6#g=1ddBrM zJysG*g2j2HFt;j;U)d8sOxhEN08rZ#cqv1|weGohZz3G)TC*1QD*JYS5=CY+9@ux7A*V9sFTIdypdmJ%&kgI z8*XT${)R(On})B_aW1QA+pnkXfIV%Fzo1j9(f}r>T}=GEmS zM5aGqtL~c~iarVK6gQEY%uE%v6M@aCO@`@J|_( zz09}kq7K@FI?C1`I}L)o@3>utBW7^BlvAHg{CY~YYj&GWC~=LO^2nm~#fm+?vfJG= zM$0NS=7#f}kORaNenvbnoy5PK_Ql+1c`{D{S)Sz=1n|E661zr2%7Iv$Y@DYf*S7a< z|H+$-U;fN=*q)uhRY{mukg--xtB-vc_(}vb-UZrEvR5n9I$$@>vBx@vH$7g*ZkuwH zg!SS>7CqN$_>XXS>SbE&lgr~Eb#@wh{AHxYDBgvfV-bX4UKt_0UmXH9x~ooD4EpKT z#KSh<(x3}rbQG_8eW;QS*xwT2z^*f~Kg3n4VjLsH$gY1KOvJoOyDaZ2`lm5>be=e0 zFc6d`dZWu@4SYy&7`jHD>AjshnUDA>+}8La^%j?N0cC!KY3vQdRHhkB=CXimEl1ER zvr8IGT3*G+N?XJ#|iUtq07IxxVl76Yt7 zqbNrl&U|x47s`#8ODHlT?|;nurMz#x%@>r;#=)fsI$MYrgr zWX@z*X<$Qz(N$aYMTRQoPBH+cT6Z;D<5at$=hd~Mr7fr}nk&Z3c$n0WWB?%&2iFkh z`bJ`131VIARjg}0Hn_K>)hmh>g9}z)mv0YnWbDRug;hC>veNZ|-o)kbFT4&i=Fq7$ z^_{f0y~pLTekGC52%c@{p|N1Qmmh>@0@ZiW-gXM!Y%d(1GwD2t;j8!`l$qw!h!rz6 z=@+1|np>q@aL=Y85+@*u*t8`?-=^UoaBYmA?|gp<%*DgD9eAV>$NQ-liGRI)_>shJ zcgHuU?7G839DkS>GZexsc%8Xc(n&MinSJrl6k5;N-uFAmvS)iFb~k&-jE73Nj81iX zbEbnsow4xV3gJ{O$~$hz!^U~FzSFl zKi(?KV-9I-h1s$}lNZF?@&wJ|CfW4EwKqD>tu|@4xXRYEK7mtQ%tqa1tQQ7wpNC|x zT~4C0QCG{jwE4g9PUl2~UqST;0G=8L3WJjg6B352>QkTNA zHAd_O#-qTS{S3bt3c(MR9d|3!B+7>rO*Cem1du+=utL^%>qe_V9w{jv@JNc+;E@#%A_4Jd69odDrzT#n-XghhC3vdLuLNGNnCGOmkZL=J zUi{IU(8RYGF-Z@`unc?rVqI2N@9@X2XJc~ic47WrbC0k?76FXNi@)gdSpM-OtoTY+ zd6mz|Sg_P9{<;-j*D@rL&+x6Ps%{F3RX!pX%FC)OA+t7rtz<*7u7lBnF6^0cSzg&7 z3TyF|eP+bAFeg6qL*bd>5349NHd1_j!JL9FRjzG`m7+H&OxbR_j_R+Iso7M?r<_97 zD$FUbu*&s$yoXwv72jjVr<3rXn)TSE18^0lKIqyW|1Pz@k4!l;P<@g#7`yQR!+;QR zqs8x}88(8+I$E7h8V4^4Sq{HZv(jM^gk}l=z08gafN&2QdRoUq{BeIe+(#m*upYln zRAiRnW^HElE~V-`y@IP>MiWZ z<&DB*>KjPV#H(4>VvKBy|C0;#%%~UUqrf2hKbb|9l$X)l2ukiWVk2d#y?U=`4%IA~ zmHyaBSu$_yCG!Pphb$Req7ID}oFa;azhu2vDe3r2SNluWps&2=cdcR7_zmBBwPdQQ zH&m7^yCODV?eN%ulM=@VqWN7aaWt`B8r6F7mRZw(>?bz`!5#h>J&ZVKa5>}7?}B4I zvBuG(nv<#Osk{?$sK(?b%ddb zIQiXcp4yBVZM-(uprA%`K7Z_>#W) zlajXeB4?BSq`@rc*ciZ4VuDc}+yAh4 z0_Xcf>De>X3l*pjhqo-^{nd+NXmvhgkOb6(W*WX$@6hU1s2 zFV#2?Lt&j5<;w3TCoE*B>v}()t|3J@Eq;pdkQ6hu{THd{Gyc)p^G^BAKQVpaYrQ&k zTviY=QMzW2-R#O(h$LI5Jih4RFiz#@kk$DV2ujR%;_a-cj`Gs>?>ajhmHv3Bbt!&? zL##{f<8@Yd?ji(1b|D_a9}@Thj=CR+aGcdh1L8~Z560VT#Dw4Y%ffDB_6fpX4(0nD za_EJsozp_k=>tgHo4F%?f%GhT<`E!g!(mma z85?u2V0T(8+e#(Flzot)lVJ@F;j5i|+X2U$%i@>bs7!5vM{-Jg^95Q#GN-hGZ+#^V zj{0f`E_LSZ@gS6X;_+{)MFCX zm*T>(^8qFID|7{19DfW?BV^s;){2ID@ZwaD`86i;$6dv!4c(0o&ZvKxmz1LlyL8)Ru!FyUfD5k(Q&ibSxX^$$_e#AuiTONrRFcvj@ln;k3*b(z09u< z3L&=ONKC>|zFhP*f|25}2o6%fu;IKr02L^JDzXmIgk4UQ=beKZXUhTu>d2pVG+ zQvB)Y^@o2x8&&CG{?3*T=Czmhr<67-ovhk<#!!%{dR;mV?8|iTfH7$Jj8k!r`AKB7%gZYvLLiu0QaJ? zV1&m`c2=umDoj!PhgDjFyqZgCscEFb>s8T5!CFgC@Xy1p3*Au&_lRWn+5X2;ifUl+ zi!WO&s1EBx%+{41{5H-yBS}J_DaUTcl(U;FbJj-=>!a>YK_m3vc@uGcMBbs-$Huhv z(K-Eg#=mz={lDhlFVe*SC;YnueC561+*kZp@O9YPq4{<9{~o>!`uv8ZSK-%EU%oSb zJyg->XFSc|*O`=gtD?+j(q1a>Zqwv#SS8@^2=pi_w?jAZX+?&=5qkMA=`g*W?uGI( zR4MfL=}!(%f1FpW>GKf$xjl{kwEpKrwJ>s{cao%n_aio)3Sio!oBNui$EdxC9BPpD zhK_7)7kzJUqBdjH4r906Jg09WMoZJ(uT$|)z$A@fl6PF~>EowdH z7F+!wA0T7v`IP($lGq#yZT6@soo2aYOg1oI`+jcSI=q%QW?qVc6-?UKF-TC z+plA5q~o%Qzw$q1ya>fTicZBfZ)F4EDp?(aVI&`407xh^lU5BcG3L67mAB&c08;CWG_qYJTfwiO44;q*_T zSB*MJfFJUS&d<()n$-pql2T=}jq*fWaJC25Ao)t zm>GOt*)MZ@Q9fy)5F+K1&R$KqGGc|KMYk#b|>CBih_tJ_%gG2qT zyHj1%WOgw*vx@*-fJ!>a-2Cq7^BMeSM61vPhZ`kf(tHD=@2?((K9fh<*9nz$e=~z+ z2tK5w?+Fyi2rUFK2>`i;Fs^o>YM4Y9!Y(l^MkQDhx$Hpz(5{Q(KT}5I4Q^17CDd|>Z0TL zxDNu=Et&a0&in11y}$F|_qD!2CZ;~ZTURquRJ`H?AqJza4a~u+fqXiSk3`Z7Ew65U>g+B7& z)$LaAmt}c~nXQd6Jtp}&em^MN#Mb<-9ER!VS z8T>Ew(=k^Dz0Z68c$e$y3QN(Uyd%^7tw=v>hoFj~bf_Mb0$<4=;jGqZB$e4z3hF~AsBW!~(NO}? z(Vj1iJITBs?@ubAt$#!|Z(Td`T z5qX91bRtV#0I~md3$6Za#8KlXQ~n+MuxbYJ8XA`j(JLjsKT;#K3zckCJ4-D$qa1&& z5_q;e)dk$XQ{xzI6*3ULfs-{$!kP8hdRo-EtDW&%Nfu#mPq2FP*g*A;l-!w_XPpZy zOyZC{LhhgGSY)HJ{m&v}Y>4Oiu15V&g&V{Qa>x=rivJU+DxSi`MYdk&Y{>}^Rr_uv zy@pLU>94yE;41at3;Rg&z!IU72ZefcZ>W^L!mb;=? zQ!{y{dzAOJUZB`J?>PQdxQX4om6aIGIE z;Y!vY$;9W1#Ws90L4wck?n;MmWCnaaAO2s$r@>1RDb<63j(9lE5$lbgI=EB(BNM*! zI>I+G1HPBAXj1t5{mb7IKJnDZu?glkqEs%MKq|vj7W`ss0Y8P#6mga=^^Q?1bEo&U zvlRWF#=ll~;I)~5QlC%G_l!k0KFO(5`1~7g&eVEu$2v-bSM?^G>j>*f!wVA}t+e1W zJba?o!Tin>XW!hh==D`OWedYcDZtedlVJp^cLl1y(I>(q#^#BgX^k)s1ONPmHvBSR zp@;2vq{Dw%2K@iSl zQ90jP;Jt5GHwO98wr>D>9`@71=trrOU-vKb zr>mzrYf5Oe{XI%P%aWod2+(3k>|~6$arR*||KFPUw^+q)6?be4^3!t0~Bzd=stV@TgOEAf$kK%aeazlQRcDqT@33V2(o5%$d(h2|E zu|UC`>hI)Kf7ac}z7|{mPIlyXThGgdRA)~LqZIvhrjMvS49X*#TIo~W)~ON2oG@Z# zXXaE2I4!bzaF0Z{DTBf_wNtaR!u{b~*>y`peWi*&sRpxU!*swL?QR}|`N>jeWnc`9 z_RJcB*PcOQfmz|>6@6(enQ%n zJ}4#C&wiBnGj^}jhi+r6v@hM*Yp)_Je7x%8EqR`7JMo7(@}1nH3pqG2D?C@;GwK6k zSglUwpH=Gfd2GW#ZSlj%tQW65+rbDza3l}j((RZavTHW-EgR0~@zBd2_XC00#6l^c z5zDOz#-=UqpBR|bSNRzG$d5mLEL8EKyn@re&>LCgs??iUmElxbwvnBxdi(BQLW&4j z)2!?r^0sy6a=I2@& z<|>fK*0KH$D?!5{O^ioGYpz3npt4%G(1P4i{H4WOYhOz5E!Iy|?>{*%Z7HSb-Kf8r zF$%4QHtLzaT4tKG%#{BDO(y zy6`_5Q|Cw|7#y8$U!TOaXx7{dm|KhzVlMNpl=Zq13|?dXcC^Bk!$97=HVt))txKQ6 zRU?_7iidRE2)qP%neDzEtars%tTiu5Ct$PLdVIE$dU+Msh-bA0`n49*4-NqMyRfaZ z0EjEfS6hF@fECZqbNo*M#wjDi`3jlC1eu)v!F0v1(jb!(B_IFhw`m|ZTTw2nB$!45 zs)E|OhNj}2HmdL~$-n__IP<|I#*2Aojh-Vn75){zWj!jthRCU)|jN7oH*L$ol!^LV(o1bc|zFr%Rq= zi5Hveal#nZ?Ytz}iw68Ot8Qs{MP>9d`!P4IE1btPlz2qwNBlSIRfNncRUIr!{H&ur ztm%i72o>Xf7s(<;%kgks5af6R0*I7`z{~cncw~aO)TQsLvIF5`sre(TS(u!NQ%WVl zA2~T?i*<&2Er(NkLm%>LXq}9M39<5dkZ4J*2QBaAv`V#8D|HeBnbULcbTPy;g3+5X zrOxYd!quF57`@kh|LE|QbgOu)lHxK>G%QgReC9T-PYDneUOn^t=DwUXVx7w^tzgO4 zY{(<=N4?I~3%KX@@j2?3RZt5hTNK68 z%T}Bmx)&t=$(-B9@?j%*Cd_)hqrC`gLL*e&p8KG5OUtU~M=nbO@vn(alMWE40R#}J zx0|go3JBmqi+mg$3sYQ6Oj+9I6-@!>^OC#~hl|>LR`9Rlhr0!Rf#_Wx@$Vn4cHO-f zFsA_dU4s3*C&w0M-QO+T)$uc$`^6TgsIgQKSO!{_h?Pk36{#M;PWyeK!a&Iic}HGY z(cuM;qbI5PSM^w{#AoF-k&sKr`ly)3DW9U_$dU4#>V&gSG(A^_f38SSD=Y36pGkcq z)EI6c#(dPULGBfD^dlQ>EIGd-5Y2mkOkq}Ki(j}XN z<7vU@$!rl^POoSn^&6PIzG;N+@CU8^<2wWbYvU!dg#84cw}<}96H!ytgZJ>7u-YG| zI<>VQj}*VJmm{w@F{qlC;6`cyJFTZ^fmpSWUDI^}^}X_hMJzmju{9(0_*ovyvf;rU zi&b@gyv1GZ1jh<^2K##WR8Ra+zSESTZ-{YvfdY0>qSl%cP4PRu9;-MULpu?LyQ!lj zgd!#5z9?e`sCYq`NLA6$B{V>zxITbb&4)Ef^w?81BL3DKkj13u~6h^E7!Y{7;>SUTMCoOCpJFteK$o4Fg~mPlg`9 ze zDiDhRn<-B_j~_Y*Kk9jwNj_M8`0}4>#8Z;y@99LULBY+iDv`%^6V>H-nYDbu$b~Pf z8^c5*Up)fsX!?+s5%7v9>f$Rtp%}etJ=P_!hzmWr7$pGWPIN);9#m%}d^7_>wZPXQ z(r2Od%B++=q~Z@`!r1W}d^3Wl{(1}}B@0FJb}9rA(VAZcS12N!s5Rq!mPYA@lzigo z2P)gMM`)|{KVoaJXk||#C)gEw%RZdB$#0&oCp7(>%?|UG)X$Q~3{e22pxAnb!3v*# z9`>T#$}4O1jmL!FM5%i;!+zr-Zh+JFA1jULzF!Lbi@g-coU9It{G73u z?tNn4cM_lyL$7}O%)W7xR$}+Jv!Rrzm$_eZuVr>jWDe!@3w>o@g>HquC9?)+yN`|R z`7>7fV)whuwTZWFyH@6bcawOxi-~4&lIM&8BqY(X((ee?!F?1f+i0Cd53(_e4%s*_ z9nIVrh*FreZ{ihFff8S&@STzeNh_DR3rI<_%)LG&7g#_1hm9|EScSmZH|ZM>iINKk zEVRn)S3=wYgKw(552NlTE`5L`oJ7ees&Fm6LaK0`%~2f#YFfNB{#=i( zPb!O2R=$Frz>?VcL}la0Is3jtnE%XNVk}riDmne?yy+Tp%?nc<#&XMK=X9HsXU<83 zxzZt$363o%f^in5?$zoI2vS9eX9ztuaOPW9UwD=R=aIW%G>Z3f{A{AD@HH_zAt=f2 z$hGTf?H1~ebUYHormrJ_W^d$EbtBg6x)B@WQq{xZm*6sdI&jgPi2qQ@S};E>!_bTGWXw#)9^eHrEpMG4q?hB(Xs2hoamlN`V+C zq2)Ov8kB=@#wrO!k*22iyVMwCD6lntId5=m&bX%ddu$J3^5fg+(mJ*-X+H@6PBQNo zUsr3I5_Y3Whz*pDbt4obcFIEqR4l@;$`ej-(m-}inV-WS8q%K2dQr@6&4nU?I;}U8 zW*54x!St7`GZQ*Xo5qxZL{qUA+^zB9SQ#r3wwUXi5_Y+FsY%1`JMsvYz;>0F)Bc zk~|P&jR1=P7c}<@NYq=&@*P#3Euh^@hcaP25@Y%Kdq55I!KEm6PjJak0Zsy%KaiKH z3EAE*e*?;G4ByELmRbZ)vjR*=;M6^VQqZWz|AA&Da;vxR-oIuP*7k-uUVJy z3BAwAwR-(btx?X)BPSDyIT>1JX`EhZeu}CirslwDY7C+#oT$dIPS~FhKX8LEQ86Y8 zQrl1+mpsoqj7N;bBH9$niF>f)tPL{{if<6B3v_D>CB0&TUKz!OlDJi1l|81QJI==G zPvLm7a5MttSNgsb{e(Qj_$!#kHFHWE(!w9@I{rcH+Q`cz>PR66Se+?)0O*ZCTRGYOcU_9Gq z{JcS0*7Cq?GuKA;pEmgd#yf=ZnjDE;@F=c>OWQX)aF;a)j4PTKmNgqAi8?kr{sNh2 z>tYQ0`4W9}aPi(q@f^yDnZ02q3L$PCzYue>LH@x5F|koukm&?|Fg%wX2A(PfPw*gk z{!H9B1D+X4cz$-*q2c-AA>c`0XF38xSow5xe}Wa~hr1|$r!BZ8D7M4us-8_bRv|uo zw2E=C&Lw|E<06&+A@h^ozI75tDb&z0Uo>gw4Zc#X>rKo(bc7Q?($RlCTAUBU-=saq zeoTtkwf|6U9;<^pNfS-mxuacdTQ7Et4T#DSL?IWQLhdQ0LPYJw+(en4a!mM571cS) zOLkm#R`{iwIiTRh@SlnO<%r|v83KKiigO}gxe~uh!IR2|-*Ht2^R)R%>iO(`ojpHj zJYA1G9*;eqX}9R{i1(*bRAd>?&D=~IPv}({5AJF;o+*q+k1zB)8CT-TwB@Arg(Rof z)S$9Y-B!=Eu5ho?(<1A;o292ur}R)!bv<8;wOYMj+6Ir0%i@(DonSVup zDQT@pMrjWHGyF zr{{@7NYT6C!n&Tun1@fog(Sabg=8F}KUDsV7)91oqMUbzKX?Q9JB7v$!e35eP0D}JDgORf^mY%(wdrm0;puJA zeTSeoG$Y}0x7>IL6l809)A%;#j)Fq(a>rjoyUducH2Rv3mUR$*2#C8CudxnPr|^@V zq^~34$C>Z!{O`H6Y@TJowAFDrjZ zHo8gDq|yA&85sQ?WRF@;Jg+c%h9W6ZxY%4_J@-HArUX_j_W%eA*JY>nrEH$k_NDa< zy0G*oy>-~X_im*$r}poq&DzExGHbQ07je+(dCQo7z5WlLpNDjFr^#x-XP=9aAxi@4 zR;q{AF*Ne*c&9Z4nzZLh^h%kkmoaA4EeRRSP{GHuMu|sC22g zPsUhx@zyohtLn}mTgy**o@$tvM)1-Pz2oB?s|4=U`jBYDL2N5ve!?Cb>jM-tv$?bZ z%h^!eMgo@`t>cCX{|KFkK5x-pE9KZ1ds*U1*1!8Gdii${rHo@VLdE?RT{2I5$S5kVum+$B z1kL^Itd`Awuzys1s}DDoxhavYd*IP}TZhc-ja=0?m`%phjiMO`VCPiixD_PIWf}j> zbjuwnDCO<;t}&}p@QZTlAYb%>$Q~Ex-^OS2jx#^?t7pg_9piJZyzF^ znBvC6QCak{9&g1l$6Hh0hmw5~9x>bYtuq2GL`NjvJcHP5!<0)UcA`SBqQ?c)i=PJO zZ5S|j?SmhkG$a5q>{}l&0&4^NHseh^Mqb@4UvJ{;pEQvXD(B@&=FzHcfo@ImSQYNq za#b*BuC=Nj?_gQ~tirMMFMuQBh|fE5Aa~$a_IC;n4%cW4>|00gEz)kQblXa|hB*u} zN<>og$CEo+v zXN+l1Sv?P{k1!9b6+&d*lH8-%o{{AsGYH?nx3KM$gVx8`42{rj{h3#Q;aK@d zlnWIAcI2+kr?Ea^$=O>TkwlBFHC$_TNRq-nJ5hs$>>xi!ch3saO~r4feMb%o|DYQ< znEh}#4^#9b_=#VP__N;RB{p=wxtjzHqvtSEOokOj+D@H(EY8f(R_3`n z_o0Amm-zbTpdY`_?ndRswD<1C12Pm_{-^^2WYQX-36^ZF{9eKV-lR+{6(#LE9x!ef|Bd89rM!4GFJ4&`hz@n{ZORUv$Ppd^ z(~G}gsHfSR?Fya9RZ+9|MAt(71nWGZRFefy%@|ey#DOKISB(l zJ42E?u8=@C@ z+-%*Xlo!Hl8?E(E{U6fK1wN|cdi)6_7&UT32@(Y*YSbX8iI18U)U0e|13{@kMdGVQ z(N;yPyFvvLG)c=gF4C&4R;z98L#ws5TG0A{BtY;DD2hb{pUe^=iWN|V{J-bSy}Nhw zQ2YD)`AGJ@X3m^BbKY}?VI%*JOv*oUdYURsGQu4_DjdK3lj`6_694Q~%(XvnWWR{a zhnuAm+sQ!JPI8laS~0z18{u-NnOPUmqi7Vdbx_q5cF3l7Er{4(IYqRK)X4x?D;`f= zXsR)tXk{=6l6P-KYPP?g;$I9XF;02*k^DUSG=2F5PG!HA7{4=M0tb$g%Rt6wUOPMh z{hudUMWp5EgFJoE$UO4#r%bpSX|jB^v*QmZv-UCsm#@FK;BdnNE{7{!syxn2M{Fd5 zyr}e<;`Yv>Gt4*w5wPj$^G5Xp{gKnn-SvAr=grOFN^-HeF`pYa8(0Q1!Y?uV`3uXR zhg)1`Y!-hlN?I417a`!(*U=X9Z>8wg_NB^ClJZFWnHNJ&;=r>?M%P^>^5Y(>{axl72z^Zw$GUAiw?}=l?>I)eezt_ ztKRe^utX%w%VuXqO3m@KEO{>y^*w^$zA6=2whvc?nCxUnI7odf#PWkK?Ngs(b~eqg z!kqS+U&e1=^J`DhA$ZOI85|}f4Zh}Ge&h2OnTO*#o!#|^4zo}nb*WD=WMSHpR($x| ztM0wM@*dl}uUmV`{46otinZ7hj^+BTna=$D-^;M~kR2$Ac>7IX7{7{Cmk;M$%5eiD zu@Ymg&F#Z7TUYOw(3!tSV6)(Q{r55;RZKJUZ1_eo?JbAPAn7tAv^vk=HtS>LH0@w9+EoLoKJ zxtOFMyX39emRfIuFGdA_Bo?8Y+|3V3UW9EHB=tKTKNhc?F(A$lH(l-*zhT)}Kidy0 zYvz)p`ITmy#V}wb(~BdGhgZh0DK1^l`e!jpvKMJ_=57|C)Q;!CzK!e-$qWYGuG=JQ z;i=gWctz>+>vq)bj1ChNg@vGYk+J~j^6YU?ISBootAO0Mi z5k0&z&=HwEfpm9d7T)>qGFNbqG5n!=CTK$QU3IxGvf{Ns<|@;x6jAq7L(L=Y0LcAE7)DoZ+Z}qO_m(RFqCZ9DSavlD)Gr1 zA)y?*p~r+`Yn(-4{3_SwLE}Yv6V14D7!uzUO*GpnD8B*~^)*nq06 z;>xDU*)Y+`S!GoAF9-)#MydO?H9Eda62#dML2-JDY*JriPS#2)X};ZBXkMBr#JD{1 zE~d4}C-F4QzYH1oFdm3}HP+2tKKBB%Mc5pV#pil-<<& zlJWWYtEP}smQ|9*-Q>wrkwr+sgRw+V)aNnTI#>=ZBOi5nfga{mU!}cHofZo0sIAmfQ0%cy zQXV5pow2X)uWMrBspJ~sXIQ9dl1x`J;kk`CB$QHXI7c`VVcMKXH+RJ zzQc4>Cj#FEp&oyL_PWitem}|mo=>{WT6JRa382{8qdk2u^Fy%~H%(4fML%uKX{eQ% z&*vZHkQsng3sBck<4k9dxl(!X69Tg;54P5pOo&fM?2$q3!D}@^q=33*XRrh+nr2{8 z+w|#og^1Z^1OKNCnj*;c?FTPTtY+K`Vf6(67t_Br{Ix^>2l&4S>-s<9e?`58 zU-H(UD|X>ujTr;{(XR9p`1bIh&b;=5e_hdCNoWDg%K8bq(UH&I)b%q^L5?_0eXE;I zA9N$@A5cFCOU}C%ex~ogPfk0dal&!g`X3d4l8wi7U!Pd*B{Vn>Jg7a25l{UOE4~qZ zZDn2beQm$qwx0#JI;N-oYwYs@#I=%*QJtxEMECwBUgI7gMb}bkv$86FMRDoY()CE} z5``Pqj=YNYBRySL>SZF;wUh{H{AS0#a@88-yuZ4&8q0Mfa0}@hbEjW*_%0T%XbBSK z!ROyr#(uJr#3B2qY1`HwNXjR3-_44|OP>=Or#thvX?o*(z9J1bL58R@q9}}$jSql) zu2tnGk=31xf+~DqL?3FE74$vxlW<^lbh{`rxa>9ww*~X~ZPC`!_O&U|rAwvoryJi=ebdF5t0(+-o&e@FNIb%&X!c`Zw#v<)akGK5H{@?+Q?vxdsmyFY z0)@YRZVvu~<+W@Ax;$)aiduTCWKXBY>?>m(c3%Wht0jDb*5Ss^zlTJEF^XQfh|OMt zo=5pBHS+703O&2U6a?dJy|nF?Zf*ZS#sL@wfKe##`DD(8^w7;dv-Gb6q`rkW6^HBK zBK;w->P&G4&tr5My{?DX>U8E(-@k{+$pYbfYGWnWk9=R}yH2jB+wJ#9C;R_{{r*5d zfj5O(%fzi%u5i$fwGW_fHg5TBgB%mm=AwCBQqUGAn;%2-5>bw95S4KduaC}*t`?)_ zC3?(U8VYQh!vTTsaS~W7T>C#%o zz}3k$!6*MfCRlB%3E}v7qH8S_$j#26y=&3bTS%j7 z#-DrUCsl!#X#1G>Nkvl2*4DtgAhCJBqp z+D+76*c7gLv-Ei>Y#7f!SBznHVGhLKHhEx4`-{EO&+T(v`Vny<@caRno6rxTWC+OP zzbQYqrGq5>OtRk}ogB}l_WLyYf!kUF^7+Gi;FrF7EoS!|0VBGPRYF>m&G)s<8_|j1 z)OR9pR{?7Mp3KNiwW|ens?V?ytF!&IAQxbsDF$oGN3vMTv{~A?t$s z?c014F8J{*<{WdJ0_rq83XYQ_2~3d@It_OV;%lT<$R6~%Ec1KxC3dBh*^Fuo4n`Md zgL+_9WZ!V?yc|uDVYsz8Rw*$tCM@&KP+q%4`~fwugqw&IXT40T8R5X>S9i%~&-_9+2b8RZo8Vm0yovD?Lw|t>oee zyYk7?Ug_-!_kHAdadqNf-}xH(t?hqyleRz1&yMh?wDR#R{n+XYJ?YoDb(8kyBQ(>v zzIIWkBqCXribOl7bXs*2g~1OKD*_oo=2mur)EsJhGj_n6~K_TY|i@^5iCl#@gMJbu#^4IfH z`zc+isMhMHpD0Q~e&^8D^rc%Vlg=Rvw}>@y4pj{h4Njdy?|9Ck_bXyYOP^J-v`v)O zf8gr(LDxU!dZ!9Zjdt!dNZk54tKxT<8RsfQH_1NhH9yneGvv@EF*Z>Na@AgW9wCY& zB^R9^bNzTEvuCoPC$IxXYlUydWHA>L*9%H=9rl|*A9$w@kCyCy#9ZlW&K-UXb0qpQ zE~u2m?TKESX69JG0)dcX)mvlR69bPF3RL~j+RJ`S-#AOg;xtI6LvpY;e@_QE*A8$f zyFr(Qo8Rv%yz`@J%tAcMxUAoRni_597dL`>j#ktE zYCAjPvePobcv*V1%}yTPWnEf*P}Go=?eDG6?&JA0UYl;?d5oMfmPJqFIk2bkG)Gh8 znfrqt$8$Qq6QQmo?r3si47xKnE)&IK==HiDh;{AFx3&b^#lkyO+i2t^$ z57~&MxU+N2sTREHE_jxG;6&h8IpDSP*NqzBNjOZVKf-8flB<@G7fqJ;2TVHF>fy5c+8ub6bE z9}KcYa~ggWlE0kBLVgIfKZ#W?LnTj+z4z*F*AdOiizQ?$ZZQ-tt9;@Fs2Sg3vDqOe zXVa8|kmQlc_FRrKn07w(WSj-6gLcr@-BZvD%+90ns>-K zUnFAm6BQ+->XFm<5`Iz&=P&W}DLLiJ^ThoFl?KogvWwT$!27_1${XlC8RKSxUIW?P zy^3qdB9%4$8{tvb=HF~KV8h7GMsB)c>S>4Q>bOyM*-5hGm0VBQY&9{z6eLc&9(_QW8&1yWZHB2CU617 z`gVKv^o6XKF5YHT>t%&L(bHi4?mc^l4-~;ZRySdYJK~X*^UxciZX|em{A@smhHj^)uPw?dD zhvP$uVp&mgk2s4Fmxa2dh=Yvl$BmlnaMeONBX6WYh$j1mn?FSKbeOAnA1R}0f8khG zQSI54@v+6A9SdAtyska~0q0Z&KCg;>stY6RjG-v_vP@1jEn(poRSo}iTzqs1F4_XK z?pknCGn1o$KdNi1Vj+@S_4>P=o%$io%CeihZ+|&EHa|%Cj_cu663=93)Ul!&ZP9#E z^@_sq{tEpGVhYvFW*M1vox)`Wp7?deP36LCw_#vDxna$}vWNg^1tDY!oExThuQrOY%)M z=~;h*N7>}cG`FR+ip1qVbmf(wKKFPwFx(SWyQmunJziIu)8Hs=0NtVPjlEE&RB*fx zF(`Dgjq4zXdrOJ~|3A;_8uZr#Y)OQdxH#lkxp0nYmBKUW@hPpVFO7!bx#VNg<>Tx{&fm{ zJXH#{FdzQ7s>p?|bpYyfNtgTjIsjWWHf8w8+0KrSVteQ18!*hi5|X`4pB`-m{bHVCgWwWiH?V*+EMwjowByp;8w>`hC`%cU*Jns5WpvQRZd0IbUCP->VIt7T+aF_7hpAL zSib_UII^{Upu6sYQx@Jax`# z(JbM*bw?56fgIL5LiLmort%-?(&)B-=P1(cO#fL)Vcv&|JEH+Dw;x?)AY7_16 zrOlu9@4C`yQdppn|LV*c7K#c_u{(DH>DgW3*eMcIyuNVS<4QmRR$^>j7-+)7*C7dj zM^wExeCkCvc-~LK{r?d2|{Vx{}Z^<)NJ6m$BPZ)@0xXCw`*JotD^Z!Pv_a zM5<(!3s(nL%JN^m0y+vwzIg~fF%A-&?p!O^NceK4eqN`as-iFlS&?j^^(uuOPj!Y% zof7FK7_aCItcy(X7)oG6!J@^kT^qt))gQiE0jTqa7e)<^@40mWa@j08}BTeg^ST6{iGk)HcGO+ zz*OjsGu2vg`@g_Z`#;Rn!0FSmWj)|;_+0d8%uAG;9?r;qbFfk;*iD^!{Xi~LPhUBy zpswWD708Cl^XS9nBkAp<1+7OC!DqVqF_PY;^=E2dn}nV|ksnC3g;vbkPn5eICghX`^AB8@J^rStTf{MBq-M$fj1dKggsE*hLE^tL zG1_W>(jA}5@znf$N178C5nllJMZ9V%Pgmem{8RlqlENvPI|~=Ati{IwRtCtZ#T}5e z*AxwLD#K~6bAQ_NO`fN3r{WJ%eoeH^0&_dwI1$aep;HYjI1Rjcc_G-{1lVAU zDsmbbg+t3U<`D=TTShq>oSnhUHihEWn_yfPVs`#(r5h+P-o=> zzvf_9Pm*~AH9Y<()m~x-xd+|xFNyV}PEfhwo#Vd#d4HP!y6^jcL;DMGVs-!Cv$jMV z=yCndw4s?pyvdh(VLJIDO@FRvjvm!@X*i8qR!o<)AQX~B4r%hcEDo{0?#J62qQY5L z#VA<*+-IpQCCj8Te)Y2A_I!Qco(i}eU4u7j?{Srl18tuRME42@#^l|wu6>>>?}hqO z>q(BqV;<0l`O;2A;;n5gs{fuU6J_IXDg0lwxA*lS#@K)D(vuZ;gRVI29&n*iH{4&0 z$)3aGA?nd2qGXj^LdUR{IVf2;0azZWR)gBFamTqrPe2TfissCnW=A^-e5i$2gZ_!X z4J%KU1Vyk$BctXVQf&Hbi_wwc%=Yn3kx z^TTMdu~a6g7dh1 zpx;y$Dblk>vnpi-$ercHmUT$3U)`=dV(rJ2mt8+1vc?;T^$(B{I->h{ZV(b+s*X$A z4R)O3;T3s$VDi4qUl^S`@p#Ig+=F~NSz|uE%O|(L=Qj6*zqI^?_?))l#8G+Ru?KpD za9+e8(1U*PHFQ%copz;1mlx)kCj4tXwTF{mr~ZcGYCnZb^kmmZvRG2`n%yA2S3)S5 zBDmWUmpC>bKSdv>lk?e~KHTRx3lbBG(q6Fn4XN+9;au(Yd*sVSIN7>C?~dPJjo`f` ze$(NPFxelC_CN1ozAMP7>ro#`&O?U}B@yKdHz#^pzq>K!d%}P3{3Sp;UFXx)Poa;e zEhToyx0lk-PPU`yRX=m-e;bt3eSXsT z!+O=ry6L~^eCQ+mxT*O|`~G2#;(WvR(*=&?{HJ|CyXWPRwWaHcqMItzj`-v8cCo3mTPBAITZdzwextNk1+>6)e zaQ*IrqGEC5Zf!qW=jB>kHvzL#d>8n5&N7v;vv#Sq=`6UKRxwOrZ^2jxBGa_8(x5vG zJa&0>m?!koX?R8?y3|x4&v;6PmS?3E*#dST-gzhfme`g}lzFhK4B$13F&G-Y3)WoT zSCw2WHBH%%EGsrw58c~&W;}9iMrb(2JN!;|r|}ML3#}K&Q0en>tgok-CXVdy>6u-= zxkSEEN0MJHoxa1HPccl$@|S^%|2D_mGeF!^C|Aw`!7Olt0IP*vfEIR?r|(KCxL`-} zEF_Td0Ct!TpJC5E&~?9VG+%v3(Y8t-VZq8#cYs(3f({i#CEifyl#8RSg2o9P8ZomE zMmLVQcvdqc(_=fxkb|d zEal{ElozZz>T+TSOie33Kf9{LZj8^7%`i~+_;_d}zbMS>T8@RL9jw;_hMY5ci}iMk za~@xcS;Zq6ase&NmxThC!X&)|5-B8r1Sy}btV7_r^*Rhl_zNJ-#Wg9x3~XBV$1re4 zDGSN+fbvf9ZovWoR_`WRzz++=3gZ2W%uj;D*U6_e5-JKO%^0V#FSEc3k z$2d=BPB2y|P~fG&JEiPE`N*ULRQ@T-0()x5%G4;&00UHUST2ULc?Y%y-hZS>1!Z%N zk@sCk7eg)=KB{a2?+|D$x5OsM{g2?yYjA>Ch|*wO8+01hx}fE7Q>HTea`w5%)aWPN z6hKYKWo~TFSuj~q)I*D-+!jydh4x1lrcXq)R&n18-$_ka^!q+LYO0U##1SJZSG%-( zRM?u2?XP-Eq;!4aLF)M?Nl+Q5Ic;Rxf==#tOV#(i=TJeh*2j^G9>TMc$59Mh+b_3V z2a(RF>Mu$E!$lXTHSg*(9=}NHc@)S_;}=pJdlIUpES}Gp39*Nrh5;<2s`%w_@{M>w z%%vMuemAV)1cWkL-$vq=rgR@241)A@V3f5ZX}Ol_EY4S!c}lSpH>5t#dkO-eYYTx>2{Ac?@M+awYyoSJ#h z&bFtM;}}vn-ZP_t!%d}nuFF0O@sM1DRw)Ogfu4}BsCD#EXzdQsv%r6 zh=6NSe@n@OM+bhx{CaxwthD*Xi*D-2+4;SPxf0)~)9{7-(wUZwO=SmAF-~4~vR;0W zeft`n*+@~DJZ8)r&BLf7vMBY=NSW-rxzjX02ajQ>=`vU+4xy3ptO0P9p`qcM*l|}7 z8g6{k|C8^MPsLsEJ(Sgw1w9e#mkGjeKQR<|S81c}^u#(Iuz%~U5&U!Bh_Y44E5H#Q z@^3tmvd4eouhlQa;~fgrpauPbdjd;fi?cw^QJzq_lL9XudK3Z zW|{fRff_q%ID@Hl=Kp|yg)$Yq+vEy*pr5SS#w(2` z_Oa~=eaTl@wrX%d_z}~U{&8Xk%3?|%^S!@sIIcc}_E*erNLER?I8;9(K7h$AD4Rd3*l1pK)UF#mQSUrFK)g(*&#_@l(Ml_hjc2U>bYm0)ah;7|D%qi zu~K~>P26uXl$<0|F2PEK3`^IrbCQ%c^VbiN8uZTcL&&n@x^#`KvBW?7FfQxw@m#)% z{_RP<+J)EkbSnHVPAu{h-?>D-7kmgmbJG(EfTtGFtx^KG5N< zPvxuiHohB>q>OLWH92#79badLaKT>2w;hIN=QAyT()Ygg-|z6@>Sar*#AA)#{;9KRs4t!bg=QcjipY9coVq z1Q>Lordg6-<}8q03_9k1R-naMa1WPm3=8AW5*dP4^tl~o!JC$u7sOf!Af|X-sEGO} zktS&a|0Ubd1I>84j}*SeC90Sx)S29o*&x(=C(cgP+cg-5RLWM35J+1X1FK5UgQUN8Oe zWZ#`U@!og)o|vX%gwZiNVL9->>gNs?qGQr)am{jL949(GenKIlTFwpph$qf~kl1ut zMG$&{yv^T2`6~}7LKKo3n`lht5gc#rxhZ*M^)%F1Pfru^GqJkWypQqcji>(Oshkrf zy#ZprN<=XyQMlfdK7rts3P*tl!ThSCBYgnue>Ow{E&IC6rpu|V=EwBt z&hIz&_b=0Hf4;uXIIXw7vUPM`{3bd13sk9#j7uW?0Q`0!JfO}DcO%9|)5g4zR~ROu zGz`bJX~W5b$PAMtdMj>!r8UVNq5cdR-a>hLrTVvbte3xZV2-oo#u8^qU5R;Ct%k@c z&SIi3Yj!l}MfP_VPbrz+yd{fDOu_m2MWt)%-z`tx?WcFAWCZ7pF3N~Xv^>WyE>FMK z-s4fM)7b^~N#btwMTkG;k9QW2EpZl~O%;sTE7H^S=51M2;H&>Alh(`2wnq-2-9u>A~*%8?t9XO3N-3?N`XUc`T%fD1rC1&)C}tDSlcV{$j1{Vac^!znssZQAZzlTHihR1~|Vrj=-+^!6g2K#FeecKr=9U&?0M z&XkH{Eb=~VgF{lDStv(P9E9j}oB`wH96EUGnZ-}a>E6?0XO`$$7(6}D8Sovc9yYyx zTuHeIS^o|NZ$D}!^}ASvpP6ShuO#w4Ih(FOMgVCGr{YLqzE78Yoww4|IoB!X=khmM{^oY%iA#zjY@>%sqfL`aL_6Sr zx4;^POG#RhHJ>)BVW_vZKb_fT<(k205e!OuOKEPkm>_Fb0~?7Pp;YXncfd43MrSLWxv(j78G*C{f(p7xVALmM#XeFW}XuT)DzyJu6t zsfbbreXw0LA0z*S3|WYzF}9jH=kc!Ez%k%M6212Nn)o&1h(oQ%8CG^ z8KKuvvicmGx{aib;hx#hv*!I#L zi55V&^v5-HQremLyWC1Op2TnZe4mf}bQW=pGqXJxfhl}6)&a>5G^fj@!YPw4-<$Po z{I?WdvFQm>T|sL1Zt6n~ikzwiaZCmci~LuagTnEZ6Uj4A<3mVEo($7OVwLZj9i?>z zXcUQ7EIhyb8Cb6P80IXwp=8Mr5o(7aAb|1!#n2u9mDk0u+S7h%AAIwG!iDb=M7a;X zc|e|L#*avY$2^VP>j}Oiy1;jX+EvuYNy2wC5+Ma2;D1Z__V?ghdRQ0u1b?H%AL>>M z6gqnv((qj;@mK#wI{scey(|9S&GW%G8HZ7C@Fh;sw&sC!)i;$s>$|lVd`VRfJ0Dr3 zJ@nR|em};3kNQ3a_1$ElFEevK`cHq}&-dIXUkc1_Y#7&`MGVW@wDJPhvq>M#=Unp0 zyF12|PiudkK8k#(ZEqx( z?%??x-oSFvwo>+k58fOz-fhn+{b}u$bZKuquudwj|H6q3sQ+RRd0Vk58SNC&6?>w7 zixzoij|)Yq8AAJG?zp`Nwp_J5`L&M)SpMxF-_t~1d-4Z>zu)O2-}r`ni}796dwUa8 z?UhG1%7KzHq9nqS^p%FMA-%Vkk=7pg@AEC-dvR2+*ecDA^5T^jn$xSJz8~Q)WqFqm7-&y@%a(UN!Xy`WjNWhMMj*KxW0*-4_miQyI z1evJL_w=$lc?k8RC+m2}$#~ZsC){3lgviUXol$bih=Z|AWcF~z>Zr|=r??}uC&DvA z4x!%H!iz7r%lNvULwyVZ>y%C)<6~gSc(AkhtP+W{43xVP_9gY`)?Fj?tEXt9VpJEe4iKQgS@Hya{+jr%5KUeUh|~9jnIYVBV5?= z2tMtq9edDdCo*;PpvchrFCC|$9{6MqSICGHYZ;W4V_y!6RO<^r_g+vXSv_T1)CVQn zd3SJzd5>MNR%p^$2A@R6*MB)E`cgRdDX%Qszs-z5P{~FIFJ@fxCe9j27fJ4bZo@ zK2!M!GkC|R&A9f#H;nf!RNMb)ybtOJJ&gC_#Q$l$cRkb7cyHluYP@&2aUPX7x^tx0 z`P=t@9nZQGl!JAjzuV0JX*@Yk_B5XDi~ZwShUw|e-#5%pK*8%ykI`$=XwlM(h|!$h z#t+&Dub8)PZ}bLDR;J~yKG{_?u@ zcWAf%a(nJ?%D;Q-?`agqUdH!3edHhCqkX!L?_PVS>-awJb$sJ{@2{j=f2VirZ)DH? zeb{S%>ro?n8Q)TUT_53YnCTf^%Ci0YR%PV7U0DzKArPn8dfl3)66P>+nyV&-&}4tI=H|- zXdeVB#ml`h9KV3vNHKuEG_{|~*rge~!{$1@l0C`oHJ&~|^U)Egd1*-3^nDlMww7qp z|H_n>BdKk;?|9oWX<6cjrroO87PFuBvaMA7`sTNU#cZj_-&%Xg>{iT1ZdEW-u)R*8 zO?=oJ+gF-h86wN9{84<`e6keJo{7l`CTfHbud=_-Q;O>+6c;_wy8b`KjJIIn`zH{K zg=d~c`0!<^h=*it713`!Sz-3qgu&=DEHV<)Il6 zXslJqSTavvVKw2yUI_2I z%FduBOr~sj+L5I&h&Unf3+W+ppX}ek_qEM*l5Y9GbP#JzTm&Sk)~!Eddi|HfW*$gU zr;eKn5Ew0~(+4FV5D(Sj7syFaK;whfuNiC)(lMnl9@k(^wV1f)A0k^b60MKgzq{SP zt?vC%?%&5BvCn6_&u{;m`@Vbs0alr`v);Y_%)K7Zdp?#R>kAkQbPNYGhKIY2LFqm< z1{EpDm{S>uxklKatet|SUp*rJDDn=jr(-E0r8_3zFt}=#6(mL~xX_baEK!(Mj+ys? zkG0?axXX7Zxz`W4*Y)o8?e4YUN8Yb@uVwsP>n07xZQg&_USGn5$@ORU{lrA~dJN#n z`{gpBDf|mQQ~*q`?>u5=e)!4n9@;0v5gKzI*ya3kDWCYFdv^XofMl#C^U=aJZLFEp zdJvxi{scLuv6gcdQ=I{q^rz3|jK*#+xb%fvgtIG0F6GQceP6G`+_3Rh+%ALeAT37R zC%l(;$T=?RPZy+CE>elRifJ`=I@|-1et-X+L;g6<$NZfIXErhz=r5BOH#M zROBq0$x&Rgo1*5N^kZ^R@xsm$Da4~2EAm%{`%d1cpepmr`Z~4}EVziphJX2;N=k%o z<+vd#!l{yR0f$pd4TaPc$fi9akA0km_hga-E6bhx+PKlzX%tnFu;oroW|JCin_d-) zo|NO=5D!eDd4aoVBf6D}Q!+RoD5xi`YI$LKrPv&eV(;z>(YkF}3G+u1K_zFi*!+fH zQf4U}pOPsq!d11iIliMJud-$WIm;`OB|v1Scg*ZL_WH|E#YuaGTPI1 ztAkjoX}Xp2160sAP3O)uULtZLxwl6q@k(}rOL0AzEl2et-4?vfro9#Led=tkVZR=8 zI5RI?a~`#9$)mlt06#uykCQ=s#)Q~f{F_>~NaSv1%~DEVo{Zj;`$k2qo!WX^F!4(=qT!0zwu<2dnfGSaj;^ADZ55-0 zU^cZMZsmH@)WRT#N`_>Q!qS}3@HTCuy}mQEHdo>aBW6?X@6EYyhA1#x5im}}+0fX8 znq48tD@RIcgvjI^-#0f<1tejT@ear^9az<&CW^Gl_F`E*D=XsHWmW{XIk#QU*I~Yp zvs=`YC+(aR<{z?#KLgk*M#T|GTd8te5o?3V+4+Ms2y9f=%qhy1Vo>qXyQ(rxxGx1f z>X+wKWpquz z1RXMUp#$vXSN07Bb_w;9_Qtl%5ri=UyXIcSSvDYtJTB)pG>uMegt13P24(Yt%vZQ( z7v(hf&=lyc>^rA~R_bVgqThixo%qLeO(07)>0apz*9ct_&V-tsA!L_V3-w}bB^6(#Yc&0vTvc&hh6N=hoOlZPNS)Ln@Nr(tD+p)4 z63)b~IEgYbEjg8eH=;&T-6ylgR9AsF$S|e`pJW-Z#}%pwK@ikrX|dUAdr@e8cnty5 zWZ5z~Q7Nc0wvVnIL3QF)FeKa91njDsP2pH>QB~~y%H|KK+_~BOi7bl7^}^f~egLl> zSxH&@rBobz0~nL^L_TuAaOMl)%q`(qKFL2z0ee|ApMWiw)fd+xdj5l) zI;8ID!5K5DHQ%vD(ZQ`3oZl>UDx|1C_4kfz`8R0GaPG0UqGM>RHmQ8r^+8jsd2`T7 z($v2!S*tqoz%TmKA4PGYd{#&M-BxeVWnlhnA7&M`KawV%ZTzRJJg@&KFS3s+39YK% z898q^Ep_*p1%p}L&G;dz$T$b>IT zn`!1yX(pL_O*41WjM~vMU-Rm+Gb0D${&4fRH|0*R-<1`~B6nNopYiYS8~?rn|703) z@!oCx($e%3&+7MJZZyx5kxw7NUZA}sECBau8|`I%O?%o#`Hr@n$N}X$R^&wXDcxKD zQEoH~B%o(^Yws;-?+MK9-r(E$X8q>e$dNsK`i^}16W^x`yTUK{vfm$IA9;SN?r=OW zjg3q-mRujPU9s)TYb5VSQ}@Z3x6XxC(F3P9ci?W=)~|l2X4r4W39*wr`jvKl^#JtU z($6wN$i0m>m0dwHL0y(9CY=d883~;c*b+GrN5fBXzIiEtH}TtdlIUz&_hs%~knBg3 ze005cIZrh}18D?voo%9YsW~+HHKUnF|Nq;0sv9NI);&-4HGccRJSiQ_e~AZD*^>A? zQsk%c4dBi8o&Wm7SN5dCTabizMzWc&gEtl5G1pjc)xK!uMkI8rfNRD+uWq6(BDv&z zT0Ph1ZGCj_>oON)vWJR@o=2XyIqf@m$s6bve)|Uc@QSqgc!`Y#?Y~G3Q0UVK&xXP3 z{pteG;*}|Qp5_f7Jh>@&`nmATDatmN`v5vW9iVCH0F4rW7AEDdg~#*AnF$u20i>b0 zRW)6^T9Gl#!o{Yc4s!%=;=4gIz9vq@$SQr~n%4wf&Z3Hg0Pb0`HVe!Pyy)TTIezrmz6!&F_-@D6Rj82PpqJhe-#aKA`%+3?Hg7qja8;yVsrp0e_wFBc z#JpF<4@04OrU~zSGu+&924VZwg{4ayJAblGh}`OL-uh%e3pw65f1C#w_62tuiljUP z6p|%G#_?CtIrY2A9=Q`%S-+bDdfty7JH67Gv5dVr2Q{)GC`0Y6jdp{QTqvT@Oq^ zzMp5wc&6NWa+@^Xz)Q*gDt5d5Ig8Khr$D_2P+w*R;UR8^{A}fD@kn+>!}{n{wP5(U zGm$ZDb1q zSlm?wX5!sK1GomvS6U%uI?4v-$J$TDvUb*59dFa894Z~0 zGDWUG=6WI&_BxpvP*zF!t`%8*@&2S$(~*=~9N6rM(P)%;6E)e@=LLRyc6XlL!dopt zH8#5w6U)^tys>x8U|0)HkV9$njePm1BYB-kEQYur8=^lCVcTjp6nZigdYBTsM7GI7 zIgG3c^nvvJQU41|2|)R;OHf=Dzu&K_+2JKwRK-3QcbH_Gi4VN0LpSPj0^4vkmIEp8rg_bux= z3`F~O^?_dDyUnJ8S3f5`iS+N^4ZgSE?+%~5E!7^*=mEab-xj_bP|v>!z7CQ|6@MOl zGvL(e_^bLF_zvpON(}Av=M*h}++$+6YOh&2Bhd0)D{?K(k-sYSrMki!T6wTHr z@y5{8eB?5QZ&jaU46uIFd@Lb>NKh~O$aB)0;Q3UA(P_AaYw~FN?OgR>Ze*&9^$7}Y zw~8wAZEskghD7Uv_2Vqo#XbSwPb~)DNrx!1cNY;?Pd@(*d-&^|XaXj%&JyMZ39+`=*9OdW8w67gcpzC;wyN>5CsN}x!h`yTSpZ9d?yd{p% zq_d1fH69-y&58V0At;4YurR*LQW7h$J8l?MiGbEA zInl_UnrHC@PMsz|xw?~%$6Y|2|7%Bcf_hyB*lfNd?a&@4U_d82 zwB_c*FTJ7RW<+t!z{{i~l}jJGtbUbj{}r1ZZQFm$X8s*%v-2jUwZDAV|ImJX?C15n zjw6{QKIrB13aEaSbqlJ(>7AQ^ODE}QhNbBOUI=CSzeFb$OC}daSL%x&Q7b6(<6)u; zTm7Hwx3;EV|FFyTV~Oqf2Dd7J?kBvBYgo=txB~rA@ z0+M196V+dAn%?Y2?{3b4=s`ApM3;Y#$pCQJ>jfc{&*p;&{x7Hrx(QUe3`z%_3)oXW0Kk&|Dgs^<)FQ%U%EBLi>^StZ_?~}Bd z<634OED_3Iay7HCu`@c7=PijN5OdIj#7VE?2@^a|kSo_yeb*rWd1yxCsTuc62=$m( ziD9w{&`8Q$np4FsW+fb(2cpfPv&oTn>Hap^Kf{`g?Gzu~QuBp~LB^!f zRsUk~{6)P|%5Cr@m1mx;=&$|_t+(~rhr{gVD%~2CCeJ)>Du26j)6s~?Zza!ez&-U% z@~i{inFiks>rs$;V7pl*D#ZRb`0kY)+iz13>@@-hE_@)nm=O2@n|`fnROD1#G-%{+ z^*3Sg$!|d&heYnBK-bUy3`S(ey>NJQG8{gbmsY2R!<|NPWt2B`M)#LlX9kPeFTWxC zJzBC9vVmpy)~=14b}Y+^?%eR!2GS283rS6Jj$7~iT%^2U04HthOxiDgP1=yQeEJU` z3|dHw@@Ts=^)-FWxPY5fvf~bT<{p7NjGl%8!p1`M7TKpL^m*9z9C4{PiNZ@33O5sn z@}|%gZ+q_@WZ(1NIEFWP`GAAzReCeAHaC+cCvhIneB9i_ucc?wiyC*7J9kQ29b|px z3zlVDviA6=%9o^lJvGgt5QhIgvqwp0R#N>Lg;N0@$t8yE7fz7lyJZCtm1ZN(B<#&{&bC03baf`h?!fkXRZIN*Y()> zmBLz+1itnzy>TwUk9fZ;@Ty-5%pP<*SMjS*;CwK*%eu6%-jBFUtN+8Efv$D%)}tKz zrbzIerq7J{yVYmvk*LgH;_0Q`-Y5RvC(0XPk)(37k|H~sd+C(Lm-KZiA$s*nth@gns zwr8h7_K%G26O9TgUEf=Df2!R_`bo*oxn>sS_sEzoOl(J$vh_&4&I;jn zO7G%-Rwqf0c^e50@Fk7wqX*8Lo88A*d||)H3H9&yaqc8GyS~1)kAf=|UubjNuV_=@ zmAl%bi?`->eUaDd-|s6&Vq(#0MyL{PfI#Vn=IEWCVj_RNADAhzit+ z9`OL?zyZjUw=Dt{8~OTywFiCq2Id0WUx|y4XBTSshq;a3f7$r#x$4rTlID=)=jm_OVz^qo zNWs2=zBVqy_)z;-)-rpd|M;}M7I;h7BnAPb;#00|eWyO$vg@sBpJvm?XV2-dKHH&S zI}loSb>dF4-}U>R_?^DrYTq9$glP_Zd{1XJCrs5!AIb0h`k=YpdwWfdYK15BrYj2FiZbw{J;Hec_$;$S2qM_B--i9$AD#gY44Bt%)VcbIG6A4VLH0J zpUgpa<7}9u5%FYl-bI>xhoH=@5~v|mFATQ?1`OSC5cx(*c`i2-!MR+=$c@}+&RmWy zQ?qMA>?`khbg8e*CN1{E)EwKI@XbeVuw4Dz^Yg`=c(%>=B;DIX1u2D%w9LvME z-o4`2f-9W|y&il=@;cf6Yv7S4yUWjG-UOE9deQHH&A|Qbow6i(-4i{z^LGMJmXYy& zUVa#Vvvo3u29w1X+NXfqVG_Y75(3FzO)h^9x98*)B#zZtW<2s8FO1~{aZc-ZbM`4n zqk_eyntG4hHy1tGGem+DYjy@z~dJ3X8L3A~$D|UtCTHx$K13 zPWI!4w!}jsNR#~3*B+l}dmhlV7ayIM_=*30!7s5YYmq8beF23>YmJIeryNCr6Dl^E zJ8s|8xnoSf%*asTtZnc%c01mqHr&@pM#)4d^z?KNJ;9;14v& zQmY_vUJNM3XMeFDGu1a1!nuF9Dc zhg!xn^<$uxNx79ZpF;(oq$mmsFf-jx6SDcpN1d*HqU*WlQw8!A7p$Y{63Ftc7|i>fzg7fBU5O=htuM*ly7mG)M`(TMEZW`do3JIGDgxsz1NdoK1;_h{RGElxVc` z=GZQulNz~lMo0!Xhal#`hr9*vNptRb@<#FfS%;2)m`v>zPwDT0crp8ExGmC`Qc8+f z-M)zl;H~#0{vNmAA1~h@ZNEQ4zDGZEmP~@BQGLmBje)|u`W93tuES-R#)mKFMjAP! z;sa)qZT}2uzwJqd??i3?WSWMBu|Zt>iRZRSU+ii1v8aC1aGG2ej3qig?6E)p{Jc$! z6S5d0-A=UKI@;}l5PUZDK3DZmMXlgdmIw09o02#^Xum!r0I4jBT!M)nh`e77E4?sr zVLC*~{EyF*3;V^z3eYJEgr0ARA||7`FmcJOJ)Lb85}DWOPTt>zkJOv5BpvwZ-<0xL_zbr)3;rcT%r^}jAHBU#QU{pW4?Jf^vVh=VrT-+ow|0F#B>njV z_WAKH?8AV4pc36UG2oN>LULW{a&2AM)B2KpV|SGB_Ds@%M6M(*`iF;4Z(YiGef^K6|8V@gg2>o#%}mh?P#RQO zIcYo8+>GKON&`E5ua}48Sn_8=?dPHa_+>z*6m@s~^KLV)?vmCF=NhEoodk@`hr-)d z>%#jevO9fU3%ovWeU2GozdO&Jhl`nqAuQdofva-ooGHZQt)6pXTGZ2D%EOT&$Bt$I z$T4J?%Ch)LCMCp#h%#5fO?hA1Na-V`OW^=vC#3c*w-p{AdEbgOVHky=9oNXAcgebG zlloQ4$63Vd)h75_eoZ=qyJE~~wz;6JmQwrsWOt-f7-_)r0P`y>+ol`vzO_k;&#s>% z^D9Wj(wcot1$uE*7+YhOyrWx22G)L4=^C4aU}*owOJ7TqwjnA!_q}Gm&@gv_qpG za&ne9e-hJB_)>j%aJsQ(YcFVh(!E{=n`8>Yr0ZZ0;s&5w^HVy+;tz5XHIn`+il(p` zxiUVZK=Pr!Pd?PydE?@ttz;jJW_m{Fv5i0l`a(IRbiEHp!cWA$Su3$iam1xGg&?{TGdEXe?qvJ>$MXB` zclG||^7|T8HbUMN)G~`cB{?bh!=hJt1bB>3n~oeJq7AP6LS&R6&9!<)M`S9o&*FpL zB^;HOXR%PsGnY?!`1O4{0M&6}a2}r9{hsRMcHJ0?y<7ijX6P`sf;?Z}oR#=-I)$pd zOZsPIW{P#keuJD%%qDO#3nxg)Kl8xvFu&O5oP+N%Ungz#3c15}V+pPlFj0h9*bTp` zvhM|1?BxE8!I`-*6R4+>UAH-MqU?f~1Tb(OaOs$%fOD8`jfjv6ZgLm$0ZyI*GW7Q9 zXY9z%j8E(g1-`WB_0iE}+2>qUl*{pYdn;obB$kavJ`~cppbwj_wdcO{Or%E30KoBA z2o2wlNeQcHlKYf3sVeFxqCm3$Og{YzEV7TEs1~s^5~qi2Nrt7w1G5|EN!0G5mE^D2 zzMPP&x%SMF$5p#ljXR zFn2I{`kubgYCa%F%-j|yvsP^#B{{Fn_{cSF{_LqE7@xAH#l;~@Ys7M$fyVWL^LpX=%f17th`w5#IN${#fAj%QAFNLN zi2hUjMb~GNd!a7XxzTmuVduI$%zSs5q{L($W*xXhD?8t4f8A3|0N+1VQ3Y?&@M&W z(R9_h1?|+&$Cse%5$K1LfN-`Pug~ZjKV7&@s z3%S>S&SzYOu4pgMFx9W%TzeZNHqa@s#Rp~H-i1$I`H<%SEf)GK zP2aow-o(KfCTySo+PwM%Q=X!&G-F*R9>Y@Haau1!t`p6XI=}Igc82>#%1|F8 zCFnF2*lwd+D0_pFvR_qZr@2t6$Z7a9ZHQ753S7exwD)k8gnL{(*DIaEm)lA7=F3k6 z{>U#AGkDXbpAK`0Di@l!H-(>gONma;zDg&eAtY}uiS|?ex&uBevvVmo6V!wdBC+s` z9y~_$;6tqy)CC9E-00COxbf^HFUFTR{$(G1i4B#IYG4YVoscD*Xe|Q+Lt{XNx|_uP zCUe^)V5q#Z{?R*G>2#t6oKo~9{7L1-YlPyU`R?|~I9$=G_m$4~A!_aMYgrcOv98@~ zt*+L^f2jJeNBcK_ENMEvI8;N?gWSNK6I9Qa({MMJy6mrG_<(eR@Wa=|*CRQU%gpoq zWUmEt(eXol;i}|3%(!1~Oq29HyjmPGH4%|y#=a$Kcp$LDjOHinCyPtrs1vv(Y5F*! z_fspfqZ1{jD*%p$_+f|IPv|#2 zFuvcM)9Mxqbk3qF*=4J)Kb}SZ%ca!ovt_o4M+jY*LGW=s;L^RWn8)=LR-^ix665)0 zzV~<5o6NV;L*Ktzdg!el-}^A_udBz`%5$No-s~}=M*8L0kJK&6IWi$`JB!8-VQvqWGBX^CmtKV`$NXNLm`xO9 zBh+~$6l)dHA^Ho2I<<#&G~>d7L!e>$LhV%hGVeC9fCAnvAu!|H~9GB9EUb{lq>A>A(INz8T*&xko0%VnjVwCQvplJGzgn z?{v|hHpI}Ma*!^belFwp^a-&)l&#kM2kHuIC8sK}4XdPPTpEp)L1U}MoNbx{ZylFi z7S47WU&m^77MJS|2H7oE?%c6Lb~CUsvAk@B)A$C@3D$4eHSY_S;&i#f*l`wxhlHF( z=VDLEd3l^&%t7=`*YW>Nh4x6c;P=@AYPSDo4+lX?upe7-R!+E0&`ArMcZJ)^XX$S# z-$askePUj7qVH$nhbLefP7HDqB+f%;{yXyeT~(aaMQnjM{TNtG3?7s39n(5ZL_w6C64B7j6ME@1-a@05*oPb_&q@il(}JDY+%*PB#Qtc)@xke8Wxr z!q>vcr7P`c$swSU`JrSo@bp)c6=Lvg)8X= z1dUwD;3Bu^z#2z0`os2d5@}g&w3ntVDr)A0PCmpJJo*V>I3#rDgZ->3o)ForxU##?xKj_ycdWzimc5 zh@H4Z-YngkctLci6f;NuEB~wiIFEF(m6frTvDH69Mc{Zj^VvUGUG-82wA=fv*VwDU z?@x%mVm*QJq5Z=(>%+~GQupyx*#-+o-Y7K!3s|_tvV==;)#aLvBAet1^Jdm?5n|5O z{Zm#!ndt@p#N#D|v*025Ath5L7mX}kkH04ryG-)OI1?)&8^lr|h3lmppwn;}s~P`K zkUg0uj7lr&Io*_-QF6foDR)I(N#`n<2CF_wj!>I@=S}f4u{)A|F3%J#qF&NFruNfW}LfKMPbHq+-ROPMDCNf4`CjxnbRcAQCw zahVerJ&+s4!9bf6zg0S+nZnANWkK0tIFDH2hRbG6#N^)yS_vzlW)9@J!`D-U6K|@S{!ng2BY2<21HLx75od+_{ zH_2VO@fU8$Fal`034{^v&ZSf!lV;BPIZ8uvOC9`T>n)`8gR598g7Pl7ipY!%Rgql^ zk4%v~x5I>ULLjZ<;v;ccfu|5oO1=)F6N=5sGx(+M$-7Kd4A{;fr_-@&IOG!zx^Zs}48 zGsj#GHxp))Gok4WS@RPsoABKtG?edb+!u9gy|ds={)XcXMN4U^f(>^JvxJ`j5h}V) z9*8-_%|f}!-!l0t4`)g3$0A`@p{m#)l@?ujAWN}OR`x{MpDnJb>x4B)?3wS7_rMU2 zPc0A;KaudhNYtq?`pTxU#o?xVi&oOZgr+Mv)@;$W)XohRUBa)i_<=XiZzz%~IkpAW zSHgu75n)f)bvQ=LNdZA?DxXinqqFFVqE_DJ6RGSX%ViaR%jZ8)q;gaa0A;B;iyDer z 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 z­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

%2&~J3&G*aW_k@h98 zt9(q6B!d|xp@ZH5>qFc2g;w?^m&=YTx3-zEjjYcd<`&yV3)~@0QfGS|v4mkMVMzGBvve$M=Hl2JZnf>|7ejAA$DG z#TkwX+Thi(emA^2v@^B2psTlZ;diymF3D6;TQ%tc zuYGB9Zcf0vx9RDad}AD>v+#L>K7V~z_FC%ou0mmUJ(piu6(vG`%uc%G*G>+EIVYZ< z8HnTcjpS2dIVV?KPBMB&?}W$NkCIXCIWg3hp9g6QwP06m$axc5R$t#DW`Dh{6KX-< zdb-tUb|hpzd@>(b0*p>Wm;3cU=7kG8bidT+=1*X4j(QE?=KG5H(jFb zAA_e4JI4P(&TSIPa2DuCY8mX4L+(}RBjBwqxNxp-&NY5QIOMXjd%J``46gCQQH?Mc(~QzlqB4d>q37yU)HzAFPG#lpw||EMYpU1+jiPiHB<_B3^8y`Dv{r&a`?rf} zOdGVV>>cX5_5!^_na@^(5RV7~t0Gr7rok6EE-c3|G_SKrHe&&Sc`1%&5%$0PpAHM^ zZG?JZH}w-Fv1URM301fIh&p-bHs&>FcX4F)838WEPAkGUKz3M-x+6uAQy*l!#n=(t z&u%Tc8W;N9BchwMvhsI7F0Xudu&-7g(~~IBx38-^39D+A1l2uJbMoq%EnT~yd6BCUokOtUJ6fsbX- zEIHGya#om#y#_}BiIVui=?*d>F}*1(6^kfaaay!unpJ)l6`NBsQ-Xc`RaXQmAf*W@ z^jQ8T0{vqiGT8hawh-~2|FM05%~(3oGGA>w>7cHtCyX>ma&}14Abmn1eI1zn9>4U2 zxOLhjUb;ZCFzr?Yu=WC>?OSw1>`;spaIEqts7-q;kVAD{NlI!Jd}2Qk55Oa=(WIyg zz;O-$*9!oWW@WDq2%8GJROn}<^!suwk5gLt|%{3Im*)YHp9lLv z-Dw%Ggt=;R9S}9lz^O3S?CZ4wBJ?-Ct9a_vjDHx?Ccfo*kGF7Yo-bg%vXR+JwXa01 zJL8VZ$FEo{BIU{@Uz8pZvhi&!4v{%|I(F|_G>gRU`DHIp*v=|1At=RY-kz@J_2N9b zGO5yUG%uWaSTm#Mx%}_}p^XfqdcXJ^;*H&ojQsFHR-dZ(-wnVVnyI7H*(quo{%?Ur zYtjum0A{v?+Z7S~BcWqyMm?hFC`0UkT3+N-(5!ofT-f%|GfZ;MZo&uCg>{MU&zG2o zyD~GRR+g|D|41B!bi|ha1Ony86C9UPUld7MQQP1-aXU=pbjezf9(D(LijxL1JdQq;&yeN=WNps1H5$Mubd5 zDQoT(_4|}m&<5uM0*}%Ghg&+|?yT{Sv98tAsx;j0`+W+)7Nd&tEmY zrxZ<7hyKS<9lLf7YLLL|J*4T~zVI7yndYU(WTY(1hp=^`8w^AyrTClkh9OLQQ_}vc z;qzE&2r6~gRGsL>Rl){My$5gIU6=85hZ<@uMB7f93yw=;Fwfi!UV|G$!4PP|L z=^<(DS3VNk)|o;7GD!r9`g6R8`6c;Kem)M*m|d(VQr+`cXAXs4k^g~V;WZ^S`U(ry zxbGx|w&tDm(jWvHj{l?u$q zxiA}We~bmzna#dJ2aKuHKat-azUfiTOi?t`U1-Ti0%DW#2;9Q#hmZRgv45 zrszPRfb~{4^f`C&L9fq719N4!Y7UWtmo0Z?{ZbFL~+^-hILUlN9gBxO-UqCSvsU%=9l6 zy3v$@;iTmNl*8ghn@?AIE4`pdUGNtd`v|~}X$E4kKfz*(W91idt4CQmAgEixKeCLB zvGJvmyDsXYeo^d{6rUu4vq+ZdK9&E9kQR9(YSkU%kc8eQ-J1R27YW^56yMDSB29ER zae$0xtt(o`C#jt;>%!XdV<(BB-QkQ8s_7_UqcQLqo4r|+xgwnvm5<}z&H_(!LX7yUL?^czt$qThz1--e>!@I?{Z z`S;UAzj537Dz!K{PQT$EZBWM{_{1~p>bEEFcl6tx=r_?|8TKM3%0X&6aQ@d;$>cvK zBK1CytWg-XNSE{qj=z5G{(|@0b}m0FlVlYQ0eM-#JiG?pv6BG{qm#q7 zJ)`SS5jyr)G;cn%S(yGBX&deLe;7cV75y|rkbWQMuLI`8{OquuotkwU)HIrK4EhZ5 z3ZH^(lr~P_ufr;8@)&3Kp$9vO4>C>X#Z|P*f8}84VS^Tx&R3^8Wsi?<;4Y`gH@tLv zw#xf4F6s9eGd}epUtH(L58~gM}}HXzq^M7tP5*9n+sh&)td{ztkzs< zNG3y*tzBfsZfJIHl4)SaU2Pj!wJq8}*loa`9pCvaEFgqB|J1H-Wvp&-wC)@xLoRfU z-@5A0X##cpFi7+v#E5$SLbG2NT9b)oZQsnspWgqM-RJkOGC9oE32c7iq&r%Eq5L|$6wRb*!(t{-wE)6H<@DHu)Svn`x)AQ*XjH|W!lj5`>^@l z5&mAJrSFBm@p157+yQ*?^mn;#v>pBeOFXCHdIvM4b#Cfu_FpBHQJ5spX=Mj9W_860 zzivho=Ocx_ba0H>lOcXzG)`3?9iCBkfv2<=u2s1e%kdWk!Zuf^iYvwSn0!pwyt;KL zwJ4~!n&Y--P5W`z4ZMDWG@qQaK5t}J@K~u5UMqKQx&9E@J=2c&KsY(}HRjJ1cxC@c z&2$?o8+l)_8;v-2MqGV)85^G*;M_A3d#@IfG#lAu81H;sV`N+r9QqmzQ`E#a>Hfbu z-Wf>Q$T{D;|A*L^`M&*sNh(=&OsDsjLz`;*nlX0v%h!$%VCJ`i{FE1(ErOg_&c88KC%9Xey{%Zo+cX<7bk4d z!4dktJG_WjesuuSPst=!t$-A<$w7i1lT8>D%35|X`|91$($j&6pc_b2?#oSJwmAZH z3riU84|`M18{THS)zGJ(yH{s#o- zI`{hEm7JoUS)YF*5`*~P0M26maz~9veLD(cBfM|&l%nh{Cb_cVGgaHShX+Qw(QhrE zEBBuwxHARtmUdc230pTHUh#-s|V-_-f z&Ew!=Zl0LitAH;Rkg@@38sMERp+jRU^M~s5r%fCI&-3JsYz$6S@AT1w?!}mAMzf-M5x%0O$ z+*QqTS||#)Ob%oxn3MB_3QTD=y$sE@V9aIBv758f}Kn zJ!c>&XH)*jEu|;ea&wxDmv8weu}Hhqn?F(oujK9>re+u8eyf;!Eh7B}>U7mH+Ei0n zzvXNa-(q|?$p|qs>xDU6$=~ow(GVQLDcvr8aoSkbi=LB6M>%ztvmRe=irUW7M!&>gFzS3XK6}$Q zKvsp`v+POyjp-Y*0MqsIukkLaR|X3#b!;}4zHFaOF>#2?r3^ZJB4@X{%mudT7b+=7 z;$bxY3IB5#P5rws6je18gSEhuJJkC5i-G`&m}qU~l&kE0TcPK9r|)+NEO9?Hb&u*- zj`6}Wl&rBHU70)dUSDWSW9}596at*zDPLduNq%Iew|FWpiT!FhI~4j}Wn3kDFz&_v zKG=w|;vE@Gq9$^@Hw4b+qBdFA^{H*;~4u$U(@o?E##%dT?xU7f;q3ELlq zRizMtTqD5Yb6ma+>MNh1A>||wcgu+5a4QFc-~Cz^yl4n@Dsd3yn}WR{p`LzkJ?Jd< z(gJcffl`TIiuk=bn?w|fA*Jc|I1yG%(g1-YcW~+FWw`^c5AO0uF7pbE+U}bArac8L zmdtmd&e^2>M=a0neEHzoJ1+kU1^Kz@MRc_!GVkCT)tuY8+gOL&Fpr;M8nSy|6#1ce z{CU1sNVgFWfx7lse&QSN$+O$NdcT*DfE?mcAF&q&GY@PU%6uY3B^Ig_%UZt8u@8vF zUZ`Vob^PeRzL7VjAHv(n+r#^XuM&B@D-wd2pp7G(79TJwCKk8QB zJmhbq8qRbhBYIY>4A?fyND)utjqEow_7kc~*>4~}b$?c-&9E$Z<5km}{FV0`&*A-M-m5*B!JYHV1~bL7 z&}4$s)vH9d6hXL1zOEuGUS;TQWyN23*H%_^)$>+MwUj|ekrObA%Owa#^(d-Ri%58c zX>i!&tu9eE0mYhAZ1vI?noqPUI{@qa*WWwc%b8fh7a|b6@HX(-MAEP4c(v zc5wgq3jRaBD?HNpVJBwxvKFl-NbSx7xs&rxfFa329?!2NHVdT+Ie7l!nt>!{y1(-z5U=uw1KOnahGzskU}8^rFFxoE+a5A-h={8>aj^-_%(W^zGf zFAa?)yJA14#ddA&l(yCnqOC79wc=L@>w8&yRdVIZlB*mP*Qv|*vVrfd&D&~sP5D6OZx{x$*Bz1|GHe_rkDtMP6*?^(f=sGo&j1knRg0W6VX=sC$WG6QRKjo-L&>(WM*Jv!4p3 z7iDJTtY3b*1O6Iav`!}fEGD0;7-#S&N`EoTEp7mFZ|#(6v?|1UWy%C|BEh%!h~nT+ z$UwMoLDN4)Ukc`lC=kp~m-@fd^-D=&liW=p`wJEQuOCAR`$DLW_~Hv?V@=ABmRY>s zl+U9)#%!aypYl!b#QXuWys{G*>AFD>{|3ARjAS8A8h&eEE=kJ0Y|51h!RKJF$Jul7 za%xxtrHh;j{y+wdoT?X<``|bkb8rf3BSI=3bsUCdxIyG+Pn4~-qD2kAUNl-=(;!DK zYIAIlI?QVsR+nvBKl+8vY(0^UDo0aJDPGLIs$$;(i9mrwM5;OK#2eAN!(4GDE)@9O zQLtBG{{qlk&f^X((SmRIQCo#ob29we0@JcO{H2Q(AP%vNEOr+B&C`Jx_0*$OIlwHy%L zA6N_(%760;N7V;!hi8Jv(cZV1vIg&}w;5Eigy;|ofqi%Jx1zdtit2t*jQ;9ih8{{( z5tLp8%1|bFa~#`O$M^Kd%hI$#<4;ln+-~ZopvFLXZYHbeZxDt}e^ka?KatYjR;In`RJ2VUNA)1GKUfEez*>0^8Smi$;Aq<1=WcAm>d(OTeeeNsC!^ z9sp^Is#VMIur&3cF_9Ru&Xo4fL(ef2?6f*Ffp|0DW# z(f*=e^*w zvz|5hd=N!~ ziA{wX4(enYu7@%-%hjoyX%sYwJp2HwQZO_36bPKGF1s8W-y>2}C|B~R2<92eL0XWd zh?#$x8>t|*tF??Zr2e$7uvfiBY5Dg4zcs0^bp+h4Sgf%7Pn^eQ*pJ5_Ny+083JGK$ zJ}XM*r{-*O6>0FaFu&KYuQpKzewu0uSZccqe*Efjs+@h@q%n zOVLPE5BH`x3QyLxD7@>d`>=Rc>h>+&JfXTIsInVsujd=us$nE$R3i-*^iklENc6_C zgOh`&r4$YCYdJvQsko63}0)Y>XTEJWTyyeOsGKAKnYp zssPf*r8lAPoa#~gmx`*fo~yQsR<^sZ7{%LZ0jVE4$bF|oMLhnOzMk+}&Pl}GCnxjG zopJ?8Ege|ndNDum=Q7+GxJ^XY%@Y*Yj@p0!00CoBwehps%P!}f7m zI$Q=pzKvFi@*?!&iIpSQ&iG{HO6yUlb{SOVu_v>lr<`4jK9;|m5LWW{tA4s&Ipp<@ z{L^4>eZ9MxpQ>Y>8JmXk?m+)*8lE7E9f)hxN%061eCY4z@*PfpwptIX?fm*wAM^dW z&c1(zp(j=Muhl)o&zH^*Do8&bq@QAtj`uwQ@8Eo0pbgHS@9W}x5sb&IVheD9UF-e8 zs3X?n)lHwP9_MPf`MpK-hZ>IrXB$_J6wXuC zR>4XhtF5P2p1ii{S^P)Rhy7%f56yG^#|PYXp#I*B?c>0K*Vd}KdFM;(`o#7_2m1vtg!Y5yIg+IbeopACd$g~$y`p_Z`On-+9ouis=KjluHu)Gr z2d&_3vrZIH2AiP@(SK=O8wCY_F>stKaGd49F|{omf9mayIS_+mzVvUsQV+U}zPDaE zq5*K9HT{HJ1cczM!2-hR@z}V*0U@pYPujSGMx zChzS(e`)0Nxq+xWZm_%J+cJD>S7FnOyq-D0$nEi%DDwOQi#Gl`_%iv6&p{rZ@JH$B z148Pj_I-rQ;6}G@Gj?!;orek_-LL�t@w^!n1+HaNQ{3hgfu(=lj~XW{)aAJukp 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⪼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
)r%JmmMgq!xNxx260^E)@B=-s7SCFb5V zq=A|7cNAV>P1jyZfqoQV0a*bGx<67tR3EK6W{Wm={bicZKC^$LY%p9zPg&xwU~Az` zo>E7F#71g28$OHt?Ps4hxL*9W?-9^}0slhs_x9Ef{zP=)j(e=n6cwI(*BP4>3n+Ir zV944ryndVs|$6+0#b4)jPn)mnKhFS;I#X|8>=}02sJ2Pq)_~! zAj7Zh-7xzi1YJ$)&x0&&&lm-{TG{_rt+d$XdR~*T=gDdGSbesAINeZV0A3#Cq&FK} zH3Jiu$K+k*E1Lr355BW+PJk-b?qiE>Ud71dyVC)@afRM549mAXLo)l_USHk;PVkY{ zWd3gOqqd%s%UJ1Yc_#k0?SE{2zx@;Va8K4;ru0u?=0_sZ(&TFKu34L7dOj1hm0a_|89vFq`8> z;)(=q)8)$q&K`r-@gxziQKpM>{YfP*N0-{81&48At^yksJEUgvKc$4=JVA?PJGE)n z>nJsrc5yl6NA!WW_*dx3SEGY2;EFiApEP|a+xU_VhJx;VQ@2bgnW|19&(iKVITJrK z72N zsWcwO$5~$BC&Lc9ThnQ1`&{nt@J`8R%w|=m^6AFqg9%f&!F?~Q@%C#Zizq;OeVfHw zg*;!g-fQqs-swEI1iDg%wHc>~+><&-CLG))7moXgWNuGBR@TqS$N!Bfkj^z`4Z9f$y zxJ`O43=s$lQIzZMgi}>`zEP2Q7sYTZ&POaUqh}?T-G=7()2dTA0kO9gy5)$ghnN*s z5FwaLxZZGCv@0`306_M{o+AV{c>Nj{v)nXMJPPoPtsmXW;eM%dS6cwEhaJGs`(e1I zZLicq1?lFX;|c2?L$yW(y54a0^bK0t_&GQw&m_}SdQgr^!E{vR7~@$K!~tLt9Z78V zDCxlJXf+&vWd~}I(FB~TUtC;u=mjO0a|$xv7Drq0N#*H^^|ymnw!>cr82m^yAFN^a zcW;i|yaP?$K$TAZ({Nks!=^Dc3GRbmWWev<2wtR&a?9bR_>7j7EQ zBs1qMm0;Taj0bdBd-~MzX%$MFYj07z3d0!h+J3v61(%RTffqyvo%-U-Pnx@1g^7dLJOv_Os)k^tjD2fwi`+sc*#n; zj#qtd6f7Ts$zoAUpM5WnHAv-Jzq8Rmpv~fG;{NW+p9l%P$}+WftK9Kyt-;#8M>S2J z?&nJ{TB#yBZX_QobrYk$JkFQU{8ObJ2fiR4PVNbRdvB%f9ClhwOEwz+D23tb$25h- zoSJ-*lm%1j|8ApW#hg$Qdh$*i9RWqr5FL7_jj8I850pv6M1jWbph-~+Fg?|nq4_-| zkIGHyAA-sIu0p~-|l-EKBMnf^RC>5`{niW!?O0-``AzEsSg zp(~(}Qb#KlT@{JY4XR5;nDoT9SnFJKAg5?_!LLv9*dwUgA=6J>3!f-m0hO(af2lgA z`3Ny7YTGZ@9fMerTCB-iXmY`BCOWv`)aDq8SGARDSOC!z61w%jo9cZ=be!sjJ~W@k zP9p5^D!J4HK+tId--9rl0zzv1i0n(<>xjAv;Rmego{cb-gV;$-dW&nJK_&rhE1}^Y zK#^|4igv0SJ?e*@6xnhXx=#1Bg82=jSe3P8C&~{=v z)UchLgc3hVQn`;)C;c`vR*Fsl+LRGsz0J(j06IyKjDnBit5YRwpReKu3sGiPBsbnP zDBe>LExen1sfm7)RwN_B{L@G>{gNHX8QMZ5st&=*>xQv z5RRwoeza)AUsq=M5Q915WLsv~w~h|VNr!KpKzZNIeahD9dys-zgxDhSq$F4Ny&Zwr zyA{#nXQ4Cx%-bM zC|>2|KfKnF|KNZ(xW*sY^LcjfA!uC_|H!?95sCB~%be#k@1@L7KP+2uZtc*}leIle zyK);tODo%=P2Fx=kP`ju%BjkU$>0Cbvw8~#|%Ih9Ms5K$96 zqr2eC648P?s)U5-7DUwFxkl5@Q~OhC`PxpSrC{Z*y5G7z#kxHkqRALc&vu?qK+k5d zX+cj<(kU9zb&LoV+;L(N9;mB532(~oTdI5H)=otV-Y?M?=0SIYs+@SK+sx|Vu^8kLJDp{pNZ3N+Ia}$ik*U(%q4JF>*zR>JLO?!R$3-qG5WieM- z@~;GFlYp;>)?{Td{RH}kT0W=Y;q?vYE2r0A#J2??wJIV?NYTfX{=?V)Xh&sApf5@J zK%_v-o|2|Se`KmqlH-e>qC}tYC9U{tct=xd%TmB&?;78kBArx6ce3=|zMj~gsXA(j z=Ww;HS+;MK=vuhpcyHpP|6Hiho2^(?YZ43Y5iIiD&BIk zz;E$vp3&FnhfFmH-z(fjdb$W1)?tKJUB_}dpa7d zz3w`-l~=;KywLppL`J!_%$tHZll(7}&>$2`iC2-jS7u})?;~m?_~?s9VzTob!wJ2Yq0}yZ5qP~0PpV;KT-E`{0#FhkSC;)?p)Wck-BR9c*b-= zSBRnb8`0PKwzb+60oM*wB!c+d=K+aj{+J>iuK*fB5NNUKDSzqC)G*uari#mN7P*Fd zwVFc>|DcSm{Q3$0gY;@z;**06^7}P?@A*N7EWO$fjpBK|T8a|7=YL~#Vg^ePgD4}c zQosWvA!|&l8zXK8-$Kt#>u#G}=((BQ-RN@dEZq`K5JHn>*DgT z;!VEnmfqLhUs_{{qKp3fLC6>FAM5>^uhcQjIlg$Bp7?zGqOJ0DR{fPZ+MRKaP3v4k zmhV^F%XD3?6MFJz-LR6bsDG~qS6k%94&?kp?bP}f5Pc|45AWjlVLb z`ODCh=HymbMAf^!teLBKC$Bs;QFS6HKDaRciMs(zW=p+5ZZq(J z`Bmjt=g*nV#f)RJp<216x_fTz{r|b<2=^8m>}It<%RYg&9f!^dX|HtBhYdiQ@@re9-)-oI3JlVRR3f;J$_p`Ei&ap^t6^f_Y39vn{0Y z<-2#=*bX*)>5essf$q(%G`X>UO+zQ8&m(l6PhdShdBl)3T~&RVGq=`(vUCTIr2|~7 zW5*xGye3b9AY|?KtUoJn=kI-72(3CFFZl-pRz-=Mn4#a*2*@>r=p6m7orYCp%XC!g z4eoa^s=CSNjjH&ClQe1%zHD1zivRHE{lC4vARP0q+dE^}f8Aa-UjOkhG?ORl|;y1@u`Q7(+7_4a-Co+VQM&o<>KEkUz=#&&~*a zvF~%@oxcnIz`Q8F{Q~w{3({kZDRc{oX8TzRQW(qEHcWT+uzfj0yJhJtYIOtQJX7mE zs1JD(3LS4TzqiJfwfhfPlsUx>x$ZU>-gw%DJJUzQhd^HRhq>)?2Us;O7);cl_+KwW zdXEmh#gHD~h6%(jfZ+1H-1@b-6JTjAwM=4hR(cTXMJCg}~Co+YJyF_Ozcu z8|2h~P!zsBoJ-i^7b@$}XI1ZqUhCyt1UC1{6v3c&#*|QDSH;6=uydTaQ^O_TMo5P^ zh4htlTLV>7q^TC?W9~u4BmZ(j+UiQUP%nf?cOKh;*#J;PxDuE>VgV=wQ<73#5{H5q zr)5-0pvo^}d)d|M%HgHkCoSN|6WX09gT^s!|uC&R*DbUTlJ)+nG}AG*Ftz+v}o@}Xwd>U=r`Tj zKos^&Om@wydmuQ)+9LIXOE9XTnUBG$uXDAR$EjeI{MxMn8>a!!cvEYLQZX!7DDnb8y9rHee9G4+C>i7X@B~ww5FLID(@87 ztuAOG-eZ$G34RC9uR)lwLk-W8Pq&a-IO+N}cC1h5Okl$rD_!r56dzEzWf(iwE&oMZ zK6ZNEzF^n$MUk%Ddd9_l?bl`YAF3VOZNPHK7SY2_J4w6lVp%Y7815^2#7^374!WO9 zRg8&b?!QFhK9V*W;t@o4mF3$45P*0hROmR}O=rU6tTK9##To1zGHAqHs*)?zVt3jv zjfkFV#Pztr_HqhAAKYzFRQ9*yAhb>X@rcUu^|2w)xcH~a&<8P{dG96p%ah9E(eJf) zUEulE{0z-IhHe)cziRZ?*xQVjjrdNBkuJPcT?egq2VBx&%d_#wzru&ANPFD4dKelT z#!@%$HtTK7hH>#Ad$~wF|K&b`Ep@AFt+nr`DY)ZP{&^^Qn2#^q)))2wHSIpQV-27! z)a=fayQ>+5Tis?hV%0bi(w*hp+`1sWVk`=5;J=dc56YZ(w~fBybn7yl#;{|xEU;Mm zt=`=ae=3)XLv%I)1~d<_uxqvXJvrIqs5JkegtT8ziXZSc&i}NAy5RzsUPE)vXYuI5 zuJ)e6eZWi5dw)9TRCMpUq-&%ux8A_CrfyXrv@8CFpMeQ1oOU`|%f(i*LL-{2BMQ3cTvav@V}r5CtmU2j>nuq zcRe0B$;7ytj(>nJuncQL5jd3>za7dt5B#HG6TZn9oav`#H%Kc_>Zw5XQ( zget!rH@m6J(#w$u_qa^jay*U>r7uHYw^LEK^r|7qP)Yo=CLp^?k)pcfc@<*x5clyT!g*L*`?mr;qPZ@41*e4t> zNME#rk+&=IjJcGsi^G)ms9&2uICVVvsN|{xtv`WZn~h)cF)-VC>o|CV^#Q%_&>rF7 z?$2<%Ux`^OeYMN+(W-xMdwug!?nWf+P7JW_J}s22gj;U=2j)MJg*z#E!{qZI9(D-K zAD?^!?X#ChAvD<_OZV5+qq+p4ygdIgoH8%Fm**#C%kxuNSSfx-d;I@Wo-d<#T7Fmm zOs?3qN}&DcyBlwCKdJBk;osVSbPMPg&@JS(qJEmyr7(Ff?4Rd{{zLzLnSxe-m9E!I z>N&f`d%&_)Alox1(zLbg$fvQnhS^%d2lT zRZC>@7vagv(UIbhP}MAr%K#f${0(;2#*2*KMIH>9) zDarU)-66A~{njbscWfs#K0eKcA}^20Y5$0R3qDzPf_&G0y&=Lb?@Rt6dnH)#p-6eF z<%_*3bm1LJ`9CnUw!S;mx60P}PWLbSV&X|C`A?QlmOWMF!}0A#*03XKFS^y&(o4m} zyRc@xKCeSPrybs5Z%fgq4*faR(;Wz|`WH0gtqtUlw@JNs1alp8%{&yVzuKM?e+V%W?2Egg@Q~n#wSym=7wO?Qg;Z(GJaxx%TdXS%3b$Q`@IF`vQ1xt ze!h#HW_j7-Giy0DpO#;Nxw7(CeOvy)9rKSyF+k^bU;oJ+^Ot;EegziG>d#+BeoOtG z`rq(v`8)Ohmd0nt3{6h96s~ z@$Ig@U+%WP7botnK8=5O_5HkIcm12a+xj}eCr@444L-y-{Z-I0t|@sjbT11hML$W` zXnp#ryG&Q_efp8ROjmDw`ge9tC!mdWAil|Gx!pt-PycLxBV8RxrO(_&x;l_bAGeEi zbs&{Ka2M$UKq~#s<1_r%uG)Wk7wOsU-@c3V?Dl7NN;le&oPH31xBbO%D|vqAU6m(K z&%CR$G9@t`-6O&!`0le{&`Tk{bPLl-&31=`}PmoO`C%!ChKT(SM7BW z4c+rBHU>OW4KDQ0LxSks8{EH+wZs8x@V&S>X&mMow2PfSu|aCjXOQS9?>>$>wS6aB zp6S@$*;(z4?A+e$toDBTpW7Qud&m42?R`>jLl~>^t@h6&7M2DR`Y$h0m1}&>kZb^P zw4TQtVb6#Bhp}!#(KThkF3%%%IN$dZ-=@L$9REBd-TtM%eS>eMZ-002)p+Nq&HoHv zHg>m_iDx9}*NFG-pMRj|H4sI{^{3#Z%cYB6}9U=lx#}Efjo2PwCm0Dsnx8fls2^vICx)&UwWMidES_%X;I&6souP(5q#8Wj8uW1h z)oAx1gZY_p3^z}+{oAX7Ib=~M!m3X;eH|yTH^f`;{J3zKe^>N{4em@xi7p4Z9YJ)7 zM&-s#HqAJ3EKrOeI$%|LJ_tMTZjPIRoejUwcl>RzIdgRY#x;*eqlM!{oobNRuRJL- zs^*@6E~7thb$>#2$$jc3%Q1c(49USV6s|Ae!m(@CkL$s6(}73*q%XE4IdqxN?jRi0 z^Kfq%|4q+q?xCS1+*e19LuGOf!Nk;GeQ>AAvMV#g3|xND)JVsixTT~5mv3e^apH!p zJ@EwkJ%K^Uya`pGE+^=xbIcXd#2-s4=t6s$UkCMH=hgOPKzST8>KAGdlmz$#r%TZn zYLxRj?_4z+e~)my+-hL=Bb_*VGIqn;shLE;eo&L?1^-0bO{CZ%CtN^|*naU^*qwP}8*ETEP=<0=C46t>GBsSkev3Dx1j z^4PdJ!-Iztca~HLI!I-9i%L!WGhH3^&X%4zf6b9oczn%5{nE`9$EXg@U!yx@!ew{u z@4jO%>-2)ZxwvYc297(s{YJOq3=L}^2K)W<0+HjHQUcTC4|eqoU)%&pWLI!DOHK42bwoBb=_{K6}65*qb*VY2R_zs8x*?k zF|sG>ho)X{(rZ&Uy?!|}^mF+q#g{$v;y?cJ58)Zc!vjkXpq|iUEj;&W=*M%jD`C|v zON{s?al%cTLf>m{{MhDe)Q3z7?+onXy!qT3mIv3Vf%g8 zeEp?h(x7uZ*L?kzJ%{c2R(qac&$rq0GYHTWBhwv3aEgA{dVfK9d~0^e!)F~?$)E2^ubh7@494{zjc3K z{xIs1gAny|%sE~E3)KC5`~7YTst7Fd^cf)c8TLg_yHd#P$iCCBS6in~NOii_ce-9a z@P=p47%nGHjH)+14x=}ZDs4gP`)femZ7AXUZTgx(wj%Mc1=Qikn&m4SB%BHNAhO`p|j~eV9TYqP`Ehd*iaorbe}Zg{>-*n21s` zy`MyzzN_d>2S)IU3^(qGb#r^3C+f1!O_yn_4N{G_gF^kZ7F7;eQv8)v#8Yv_ceqEZnzpaRo0c~)Lv18jlSWUJiVThQ#&;pZ;QscLZJl1TC}ME_u7|T zk)B}_3;8t)aO7v%6aYY6H$(tsi&0kwEK0rtv9)%NPqh=WcFKZwVh^alll=JtTvqYl zb%$EdC+HLtXDf9)j|f*J)HLGc;JsuEV|!NC4PqSf-K`;h6t5@oYCfY)P<}?bhYj>W z%djYRxQ%B5ZlG~aNcx5%Y%@B+zzJi0^KC4T^<$`Z8bVp~-FJgrWZ;$FE5p{T3|%^9 zSQXnls{4sl_~X;ngq2$<2aA8Y*Z2|+y2$csbFF-cCylBopp1f$Jwp)Yhic-l=}1O2 z{sP_^bbE76e6@~H789SRN(ZaiN0+kOYzjAjdI%>#VtaC;nO!y#s`^Ho5Sz~-i4!Ww zTDDPVp>X^s%eF3@|0K&6)=a3uHgL`R51^3luMh2!V@(_Dqk}0m7?3$hSIQMMFef!^ zwd|7kX@3gT3agv`ZfMS_8atz1TzSooI>61POBA)uS9G^BF+8`DQ*&Ao!obu_lnO${ znu#L!9F|Va1jjS=jhQF{Ytl18E{=Y>JAzzf;5BEeqSn_J(r)OfF&d6it^^# zOonkk3+9!ak+!Nl+kaJW|43UNlmNbJ2uB0pPm*uL^`uD8gVYpl@}%c3o|E$kJtpuh z(96}jdF%d&w(nHD2IRxfb@FIu3#fej_CL;eXwE10E*Y?>?y5aTRj{Y7`2+O+*a_JF27r%%-Wnu$Nr0`#)ehfL_0es8Drlg{dx zer>1pO`X!u@09+2r}QD6(x=1gXZP>WPU)X?>R*>m>C?w|EdM^jQTF({bSmG{IsMFz z5269wWIq8q?F8yQ%uXrcBOW*9%FWX)EM?QVz?$T?=TK&iDF8yD=e?51X zUd!O=->2htGrn%V{7bt{ALGZryYyRq`uuN6zifBuhxz`E++F&_VEnsFzYFAGd_8xU z{;Y@Zr^pezoZm6DpIqD3`x7zWW2i5=BJ)0x@g)~!-VdWc$;Ugr-;;S?GMe-SnfDsi zUzd5;d?%-6-W%24q|E!RXYf8M^M0c0tH``p>%D*G-RdjOydSOp7G~aOtG%4e`y=ZA z#xB8ljsA6^NH%?Gk&epK$EH3X(Vp;M-*&Y=Y`ph$sPBA=WY;%6yFT@w`p(&1eTQj$ zqdL^L>GY2E9hzO=>m+LacURvNq$hJa)b|h|&hFnz(??03Vg3^&Qr|*-+tqk4)%-l3 zn+?Ct^C3d}QANJ32@!r2`g)o4?9K8gak) z*!JjUn!xQ7<`+;q3?AK4kKcTZ!Oe^Gq#1w z;0ExOZkZA~r`z%#C=}4UxCOO)R<-_v1nce5LYExCFq7-dVb>Vz! zYF15iQ#B2vCW!&)caF?6r~O)4X8N04>irN~-ES-LH&8r_&lJmo@kirJ@S*Q#p()`8 z;41SrMVoqm#(}Q=aq*Atmme)#8ZATZx{-jP;W*NN^R^#Gns>k#!Qb*Zy!BJ$xo~_L z!e4l6GLpM^L{rs^Igwtk8=Hbu7u~~!8WsYta8r*O4lXu-`NQxX(XvI+{hp6-W2N}B zXy~!kaN;W>xvz$|ejJH&vEnOX&V1D5!cD&#Y5v+utcdRSHnFn_Dns7Sls}yNMtJLc z;oMD;+(nUIL^?qdd&ymW8QhR!AAY)uI}tDCZPigFt3P||)3+9_*>uIIci()=y|sK* za@8yEzO@E-?lqSjnE%$Sl7rrSFZ5JZ$w77hC|Ldc6h_x?b@N-7l=NEzSIh4~rWFFB zr5z;7s+^p6-)et43xlO^jlUYe*L-KnzCkpJaOArA%RJ=b+YJ=Al&s*lx?xrAnKg+Y zp<9a`yD{2SR?{?)YbBd{w(p&m-|d!FE@t^bq&&JLr*>lvzSK44d2O{HOY_&1*Mg+0 zIy?6Z94Fpn`$M!5n-H%5rZ9A!0!BgWCU71oq53tf9K3b9BN9u^AN0p`8+>C&o_b2*YBog3nB zVhB=rLrERo)<5N&D%mk#QO8FqSPv{bszr!F{7wt;f@a6JBZOd$kRuXz1V?^T3uX;} zs8(Jwu;XP*!)48YCcMYXp@vH&>ydqw1jR{O319_XlC(2bVPT4E$`(h#dUc|I&3-S2 z?;ul6d?~sZ<%>{Td}B@g<;Z^j1o^jz@34iz)h$RErIFBMizQ_Y4Ck^4*4i?91*k;h zZ$@&zB$a9iZT#4mmd>(e*?h&a(aP@iimhUNP+7&SKvr=}q}QvO(0NY+m74OFKu)iS z?q?EzICTA80vC&SAl;+ERRrr$^|bU_IQO5_&ph(sCHi1=i6tF$B%DhC0($TMnNok+=%Eka)o7=B)lKwkI#sR(&?3*Sl|O zYU=2YrZ%^|$GdNtoTFBYWIhR(w}u)=B67a_rWF>z3CO_whMWAHT9EYEzQVtzzgSfs z36ocuYMHM&$=eVntzOYjHj&Es7J{e|eQm2<9xz~~Z6-Tgmi8(yAh6opQk{pt=1YZ0 zkvhV?F^JDi=Mv`W@}fxjyD=F-8W@9sN<^_%l#Me>-Kb1~`&6L(-P*O%T;?CGlO~Ex zD=cgdbmxkj9vFeb(`9woBHn*szd_!zN#KNbKL&}|66sGmQ zT){|~i7Eo2)3n=UOuhHF@@pVZHXoZw{W4>S;O<)@Aulw1#5-f{!V^V^2sjrRp3gVlk|43G!2nt;;4AI!vC16rQOKW?qqGhE*S_pk^nNO)to{O#KIXjywC zF`>xrdBy?&cA0q!wTiSFa0#EfF9vvB2-*+603iWOsTJtqQqU4@8>K&mg4?yrSe5jf zNT(=EO2bV*%?}UyX<=-%01ox#WX)2W@^Ji|jp6t(ln7eW@t@{b2?wtIcVPJ$m&Qyq zLs~-hi>GE`XNq1!taQ}+g_A^Pm~xF{6kSJw9%{JD^eG$M(F`NGz&4p+J+hxnKRf)4 z2S4yHUl9%sM{BqiMHffJ+T2ygYUF5u1XKX>rD$Gmb2t}@N;E|S^i}zqpT?URa5yop zF!^U5f_^={(N{gU{ju~#(X`S+D=Wgy@6*bP_FFab%rI*UP|RKsZnJJ0ht)J%?)A&P|NLni8fhfEOFu@H$JT|Xw~Jf>8{*Xvj zIFrx(JkAey{)Xd;Mf%XD+Nu8K&egvI#HijX>rnlhLG=$G-J$wvzWNpE>epsh|7GXu zXH$JR(YR5Wnw}6))O#9K^+vE8i>-pj98f@g43$}K_v%!Y9LmwaGYX6ZHBM4S3k^pQ zjBqX+-Lq4zmd0`Xh&;i6TJXyz1AmG{MdKH1Q|N2{^RXUw3282Bs?+CzVu!fF8@5#*p+1if*7PRBa{*P zz&#GCNBRL%8zToNOBIsjFKp)?%ZKqw!#L||!y_iAh9c%?3RcW+ri(83_ zHr!;dfWD5eem_b0A=r4M@kcazepFtw*EocC@y|`qhWX^~yr4Ux=VCKGtmqEf!Cga*k85mgjl}_G3G;A{uPWIW94q7_c^cke*$(a=YFKY@u+QwJCobgMNJzwq&B?pjRmi`aNV4UdWFG$jO#aM`N^7D-=ndG9XV zsM(t%gv>&DYc1zTEkiW-1NG`T1%3#}Cq4}%DgsC_{{B3=mvJKm=jei7Z48MDE+oJL zY~$xgMX(W?>YZk)b85;y4mDiaVMx*PjiGB_0Cz-=uBJ``jYM+cb!)H$)fSqHpf@F= zWgoEPU`Qfnm-}u%%g1;H>2U5_WEcG!NQ2;ufFK6ykAMYZ^vPA;Er-3D@Z5H~$^Ouz z+bf^R(TZmHQ>x-M^TLTIG@5YY*~j$*DYQ2a?6$_IdDASlH7?>wgdMzpuKYSjufNydH0hUh`s>ktXOYO({4?TX9a{M^|v(5kHv-0>@X+6y*KZun|&j;xgD%6=4vM8 z=%9*g)*IIHIa;>SqkrQ)K?C3vZ7kp|{502z=-=FExeHx8RxKqOSJ>okh$fy`;6YfV zpM-5%3{!LOj>jW%N|;FWtZw#8*rB`BD#>ak=*pDPCAjSPmOx_FQvPPB;g>?T#3O2^ z{XoxGgc|>$T^_4`xcn|<3^gp(2d-nmB>=fETDCS^zpZcvK4$Clxq!pKZiAIe|rn%ji$#yA?f9dMi-9`uC35^5-6=y=my z__&zGP_HR2+yw0qvj`7Cj^vlhCjCQ8Zs^*}v~Zrb2@)?YE^Al|vlnUpNUnSCQ5;uT z%z`$3JhiF!x=8MeBbrWF%NHAT?y_*aFdUx-KgS;Qjs&#CS%t~&*y26h%`dNdSr$ur zoM=bl!Z#6<$ES`2XU^kj&CeT}rn*@>fBmzfh*&!<-d)pOqj&>rr|AdBh5ExqDEz+3 zYfP`QeD82S<}s;Q5RzZ0FnK$@t47oz$|2!V)mLz@5V$C|j9+DR-t)T=vF|{6D$R`G zGA%b~lQya)xz*eQRWyBVvW+o|Wwz_Ei09?EI(nkshRcYLA?Kf{H4lFhc{au0CVx$f z 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 %Nwo6*9?6#!e2T|h&Pzgs@MQMtdmrsL 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 U2Sr2 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%0D7S0crfIfiBaCbdm~CNXEI=3m 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
Xj|6YsO1u(-0_Td`z`0p&=q*A2eCa`Js3d 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 literal 2053616 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�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͜xyEEFNSfVnp1p@`$E>oG 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®M5 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�e4J4|n1lZ$^>5`?1 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%0D0bjc?pE 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 z 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

    -+FkXN zm_JoqEN~7@={;q~|F3k)+y>DaXIKfLUm@j`emP1yTaUb${hrw0o*wbubMW+`T&5lS zOfiQkx;ad7n*X1W`&Q(bU2ei0O?f^sZq+eQO3W)EyuyI?lVoWv@GoczT z@%pvxuD!4QTGH7io!;t;!SyiD)>q}zeyefI`bB8AxsU_pA>|BoY(^05JpNKoWwj%%JAz41V`7Y-Q2thqd5v%VFY0a=<+eR+{|_G-MoEd6^8+Ag#*zU3#hZD>2t zWZ0Hp1%C(7wxRusqS*hDxMfdaegR#Yfc%734Q(TUZ-BNA&Dnq9?6YXs_#nL-x}+DR z4?>sx{*@$#vbR2vD3$z8Kp%RdpWXm{4tnKpUbN4L&__(&qHG-MF!)+hGq@daNpN#~ z=O6QQA5L-Iz8+OgKa8Yb_f+O1@JVYvX8H^O>dYr6XnYo}q~8s0{eGq|bukB@#wT6O zen8UaSIgfrv<+x46oOAb-pMHE*eqKA6SuVXV)h3z?(ma&QBfW3<0%)jZxb4L&XIhd z4G=W+FY&)?;&Q0Iv@?$B$X0kcMRG3AHVJzyZvxx)w2Q`@(%u|ac1vT@GJZG5(b#s^ zB?&1YjpU8F;THVv5@shT(46YfR@;y;pX^WD^CiHgbA|v?;Z4X+HK@)t@ z)9A0zl-+!NqWo6yLa&6r2mOS^VQa zx@~$rp99dBpx-QXRd3Gx;}%klZSmIz>aFg#=&#@;|MIKkFA1&WcP?gs zO9-m{^h)zk`RyXCk}y*yQV;#mlh6e(Kl%SCw03B!z7(IAx_o8`OA~fZBH!$lZwdOO zL)WsEy4!%h4m~KRJ?Mua^pd9|zh~seuY%qdLT`ZH7ea4`J_%i9Ec)zr-DbL>FGK$g zO}`Ghlz9;PD)g{2PZGA}qyev2fDyURLoaCvYd2DJ_9XIb{H4wkuXA+Uo14QiiH}*2BT|hTwE+^zYO0L8F}rt^?dSxR;0E^vN1uSaIf_AWW8hZ7 z^%uh7ZZvT#;L4w=b)Z*1Y^UK8*?(#4q0{kOJeZQp5x7Qhs*ig(L-a9ur zg=_e2?00ZyLh@Cz7rihTnPZoXLA&rdg3qv|O<4=@c|q9pPWo>B@1Sp=b%)hJnYlfDF zCUt1*04z7-9Ar1)Lxk74;W%aV`+*hEMhG7#{1FmPTNfSP$mbOFN$6>z<0=`GH!ieK zRYo_veoo3%(Y`AA1e?`}D%ef1OZNdQWvqAx_6pc1@-4q4f3?t#pxrJ6)mC!sRPGcw zBZuE5Uwr$|081V8!lU-t_rER|;4=iD`%{-~%F1oJ`-bj&A@B@_pqOJ+06AQ?B4V8UYz|V%fHxHz@Wk0dHHG7 zdhi4@Jf)tF;5*rL(LT4U>YtvZe4y%Nn9~55>FY{o)+S?B!?Wlg;GA|d%$z)Bz0kf- zmaSEMP;K^IQfcBg{Qkx4AB5CPKz|97Z-k10*_Ft24qmm-y%>Bq%d2B^4%ZiJ37?9e zRrmZH!mBEIF^egr^BS=mXFlyT+k+Kp%4GY{9!m$M1zc3jL9qk5jG@=;I;uDd>~X zgZWv2J{_P-`&ffM3!UTbW}SMzJ5vXwE!jzy+t>BIES1ke-?Y%yB(MBrT&ROK8lWYi zEd*#C(6$4#9%yB!J%0W08-&&f?J=eNLygI*4SIe+)o!%TVo&RTTA^Bq8&S@baQB6H zf$mV=pk;MO#w#@KW`m~6aUl7-!plpVB3?VQENxEWl?PJ|E&+rW%P0%ENW%Bs4SKX=oGB%0ERWS4|C0BsA}_xU#LNwx1yE{byR z3zvx&W58K4hF+qQWk<7ZlPdq512|hYyN=tajieiMrc#eoHWzKYlk)otu`dhfXyei&eutl zTm+P8a~@lhl>*7jJZW@a=g-Ruv@|p)FEX}lLhFK7moG2o*pgIxS92A5Yn)BvAx}EX z!g$D`Ny%R-N&R&C^Vbcn+@N(4Zva{uv={08nQa#rsy_Q`|n zSqU&{uoO9T!uQBXzXDn>v_m6(NNNpk1bPN~;O^@1v6pipaw$>B@GC=!N_zu- zDGBgv=WiF<7PPBN_=mDJxShtlyNh!Z`hHmMwX|ZdmKEOI7NLw(slUdP_(xxSG5dFX z+x*n}y=RMq)%@fQ64{TI+t%e6Mo7OC{V)mtuJlFwt_Sk#JI}=ex7NSSajpzOJu<-C zdzRM0Er9!myN-3%EoWf;rJXhO+rn+}Ry9YcI)#1q(u>Bu=iZ$_YAy3Ldl25hzJx*c zC7kB}>W-k`bOY%1et+VH1HX&{Atb0b5F~<7yL~S}ze~W5b z-Wgf7&}sYlaCNBlre%24y!>MJ6K;8ru_4(p@s-euV3lxX!Fj-dU9kV+ZxS ztKrLqC*v~y&%t~3Rqp(OXD6%0Riu2WtAwo)R!uzSG?gqSU*Ux95VlTOoetyHcDXiQ zolhugVZ0`+LihiB<$_4_PH>f9WrNH94K|yFG}u$|PFt)Ph4cVdKeQ?RNxKiwnMaH6 z86@q|J1%DbImSO!pUhi#a@XwtC+>XU>b}bR5BJiFUSv#}V-6LSZEQnDWy&-VA;;(jS+{JkKnsfg9AXFFaaINao z+Mlp#!j4={+9!)Me@(mJK#^{A?Vo*Bahj$uAJb8IUwGX)|2(c4=bR^{!W&3kI_?DF zr3Y!}hve(iWG_u8aqP7u`}*?KYP7X!>FesSvbBIY;vRX& zIj_XY?x_69ZcmJ^)p-+JUW2ta489&%u898_{Unh0L>-x3;CvMWW}_6&k=X=A%@y97 zK+S1v=xW0s@%!hzbNu$@+V+Yi+M(5dbGtJ$39oh=N23RXw-_7LhiBox2>(|E<))PR za{(K{*kJF^_Y!}J_zmwuPX#g=>ZEXQgUvhbJ^K$x{3#u8b47b|dk&XmO7B;-$a~LuU*I=7ttRuw<)v1B@Xm>-FPiD3 zE5F{0y1^!@{;Z@C(k0@L5q~0(DaJ9|LzDThK&E!)Y}$dy*(yXEbk*(1^ZU+uCtSU` z`(HUX8NB<^oP8ipiTH|lE;AON8*hVGAG{7up7Z{l-;#;wo^De@Uybh1-otCZn!1x4 zM)omCjzGWd1LwSjt>iY;)4FQ+4qB?vzsucD(*zV&IXC(GO`d3qt8%^Ig@((%Tn~BL zwio}`2hVvgjkk9w=hl~;T(QUhB2|^bObci!urE_nq%rd0bKXA&Y0!4jGs$7OxdSzu zt(4tXm|;6d&_teB;8*!E+9BX)V-6PVA)P_idsm&=KS;KzzhAz-gZ&{#&UtSO`jOEl z%4_{vXZgO6K8pDFtPjGg`qQlK1iaGviqjE2*}qQb)n@+J1BT z+|0U5c!y~X;gw%Z50?$tOn4*Vk5a$nBdiOo`Ag@#-*=dFNgvpWxpUr4LH`YHolpmd zzRusp3@GfU{vOR)c&+@|Id34~m5?3lca9ep?T6_Sg}m5n{_Zr~x6P~eF@O7WHxAP# z?k;jGnD~X09;jW?t;vdGBI2*7MQc+sb%eC)7u=c!e@mw3z?#55 z!S7_h57(Bg-(Q0{#FnHK&B&}-Wi7o1e-6CfE?(A8^acpapSSpDp6UoM`}(=yZujV( z(u8kEXJ|i}nig7E`91)zd3gPW(lULOkPFjSZq6}a_EDi!z^e!Hd3d$_75;437ou`% zZ9w~TSI(OX{V1%U$7GhlG3jmLtc2>m_FC+%zjkvg{#F^9z|MlbgWswzcjp6ElkTsS znnDM)<*ttWW@_hfrq}tOvd>1~)o=p+9rWkKxMKAYj4P$-V*y*%4*C5jG25~|wmqbC zmUNDMQC5^lQ#|O~R}6oAggPV#9IG=5Yy`+k^giR;tX=+m)|nc%3B^q^RvAq%t@ThjL`Bv6J?<8F*kMP zk74fhvgYdqj<|7Mght4#-DXIn-1Q@cKnu%I2~-`l=Xl54*mb_@xJcQH7`QD4DEA8 zOWB7r_^z~PgMVA)y5Qe7%GX11-SyaOKf-Pd%97ScP1o+ilazgZdSU3K`_jfZJ7+ga z8pnQo&ifDLhq6TNE;(P`!W4mNzu!uDf}a)nQ!;)6`oVwZY)RavOqcP2>{VO!?>cx@ zJ)801C+ECtlozWT7G>D$=GP7VSGUSgH=P8x5cec;Kc~3J@Lid!f;W0_P~?5tj6X4j ztBp%KkA)JVuuky4agVP@Cg8d4r}%`$li-5$ifr@J>EqbcOa4K*!h_XC#%Rcw;I#;^ z7mF8V3Ge4|)+Iu`Gk-#c-}_+WRFd6`Q`?O{>1XG>-;L8_F7SpSeMx(CWS?{pua0>6 zdnTf?Xf_je8M4S0DV_dk&lkH@_phiNSTpPvpdy$7*TQcSeuv?gKaUlcPxUT$Q6R(+g=dZliI%<(_ z`oSgYs0S96H!{Dth%Uc(T_?3PlUn1gIaY3)sLh0(fLBU7V~{i^|MQ&pA$~_>7C9L% zkyp?c9NUnl-|Q#cr3Y0V9^X?h7L|NYz;hX%&lceB)mIxVfj9hDSRSWKNGo{Tpwsp| zfCQ=oyI8a}`&l3J==-iNqI(+Ld9F@-yFNmzJH{J?BakHbd5 zD!|GViI3tYv^g%1odxvIe4@^QHsT@=$_WzS_k zL7E>9%1Zxn?*;{BJ(o}jwka~U6~z1q%G-YUO%$(s-%;MI@50ZmErfQG`C7Fe{GL=f zqUWkUj=-xvv+CcW!ru*i=fL{Fy7=vvoz}Dcd$KkC?R&b-(furHCfW)#?g*BA z1~n)-)zj`AXAdgaoz4K@BewffSEy;fi~jfbKR=KDaUarE_T*pahpsBS>iw~RsLrdg z``dkk*w&n#am+X%8*v)CDd@gb!XIHhCdPHsfgSYk%-vLE;k0*eF8iz-y{()w?RrE76`ozxb2Xe$i^joGE=`q}whv zDZQJ(8IjayR!IB6gIAO91);q-vFkd@o*ZlAe)loGT6+`r1vI|}z5MXE(hsC>w}CID z;9cO0DR@8lg#@lP9s#c?U-h0N{>XQVj%{GhQHSF_P|v!@L1W)Mw2jc-wN>8;eb92m zWWST4cDC>jx4^IBX6ol5tKN@YUM^v8$jrGrt*TWw-SDY?=&FAwF?DtWb#@SZ0K5_W zS5s{CP$pg557>QMX?}bJEVUfAQ%|#{!q)fg>J`#IRf+zK%U(FAw)(R4+sjvqGibz= z>hk@2+it<$eb}mhhX?Jp#e0S5iJ0BLPY2NBhQEK$$SC{{!|yL$-EYC~oe6%yU1}$w zulnUx?@f;0t=CZdfjv8r>5Wer)aE5jm-eCn!J{Wk_> z8NH;u)bt&(R=k@0_L_pWm#fZY!U1+hWJ<=*u@0xHn7rPjnj65Rf0V{LfZ>g0~WP; z2EpnR*eF;NnCem=*5_{C!G3N2seMZgsv8@#~XAVZlK;SIY6tPN~87_0s4Xjv@I>>%O7 zp+N~xl5W{;=;xYMuU1Z+gq^{oqtSbr#gVrIxEo`SyBlLWcVpZN+U~I3+?T=a4Vmi| z^NwW9+qQ_g#hdN^n%PnEclg&ivR~_4K^Ur2as8_f_RR1NOZ3)dh~KaUGU! z?=)wxP`@c0qW9Wc#xwA0dE9ESo)_F3rT6Zzpk<>gZ>NdZLA<=rW>~LY>t#6pl{-RZ zs8haQgnxl}c77K*h~8xkN4z`uV~Ezsx1P9t#0~8f<`&Vnd+6-Ed5r%g&@e{V3*Fd# zq-!I+N$8G2r@pEB4bMwvD2B7p+Epa?yVceke9MjBd06^%8D3?NcRC#%_*_b5diKTa zp98nE!cgj*?Ka|9fp>tvNoiZXP^Lq=3w*eQwqXNS=+N1bd%YEzELvqL@7>T(Lf;v0 z^E5j{e(hgLZ*wjVhSxN_rk=3sO~mtJd&RXeh?Z52`^lRH6y{C$6@^Yye@tD6-wOQx z(D5snQ&7N^H6y*E88c*5&gOpZdudqpZgsq(;|?~MjXMVt!;T%EAorn^`1{sI;WY@a z1;@*+1#D4gnlq+M^IAEWm~wx^et4dR|1$h%{%8DAu!WlTIKsxqIa1|XY@eR0?n&M6ZRu3e`b$QMyGj>4)LPCtp7-V zO+YsaU8m?s%ls6t^}P}*j-1ZY(euQcC7x*fcsMg~V8|yeY?1Kegnu{)kLu{1#BI&h z5mx##`umet{dejtJ*{Kn#x2cUVP z(z7|pGnL?T8f-GghdqMBSyu)>Kgs+3%3h9r8>6{&8I<2#F3ugx1e;kK~wkCRe!%*oJKa8PZLQ<?pX? z`v`QC{|&lD=uSZwjz1J3zgO6;4U*p8==h_2R=pDcRnvXTXESu2&~-ugR(==L_lQ2x7TA>xVKou6(zhKOUd4VwX#U>OIA3;j&9pi5>4g1(O=<=SRZlX3 zjeHPZgTK2Pc^hKOGepd{pP={0n+j*|t+`I}vH-6$Ph0gK?0g2%yFzeAWWF9P%nrRf z7h1(_xmQI)HB{RD8$(~EZL;f0t)CXN zZ5$yX9L&k*rk?GG8NZ)Q43EHkrV-fgMR;onW&GtQTxP zfenJ4NMNI2rxVx|*ir(U1zSmA3t$%$*cq_Wo$+$4fK?{2lGiYvC9o>6`UF-F)|9}S z!CDen7g#4)-mX!d_JMUIu!CT232e;qi_%VmH7DX71KXCsPJk(YQQAeY#sszw){wwT zU+b4QN?Q$9mx$K@R-3?Dz*K)x+HSDw1lA8$mB5C;)E-gVaj*)oG6^If)!z}YvII5< zruL1-I|){jz?Q&@64(VW$xD>B>~+{v39JTeJ%KfXN&cd=ZD3~;*nY6(1U3LBd5+SK zfGsAl39vH>>?oM}N0fFR>{J3f1$GiF+JBcFzi2&QOyO5?(B~JWtp!v5qO?t5$^3PI zCHrp=n93WaJ>d97%W>H8i>5mXruvK0&NzNi+T)I2l=d{3+9OXZ+wZL7m#59kR>|xA z@>L1oBYCR=6TPif^LGQ^daw!PsDi;ilW|Jg)gV!gUQ>Pt|^6ojWWX`q)b%UdQ1z)UxWm&+&?m$!>kQK}QA) zeF9`XF(y~Mf%b>jXC1GC{XzbI;z2qqhydU_Q&rH6Wug)i-mO5<8X;?hk;Vv#L&D$TZ3-X|Qy8=_hc-0M|&v&nSPZAxUZob>V+Q94$WaE|Q%jm$p`D?g0 zwIqv#1R_IEDcm=vtr#{Jo`CmgTigewemMg^4W94oCjVeFU_*raeTg}^oso*j8QWQ7 zZErrYXw&=tnTj`}ui*8W6ge`PRdEhboS2)tC09w(9nf~SJO3Z8(}T4rJG~ct09^hk zUoQN8#PU%oe1z~J!s~-@9C%Dg@;~Y(>)dc28tRvne@$Rh+I*B(;ytFn@ zpBW&0mhjIx`6|$_=6jdQ|IfnS!P4oo3p9(njt?% zs!xwV(+rK4UG7Z-Gn_xJS_~@2L4}NB2WcX_GZ?%wxF#etbYqy^}RO24{i~zGWHQZ zN_f7E!VZERj$jR7V_+j-c6SGP41K(^G5q@5>26$=zgBwZI5acRn7@n(q{>qVeg^y) z_)Yxw`)qy;i}LdIZRsKUYl4S(*MOJoV^5rTz&n3uTN8L$3f>7`8Nu^;=>x9@zg>K` zESH~`apDdTH(8#e;Dg|AycZs-+tb87LtKp~`lu{t!A>Xm3NLvJ<12WwjMd=FDR?9J zN(5IKrAs=%FMz8L`DH{p&1UG&H=XIy1H`N7jOr}fCGV5MeNXlH0u39<#5D0ciT}KS zZ@wKvfBeqeE379-VTtB6GzX!1*(GUo*#+GPBGHr`Mqch?I?d25LG!{(rt^k;GM2Xk z(9~RW`FWFlcLbXK(7a#im~ON4CyBMe{2rwjmAAE*cXCb(jmM~s$0RU2AXl4TfZtL0 zMc2Mm2NiF{KMTH{-+mkB^%ut$ob9Rg%c%Zpfo2h!Xy5JzJCnfr!A>WzA+S?m`FA>` zhsME9f<4ydL2t21he@tx2wNg-L}8{ELz|0|=Fgh&fH^}Q!#mf3cZj%+=x3pAx^~rT zc4JR;Zy!s$(futt|MoEUa5Cq>9)MM}{*;fVx8W~%)~bKE_`T%=Q-LTZ)2ibG&<;TR zDt@buhcoQGl)Yox7$>RD*4V$&aK7$70?iyWjR6fiBHcM zvteak+!8m3#j|V_dmg&ai@((&a|5?F8OoN3@3J?)qSn0Hr33l}=v8jfN6&A$5r-Py zo$HOLIK>@-ZV|dqIJ&6a67Fkqb77uqWG-CTubH_i4=3T(a{YZPdj)i*cQQUhm%md` z`Kkt+05e~HY|O%6>=sPzDwLq?@yV?On7Fw0o3Ccrt3(zRqpnRo$!p{UlrWxpCWj08f9O>W^uI z&`v^oxjMk)ADU%oRB!RRx;dyHwc9D;tq?Eg^jy>zVDhg`Gu);VTcB@2EVV}hb)U~? z9lUDZfxZ45bSA$eGL7hSPA4MA3hyB90&(-Y+0E~%G1j)+P)!GD(a}mb$mfsznr@UF zj=`hyhWOggG*|^#e(gtT9Rn)^8|Sy5FDf{1Lujb-t>T@RO6wv#`VwhXjIll!Nvj3+ zwO~D9b{^{Ll(UHKsDwAir;R#9`;E5p=HV+2m5gTZ%xDhT51+alolPI>PYhQ)WOb9( zim&rE#!M2wjrjLzvRz5z z9+DEZ8+LAa6^!{u+J2w$X@96cy2!(Rum!L?T^^!+4!suKAu(3WbXe&{6)M+Le43~3 z_Hdx(X8v#GLN-{Mj+=#V(eqsYH$59^d$zbb*@{h$)Gy9LR|nmY7(th|cSyGaL?7bP zo8*bDLuN}fy%T#3USpTwm1$2f)B16OnPh$hUQ_VO`*eg&fE@)heaYX#j)EOa#G3~@ zo``n}>?GJPL!*yqm%+|}<^93JE`ps-#H)B0`Zy7<7HknLnwKW9vk9yN>_URJ2W&lo z9ROPaD^uq9C@+T{zdR;=Hwm^(JhM^5{(?T~$`3y_h8%bNB=-@$$R3o4jj<;@2qwLD z0h;>fuX@*tCMiRR6UmuQQry~c`u}Cbl?~BJ+;QTXy<>cB-flWjYFCb*fW6Ku*I;9~ z#6&*^{Sx%=BwSbk1HGX%~4Bux#Q*_?gS8j6GY3QFHYe}m@UADHRhwvh9w7HG!QL5Nn$#AK7Mp;{_zyPPyf zh`U1Eg8mz;A5I#$aw*MY(A4+F>*oYm9oP>E-@1Nu2*NSKXjGX?Ca53i@_jDRXJTcR zgI+XE&~)5--)Q=wId&gurl6^P!R4nTnLh>17&I@xyop8x zUqp7u#=S>I?v;nG7%jOo%e+H4M{6Gm$(2nUC`f z_!01=k8>S-9(=nZ+IVGrhq?<#bX%WohF?GY+FpSz z6PK${Cj?^+N1Kv5f%{lAZz`VU>E#eCoQD4lSccxQ;`*0dV5Zm0gZ z0=@+P8=^(RqvJJ$w$}>Sl4UtMQNWeA7RJAIuE*i zH4ZxsHVXEaio{2CcNVPe^#${3=E$_Kr5&XEY11lOy4LQ`z0m_XPL?_!|Wvk9SEWxVKC~-wFFLVg})^dMMsvi67H;kT}OH}ZExm(d@?y&`*ZtZlizsWQ$$ zGYid6L}TMRxlEkB!*oyyQH(@jD%YkfVPXiz-E#^ctHX*rKL!8mUB8OjqWQg=y$Mn-#bp8z^#tki8ywH5{S-?_Bl1_zV1DI?s5SUa+;gkQcWf z-ePp}XO(;s`Xvwi?T)_xwLz8$l62JLFg}kI!ItiO4O!4&5|Gi-IVABFD?MX|! zi9d%3>zZ2i?g-=o9XOh$J`a_kXQgvyiZeedn+NOq zJach}Nl%{wYyQHj_h(n~$ChbrW};xbwvQFQ*Uh%;4mTjv=y|E|j;SdOFJ6wwE_&A4RTW z3s+( zEP$N=)6lGs`sW$21+b?IU_6&ENxqR%{#2b^Bz&3h*D9QLjo$si806|~huuL@_lL;$ z-{6xA#*l;@$L2z%**#kcGD%5B2jSQ8x2xXDC1up?A>K!xE6!Y?LJAEcU4v$0+yea0 z{{5==%%I*mR2kI+W)nMIGnBQ<;0xKcnO$1>S^VMu5cS=gUZn;Z=T$3=3Y_gLue!>g zGju8s(A0l-)m!Gbe16e&EAzXO7<*>N5SplEwL8a=T!~R&Yq<%K+H?}03-Gix8U7YF z16Fxv)qjhZzomPQgEfFn@H_v}*m4H^82Fn6(!N{d>GpUAeA}#Q2LHl8u6plvw9&l` zRAuI-XtzXD^boHDnn7qD9LR{terOw58`#}y`xw=6PNuXdkH~5=Q7HSZraxv#qxSo& z!Mku#znaxEp2OiQdHx`ic|pM(nmlgfyAF>5cznvqO7#99<3T=YtGPtW*!@(ZZ~PxS{%+xW3Tz5&pDS~U@2`jRHZko@?w3@! zfoE9}jd%6u@SiR_TL8XFuK}#`C)`b@yz>#(0#@@==fC4`m9ZPF1MHvp9qD`Yh1fkG zpDmCv1dwGYlq#R!^ZmY_<7j?JVh^3w%j6@+CEr&NlE1;AU@|9Mg``ag=>QgK-zDzyBG! znpJ$`szcm-$gVcx(*$f>;&!UcJ@%iT6EEr~$~5t()>geu#qW%-H-t8;TXX7>Tcc2W z;EG^ImLi?IbJ?2W{L=yc*i`v>^yxGt1V_=-V&cBO?h46!)$izO)#k2RS7R zz3`iX-w?ljSzzv8FfV6~D@NVI%r^$u{B#ChOYj;9`ZKzxz@D_a;7oWXyRW!>fh+e< z(t#H^LNTAoFndj@2IW=yqT)~R|D9)jMS@M6zC%8Q=s1dy1pB6@GTFJ}@+0gAoXOnC z|J%9mF8d$pBY$fy`+dc|hPYR|xS1(_>;vfH{~aQJ_yhRW1#+E3rpU%Ld76K~n%6ET zwB;#$_a>Z2xb-HO98nI?YjmZk(}_vvYqGGt8uriPf8{pwUVbP``Sh}_%4CPjlcKzY zzhedbqYQ|clg(wy`>rn^xWNXP%y&||VOuWyiDHYkt9j5Tj28{?Jm4Y+pb)LmSuN-O*8SwgO|tzc2RI+(jIlFm}|ns+MD zmth-)_K&5by&8YMmFnmroAqC!K6kEphvMZ=%d>2$)2Vr8ZpSPlWzy%rtusa%(=BV> zXprAfK0{rXAM3KemoA_FyLe~dwY-b`YGb9fSAth)`{}0A?64B!@KG4Xv9fzg|nga#tWN-%i=|~>uhyLg3dN$bKxnZFk$8y7bT3PcyjYpSgiuGv8{k1+d+&y`y_ew7KO!qH~~K zIWB&w2|N|@y^2QJz(sX94UfgwuK8n5M%n(9MQV2*cb0@QZ|7FC^Hf)IVCOdOLXfdT`Cf$g$Q^6m)0G#iyZpME zo@l88u^d_4vM=LL9a{663gdnvh>Jg2dbEkSN8h;S{R+SJ5!L~AEP|;ndccl@bt#gi zZ+k6pCo17x+IFQMstU7>$B4g9{QW_E%dd;JH+NH>knm={^Te-x6Z%5&X~d{}xyh*J zje4M3h2?i^E_!aE8nTjk=ELx?HD4kPYnLop(yFh@P)qm_;s2~OtPIxg_mrYDA<}hyIBKut*YsqJ$xw*Oyz*TA71k%;vgSQlw3(Ii3XT#h z&yC>Chr>MAfVF|00L!ms**+IG)BCOL`{VkFQ~K65|E^uDXNHN}EQ-~|DB)Fv|04YK zkuID9s|9rbK3EV`V(J|oN&t&@`vm6r6!A9yXLp| z2z1SFTl2o==%TvH*2Ea6nAOQ~7I;GTI0>)g@XGIFj<$E6*DK5GuvvoE zR;qsgznk$A+VJeP$vNvOs5hr7>%wtcp6Z)Z#UG6#UW@RWhSxnQyb9*d zownRl*p<+E;#Gf~@qhHP^QC=!g}m^hiPs>!M*kOhsh=K)*9yEe^~!%#w`ahY!Jp|s z#a#ibywjB-^L{(fuDGRtfj$Rca&d)KgB`wW&3m)M4)T8kSjjuqypPFly*8z7%m#M$ zB=fvardGmk>G4!AMYg9n?~G`}{Et0kD19(P`i<|zCQ+VDALP$~a{k*ljZ8jI6K_B9 zLf_DHOy)WuTPLiCu))ChZgye19XnH;{f%_H@M?`&&3s$F#{6Mo&HJp=u~FT_re}91 z*)A9P6azKtDC#$9%MHTgFgz~4Z_PV?IrD*@%txud!WsU)T;@+w1N_Hg3JLu6q>{g6 zzt0EOygBlr&j8;lu!~?lZVb8$wU<8&Yx)#s!&hdT7<;rZ6wJNQZXfnXlK^VV;ns>p z+Lh~x*MYB7MoDw|L(%bpMMUx32X>Vwv0ZCcL8h?tlbbFEBiX2n-^IH!RcaFGEiKIUYww%DGz$%Zpb|P*Q-&wF`u>8Kn zJGGa{+4g4BFe+ppQk)zfZS7+P+Qv_=c{^0^?ZI3E-=@~?od#*my)6H;j4`9dyFA|-#P#`1-9Syt>_qS`RBIJ;_MFB zwSsZlUet@(X>_&;zq19A+H<$YZ8?{ZWzrly${fSxqnH0Lf=z%mU5?Hf%E&vNqI5cP z*$i1t31R9~R6{zwe~o?p*){*INWU-MXnpZE{v}caaSjuwY-Y{-k@8})W44EU61!QR zcMX#{r2eaq>UIvAh0m=8XV!(C1Ur?$mcSOlqO=#l&LrZMok0E)SPj^E0&4^-nhn#H zT(p6efyve2>ziu=ebP%ynU3|MypTLJ4$ zU?tz6eG*s|*g>%99?*KQ!35R}b|6991vZqx`oKmbn8x9QU=v{H0{Pq0XWY&!GudBD z-=~2#WKP2O1pL~Ltwru)arWx~;^ri1w{|nR-x>^*kCJ=HFLYnvw?B7a>~iZ9;d-cB zF$;z@76s)iz$nLhV8xpgImoj3b-`~1es=c^_G`3%!!OuJ8J%)%*O16Sigsl+bFayc zvLjn@8h#ajy5^s+w7HGt4|~P=e{C$*xq;Z)`VMVlj9MD%^DFRbf!FON{E=o`hxVIx zp8Y8uJI#j8K3{&v!i`aZ-?96f*k6CP=C$5?I%XKXB~^p4H&f+@SI<|NBRKmix@Sha zdo@Bbqu7~atCIVTW@NZ`e^9rDE@E;>Q8YW$wRxuBCJ8@HxXe_2#AgQV z6jEEXdwmCFFavJ)x(AQe~vd9`)D1>!xz*$HkQoVMN|i)V{b*!Qb1!|TKe>=xID9IwQj z$JWE~g%@Z3I<-IUG+%M!-{P&WF;O`HNKcI2WWp$Kf^b z%{A{M{7&j)n@?HW>wT}7dTYt;iz`5pD{o8iI|;ux2>2iB&juD!N>2XY>(2?&sXn#l zRR!yG==_59)Nr27=9g3ptW)KO*UIVtUH#egci8WLfB)&vBcylY%$om>3uTh7nFG53 zmcO$|*h#RGe~jzLC9n#xsD8WvR+hlZzRi3REUGhWz{D@AGaJE*z@j>{4J^rTzvCCx znFEerblx)p)&Re#&YS?-23A9vk~(viux7%pQ_+ z1v*oDuIxM5pWj>a?=)i_B0RgN{r4J7nR`Yqe`~w@Yvvzsfo=f0&nZ9QoQgRjZhl9` z<`yRBcYjT~`2g{YzQ5-Ey6I+12*b~uy4iOHx_M7bHy?rK;t%q=8OQI9zHXiepZ#Hh zZl+d-OKu5tGZX2EZk7(d0Nokro~S&BI+#4)oX@i9>YCHo|HLz2W*86tIB}i7$@Cxb z%KmB1yECqz(Y@(vw>FHfW(^{x@9#8Ti|}gs@tXJb z%hAitnXjg@!m5*AuK#<+vwy}%r8+~8x_x_?n8BJ_gBI&!b5tJHE|`czZuSrS+LqV6 z7l|Kr%RZu{#Vwi zBpc7U7ZbQMGn+OQXtkR7W?TGj2vsiFXFjHSdw)m02&Zc%i?>R|Q`EpKD&3%D_iDt{$w)Tl2o>(oMG^U4QJ!PLYGA!pY-y zdyi!hUPp`8y&bgKOgALfNZG28 ztxeC1)_9wEUpujZ2>xpC>hIz2$gX?i$|Ij{z71d{SFC%}t`4GgZ*%)SI$QPAgc5Am z`g5!`+H&pepkw4-^qKd-dlcT?SFU@H)woC-Meip~Dbru3m#H;}VVttI(rRaxR!HMp zFZ_vb3&m%wrh_WJPx&6We!t9%V4wLuG~P@SRz=wJFUJPvl-OG8 z;H90NzMtnT{OW#j-Funqm(h2=!+jQRTwN^A{!|s5Hb}$oAm43^j9(93|NpWUru64X zfAC@J-q}E2!Z|{?wwdpbnRlg@hJm9oU69x>dP{l@pvdc0{vR-3{*`rafZvkWsGiHe zWrpIhGb$Pv`-xxo@b%yhjXO04yZzG4>xOl&`Wq6)g2sz!=z5@Y`@ik3AIZ)fcptdg zaF~(9nVavH@F?swVWWiI$ZzQvY>VsiewB5?P7)UNZI=F!`2|@1jC2oV)nE%?;Tdq| z>08ag1~M$sr+UOVX_=x1;orh{h%}~ub=`ZY(pM8Pf#O_RC=Ld#Wc+!pQ9&e3|b2w&B zh^nZW?=*ZG9qk44=_AL-9inU&#)On4Pv0kE(B{$+lXC$3b}9AO1ecZ1)oK zR}+_6jiCeJ0!1Csr=cyXUH9+P3g_j-WD9;(%iYY&zovwGiF;D{Bd#5UB%Smz&h})p zslPb;>rTUCH%3)TYmV+DRl_(E#kHhod20G+1K*vXt(0Q;IfzebZ08QHN|Yhj%EBuPgwWI9V^+;$ z9fnmJ5LSMW7-oZP3Tw|j*P>7%R4gK-{&@u6qwtn~)<-&R4r~JK{?KXaclAHvJlK=g zBk%a!9E>Avgv}9_*B?E^-w$>SY)tiTvKZPY1@;!Zalf8AfN~8Rc;Shr)|}FqCyk}2 ztb0S3nTC8Nh09hgxtmkd;5Z>^)czFteL8(A#m-782XlP&95iIK=Qy1`0I%6+u6zG_ zdAxLAYzi|!Uvu#4-m&hz>yl+R+kpe2#hIVLt5B}}JwT;DV?MTv{z!TC8RT0Hb_}d8 z7^}8yKi%&$oyxvN4wRJU+hfy|!tAh(R^#UcY4`75_kEmQS}pht_$+t}zx{b5 z{l@O_dSzY(6!j2vns{f3xBZfJu0~bbjX9mJw}C|2~3kXR&Ygt_Szt zsh@U&9S3_dzx7c+?FCx_yFdD=^yDehE84g2?*XFUMeXeT9#GEL#?+AL%6`uMve12z z-@g7b`#kjTX^i?{oKCvD1-g0YvXYaS|2OmQK$oLFaZ{Tv?n|5Ps>|7+B#;$e$4IpfVLpskloJE}=FYa`*GF4C9vVUQGxs13( zEo$bwjrhliKQ4f4)S`ROb%Yu3cWB`1!M^aW=k2m@Wfu&=qw+fXFin;mGu&RLPMrsh zH5PV34bkV6-)FCTpW(OG7j7`EE%1con7Iv1fz8>c5 z3R8V?E?YIFv8{B4^##H{o)5#M&~8D6)e<&#Qz4zkhGxQQZ(jF)AUf-7=*Z|f6P<+m zLZba73u@3{g!lbTqwrdQm+e`Fo%G2R*eS4`;?GCp|14O=Ep9$!^D}M7d$k!o*8d3~ zBK)OJZ%1u2ZuTk8K84Day#X!eg&kb5{(la6?sa?yfwW%$6flFUVVRX210lua0=1QbD%j|E@TH)xk7$Q_w~0a~L z{*tbGC2eT;5cp-3K3E}6*9+FYAM!gge(3CH=C8`D&|aG5`Zj9yD*mV2*1gvS^~n8) zhjcg5FmpBP@rL3^HTu5oPH1}j7`H^Dw!ctbs&xCnkG_yP5>CAbYiqU^u9hHO&WTE& zjuUtOMWJsq>Q~v#!$h~llQliJ08LrH(<3GmSINBp1}&|FNgOKwto@MgT_^6)OV_$5Lg_eNYg(e(`E$?c2A zBc6RhalwKl^wP;w@MwAYy7#yImdr$DS!YAP9BBc`%1Pp{6F+aq2wMUxx_#Z#m0kJ> zy8w2PctZmCRPrrb*L|1k-opf-A9T)NeY_TY0Q^~jj>i8G?c?ndhDWmeqzPltHTLLj zCEu|3`-;*XfY-A6QQy53EHLysxBfXIQG5c~YCfd>mb@x|)H<$Q_}dE9gfx zT2Ax3QEN`qV!tPgW(k@xXg^S*{S!JtbBXMlx_+VA z)vA+_y6in6XJ|Ix4>CYHEpK!B*Tw+rOALm=UDQ~6Unw}Dq&htc?FDELpf!0==|SoVkIf;TpPV(`>iB}8$^LdGP4iMX`qn9U4UIE4 zUdi96lW1FpGUIrS6=!c$TjEA)z>QS5;{=`V8w~IFFus3NZeR02U=%uZ$p(S4T`xt8zge?vdM58pk%BjY@SO=y#J zE9~E~7m3HRnDwvpeF3{kB>M~Wpyc{G+chy^lPK$!(y9C5-88xG{i)M;$#GmZu7(R# z5|-2+o#GAu)Y4@5myPj9;dkT%>;5?o`i^_Mn!Yn!vd?BS_GDR6A8DT^?os0Qs$8MZ zi%G0IQ*82N^WR-6+(V@v3hixO3!S1hG=2HTJ>P`2#>bZbU_IbN=vT>`>8Q|8zz`U{ zQ}HU+J54SMGz4o(;xz`Z%8#%6=aoZVVL!m!2<~55EYALNaa#U-opuIZrJq>$MuR?T zceaIf5aorPvs)5bkTE>kKS&J-?p|xT$oT!Kb?@IUdDoEXXzp^$vJ{+RG@%KGRDO6Z z{So?6dB&fAsm^N?V-De4FH7sYI%nlPmIH}y!dB^&=5EXNlWgUGvOnYV>%sl+X};>@ zHXlyTvqvnp#JyKH0tn&6H!X>X@6Z;6=$-`MRv00@71GP^V^zPj%H znFir|E8~1Ndp_N^vvU@muxRu+-+K@KeCajr0E~_=;n?TuY$(H>I{92jeQ0qVau}Zd z-(2@DI9(a#SukcT7IUB@rBNxcbjT^??{Dx$2l|Nl=vJ~bWe=XGRJXrxx~3>wwDj$D z??YSFUD$Ta0y3FiGFB*tEjjsm`r*~|L$_XzvFXMGTMxB2B>aJ(JzP98H<7Jt9f7tV z+V@LNw;a=*3=L#HnO5U%`NfOaK?TMsSe6!Ni;n)7xw-n=z46CFd(9;ih!4qzNdN3<@vSeT`@ zl!R2tYP0Gr_3`h>M9`16%(pf(WnWy9%FZgd0)GAQYb)Le{5Z8>LttHCc2)}cKcqEm z+X|d{UVc8OK7E9Elf*m5?|au_+=`u=m7TT+Y8_q`nGJv6ip>Y9unZSb;3!eKD@(FP zJ%oSalI`X6+lqfuGo>2kk~DqP3%~g*HoWzC-V-*B@zXjAKJyfAG)h18Gw?ca<;MN8 zmQY7}H9Ryi^1u!Me2%TTVzAnJ3#+{0(zD5B2XT)Pw?63OY4YOg4LSdw`Z!gem@BsA z*lv=7o4qADnkAi~+=l;#2Y*YB7QiOKZsK>$-tT1JPZf>K%wBD~LcAs7<@fJJ=hKO? zOP8o-yVLcM$#gILny<_jwLEykzY7&dbM#$DF(T>Q#-c{bz$yBK=Wvb-& z#UrFMM>@5EjcGQ7$xtF4%lEqST{sZgT~^X{7vMKpx#9g{pzH7fM(5J#pW!Q+E@l3x zP}jBOxUVwlve;#JA9X$;Th#kY8(xd!JF4{-clU=D+0+zRf~LpSuZM^~@~{o>)J9H(@Rg2;?#;k&nwc|?yPpC1crFsZ`w<(dcjF+F z!&m5JB3IzW7hlBOw_CTBqR$?=;onu{uuib?2v!Z=3$_UMOc9#CVG{svxXIZhyI_Ry zqDO7``zhixOOZu1RS=l=Eap>ovKPs8S zb}5*z;E%#Cix~pUSLlp&_$O+ZIaT5HsKD#N%?g?Q!25u4TU50;m^omxKa*mMV*W{I z^K&*oC|k7t*o~OKxeKhQHjedyl_ju)U{wih46HVRO@lQguw!7`!1C+Nl7$mseTjIB zUk&kCg!97sa~44kqIDgAFFIAu#1H zN;?iVkid?B^(U}7FqJn-dlIZSfh~dcB(Mu$`x97M8TufB)qr&+utu;>uqvwof8DVS zO#B*zSs%wchB#I7XD?wY&&w6YU2ql8FE2gF&x7En!C$Kaq|M6^w&2Yubl;9Zr8E0O z{o~?Bm0pv}Xf{-6FZxdm7UDLJ)|2E#rC+z-NeeS-5UPdMh{^J2+QxoJ;b?Mv+o+h>o)e}!uQ|? zpc{u~3Ytds=a@cW+g=r?ZBZQlWLQttYhYJK|C_(Ds->e#%aO0&+VJ-Ao3)Va5E2{gEjFZI;Gi z(x`vRhWF2xR}NNoQ(4KaRVeYavGmkg(m3|J8-brmSW!i`=s1|t zSO<0%Y(y9@W2z4;ZZmlA)3BplTwz^c17OCVzx96~SU;Hhkv_r>f(?R2*Cofm4uD11 zFQ>tV64)`Y(FAq^Y$Aazf=z=x)>8G?;nu0F-=i(ddqxi$cfNr@f$EfRmx99foo57hm)*g2nQ{(?S zJ1irp4=M8dsIx$MjW_Rbdn#^*)IZ{zL&tOpBnJO-ObLsA-wp_YsGm(~I zUzh@qNp6Ar?f($Q*XFQoBokv`(_pq&pTC7ogUx{Hw?6v+7}(JS?Fq1j1hxpal)%=( zinebA`}h0cSNc%w6R?X)fL##7>^$T!g*5B`>_4b+5e{dr;Rmeu^F2UXQ>1mZlfM*u zt(iuy<3fbM;AP_v24rj()b9M7%|Rq)+~e>+1^=-f8{SuSsKLfnWVgWo=jLRref*l_ zW1p?!MBS>`f?rQ(x$GCyU8gO%lVqj8lJ?oV;k`n7l#%NaK2CG(H>V}C zGw;NU``9walqIH+>FWTJ!>vN`kzaj@;5NIfuh8ke-E5oYUqWB)+wjj=9xSiWtw-Gy zuN(X*cx_zA;2aw+(c>vj$F$|RwMIia`leN{-MZhH=g$iw+4CWO9JBXl;XTy3;Vr2i zFTF&vTX$J7dn|0M;NWU}CwIn6ZCbg~t=}~~412#Tw3FpiXaQRR`xk!u^G?&Jep%hN z1j>gs5tI)MgjKgp2x()9km-NLtKMLjRO)FpE?2VVtzu`ZEls!Vu^X0b?3pEehVaJ+K7%dC3#|>A%~P1xo?Nf^S216|75{@Scu2FsW42A! z9uqATCRU`ckdw8&z?mgShw7(~bS7W65xMIsEzj;;26>i-DI8F^9vfb>@alZUM&x`s z@+O~LgSLxT<=@EbQdjRIYj zent{YY*GbB@1zZ1?b@QX7_wW2x-A3(LNaR26RF95rd9cg+W7|S)|Fy=|QTTPgYr}u9 zkiUgZfsKI4Zq`TGEZE5iRs*&GRz2?QExM;}8j&}%hyOGNDb88q)V+JdzZ)FQHOyse z4Y%gELHcnj9>si?ILC?akG&dJdi_Y)*W%MioQn5s`1b`XEq2K<#tgcoEKWCZjuPkZ z#Yb_Fd2Z;_u6pzRR|6j;PTzYsyeBA5K0l1}nir~^lY|cvo}Y);fX#qSgN^dr`1*dD zd@+sg6mcphHvD__h$ddkV3S~Xh>nl2i(sYiqs|OLW`)LX9aTyJD+Pl zIeUwN-QC%oM5lcVy@iqIyvFx@Q|a}?d+_}mUXx2t*bvw>SbiV7uyL>%u%|`h9RWK7 zMpN2H@#erzC$N)Xr@*2v2n@Gk$6n-wdJQ-$yvmE zx6F41$pL&5g)cNxu-%_U>{ep$e&QbG%D?(z!J4UH1d@%d$-m3h> zfFQ-4Chj6}?GAg&btq$RXsBbdm#m83MUSCZtq}JlaYsH%-wgDw*_q)wVN~CDW;ApZ zn#OH*9Fi9k5~qUObqBRJ8YL7Wdqn@305X&y=+JGeDFptxx66&Um zmi`UA{BjhSw*Hp54T9dR+Q485_J=-tp(e-^zKtXJEcb=0HVe`quYAwse@wA)4YQg@m+xZCToH-Gut@@q=I}P^8 zczv_ABKmGp*v{WdEneU_PAIjja!RA7j{5!^)(7Hgr0w0YHa(r1#xC9el+ye6S{fsy z(fn=3iFg|SYvquPER#mrcUgb-E2d{Qqpj>$|*iWDb!=p-#hB zRHhNAaKEnR71F!oq|@-P)EB>fy^9`+zAG!e%cM7^cR6{aG3g|<$D!RP`_<|?)P0<7 zaeMLYTuKMClP_&i4aTebxA9l6YXfxSe<>rkj zkdfWy5ATFmNy(=F-dT5f#VuH{Jt{wV2l(|tU50ty6|{@%1D!VN720Jjxz|z>-^}84 zEgWcJ^PF29pCFC4D>l9N25Dd~6pVXzhEMnGeLA&P*x9E1Ry~gS(v_Rug94i>oWF;A zR$YDv{3Vpa_G;JD*Xjca-Rj?8aga3HN;kcy2KfzTHQb9A)|%vM97?MJG7Jn{gqe|Eg?;<5zx#$i9i-mYdhn|ffh6?|K&3;L-C zZF-xc=TpzO4{S8I>AgD8t6@~o;D{pUV)#Po< zC3tm~ZARYIbN=EQc6_+$LrX5a&sM&MswZF%LSy$cCUkb#HddeVa(pp018unjX-y`3 zcM$#^58m`%rSjQa&EGG>x&Tv|?fkn>xAyZ}yH9+7%TZ`1pyBwkYvZsFC1jGl_z%pE zryKg_e~|C$BK+DaHUk?D$mUy>4UEU&FBD+&t^9d*awJ>aT{0==SB537cO(CrG33A)EgDjkH<8nN{5&_Zg%% zdMKHF8MshlQv_`g(tNr4iTI-)x_Q6MmnHL~q}TVbO>Zd}!xK7(f!Uq?+N1kyCVbtJ z7^`ux!Rs`<%BnZL=LR;h$%^TN(En)iiw~lh1BF{KgO~W#J&F0uV>Z3V2JIK}3uVup zkDe;d{;S%rP=g2Og9qVv@v)o19WBv2sqD;LtbgB;#>@2dJbY?vH@$jwl0-iZ^Oe8n zCX;z{YPRf2(iG*&@;_{ApNu~I?ak!-h$g!QdF^E4no@A-lz#Zs)o*$~dkw{nJQ( zpSbDWdhd3Dyj3qwl^{A(A9?G8S4ZQf_rti&63V057|y3ZkgeM)Z<%FMVeVWY^r}-n z>bIvz>*Uk#pMI-)Z}}bkQ_tM=-V^lOux}*Biru=D;@?%cLc`efvh3_}_%*a_dM`@h z7s|Bt-FEu!7H6*7bJ-`$@GDG64)<-ObCGnK_H6p+Kv*dao(O5+nPq>Q;VxZ5-=J$3 zIE@lH?qK!2?J4Lh=Ty@@)x_@?liw#o`V`6Tk~v16>N_|6^#!X7Y~ARc z9DA@z{xm+W9i-?h(4B(r$i3?b+dJS+Y$WVg7FMoF%^w#n{G+71uxO|i^_2l0TPwM4 z)BCB~!Sc-*H_F;QJ~ecy+OUC*Y%vcV3sGF_5QEGoBbk_o-!%N*@A$bh5AYi0DY*`MzBpX`jxVL#Ip>b2 zV*z7W@)VEHMe)qtp_kmzO zx#c)yHuiHRUxn=OSTF|ht=`7^&C56adqTFXH@8MMRV>-tYAJAUF58=~7w~J1_*<@a zrX2pdCb4CqXo7srlCS0i_!7$a107N@H;l?D`x|T0dkYO}x2zRf6KrIBzj9l6evI6H zn*hW+(e*TE=p;Lx&p^KoZF+3MOwSwj9o*l*3EfAhw}JU);9xfHG(1nfY14afz;nyF zlkFuqE}n$~#I16b#c8TpbHUPQGT(hOz6d4C{#V_QEt#qTp9cRs;na2X{wbNOEU$!* zIb3B|c(6FJCw?J=tq==~R2b+V}#9KDKyLD-K zC3teO7)Uh310PtkjU$m^jikSX3gZlz6PjvuDqi$7ILoA5F%pB=dpnh&+{a$RBxQ#LD@Mp2SC@hKZL~zWrarXkJ)1JJ zcFqg-=2)?_E%iVp+Zm4tzggi48P`TlC(gk>l}6&%Ol^9vReV0OL)ySb!CvOt!Sxe- zX4sc+ga>Dbsg}KR?KlI|&LK5II|A+ehn?J!zLODrD8X6&2ChYmHGe;JbI@IY?*6d9 zr6cNhU@v`a(|_NW`GQV4sb92!*MR>Dzx5H;4OS2KXhVFgAFK^b{YD?v{Sa6e*cGZb z>puvro}sVcJyCo!JNUIz^+vGhW{BVTamvhZ?SEmvF0$tDE2srJN%%P7KT^2ydjm19 z(bJeroRJx}^fwc9fq45r;e3?D3(ssyM%Ch^&+=5{H-{h8ayY+eIq}%G6Mb=H(|d}` zdxQthJjY{?_Gq}@9F(9uj>(Q(9Xy8MQTfSD?-4=ywHciZV}$6|LdE{@BviG27Qh2JMW~e$BMYz1YtAV}c9kKunvsj@3WFklYhVveE@(Z2QKRD;t3(k(XdYCWHUWKY|Dzr6r)_&)rcFj*+3gnEBp=3Jh{{h}rnR8~YwUw%3!EP`x*Ut%Lm$zl%5@ zHf);#X=u)JaH2!~;@RpKDsw+^4}WFT-@|3PNk;tFB$_(2$)$+LOD= zn#c6&3~^eB^E%?|Q_J@_*bLZn1(?j_{q;I*3V_N|Ue6M5nRwlbXX6}q4Y+e}EUYOe zLzMqMRaG1Q-n%#bdxVW=e$6C*Fa@U6OdG6Ph&xZ*-`62P_+HW;AISD=7E>rP+jBLL zkHM?*?_7Oihhk5uj=FQYJezQhL$k!0ASUDU_k%G=9JoA`MGyzSfg;e=cH$aDVg z1$Qiu0=C;Z8{czkW4gwn(mm|2gZ9+{EjIQc?#b5pjYbYChj7VT6Y(z+U-|L%ArJTR zQ*zQpSkZUFbroTKF23UEBkUm91$acUF|c(oxk>d=ylJqNM7(2QXA|*GfGsEDErKm2 zuywG-1Z`p5!L~AIDz$mjYKfefj&ntM_8>e>dbm0RINCaj?%koIet>Uf}Cpd~WtFLM8rgvRb^(mc7b={;Hc%jBB=eTcnrlFg4GoB3l@ z2l(yVnRY)5vCYr5B>K(!$4=B3($#@{{oAJZ@VFl&eO@+IjE+oE2W%5*RNbX13evFl zC!Gmz(?2KWu#;f3VEOZ-HQ-BN^I&`VU1T~%R#j{6CN!9Iigak{RrDv~+?a?%<`_h~ zP5DT^8i-e0bl!Vt34bKoKa{UHim4$dB(ha2V=7`rsycN-t7q?E2Pdm0w|E>7U$+yuiKzkP2T~4OlTe-B6qeW(! z>uG;?Y_7LE$3z4p4edyZXj77w&DVA{{H{3f{i*<~mxPZ3euu8Kb+~JFf9_W<(YF1t zn1J8hgU{bDbDK`mE8U0vP;uTnQ5WikE&tB$;oi+hWm09+)^Olp{cb-zyB~4? zl%b9^Pmo?;&3SLTGC&)Qvb{X7C)nNK5AOuY&b&a}QR3d_;zr-dFh4wAvE*BH(%lW6 z*xS%OQFLavg>TMv5VlO1^&wxc+naNe={~~hAAR1tT6AVlkhfv!u-E2A+GKx>cwNNn zE{MmWD<}IJbB_^klz6|Scyx(9NMZv&PlAtwn{8|9m@Py)9KBK%(0BCwfSZJw9w}kt z(>yeCBk3b~t^%6_`)pi?rP+*Hi_hL8c_`HLw%#qh(Fecky7T@WJ=Q-iIWF1te}(LJ z`uo4&HT0X*r3PQ)wWW>DJ`iqZ*C1EO%;wb1uqe3}evd!@-+re~V^kYF&cfpse*3a# zwwKK>b)z|ZENVb#0CWc1-=mH}$?jq3tDkV*KbvE+8?oKm^Mt+~Jxkn9;yy-c!Esop zQt<-FI#Ao4BD_buwpy)KcF6{2q*p3uSS9LlGzh(G+$?+@j$I+(4SL%6!m}@MUubhFt z?@5eRqUTe=cLnSKSU%svO1fzO2-XW$1vU!ysuVjaVdrQKI@_Z<+*@Gha0CdS%NB#U z(itM1>EAi;ExU23VD3N}Bl{w=+tUrUJvn9xDan{VR{vWjo%*Mq_i+2TJ`>)FkSGuH z`%LDCsq9*8?|b8QtOq~sy#HPS>{N$sU~^9o>s9iwA8Y~ad6y%H=#WRJ>kyNN{qQ>q zzthh+ANZ2rA#-4>xp`;i{S=|F*YC_7v?qTP2C4LI+4a~{&phwFF|Y~HQPFoMP2TqE zsgQs1r^!+8?k=5mNnRFjc4$Am``~@z_wJvuP;zye^v>)!@73PB{+s^y<-NDc9akumP_<*Xe zHnqr-wbjcMaZeHVX~9@$c4gW)Y;U~%KJ`*KWnfX7bkD+Tq5r&hFyOVNjn`g2m33Qp z6CDMOB3@0;VgCQ}^WOI^S;uBCwwI4((=X0Jh}1Vm;5GKD`=@Wnc3LOBsn^79C&^{m z4fxlcq z)(rMRe*5yjr3~uAQ1ok|+Lhe*!)F3MFBhM9zGLs0O1>tDdzQHGR@}5cY&MMBFV~ZK zRa%-NReLWf|3fL|2X6z9m483>H(0*>s_$B`POy8+x6)JIyNEwU{A0nGeu?_(%yy=$ zi`_ZN+7!Gh-*o=}%Nyh4q+jz~re$TB4-YI zDn`X=qR2eod#}%$*_rG?f6sLue}6pe>uNul@4olF)?RzP?X}llTlWUd%6V`dsQY^C zebk8RM-K$nXvgGSal|wmADCQU>AgSAu8%k%nD=CD^#;Z3{#6<~AdM$H3p!NQsK&X~ zyPQ9br&&QyQxEIWj|r9|bvDOL>-Dm`emj3u_45^5t21l;mY}bsvC#0hGlII!=8--f zef9|EY?x5PW zT~KRtb=>N0^lZM?_v~(c#Ljc_wQ}oB%s)x3uwq-=VR$lY(X{9lLvN-en_BsMBlgG%H;Dsd|K<>(HBU|vmP)l@)-53 zt$v&OF^yNQ-&(y%f4e-Y`f5e1)^wlJ!W_b2)WCMz^_e64?k{hxez%ry>esrVuV$aC zJ3czXu20e@Uk`t6YxU?_zpw5q=vxJSHRf3Lw0hY@Oo1-kb^pH{mdTP3BiSOby^JLwR7u3IbMPH1Eb+xWGUq?sW{#kl0k*~pTsjjNs zdj;nh~#Zkf7$Dn+zyifQ36MY4JkGe0?tA9%CPc6aJ$B?t| zNd|q1g?2$t(Rv@>-C8}2^SsK2nfQjh5{7Rcv|QeBkF9xN7tNS`ROn%~T$#Ua^Y^{~ z9e+LYH(>rA*jl}0;&o_J7Xi5mZr+yuAm(;&BB@dT?v?)LIzzyr~!Rc`uXe))h3DQRkr>pQy{} zz67vF%U(J#C%UYjaQ2^T#K)R-dS~1NAYb`h9UwN9sEyQ*5qe#6@!T?JD`Yv$VDP zy4t*pre)CH>20#)wN}Vbyf(>K-^kX`dLRw?v)-lz_h+4!*pu^nFpg;cW}UA4r)RfT ze;9G?8tU95ZM=Cb+Fxxfe5w2mJ{P_}sGn;?x&`kW|I(G8hI&OS>ML$T@-?fxwff}5 zxYf%^aIW+>x`Ow;C!eWGw&kDcAJ_X+&;NV!kEQE!g}3p4^qjAjf1>V_YHgXX!yD4U zJ?gczcuf8_|8Z-zt(F#nzj|AtGv^sxQhl4&Kd3I9oEW-)ldqX)X#UNglpif__4!Z@ zzJmAt?A@={1Ec$ETBdxxpYas*oqFYW$zQitFP7WL``X}o1%88X5}yzq#h|UdU%uAL zS4-`DUm+h2Oli%%LcX-|)#+#Ieqig?>Q^Vmt=>-wmzyqI(JLbPwCa46Y}e;3`Cl*p znvx)5o**4J$k*KQt<|s9d^O~qa9q1v-x+=C^MW!o^(?h#e^a08 zUrERA)(=GcIy`t+vRl4ZzO=Qvd14wiIY)iII3fuxt=7uV?*Eu{57fj@>mIL^R?o>- z+sj+457yG^74k`U>y6FM&+3TIPw4)p`tPYDtbHC(cY>j8e$Ep`j*N^%=XHQGz(RFt4%&b%XcJI~vl-XmU?+NL7Q`XkMvhS^q zzSicox2qfP9_qR|Q{6gd-CM_M^ETV%XNj~yY5x9N^S#{M)U)(ZM9r6#_f@jl`)y;P zK1;BMQ&j#->Yn<&md%xY8ZwKUL%2!4M&3T=*5nSJ54+$FS8yllxx#@8Z%j7R_a1X| z+mzoYe2b7--x`US=a=vgMkRDykN(X$SM{Zit=A_(zptU42-cXv-ZPqG`>HGeB^0Zy+ZO>DEyWg05k5XwCns==C&uas9#|0D2G#X;%d#;XIrDHDt zSDpj(w%i_h$@DhkU3M`imynsPof%Xti}8x`IVnCue<)9h(1P`Fb(re{X5eNgI{+3;Z)ytict{AGE9M z3UF{w*dv>rm+E{E8LNKD`hNBJG~{pAdgy6VTWN;l^Q}>}l`DVC6voqsk5zY~Z3vIq zsz9u;vDcRWcB3w}L0dgRwD{etV~36ytCsY4D1O2CbiJMn`ptUVC;G{*`!vPm6%{QJ zER31wtA90rthV+a^Ai5o!m#qQTw!cb7;mn%kM%xWJzsGi-K}qp&b?|#n%!6`3_F+S z6i(lQvFfw>`~R!-ny-l>(~lafURyht`aS2QYtqyDJv*1lEm`ozl!$u$h+zG(I~B(K zqsOWb{cB;Qn}zWTpF|GQYv&78-yAzuy`Wa!>*rFxE3W<*|3PUrX&#g^lIB6_>k<>@K?U;{?D^1hI=-!E%*{*G z@vCiVBIZwjs#g8k(n3}f+82J*#_Qki7pgy{CAB7uGfm$k&>a$3p9-1#^Cabwq>p?1Hu@=xf;O zMqA}8Y8XD~^K6l?^{0&0=968i6^Z@Y3&C?Tt8?|fkj+L@3#XJ)uSdN>tE*;zO8v7X zW7S)mwe>+fC=;3>q}L`Ry6kEceqp6@^6Af0O;zzj;{uhqeC$c6{(|W5m4Yqk`pJf^z+$>|+;arTxy#1fGx8vAdi85XYq!GD%MOGS zn)qz>+e8LI0t-Z*{zXXpX|bOyDg92DSef6KTq4VA!#c^T933% z9PhvFOW&6`4X?bF1$$!%Y|4jIw$u}7b0%@;M3 z*=<%&y|VQxt6puhI(KTH%9p};d+l6;`y0*4x^im0?-rbk&0zjvWc8vkbjwrS^0jpN zSZ!UmaM|+T^3}A}359F6j$5VU?$mJ~*WV3uqZX)veMn`iX!*!&@0IPSY;QN)Am3`q ziEOK$#_E1%W$>9ky}a$(@DYp8#bebq*m9qtsUX>@S{KvJ4OuoZK6V~6FV+2tj`Qyl zavs5P!TpKqF?|$Z!g<)ZLbr~a_i6Hf{XOg8UMpQIQb$euxPNQQEi)Cor@C6luF|o8 zB(C9aX$SpIt$WLSlwi%ts9N6AXOsMNUNTl)VSa+TKw~K@w6?z1wmCV}Td}q!_8Ijr zWLuwq-7wduURHwf#U=wUL4FOczx>U)lyp0;wqA(4*F4czDOMQ=!$|g~dC)gmrQ>eW zamy`E`b2DKPM;#=>PCIC%ns6GWU4MTf6nIn?=16&b?k_a4c8a*r9UnGdFgrc8I&FM zop`pdYsh*QEt;D-Vd;v)rzz8`3#3lJ4pIeZ=QVqU=J$MtK4frSiUWN}n_{Kt1Xbm! z{<`WIi$jl&TdLzaYh^3Am#Ehh^*+ckdQIX{m95F&9Z>38+j^&bEn1=TjPO-2r~ZCX z-Ij=6fYq5V%1`IYvD)|Jt<8vX6^jLy&A&*=zUY*tvkFXveFOAiuEIx%iqka|9$<)Eedb;HM&Qi z*pF<8f33}G{g!pEl>?McvZ)n^ApVxdbF)hC>uJvyTU)PzQ+0ssJx0rCi?x5f_FHha zS)S>YwockVn@ehS=}od7lkIQq;Gp~}y?GxYRDK`wi(&d}b-K(q>)1QjYRpj0Uu@yT zchZBh(onC(qbF8rR@rV-eE0vbhUX?0ElY=am+SuYM(UZM&!ZQ{HUIx(q{9;J@49Jh z!nbdiNn0pQw>`mT_1J1@^Q8?qDfquj|F4riEd3!6`MyPjuB+bHcT`a4t>)i&@w4c!g5wp=-J zqNYr(ep;_%=iV~r)-O>SgvT&7@xQg@voqS&P`Dl|$2_fLHt3iK^xMLlc#MMja_F5j znOJ?%c7@vSTb0&R-7&07+fYWRV+W?FNsnA5%;kUi+L))GB6rr__DWlFhx!M0;T5N7 z|CGU@*47a#gUYK7WiXga(IXc_^0(%0wVM;$gs8r*<~%hSt5P@g>Zo3*{4dtOS)Wz@ zzGtkuLqr&p%2IbQ{66^x|CnjVMFnALzEb{s?j5T>qrY961Z`yf9O`YP^?NjAV*?24 z5ru0dy)a_FhUM!;`FbM4SG|oSebpcOT2$)lSZi;0|D5_`->kPC;cM04%hL9;C|9%P zXNmlb%Fihlr{3_hl_mbptk#D0%XUs-Y{K`n*GcP=W_5&ZoAqylw1v{DwQ-WDwunA^ zZ_uxpe3!8xSZeTpLvOMc^)bQsk0xhdjalCvl^a|;zGk(ahis^yua%qi(w0k`9`Vez zArI>Pz1G%q4rBwyiv!+L4=OZ#X2hFJ=JlWf}_9IJlA;u75d(3fp*$<3Il1t4_eV0r2#*{zk` zomPhGbDV;@z9CNq_dZjj`v^gvvNmer)#|T2Jm$W!r%&IhL##q+FSfOx;0wAwOUylt zJJ&uPGw%^S1Jd!fSv$E#T935gCS7S6J>IRADJ(TZ-7-6;VI6z#55}tZnX~$J2-;Y+ zA$GspHF>!~zXZP0Nyh{?GCJJ+wfAfMVPpNd{FU~dw(z%DG?QS;`3?PNEq`>br11L| z_FS!9{(9wa)1&n-g92y=_)SW}^Rj zwyM_r8NDmE$xdC}dZjJ#H{qpfO(V&)%viQiv0Xl6*&#D}<@zlBi+x`4d3>z8!TR(c z;$6f^@4VWw&I`Aj(WzV!?px{2g02>Nhx27pA6;pE%QjjB`e@CDyjVO``{drrNw312 zwRx<1L#-_h>h0+A-`#pfbn|~mFwgUT`C9f1jeA-jx1N8aeQ9n`hn~l3Bqj12v)0~C zzeerd)ATb>sP&h0#u`^yTpPSNd>VgikmXn#8|2*hT)49u5 z2kGVgh`S8UcCpH7@)E4aOq-)HHYkk86vit3ZTUR>{*&q%I)a*Gp`l7)|W00dd zZq_qnZk^MhZqNzXeQx`iwUH6?Kl56(53;ki*7;vx_xrjBRa#tC3*hi+9|>xdV7zIm zOuKd5b2@HcyCzM`u8kK@D7<>gpjitOq$8|xo{-(tYW~<|>sp}?=1AB*$VP>`*EgT9 zw(IYh-42At`Rsh2*Z$?dQC(;I>vf{4ChJel)JT;oMSTxjf4jSC)oNWbZC|7Ql#UzG z-|l?W%l6|Q8Vvk$cwGlQLeo!WXx9z5igC6MTOuF*&yM{|>yq@#_FmbZMtI@z!&h3D zWTTGTqT`~*q@UBiw%;<&t*H6+rtCf?cAfg;+UMIEOUs?5^+?;x_6PR1UQklQLTQv5067x7)zx0N%!N{R>v=swp`k4DI?+h+cH?oUq{*( zk4Vno0gheEdv$F0b7R$;^|xJ?T>KdqmnKP|jo?VF>0 z@34K^Oj{|fTiOAE;?@OSD{Z;7@0-@L#M)Ao>J~Ee=QAzw%XEvO!oK7KKQ0+R5=aqsarNoER!z2bFNo>|GS=N>>TDxTiBp2mNq}6 zS>EcEHc#3D{q54`xETX2>PV^h&6L!y{Y$m~s0sVsIK!RVx4y}-7Kg{Qf3x=6^gr87 z8&(t(bn8Ccu9@wdrG0&}kJ{IzeN%ro=GH$5 zj$2i`){C`onf8U(8tIj`Qd-=?(PsWvnty4#nh@ld57&GQG}zlY-HW~VVST=h(w56d zCqC+HvDWUfg7$Y5e}6MOUH5SRxPDI;+}|Iqwn_C_MBAh}ix%eG8}vNz_hX@NIJtU4 zlNxMnfqqR1&-VbQ#dnPr9aF+E0Cf`(Rdi~Mb zG5HQI$ma?s$OF$Qtk{;Z>YGf^X8oQqY15^hZ|zjer)vq(FwjxEfqY8AOumoPz(JoM z9qU%->owW<>TRx^dR6PyEm~XM@3Cuk`WI9_|2S6r_Va9M%caeiR)3xv^wX_P(i+-+ z(BC~*S})t1WcxiGXL+PHKe4k#>om}29Wm_$SJG9OlmZK7I-=udjgD1so2no6>s{~T z2V)D2+3KB$D{M~e}X;MP)dnq+1nQvb=O{jbbnXn9;i z7X34}Jz++7xAymH-v_s99E!*E|RPZRZ&6 z)1EX=aH)&;u?9)6i#Jqw=6}{rs_*_*pDRn5si$H6p4FCmS{0cigD-bYPFTwuE9HMk z{$FSD*Jf?pT4|3-%bK8bs*T-ss=H|274_&eQ`+*0a)W+oM65@q!#Zx(-^Z%I<2cen zaa}z%G-j-EJL_zz%*l7)iW`<%&nox`TZ4^!&ey*=UsQT4jGeiLSKD)sX6x|ux%X@) zpSdfWee$*PAN9JpOa9kL>yvh^{4bbi|;D=+Pykfy}uUUsBss@?Ydj8jEtAw%C!o6@;u&!(|Q!eEec~YHHhSG~TmxnHf9N6*0z-fgfr517CB zc=ZQXPwSG0zmrz?=d0<~PudX0e6wd>i?PKU4O=#*JP}nB_)oOcQ;Ih{4Vka;(C4Qdqjl&`3_h`?-m6`F zWu-~UYJHy<70=$8@{(+`=^qua5F+;d3u!wrRH`D)2+ zDqp+S(|wM@T_$b0wBzl@Q)yLe-!#5pNlvBi+BUV+&$>$9{a#@G9J?I;r^cr0Kj+)P zLH*}~;G--x~epUMWOg?}I27;wwg;oXN%+WnYz z*J2VpjHrjD#{JCjZq4Sk{@ma?JwM)KJhV=0P#%M8*U)d)H5%!%3`@_9QwN|z_g^o9$cS>6u(rnCONZJ}{N9%9Z z-QD(q0n;~2f2=|8kv=MY>fYnkskOXcug~gplWT3DrgBC$r<#Zn(JxSn*fsiKUi~A5 zu@_;4`=g;g*aZ!pPo?Y%-$T`WlVHd$7<*VJfBpN6SFK;@%8I%_SsPYgF*P*w5R|oH z*{+kVAJ4J)JSS~H+GlI=QN1+j`MI_C6Z*&Vrd=pSq10++HH1s#Z_XW>Z?x}t^~bd~ zxuKp5`opy}R4$LKvs&+n&YMBM-tx;$3TOWQ<8DkVs3U^&R!uzdyzP2#l~?Jzch2=8RW=ZGIZg#X6u5PkekI_`gZV ztUX}7_T5$12~5t=e9F^&1txcPjW?Qq+3s5FlLyx%s!q3c0$ZPnPW#{<&eCG$mo+~0 zuJP(D%QM=}(!af>Z9Z`P-*V4vdHp7Z_xyXttJ5qFLHcT(&mJfBSQm7r8>cU9Qv5M7&_mEk83N!X;Sh^A96_tw8v3S+s# z2);j7Zx4fK4|>Vwv`{M)l)(+MUoHDT)cR$?_13dB=B%m_t$k-r&-qo$MifFVGJm~w zLMC@Q?d1{6SM6U_|9jqe^@&=(s<$@{=N|NFf(JH}yO+V7DZ4hk^0zKoZ!6|YTPbZo z+VT3^(l=aRssqCsM0)5lp?cD1K_&{px(&nfb+3GBxSwZ2sxzYRO@p=(e)Q z58nj+(Ajq?{~S49J$PcBS1(`ne(ebR0ncnlJ^(b0PHR88)6EKF;nCyOD+z;p=-}Q|Ge_+GLgflAG-+vC>)0lzr6vl2 zuUTJH`y*fe`tUqbEd%qGl-JZxnsA?MU$U{bqvl%iu>903U+d(no{kOeZ;+0xt1;Np z`iy1I$@wYhzbul!A^BU=t+s9Ac?M$z!Si0#7MX^#oHy+Q4T@H&^*wxAUc2|%{p*^) zB;R||ZcZxq^=lrarro|xzG2o={$`^H>WM}a%Al-#P~qRC@Rz-Rym}+&Ht9LI!e0?T z(k`UtzuQfLu4S#Uwmx~I=B~ku@;fBIb82~6ozU=_3c-0X)-cf0dcCz3ldnPWewkf^ zdEZcf=Yy|&4eaxM;hc7aebHpXP1S|o{dj#cQ{+>Hk_d~Q#;rB!8 zZHHC$EkB)HMs!^?TH9DktN>bDwfo&#KmPQ3TV-0Ov?U?U&S{>s9%+94IO@ls4hpVO z(9*m?rD#GbEwHr}CMX)|u`t${zccFLS{Uo4Etclz7X^L6+H>e$yAM_8Q{5olHXLCe z%dFo?9;s)A{L=lKd|4P{^7okh*|ZPay7h1RJ*w}d{e}8&;yroa6!TiUUDbfRic~!m zjZPdg#s98{(<7ft&#H$rPvI<;)+_A{3%KDO5u4%e<|{0imUJCEozc8$hXp66C!UA6 z_t@+l?w6mn^7B^nqs@E|OS@OvpG?r4kns4oS|q=o;jJ#^YnA1Zn(^g6OsB&vEoR=U z`MaMOufB)0h^~8EHo1JRRMEYGB6^g~4Y6xl^Bjz1x->saJ{O%mK4HD#K50ur+JOpt zjkI2AEA+ROk#K&}IoKSgPCfLQP*SZyoGJ5R9s973wf<~O*sJQ-*Lr`dUJuw>h4JVnDEJC$WcARlcs;E!)}J@- z=358xQtO~GU0bDs+!P7;U;E@mIaeUxoOwGe)-)bzwguE?)x$+ef;i&b|H_n zui%-@y|NjVjkQm9jd>Q>vMfkwcR#UNHVc=IR~MU&;ukKwzkjz6;2r>OU78}1W=Z;pJz>h;O(UU2`} zD}QUv-v#5<=PW)N)OqEbt}ac%h{y&<*rd3}f1(#u!%t=-Z^NuUnZ7~KvzLum*IAg_ ztRLMjZIiV6THdcPmrLu@T0Wh8T5j#uv*c_3r^ah@U&D1uy{&3F))nnq4Psvg4GMcr zQM~M$-7kM*^7n>UuA~0D!C%mKo}=Sm((#)w8h7vJ*7Hd4&0f{@-SFFi+8ua#;(WYd+{TK=K(Lt*UU@C zYirS1K5n~D{Viz+PSp>k3I25_!`k2VdMQ{3Y)*9lq&B|VBY#s@)WfjzS}H9jEm#B4 z!qmT2($13R$D^z*yGhzIX}{Iqp}5qaCj{%ca<08C_eJGA^ZlIsw69bfY-y&=(s4}M z?w6^pH=%x>_4-$tIP|XN-I2X8mDYA0KJPo4FC||a%~y~gR1LP==<0phSR785&GIbQ zUcbBbZ@IMRrM=eL0Dbmi()$JVv<|-OUYZhB$Tg$b3b|bDu7AVwxo*|Cn_m^gMcuGd zgYoKM-pQ!;->d!quxB)y<9W3{EIoOAAXuBip5e7#X$x~Sn>4C1`um$CjFr#D_p7{L zJzllAO|FAGt?OBzEO@w{;n*+kKf83uO*($Fj{hphH>;DoS~Qg0I5$`6ZuxmcKIZl7 znba$`v%y&HLVF&2O>}+^?nlgD=XW(9@*0)zn!kp6zMgMvHdO1ARseM!8}4s{d)&qH z*C&5FUpHRe-SVdTBoo`IUK{AEr;*kc&`*7Kc&1*44nEgxvnuMTW?A7#O~VO3;OxrP zi2QGo|M!#k?Yg`ut^IoPqMDX)KPc$0YsQhLc~9u{9A>#p$68*V^F8&?b^Lbv+qN$K zn=fs#w3XBw;rp~;-ezmJQr5c5Dr`X?y>*wC&~Gb~tL0<;jpJ_qyv)KrYW*|2`wD+Q z%Ti#rs)U+nH@|ALd_65+zqIpiTD}>hck>@6-{GrIzg_h83)*RU4$@=Z1DYT6McpHt zpw05hB54by1@llE`kFx+Ys{!|Tt>H~XX#zWhcpykR60GTg!-{HEY_~9m%lCY7tEUs z%Jr#1n=@Pc9@f6tm&Vy*s@iXu8z>OlqR!EZL6AcAjkCufJX2DVSENT%=Y` z?UhV}@MaFFzLMSH*lFDVFdvsW+Bc|u!FMZzxYWOW+pT@~YM;*=mS2`&Z?EpyX4*1o zcgk+pKymMxt(LYy+NVrwxMuZddqLf#E}S}+5iOfmK#pn#f-twp|7Q93&xR}>vG1#V zNb_@#x+Lu^ZA988+plK9=9im|>7cEy1Kl3v;RV z4QZbb)9hDCdrX?;9oL4akF0BN*LR)v#RkT!x7j|$hdLtYr?gyK@0{569hU7%+4}3o zv{_x>b0=KiG1=WIyFJaP^2~~s4+S5Yw)pM*pyH=}LHg*oakjMkrR}7@Z8L4Iw2jhy zdRkn&r9CX|on};ztGfRyrfP=0QbL7ayX^SovfV6O>jT+l$M;KnPFgTuH8?(a<`o=& zUc>SC%XUn*=Fc|kGYm_6QQGHB(DAR>Kk8C>i>RE<&&-GHebZ<^L4Uqp&)e<9IZ=M> zy7tJ=O8L3k;uFk|y}W+@+Bc?s@3DQ_EKT~Q&AN5G+8ZcNTPLkgT2S_}+aT?x2JJCv z8>B4=9XlfJMQQWVERVb>t@AeSbzI)mD4gyHH5WxsgMxP%tS_weW zADOXjaQ(G^v-ZE;_G>e(TiT1#e7QDliL}_ddf(2pWzwcMXse~ol;-Ejn%#i3S<-^J z_WEskAv;OIz3gMs50vh|S+Ux_kH`1FgH?TJYV81JztlAQ+>%@A%dYj*M^xT# zAFpny&07iP^F__EY27r{-Op-g?RLZl^g-eRH(} zm#b=1-!`hx(4}zhwfNpWUj4AOZT0&8v>BZzyStWPxIshWHcwK2Yp6<(H@Xv57d>L+cfV0~X?gkh9Vwb?> zW&B~;3oDz1)qa2z`w&7_B+5m;oD&X?h4-sXTx{GL*NncP5wXZRNQM%V!l zgnPqx!7jJ}ehB*Of6B!!ey1*Syolc$;h8W4v+!D&hu?$`!6|uH&fWyizuo=^Rn$Ib1Co{(}J7S`*oa{0&pwlQ$8-x%^^W7%H+QpnG4 zA^kRVyY4m?@9pmh`LT61yuR`t7q0!b@pG?#1$+B#>pvK6yEEjcUBA8ljgY=4y6w9g z-SX^S`e&Qz8_+GD|7oH&)9(-YnT2Ni9tin)vkBVF{*jQMjzD$#qai()K-u9}DYk`e(H5@sNN29K-hg6y45uAN}+8PoP`=3G16ee)bL7KZ$PX z8GNb-9aIJkC6X&OZVG9Lf6qh2eW-|4*9n^ z3x3-sqzBIk*)cQZKbSj+zE{ZpVDCiyT}Thtw(8wrJzRhOJ*0>0&uT~y*PpGS^9t9WuL+%3 zxc=M@-SSDe{@fv?hwIOsLw>^b=Nm%y;rg@q`RMv{_mH1({rRSlpK$#-3*FK)Tz}3E z`3cvbM?dPyqg|J9{rPt6O%K$)!HfI?e7zO|0HZ1^|x;? zeY@uGSNwfN)G=Yrx1YZK^Y<_Q{v&J~^>;t%^$77_!|%25CO81sLGNolzX##B;RDd$ z-#x*}}O<*q%soZoBVZSZM$J-ij(4IhAy!6)JK@NaPY zb6t45!?(f&?1Bs6B6uqN1Y7~Hg15l0KtE1#H@_c(CHNft6MPxAoaf@VGu#vI3xD+? zxBno1FM!?fBk(MkfhWVu;0}+v^uC(kUxZ(U1^9jVQ}`QLgrjikCtbXDguB6g;DPWk zxR~pG9KTP1jrrvN_V|gf-+%Xli<$pD*6{l^f1J4g^$oxG;zmu=!+W{v;@^vXmES(xQGU1Ias%7Up0c7GM#UU>R0mTx-zVwhQcl37CW_n1&gcg*ljq1z3b7ScVlC zzlQK(2TZ^uOu;nFz%0zcJS@N>EWt9Y!1%R<4?AE2CSeMuVFqSl4(4G27GVjNVFkw5 z5I*dH37CW_n1&gcg*ljq1z3b7ScVlCzmD)>2TZ^uOu;nFz%0zcJS@N>EWt9Yz<7@E zVFygWBuv3H%)l(n!8|O$A}ql&tiZUfrEU2icEAKo!W2xy49vnD%)l`z$8q;G|a#(%)vY?z#=TcGOWP3);kXJ zAMAh$n1m^qh8dWJIhcn9ScD~5h7}n9BH_ahn1D%`f@zq6S(t-)Sb#-Xf@N5N@h=fR z?0^ZFgejPY8JLARn1=;ege6#p6&Syn@L>l`z$8q;G|a#(%)vY?z#=TcGOWP(0O7+9 zn1D%`f@zq6S(t-)Sb#-Xf@N5N@mmNVcEAKo!W2xy49vnD%)+7=5td*XR$yG~UIyXA z4w!&Rn1X4TfmxV?d02o&Sb}9(fpM)X8H5izU;-v#3Z`KOW?>HIVF4Cl36^06#%*m% zZM(n@n1D%`f@zq6S(t-)Sb#-Xf@N5Najmx)gbzDl0w!S!reOwVVGibD0Ty8imSF|P zwa#G>KJ0)An1m^qh8dWJIhcn9ScD~5h7}ms`h!9EumdJw5~g4pW?&ZPU>+7=5td*X zR$yFf`32#_4w!&Rn1X4TfmxV?d02o&Sb}9(fpM+R7laQxU;-v#3Z`KOW?>HIVF4Cl z36^06#s>)>cEAKo!W2xy49vnD%)l`z$8q;G|a#(%)vY?z#=TcGOWP(HwhnhzywUf6imYm%)%VZ!vZYA5-h_C zj28$WcEAKo!W2xy49vnD%)l`z$8q;G|a#(%)vY?z#=TcGOWP( z2EvCOFaeV=1=BDCvoHtqumFp&1k11jZ^ z;lmD?fJvBwX_$don1gv(fJIn>Wmtjn?+`xhfC-p{DVT;Cn1wl*hXq)KC0K?P7{8zJ zVFygWBuv3H%)l(n!8|O$A}ql&tibqp2_JUA1WdvdOv4P!!W_)Q0xZH3EW-+ne~<8C z2TZ^uOu;nFz%0zcJS@N>EWt9Y!1x1%4?AE2CSeMuVFqSl4(4G27GVjNVFkvA2p@L9 z1WdvdOv4P!!W_)Q0xZH3EW-+nf1mJS2TZ^uOu;nFz%0zcJS@N>EWt9Y!1#lN4?AE2 zCSeMuVFqSl4(4G27GVjNVFkt?B7E2Z6EF!=Fby*>3v)0J3$O@Funa3O{xIRg4w!&R zn1X4TfmxV?d02o&Sb}9(f$>KOA9lb5Ou`gQ!wk&A9L&Q4EW#2j!wQTS2_JUA1Wdvd zOv4P!!W_)Q0xZH3EW-+n|A6pe2TZ^uOu;nFz%0zcJS@N>EWt9Y!1zYOhaE5hlQ0F- zFaxtN2lKE1i?9UCumaT!6cEAKo!W2xy49vnD%)U;-v#3Z`KOW?>HIVF4Cl36^06#)kl`z$8q;G|a#(%)vY?z#=TcGOWP(6NC>tU;-v#3Z`KOW?>HI zVF4Cl36^06#(zfmumdJw5~g4pW?&ZPU>+7=5td*XR$zP+;lmD?fJvBwX_$don1gv( zfJIn>WmtjnpA$apfC-p{DVT;Cn1wl*hXq)KC0K?P7%ve%?0^ZFgejPY8JLARn1=;e zge6#p6&Qb#@L>l`z$8q;G|a#(%)vY?z#=TcGOWP(X2ORZFaeV=1=BDCvoHtqumFp& z1k11j4?J9u{B`mS7oH zVEosF4?AE2CSeMuVFqSl4(4G27GVjNVFkuV2p@L91WdvdOv4P!!W_)Q0xZH3EW-+n z|Az2k2TZ^uOu;nFz%0zcJS@N>EWt9Y!1%L-4?AE2CSeMuVFqSl4(4G27GVjNVFkv2 zOZcz@CSVe#U>as%7Up0c7GM#UU>R0m{5ish9WVitFa^^v1G6v(^RNJmumsDn0^|Qh z_^<;eU=pTa8fIV?=3pKcU=fyJ8CGDtO!%+^CSVe#U>as%7Up0c7GM#UU>R0m{J#kw zcEAKo!W2xy49vnD%)HIVF4Cl36^06#(z)vumdJw5~g4pW?&ZPU>+7=5td*XR$%;p2p@L9 z1WdvdOv4P!!W_)Q0xZH3EW-+nZy|ix0TVC@Q!ouPFbi`q4-2peORx+pF#ZR^haE5h zlQ0F-FaxtN2lKE1i?9UCuma;R5I*dH37CW_n1&gcg*ljq1z3b7ScVlC|0ChU4w!&R zn1X4TfmxV?d02o&Sb}9(f$>qohaE5hlQ0F-FaxtN2lKE1i?9UCuma3v)0J3$O@Funa3O{%6969WVitFa^^v1G6v(^RNJmumsDn0^@%neAodKFbPvI z4Kpwcb1)AJun0@A3@b4HBH_ahn1D%`f@zq6S(t-)Sb#-Xf@N5N@xKy2?0^ZFgejPY z8JLARn1=;ege6#p6&SA&KJ0)An1m^qh8dWJIhcn9ScD~5h7}l0{)zan?`QS*810q8 zwKur;E^Dt3PTeMWMRMA->3TJDhe;m%`gsTRxc6TN;4mD6i!O71Kfv!LaQ4UCaeWPT zK73>N-wZ9f@Z+y)jRh75`R}LP@%CP&x3fsT)S#PYTierhd;9Ifnbn}%KHJ`fZhwdU zAKIYXe%ls?bo=f7ry6wIXWL2W_TFpQ|0f&tz*zrfL%M0+{|ybgxBn`-UAeITyBc(F zUkK@@dH>&O(7pWw=;5_yY~OH$?(IiHx@q43XoK$UtLWi1Yi!>RzjD{n>)!s2A>B0Z zf1d{3+rJ0h-un%w&w>Ws+b;^~rg{JA2Ho3#65ZY-4*TzG(7pZYkZzjyzqUd5_P3$i zd(>h7cQ@$Xeki1y=KVk3pnLnL(CxkHu>U_a=-&S2kZzjyzXR)r`1h~9{hQGJ+D6`f z-v-^=&kgBe{|g#)Z~tL*TVo^~|0NB&x9<(1@BhpO z-PVUNbZdE`{l8~pMci!#vebCQC@4089z7qYH z4e_~7dQ^Pw#J>LiwW! z>fFT6M;|AiF10n!AH8d{^Y7#NdFfNMa#}a#-LLcTMfBJ%t{ylL|LgJ7A9t&#JxBl# zW8aUx>s`fSKSA%rzw;K0+4tov+%|N-=GuRukKo6zT{wz9i0;?n_`7sVx1oJpd`=}p z@1lw;I4|t|+unPk_oDmw?2X=q?!2kLB|Yjo`tnN9qkkNxxp`zxE+=dkac>gt|F9em0Ol{q-Hf-skh>*bnXM>~G+D`FzsekPbed_n`arRMyCk zoo@`?=c}9XzYEu~o%6a+dQ`r81p6-RF^~NKy|+QP$7z;se*JTAZ^H~zv}#M=FI~>( zv|=v>`i`~rX}tY^szYLa{CetMe~0ubvDd}?dN*D_MtW5I_uVsEUljP68S5uL`Wb9X zn)o?edT?G-o#o-!e;PfujnluZ^RaD>x8K(3-{QL8h2FcP(^oq4*rVvNot*B=%d_Zx z=-iIRT9xlCK0THo+Pd+x8~Pynr6lw_(Yy9@_RFz97JUf)e(cXg?|Y}SKL`DC^wBv^ z&!P`_`-Ic4ME@>&Tks*`SZo&cVF|tKP-p)(?Eiw^bGXx|lAgEgem3g*wy9%m>Ckt) zv+w7;+R@uiaJnz2ozg8IZfMAdhocXo`*nwoM_=EdpB?C`EmpexJezPYMIT|kC10-B zpbw$9WB*m@QRlUxiT(rc|1uZu80q#TdJpmO{$D`vLtljb%jjJV_B(5!!0L_m16_-` zjCj5ceE@wC`oYqp;@^$^$orh11F`?8_tT)C*~I?SP3-%d*x%a3{vPR3@%*0jpd8)m z^2tfWb0-ZrMA>&KV?^mc!B6a$&d+N|=jYMeo^tx#v`1C+;a@rZSGpdyZQsQI&Q0`L zP4xYm=yRLs3#13-=ol41ZS#r$2~F(ZqpTm54r%<1S_Pu*^5Fki?B*u+7dP?03O^%P zIX}MN_yzAD-Su)~v9F=Wu6FjW*R6HM(1+1|d-^N%-p@PxJ=|r8{aJd{dBqihAfNoy z+26u>wWGH^;q=?k-z`1L&)5F!{B*zQ?A`yd*s*)P6oo@XD+a8r370;)zA9}m9_vib2^xnOl{&VulG}Y^tKHd8| zy^nBbqYqoftF06Jx#+R|ot{Tugg$hD(|tR54tiI@=|2g)#bTdBZ+jQ^`1yvnKgj7{ zL*I-(`fjIp6VI*EqtanJ-B?BGyGgh6?eB4Zo+Um9p%0(zbgGru2b%af4g0nMXMY?S z;u7@k2b?~r_}O+t6F*;WqJIxR?d_^?v|Sebul3T=2hp!Y{{wp0p3eR`^w+3B+4*+v z<@8<2KW{+qezVi<{?@kry?uw%uOR)8lpd9yA8ewZ)d$)J8aQp<{srk#=k+)2d*AQumlMzJnzS#w zHqqbGMBh)kU6-~^&cDCDhoTRl`~KCb=)*sE_Fo}BE71F%bov>j+imEhzi|3{&>!;l zFF5^or00|9y?=Ci34K(0RQmkg+rQ-O_a#2lRk2$?Wb`!GfAII?J4v_m9r%Z{Ux58A z^wF1{emUX3553PCTx~1SKY-rGN|@dF`8ayd6g33ePDfvfKHTE;rL-4cMDKo$)9)vJ z?(zP&bNVeV_}C-pu|1vsH1T;7y=yP0znO4fK=1uer{9kMm!(Ig=X4FHMCmi7Te|hW z-}zB754L^K`_TRU@4@H;=!al`9Qw#{&W|o%uzgH=RJgxx(r^D^6Z`X<=$AIpuW6#+ z(M11N6TR3(|3wr1_f7Ox4b()X!+$i<_iv&f+C)FTiGE%aeTDSkx*xBGTiap5|FPKT z(TC7!c4D`q4>#!FMjvU=e}q2Tpg)5iJHdtP{r?HQtwC>50k?RzH|VcN?`+U#qjxpv z2cdVPKf?Kb$ooIh#pg-%lh9*}o$l{*&p_|}h|^P)#|--LN1c8OepaG)o#gZ^`nBF3 zeKq=b(0h8E{f{ZvMf6VV_-VV6cJ>+cp|sQ2V*kAKsQmU1?7Pl(_CxsDMdi`bId-1Y z&vgi%7n|O9krS??e(T1*z0c_f67E^(J)d#ir_HYx9Gn&@{n(I07|mzwCmZ=(OB zi9Wr_{fHk&?HO|C<;PL|c-qKCu08Vgq#ySiLRYc}n;+jBKzB#!8x}e+NdKpu|DSn# z=~H4m#YQf7_w{|~@0K2QeGkP?-yGL5JO=v{(L1e!tu0NyJrjNK15O{t{!;JfgHAsK z{Y%oL!o9PJeoqtqA^Z=Y=luKerDxImmpc74!nNVwAbrkv`sL`mNRNuoEbKd%J9~e> za1i<+`cLrl0rb9$u_t}b_x6`K{Sow=y#1w4_xbua2T z8}_>>V?>?To26SijNanxFTjs|uF>?~TPNy=HSzNS><4al_I}*&Z1ncL)9<2OUyVMp z-syAEzvk_~>hy0ApC3t&ivQEt4?XDYPsjc#^v;Kz{$=#vqmQ6(L7$<4YdhcJhn;-^ zeSh@+N1XmQ()0aZ|AEte{eL$4$Pb-(fgio`aaZ?Iq6a7^%d+#W3C6anD{(^ z-aWd387F zr(I1xM_2X;w(k<3e)M(dkE3^GoqzwF>v!J%a;GaA!8S!VZb5pka(X-ZuINKoIQ>uf z-{0$>b^0fM{Hn0+u6i(TRqUU^y&Vh(|JuNwi9~iE%?X2 z-RrkI{jXt;E*9-U`$vXdB#^6H~QTE$4@v}!0 zecvW}mvp->BR9KneLeP}CibT{(JyMEuWq8Rm2Tk7dQ`spIQD&iclI|q z^Vm}9_PlR|=Xd>!-Hr>fZ-2?zAHwxoh2HxQr~7`(_2?t$4`P46^x(PnyYz=`#D639 zgH`9}6zYfHNRNvDAFvA{a1y@|yx`G|}Ez(EQ~+kyB=;Adn9=jTJ5Zx?#k>zw`)`h4_G8>rOg z`x_sT9;6TceYojBpAj1&K2*1{Gw?I=R_Ets(&4kxqtfm3_#bKTKhVVfjwbru(k(rQ z=DKh{Lppp9z5BgRzaD)P`Y8JL#IuYZ>vHz1v7fGw5t{#gbU*I;CiE^Fu+{cc?Ds`) zKg{WQ^!ez+=tJlyd;jyC{TGSPIq027IQ>4ZR~CJAzS9Ts^F{Q5Bb|OMe!eT+uH)(N zcKO6#$BpPc4f-$8W9a_+meJeMeSZ5B`l1H=mjYe+|En(l_u?r2Ch`^b8;Spp=v{MN zJiWfV^x*oQ=+3K`^Lh*RJ@1)lzki@>zR(>m++o_y_ezh-hle-OkCSfUw%_5x-GlT$ z1-)xM>5u>A(yg4v?sMTT^VciTcZ#)Np$c4Ex4T`5U5nm#t<#5sz4~q}{zt#+{BPoX z?+ol`#@gTO&eva;Z=ug>(7%n|g+74)2k}4rb?4vD1Nl9A&!E#+6Yh+5mky(MW3PUL zZEtIL=iB#fcfO|ws=k>U=sU%_u5;%#8~rfsd$8AVVz3<(=sU%R8ti+}`x^95pvQ6( z{eKF*3%x7mw#(4_(0x2VkKVP$`SJQK((SqrJnqgnq5BZq9%{GqRXiK)e#~P*%Wos!aefA{f4lUk z_#~R>hc?lVZK9tf-Og)tit@U)_Yv-C=$$Q2_u~WSqK}|Ihy4}k!>!K#GW46#d!{=5 zcFNZ`(PKL}{Tox<0mIUx&i6^|`*wEr_v621FRsh$o!&!wzD;_Rp97odN8o4VUCz&^ z@qa3M&w)-qkAnIcZ$H=ROp}V;ir#sM)8D{(`SHx|L!Iu&Grx;{Ea~)X3D=Kj_7z=z zQ1u&Zemt`WUAIfYR+68n^ZhR$PkYd&&7W86f4X$*`JmJNd9|aDEOPox`b%Btv5z{v z@x0nka=JgS6TP2PoqkUcy5<|VxO_geG5Wj)(EWKWm7l2dT7m!3bDjS)@bA;7m+vOh zU5#CXeb0H$-nYv>K7H7`SjA#@U>`f*+5345kDw1`oPGk~`f=$2{Ajp4*q)PpRQz9P zqWk!F+JK%m4Oa%+OHJ%wJB$2(i;K@WN?+T2xf{IA>Au|UD*LGT_;3e@UASsKf^Bva z`*#s;>@Mg3QtW*`???CfA%*?mgUDo7k_D9`qmn;_TOOzTZI~Lcf;ue*(Ry;_ScHkUni&Cx-i1?EC-b z^qnYoJHFY4+u!1H@^A3d@_whsc5u26_pR6uyw2%QQ~w-~-u8N@{|rALNAKIi=?}KL z9X>w~{?(-?-GtZ*?7R1L_NQ~cx1tZ7>-6t30O7AoAAXdLgYACVN9DsO@YBA|`8kOA zSDM&w+u_n-+f^AjDqdaKvzFx4_6`* z*#E4F{wwq$>|cj{S$b4_{wm$_|HzrHr*|^;+rP!db2jmeqwg#|%FkZX%}-yi^K%XM z`=hs?>+~$TPtQSgpPmO3ZdaE}hc4`sfv)@Oce`}ZuxhX!hu($m&-bI~?dZPUIRib0 z?(=^JedHkL-`6vrK_6<+uRv*X zZ$tO(NC|!PK0*q`hDpnnMcQuJ<{ z;Gt~__469^p1(N#K&7v3zI+Y5=yYGczJh)GnA4xz#@T-hz3pYEe}n=*EIlgzzr}uN z2X_Vk$GM5U)Wp8+tL*WI*^Yf00etdrDTHyS+v#a-4 z+tC~IL##o6=RXOzZ{fsn50$;;lUTRYk06~FH}SKyiM|3qqaSg8?7b=5Zfat`9{Yh_ zXYZd!_;lz_xpeU5bO`&wPdfW|Irp*6K3w#lqgT*}mpc3PPN8obQnZu zZ|p4DN9FSiy#LR;a6jeT#I8e+UE_2=uj$L^y*4pP+o{<5d_IEi^Z7$f!hHfiZQpW! z+KK=3(yjk+KkegG{Qn7kBl@=JF9o{ZH#y6l>B;z+`gWH-1E)BB8To3O*Uy+}zoXYb z;q(LW{~zch=sum>y>1f&wE1w~hTeYK#BlcubiFs!a9&5E4>p`vk95l?of};GC|d^G zIp{s;ccEW_pUn+^Za^Pt(7%TMe1rad^iAj_XY6tGVRV08ej(lBIdGqg=SPUo7VL)_ z>|aD*-w^ILdq?NbU8D!~%+H+vgYdr(dKdaxT;KW9gZA1cW@u}p9XS?#WSP_7!ijx2 z(AA1w?^?#0*q?-bPoJ~j75g*M+b?$dw&+XIhc1|?U*zpS<@96lzXH84&l)a^MPsQo~LHp?Iy@AVIeA@B< zqbB}K_-Su(J)BYOe~aGM>hvV()_X4DPIdZj6l@=E=jU9w)A8f`Idjop<8}G7`1ehB ze*Ag)`mh^&=Pef7(j@-1^x1u)A0MCDS33{Bz5Z(xKhySc@##O<`N?s^c zeG~nEvx)ss6a9xx^e3C>Bhu~qwqNPO-9S3{>(cc_cU^q{$B!e8T;=TjIMOJ7`mb^N z_N0T)SKavGE;Z)!Pj7?&o%W4Rx4orXJcq7#{(XINR1^CXvG4hUv%l0`-q;!Fqv)&A zFG26S(b*qF{BJ@Zy4mShlRkH&ci-al1iHVD{kJ;Z=aZjc- z4?F!Z{G5nB^3#d>>FAw5bNVINpN~Gc$>~Q@9xp|YJ?ZpQ(XT}B{e{!7K>vcbf7g>J?eV>1N*`KoPD|Bx(v*j=zr#Z)RPA~eS6BC zuP2A@bM>U#tM}}%?>yKkQ@3*`?CZVQcbvVyukrQd2!32|LAQbO6BYl(`0rZa{NLo< z$Id|?L06^;w$FHdp|kJCehqr((N2FDeVugc@AVD2c+N$yoiBPD`q%LjJI48Gyk5h{ zI^AC{pAMt=aeM3c*Td+p)Wl*B$bVEi{K$uUs`Ky*;`0>x2>O>O7k@zSJHy%UMEXqM z-(BBDI(BFaHbGFmpjGr#_{$8g)i~WbapL3n=$LG&NZ(r*4hy3+I zAI&)Z0?OU>=)KFFzC9OUz4yP$={`R^AU!hOuphp{+539+8T6jjPEQf;7WAPjo&Fup z>+k4&S2_Jw#w(`1)1_zU8mAw|dA$+6FX!|M{(ZUbTkCY6Pu?l}sQAxqq9>(WJ=ygg z=f~d1w$1w=df4gSf2xU}Q<~^!OSk*zwTHN#4AGBW8t89`b#8L^JHB7t-^9-srCU4) zHtiI|@1fxTdOUl7?sOl|?>F)D7=F4(oc-fGAn%nUg^u8@lU(N~ma^1h# zm3Q})Cl=dwj*DmP1!unl_HRUQ`=isJA>0GdN70`^pN~E~>g?}8KT&$r^*yDD-rGd~ zH2&M(zH{JNw-3Sg*(UbaV(-^iBiqJqNB8TmdHvhyetkBtZ$$U&w=E#tU!(i=-Ht;4 zD|#R6zIppL4U7csJ37rpY?gGJm(qTN%U6B)`N5l`)6M7e&cx1vrO!Y9`u6;nyT0xC zd8hnGrGFRk>AA}Jxe)tf&_~dBrCgtf9{aqrpVd&VJFl4-pDVEM{esi~K>h6F+5W=B zc-|`esCa&(iSGS$zc?{Jf4hl&k@yTve|>PK6qne~(TCB0M>@RN#7}F&UB~t|=Vuf4 zyGoCWzmMk-@!S#ny_(q1#((Fo&cE-^`}sxfySpC6M*JLzecNu%ehcFdbEOCE`(Jkn zEPLE#h#iAI@>=JoiwG^jPi!ye=Pvww%G(qFe!^|GZdEq0Z;P$VxcrQHfT;9YL%97j zX9PCy;ecDwd*1FMcnk&dTj-q!yN2;L>^FM-@*M)@W-jn=(1&@B>GtYcy~|z4&Q6yw z*WqV-^dWnJSKCwQZ$$4IeqErDoU#4T`+mQDpx=f4T(5u1o!4oUmqqC9m$;aWp=Z4R z87}?bkDqJ2{r)aQE=%kS=)H?vxW1kJGWtNTOSgBEZV#f5obUAI=#NXE5_?0et6`m` zUt-^RzdK)sxns|v5B9nExX@#;P|nu(Q7p`@_*YsZSJKu$_QD{52Qu?dWOrp{Jbx)6g&W{{QN9J_8ZE61{u1OCNU? zVzDoxx9{TY`|$I1^tRhw`kYJsR`mAYaPi4uzZret5AMAD{n{39e}u~?zFyi!1GbiK zL!Wp08s9FX$5uN(J^0@ny?wUR&q1GyKJZZ&|7W>hJ`R2OKb-#`VZRuCDCMr~9fbRF z>6TA=8uG~n*!TU;*}sIJ%hCHeU*BK41%2>yE}eb3E1(bk(3QJm3HL$o=kG55E>&Z( zC(wJYb@5+^{cpT}sY?f+KP%|nUv_?2E-JRuyIneW&2{lPl=RsXePE^YLve|9p^yB= zh3n&UB6|B&wmN}Am{a;q}yurt`6sC1brR)0QHZ5j&nD9+sQ87 ze7X2OdjI1tf8K(h&E8K#`Q3s(vYpHM_MG0fsj85Je#?IDe0@6XiQe}K=YJ>C?Ev)7 z?~^|GIU2pU;kumS{oLsMB(T2}z55jB$M=`kpbzZk^rKufW4E9WR-OK1^zWh%UGDTx z;r~(eF5cfc7W+-;{l~iW{}cAlqj!GZrSlvTqKZEFkh{J=#ZS9#s4d-k_jLAqqIaT? zY;`5#9`w2B{p(zgx)A*+Z-1oApR=eZPeLCZcj5Z{(2L$X;^My!KbN5Q68e1@yMFou7AeUiYAP*+Mbe_?$)TVf6Nox%i~0_?|%TKHAy){O~{MeLr{U^H%)7 z=6&R!6I>1U2=Uw3j`(&z|nQ)ZGfU+q@rJXh_?l;Qv@`5WWA;&d+P{vl%^BaPjf)_iaHR z$hrK#Bk_3&y>|zfA3lZu=?A-X8~Ptt?mDpF8-3IkiqYol+e6UX`ds|a#Loh+@8R_A z@v{iMoqnTlU(P}A`K+_|`S3FIk$v3xK92uey`Fa-R7`@cfIh@^xd;6*uixg<=L6`^ zpbvc0=_jK99=&~u(}&SxU8K+UF5TXN-iAK%|Il^jfiqSA|G!9O%ODidWXW2_Qi){j z-j)oqt0q}PMvM4pnNYTtDMb{9s4Ou;Db#4CQj?@jH5Jl6sZWcN-<|t>ygtA8`}Q?| z81KhC=XuU~o#mc;?zwkXE1!el=fIPn7wzxOO@Bzd3i|eN=Xs?&65bac>8bed;&?F{ z9-yDrKz|E7yFl&vEcku!^c%{j#s3L-c$EAvK>sv6@RaJM8TI%sJXccrzXSaz@L))K zMak{o=JTG?Rq5O>wNpH^k4S$N$A!u+&(D`0=E1Q{51snxa}DKV{$Y5mtMdN=U+4o* z)D!11f6iEV;AW+}mHbaK|L%&6_3K;Vsd?i2&?n%rrpiwO{xCd!Q2bi>YUBLS3B`4G zn$M-mr{!lKJXB2iT!l{#p4uYb6kf8u;+b%i?nHP19ymqqp)uoI4S4)?MRG3sCN9sf z<0X9iB`!uE+#{ds(RVezN$Jjk4>8X1=w-yTmA@q^viocy_{bu~Xif35@SE6G+ zp5>fb=UdNJ0;N1&)(NN7ejXv+8t~jy<)_L?`k(ZL*R*?GH8naYV%pEbdBEtkNzsXou5uMeuexM4ab=e4{^RW5&sn~&#x~zDaBzl zd@cH5ceShK%%gU|1N~HAADyHxd;m{9rWAj`=MQ-1n0%ttZ>dgd&!OqcXD!-8EqHdi z<_R`Fw}MCZNk5SG*&80nKWNK+B}jK9JegIxWYd`p&v6_yeh)m(c}f|49*3t^sJv9K zv(@}L?=b!rJiJpmpI1^wpTV=c#V^DE2Y4!|a?OGl>#X=>7ph!w_*wAOhtjWxH-)E( zo3-k8@X)hrKO50s4tE;M=K}apc$V`-^SKe8>8*ISroJA8C+?7c1fLb~+$NRxarhQ^ zl=(m-_*-y?^;m1SpTNTz_?PdZc;@D)ymsCZba{R} z338pNKKe%Jv)!e?l=8NPN0+NyZu9nDJ>l^R%4ZMwRi1wp=kU_%5WU@mKAeAms{3;P z^jr?d29Iz&x*Yu>c%1oCHF)u^ zid*^@`HX^}36J~QNmF==es>1?_VBYIp%W#PRxk_(;>AtrTmL|6AeF{DTnP*KYK4;qgDzPTYf>_gZHD z8&ocf+g6w7+rLBmxAE|G^a18qG(%?(+-an^+5GS;cx<}(0rL4XJX2NmIFfvp=tjGu zUzdhgfhYb@d$aSkTJUHK#m)A~w}$8P5B79l`j-1UdGO3`#b*Ql!{N?w0XTfN%LVn-}>Vw~0eHNU_zdFqCpG8#{8-8BeLbNs4FMTX$Po@!Ui@o8^9%;&9shr;9Q6rTstkAcVT zRy^%G*K~O33F(`n|L|JnKhF7`u-40HykFN;13PyMa@+fiT& zJoujC^Emps@C?_-o51J61FZYGhdJ-H1|DLbY2)oP@F?s51JLg^|NoZt$V~Vb@K{OZ zXD|an4xaX{S08tI{=7KiyN*z{r{b2{ulBr__|$>Neo%Wp!no81?lh9#?#J&14;@lG zCz8+M@Z=2n)I3EW+zQX;A7t&m8VNgh!-Kwlz1aN8=Z)w$m`^{YoBy4j{3`k)R|`XW5Tyw39Zw(-A|pLfX50eFz} z$DQ!s;GxZ@d8B~+lF3d3*1@B!TUy+9!ed;QR4q78*8Dq{_j2+aargtC zWqfN0FB?&O9M-`s|25&cT8f+ThAz(^-{ZdX$ zG3Ln@=VRu>aiK5cPoTHrnd5qd&3miE)5Ya~7V&QgPc~P%CXwz1<}+0BZ$iR-;m%8{ zUmFL;ng8R8v*mM!%k$^s!OwN%isL^IefAlpdjWCS2oJHop-&xW2Ryl=g6D8GKA)KW zh*CUG9Daa@rv^Obe)PYa59ilb-m-2-$X^#r_>K!_x;#Jr1leCFH}`j|(1)&6d57{r zb9nBs;&V3XcJzGCaFVoJo0s-NAHP-lMbyhkc=RJhAd1gSc(SV6+xhT>>3>s;odbUq zo@Jf06nq0byj=d)zg~r>*q2fU{b%rGJ*8{M{p04tbF|{<%k^d4=wE?H zK2bdRxhCgrc&3wl?6~|jJjFV|Irtof=Srx4?|=s`SA3EyD|uu#JO~fao>dCRX>NS3 z$hYVVT%I2fPvtob)~-gN&m2{{>NW1Zb$Dc*@?VMemVgHvYJ3=h(Q``@!PCW* zpS6rv+u^}l^0DiTZ^J{rb-#n~D9@!i3;$#0(@Z{<;nn&pZmE5033lFhE<8*gymjzF=CeQ}$*IiiM#G&-%88AiQ{kz@(!Wl+_rc@es2=ywP?o?W zLzVyh@4x0>Tj8O%)y_wpEWXe5`3I`IuO`CI_wXFo_c<+dj>E$#wd9}BS94D^y!}pd zm2(>>&xa@bE8Rbtw};_QFDWmAUj`4aDcTN47$-i>NjDCUek~t6|6Kr&bN}P^u7z)hN2|;KNBDd2#472ZgC8`#Z+trn&rpx6@<>cMk;ld}i_QPaG=3<6Qr>_}7C+9#uZiV?enO?ywJGB0S@dE>QblO~NzbY4&s8fX@PW=BV* z+fVha@uM1_-{AP=3{l*2%u8F5pEB^EuN?-BPgA-lk!~w^lzpTX;hjv+J~xI{r$5}G zJzqe&*TS=$PsQMO!^0&N=gaV4Z2GU1pQ`XR@HF$@mdqdCH16BCvmYLOSCM~(bbo{g zzEM5ezN~-XG0qdM-Ik-j6 z%k%Tw80%EnIHS<#*w=J5AN&U%7SRTnBFepAQdkzOU5Xec(w?sY=t|urC(2g_QG?!)Gv16a}b_+UGdpZfBzdEW&e-OL#kb=I44%A9UjByB6ynh zt1j>^@F>scw0sVSCyObc`qy!$!b9DaAB}SEJ`H$qy!ap*(0X{{B1LQ#_4qP8w?}#% zJ>BPR!_z%g@Ams0-x}vWh)(4HZ!lW-GvLX(s;}kvoC{BPQ2YFZay5sC z6Ux8!$1cX-N6!IcAUw2R`7gj{JUq!fHt6UzJ*s>L*{A9b*WT-Xc=}D{vjXG5DtLH~ zTCA1pd3b>9L`^&w_k0;1KUMjkOq@T0JHB!IM|fl_{giROxI3`q=Pd#5zdIZMGvHz7 zUAA6P2Oc?7>CQlZfy?vj3A23bR9(<#OQ=M>i|Gsf;bHpYJbcE$~(;Ti5n=n20b9`LOL z%z!7Bsz*PC{tkVoqq(6bAIt4`h)OD9i=-Tf9D#- zC&Rc`4gDGL2;J{cZ-Tk*e< zbY~d%#dCrAbKYwGdObYNep>6-JK;&%LmT`LzyrSZy>R8t4bZlXt0Jn$q5`gGZ~&r*8>;;Z}I=S*5!XpNGtc{Y4S@ zYItUu;#>=!hKGIg{5|jx=d*VH^$9%6`mi03a`3rekZ65`X1&VR(|Yx3s=Asmnv@7-*1LTeEseoc=#^)?52IL zF@N@loJYFPz%$(M@DTh3^JyfXvGAS7&k?@}{*n2!Zq^ij1fIgDCj6NBBvq~-;Af6f zoa4-|u7THwJFFv>g12#b{y3ZU{k}#Y^y!mTU#rm%hDXm)z1a9X5}xz5^PAzZ9%>I~ zGY;Ga5B65O>Wcp(@HF%7!SIdn1lKjJ|Gwt(eEz%o_F27)KG#z5d6IVfCEWR0<@y}{ zJ3PR=UAc9fs-qRpP)qgSpJ@;E;Er#cxy1B+Rj%dazb`!4TIt$#(re(Eo26etzqkpW z`%wMb?N;7vI^6kE`ufCkvFX=J@BZn%Ho+5J)ZXrb?}P`4&qweN;c4pkGWbDw{1f@V zOx%vbL+sOAioWz1#m(XQ9!Yq0c&>r!<=T?^pb@K!Jq*uqAIDelHSiq!yUM^{hNl`R&bD9f1LM;b9~(EmgJ;iB9KK|r`2!y3 zI&vrctBhCN5_MIsweXN}=Kt@)JHRs;joWeJGXNf?e`)k^_putUCI9n@|6Op0{mIsz zAA#ps&vb`n@3j^l*{XDplkO{~=Q`|D)uhkBqnvk?!{<};Nvb{AyvVtZ_QQPUL-ZBk zfxgn;P5wjh1n0|r(6@yrr>S1t?(e;N!81J-hi&xhVesrs)z{0XN{HV!O;hZrX}qJPdf^I>amd*DHyD{>?H!|<4Ip82QC^YfN4 zzZ2p9;l0XEP(H)l?{hUi_2H>qWj%5e{k=In$@#TLKll0H##uLOg3q<^_yvkv0-syp z5!RpGtog|;y_`CtnvEF+bJ|Dv4zV(FPjgLLeQ{ID5AVwU@%ioTV z_2GfP)iSNUUEuQkIG<#kS1WRyw&pWi{^aJ3YxtWk&)0jH{X7o-U!ae)Qhp9oU&r9Nbpg-e zd=jp7J#jc!`Rqi!oC}ZdR(tC~y3ODj>et4BuJ9P=H8x&d2@kxbblZ}jiSTHX3ZAoD zP2THvc!GLa1b+mctFAay!)Kl88Q*Li+X~Mx9@>2GJ$Ue2@Jjf#|7%~Ecm^q|3dxLo@cw%{Fx`)d|-_GAc(wA z@?^!wj=xWt&oss79{it&N7=950=^fXWB;U$16g?3x4!fTJi-2Fi(8o+RjwfWQq-#5 zpTCBOm>-UzonK&j=3VW`Pd9jy=d`>?0u$kx&8K_HGSu&Mm*4|= z&tmgu-Et5<8_b9EMB}d+r@zlbpM@u{Rr|E_?mysR?ql77zStzyX|X@So$<4skMUy`56@HG2#D#Pc(qudWz555$h z@Xg0k@IYO~p%(gA&40e~(-FSU{JCCc>j2-I-nU<+_|1x2Vyt{_pdHqNXL(+qT~7?b zG8 z{-N>eKKvgy|5b{c?Ni+jcYN*h9e9F$gLYp3sd29B4Z!~=c#iT~J1Oo?r1QtA#C59Q zZffpM1$c<-j5f~HgQwn5#Plt9c!viX6y=whk8eF>u=y|#vHH3Jo{r0BKKY*uPcq-T z5WdL#rz_*F;ZMK=qZLmZ-?o}hC;9(|ejhwDSNZ}9oP&o?68{_h-{#XK=P$M%(gPmx?IRro&%B`a)*GME@U(9}a4S6SNWT*O!^T;M z{FQdQ9v)#IskM_A;W3_5Wb>kT;lX1%P7T5T2lMe=rz<{H@ku|fem4Pqd3d6?;&~Zy zs|yc)s(AKh{J#hu`bzcQ51*dq!#a|++y3wX``HGfzip866SzkHw!d*S`UuaRvwnI5 zJmtGT@osq3H_k7HhdGW6Wqy^0Cz+>BBtN@N|E2P?fbsS_^Y@JdjynM6`){_o>UTc+ zHe&4b?|AB|N?rHptTNR%a`_o2|pC<4u z`%!JadI>y4yS)Q_ck|)-cs3r6falo%soHd$Nyb^Pw)Qy<9%X*pg7V&L{@myOHtDW$ zd466UeJ%ZQd^VboZ(U*sJjr=$E%f`%|7!Uhg?|r^aXn6> zs9U$UD?ZtSYEiY(SAeHj-?n*C19*~lZpX*A@DTek80MX!@Bs7GF8JR7cUXUG3cnkk zny>s=`+o$U;r^yR=-0t>l{GG@HXUa(Ji+r=UPqsSXNyU1$EokkpXaXBK>xS-kC)!= zA1@nM+`_(bvNk-x@yN<`2|UJl_&oks!sD#t{fBmPo$+;Q=X20cgNMlf2fj7EuUyCBk%iLl#piUlg7U|O+-gPsC3rn}itGMA!!L$s zX+IX{E$##|@8iJFLf;F0WR1p|7<{Dp@Ei$u8t=U(!;^nh(z{v2iI04?L`L z+4=hhc$D=YYtLKY;bGE`ET#nBhsOqs+dj8L@HqP!E+9WS^I?74uJ1e36o*I?<$p$T zeW5BmTvq%7(ya|oaGr80{vmkiC*`LU`U02d*DbsHt|#_GA1x*SspzkP$GJbK9(*D^ z;)~Bzcqpa%vig0%<@xiSB?W!2{Ek|A*im;STMsD}1o= zhvi?AeBKOC_?|yD3!dWq!X1vh*CX(>?|eK35BToi-w96+RX)ct&U|S8@2Z{H^8tQ> z$LYUz-dB8v;uG8?pVLoKeolu+`l(#DU;12lXsz0V9Y$QLdmPA}ap*J56DF0=C%3u{thiIkeSjQ*FWiMb&UH_l7d--x%+zsb2=jr} z@ThOU%{EJy`+aP@dJUf9IVZD8_Y=6|J8$|K9_PHK(n&(BH;=dj~>00tLQa&HSr&zk|qdowi;qv^v zv4?MeR04gF-&b`{H@sKkI{61!-?Mq<3iNUMZxHAg(w?#!`eX3O?o&Nd06*<6`RAId;WvcWg2#KiZO(m}z9~FYRt-wM zz;Qakvn@{c^yhj1y3b>VM?1@>Bm9cPN;mtJ@}p9?_p_r9T(A6(L0{ax;Fym?{JWDp zvJ8GFdgq}0L+}OgSb@rA$B{C>P~HhjcPaX(EuT(Fk6aFaV2siY^8<;OFuuKxK08Wh zMvc*bV!V%ho`s*DP`Z)5%IDSapV4Q&Q9f70PoA0A|NB+dVcSC)_Evmrc@R=Rcg zYTFa|T#i1tLGc`oehfVJi{f8hcFwF5_$)&2T&DJr!e=8qeZKNp0DlFZU8MLM-w#jH zZtb}C6FiquMs##@oWJ1lM@g4@sXmK#^`6RQacBw;wL96%$wu|)GtT_ipW=~y@H@<>qI|5r=EJl73g5*IcQXIpDzs$?Gv|tchYRdEmd0iwDGD2Jh4sX+KzuBtT?3C z%4Z1qY=%D6N%>p_Zx4@k7k?N&0G=CH$|Kjn$HUXNNIwjI2RzbW`LX`^AUsq~KCRHN zh9}mDcY*JQXSuPgIs9wW4^%tR(cf{7!6R+e-_<+Z->;sdxP`xz{vbZ*!($z!98dea z1RnoeakF{XW$^TL>23TRW%{7<-vj?!TyAv=^4_MK{!;me`0!qMY=zoM9R9fJ8_B-_ z{wzFwmwej8Gw{qnad#QedwpX348^Af{1@|oRQ0t1USTfn?a`v?)`3S>NdG=@YYR`z zFYP(la~C7`M=%x0;RhLeFB~yr+WM^{IVs=XPO74+xW8zeQ2ii z?vHYLuU+tDZ?)Sx_(X=Nzc?o={-;r{y{11+`5B7-Yk1<7qWS+5p1D$S*oMB$-Q@Eo z`8S4-?WuG_w<&}A)V+Rx`ZL3^764_~5u-iLm%$N!z~ljxJ@%U`Lx z>rwE)G?nWOzFOSfpprj6Mk?6RfM@4PKbtgugD1Pn!R8fZ+=6@aYZN%xAUAYyN%Vk+Ew3*3L)5bI&T>#-w`#Jjs0cH27S2?041UPqfcR z;qd~M%g$e(fIGh9TFU&lC|$cRX4NspAsSNt&mi3$=cs+g8P6@w?^?RoD$YI8e*+I6 zS9}J-|AI$*XdG(#A^&ygr@#}O@0N8S`yDvq-r9&9F`0{qkP_+uJbB>&oc=}Nd$Uit3}~+ak2C4o z%Kss}&h+$!jQMY4d}8b6Ujg18p5#2b3VbL$bx7^s=6jRj!9HsLFQT6YkE~XW+rH3; z&F2m2m0QPo5+1rm?X539Ps4LhD4!PR7vYHqM4mwZ89cm3&ek8lhG(kD$L4i^!&8G5 zPa97v&Qm;7wZ*O7)`SNxmQMlcHi0M3R(=}7+rX1MRbHF7_lC#1%fAEqP1mZuB|6G~ z0DLI=kncD<5gxr>akFt_-*M$X^g_{e??NB1BmW-wKVtsps(xp|@7PXz<2={mzs-E+ z$^SC+Z+o0S3cY=ZKJ7d1`~;7dQ-q)6JO3EJR^_t(Ug5!fe*XP>%Il~9=1n}kJO4RD zIk$1CJv_Qm?Igxm`@?hn6rVcqk?@3%PlAW;lE3w%X>g~x>bE*R_j&x^`CN@Yx>9x-+ugpSI; zEAy5W=tFg-?}7hj;6T_bG0V!H*jsix25mpRahPE>Qd%qi+az z1}dI*y{R=kI$Zt8`fo3I>^r4<1pkTfz_rph#Qzp}q`mYx`2FzAOG?+~&&%P-Ulspr z(QkvN*U0B8_~-EWqe@q9j`J%#_LAa|MPF`#;*kDIap(`P3s3AS>JzEXarO)GZs=Q} z4|1HfcH0x~e4~C*4*d}0kI5$jpJe<@<-9xbyayh=UHUiBFE;**;$v}J4-d9fxmKZn z!}QGC?YQ$fJkeI|>LT<%xDUR_AFmS=)oxV^$N3R`tdH~s=!-q9c!vHe+HNbuBVAQr zrxw>2{&G7)-rt#`d|rXis4wM{IY->$8Nw$wQU3OPws!EiZ~Pw$Pw`;R3-KQhPy6&$ z-GF=Zlg=t>7xd*;lb<2t1L3pr2^CWuhQU`DUny?m(lhY*Uy7$)zdr9C;&!phYsZck z(PzF@+-!YvKRmWx?ZM*qt;fkkp|_cx^5y#X>mPiQ_bQ*0l#Ekxq4E>EME(|sy71^2 z#lI_-7sGSDb%x&X#OdS5BgxOqVYTk&%G^f^N^q6f#d35`qXhwW<4$P zzVdJRtP0QlrMT54?Pl=AX0=aSKkp1ry(4biz3DH^MV>#2dnIH~%(@ z&&BZj;bGSOY+PM!`r)cadoI~a@c10%=XHEOg9oB2*Uj)>;jxbtpUrx6_OU)38LNC& zLtpVxwYNxG`LuY}f@e!fKLGuO@JwSV-NU8#Du4%%DgTY(ec_>t!wckZ^S2*O&-z9q zeEx!`7AZcqFQxKg#WOfq?eJXmwc#K~*G9lg`-q+*&QRrfY*oEm zelCUQ821k2)5(sfzWG2m^wFO3sf50t`8+K?27aCCZxy%pJOdtDta>a!|B&&fivQ{G zHSoxJMdP^*9{yAPQK`7kt2F&U^+#)O-*_C;LT_D$seY3;%i(f9`wO4+R^>;v<~U`R zD*id*FcbYb#vAImX6@|)c;tZi)DrqaXLy4CW&T6p8Ric*j@j@!rK z$pxxM>+feL^XdNk)!gImK8@dU+V1%F9&msi1s<_?!!OHb`&3&)60o zxJGfCrtatTgNJ?>XB&qz;X0KoTTK!E75{6|hZm__HQ-a>k%cmT3qA{;@y+w+dmK@r zw-kDZbU)^^#7dPnIzj%{FP6M4p1wzM=#PFIKA{21|LgE~;Q=;iUjW|^5C0$^Yd^oi zQ_PF1qCa)H(#=#=eeHsG8>hI%-&gxt2d|Dke2Mr2@CNYE9;G`H-W8s`N$u16-9UKC zcRghyJo>BRW9|74c!GK9di)=PhgfH@@;(huzoK%DK>vpMU#fbyb&oGRj;PSvPv}#9 zf$8u4-H z7n#pN`IM$#tTWzE`FsWaOD+%c|H5zYqK~wd{-a|0^c%SIhKw(T{{|2KrgSYoB~~at z&e0N{!E6#K505TaJF&Q(3(qbr+HNm_rw6FK)=zty5Bm)U;{V`awcGUalRR=eJj1*$ z;aeAq;*;!IH2#y}Vc$Gt<=-k-q?7bEZ+{SdqMhpf2GV^D9xtzW&Vi?l|0%ug58nk3 zbk;alpE!RC53=5C$K0Rbk!fn5Gw}Zho;$2``@k!$%;*2#ul?>1k>uySp>8TyCnPmJ zy?g$fl79?-9z2se$s^t2o7@v>&&Riqr49PnGS#Ey|8jV+y!Z$BjDn}R9y$Vk8$9fr z2L?(j-C(7Xp7P1!`oe7V3C7!Y_$-A-ZdAH9F0F$*PbqHha*g-e1rN7T`)q^H`|#L0 z>9@eYg{MlX9(%$6geO_gEP$7JobjZe{BML;hG(1WICvJkHaxMUq(^N0zX%@sUG>rm zeOI`%OZhn+J`f&zP3d-nU*~cDDD*ZNeUSC}@_aTMp7pI`_htWWg!9&m&@V)vTdVeV zHGC~R^tj6PCHz%*V1)Y1N)^x9XPgJEJ&pb|c&3K@FNgo^asDXucG44ye|)&owf1lZ zJh)5g_U1c{JYL9v|8_#39e=V%++oLiT@Fue7PorY%=%Jjyb4qspYbQ~pJ_hLi`M%> zxO0>ICurDp?&tg>$NF|1{5POaFn^u~-vQ6CUvVgWuj&7h|6BOy;MseX|GUvUPb!{S z-#(nv;DM=XZ$F?PP)q$c#RE03CvG*-r*4#f6Z&TG4D*>;=zGJ{KS^)>YXm&7SG*xU zlRR#j{{QbY(WeJ0&OP}k36Jq0|9SAI;h`H9hj#GYF0bI;-!zNoap_aX`2c;kiTY!W zQ}u--@L)#ZGJH;1Mf-e2+}dFcc&vol`7rb?;R*J)jD>fDM}6nxSHXjF8``RM{r!ow5QP7YEpDR?3xp91tR!c!byY<(aD5A;yK3#0!Wp1W9ayBB^G zp7iNUtybJZL*--hgtOrZ_U~DLZvxL%m;Y_}w}xl_k&pg$oNgXRROoGp>CZaFqjsO# zjVI7Qh(7SN;yE6#74QW6E^OR>?gTz>qK`bUKJ~Tc_>Ar&gTX?*W{5Qb=@;HAK zdaJlr@eCYLKI`&XQ{&I5yv94gBe%+Z z1a~e~x-Ib8=<*8gGYqnG)DvyIdLDf!QPxvhzsta5)5UAylQsRAG9Iz#`5g5)qC#(# zo>F{b>_@VBetmd2qPWG1>r0*BDb5qE{|;XvpNMZhKNP*=+s|;L@h?^HLGm;mp7R~A zABAUp{c)q|S1ArRaF8oj_agWu0PRdX`co7oV-ru zjlNOZBa`7};h85?zvsd0z_Sr?n}@W5r+w|GFFf_S>aiw16HLEHK1$tjZa2P0<*I~! z^e@V1j`7X<@4e`=&D1ixqhA3J`u02J+z#lSU(8jy70@@^C7$T2dbDz__k0i)dfSD+ zQ&;6`NxRw)Pd=%7yo&Gq0nbcQy4GJxy9*Kd{6r4RXC(SF;L(NBH;0E@UctQ&ai{No z=dk&dl}~;25s&jnp|{~D;M4JmjaED-@SXYa&=B>bj_?#b?AsUm0zB?p|2%iL${Tx4 zBg5PHyl?)kmH$8BKfn_gt3Bvb_kJ9B%y*wor4;cjt9tB&Pv;-SgJ-H-AJAVKqYty* zcrN<3@Yq46Ysb4Q;hB?*`rizX`{HxI>2Fngu=A`n@W^$_kL_FD4v(Ixl19l-UH1T* zZzl=g^}!F&hYl3Y=lAf`An~#I{0R?_RJ$rm9KPtw{MmP(NLly58FK z7gxu>F+6!x=?;cp3Quq&@)-C)cxaGD0GnTp_c)?LZ!^$`OQ`+Wc=8ZDaGK)Qf$uyE zPy8YOFW|f3PD|CJjgw!(sH^=-W?K+C5?P>ZOh?L6*M^cnU~+I*}xJizrPJKl|ir%zWuwfdTBKEC~sXE#*3@o!bX zYsk+-=yS7Ft}Ef|;EBr=&)M)7%)g<0Y+uCt@Ce6?Y3RT6IDZs+`xAXStaP_9uAaV8 z`OJ)0Jni^+4m|7Y?-#)%7bu@~Nh54LP_%yg!Go=&?}C1W>H8OLCpW<}N7N1z^rJhC zb3W1opGEM{c*Vz_OSu-FV*l_h=s!Qf{?e`JBffF(U3l_2wX44Pd<75EUxM)8;Gt*K zPV7A8v`vb0g!`wiN8i}v{88wwE&9X})yrjkHUJ)I2^T}#l zx{30B3J=$o-um@-@K8qicW=}4UdPSHH*Y`lS+&E|&5DED?7debc+7WSKs$JDvGP9; z{gv?aR*f^ZPjZU!^UHZkwJyiG7asgZ#NxT!{L89+#_`_>Pjyv!ucTbB!vo8dpD_9_ z;F)e}Q8rKb9v&_x?hcRMtJoIBA;JUK&wb4dUra%t;Xdx(q&*8BE2p?E!)M_M(p`r>__ylo6?|Sef&MM@ z8DD$;44&hD_KQjPSL43pSLx?eu1qhLH$=MUz!Sdlp%Fa5KFOx&+rX21)NV(^2g744 zRW92Pb~8N9Jka|4-SEtds^8}1eeu4`7TnpQerN6KFg(0id;tDO z;mN^j&+fF`dj+0Xe1feMp9d*dU3l_l`Pew$-s6Z0y^TVj_4W5V;E5WF&!v24DLmd! zyf1t+JX2oz90lJE4^&iqK7>zkAB>qFC!_a?w}*d>KD|_NR_WaRn{G$W>yy6w?hm2Q z{ZqnoxB;I(;Gr`W{~qvCTj{^P`=M$Y?<@Vq=!?B5eex^i)5f0`=yO*n4mPfKg~wYd z4o~1S8lGa`S3~$zcp#~sYw6B|N4Xzx9Qw8J5c`Fyz+W<-3l*_t@K50>-}=&j;m#w{ zTm4qtmM`zWU$s2$#-ICq%Ohz553oMg3f>u>WnYKor!PGCkmCF%$FFhl*f_OYclh;Q zvyF58Vmdr_RP_?zI9m!_v6b=X??lzM^q zJf-}Mf!BcN9uc?WR|9ygnCfdF`nK@k6t$Bh@P2TI`HA(rQKo-SKIfpH1kWrf8lO3) z_uU_{2p&jDe>y%-!&6+x?+8zuKjY^d_($e*i}LRt{=C}cK?z$Jw0u-==g`JC0K#t@ajNDxX96)PRS| zDcy3p*Y7@pN3T$PHlhE)^e?JjGVpRc6t~#zicbn&6Q1Qc6;b#< z-2WJ3{k#&q5&G~%mFP)$*nDOwZpxM8^mciE9eW$=*!t9QMxYO{KTV^bcT_^pu@UJXC^j}5WagLhL2I>FT&Ri{0KhL^xf6|E&qRYQ2sLmlph;c@a#Pr zA8cIR0gtiY)#~Macxr=uuE6IIJh@TvxBHup!-G5@U>N%QB9x1LS$2J}`YVcaoa~AVp8YL%px*=!bW?w{_VyY)os<9n_FKYZRi%FfpYjcg{h#&z6Z+g(Iafgc z2Ru_#`RqnME4-?>WhY91F8aF0eb31`AD+2K@p%k=XLziW+QT>SK5%Ef^tM0hk3~v1 z{a>{=8*e9|PciQ*iO(G#=Z`{fbI`|meqfl-7Qr+4TmpX<9_mrjBNm^R;OTy9w{||Y z7oPO3qaHH-7WrI@|DPV`k3w&yUn9ka%6;AxJi~o(*8ZdL zAmgp|#~a}he%RU0(QY%&ee|74_a1n*quRrN;E%&I2bBLt@GbE40>z;Yd?!4pq3&s;flpXopAO0iOFe9iP&#D{iT`)UFEPXTlwx3s(=`44&~l|FaW3>D#|O0G^8} zKOONI3y<ym@L7|5fl)u)x{q zucW&$NVe6 z+{X=huR8GX>+){}Zw3$fuG4ieerhT2`<=+o73Nb(*Acd>+c+cO$+rY*puf#{Qt29> z15a_j(-{3ic;s!xzbbq?JTR`bM=Z|2JfS$m?vua8^ELF&qw=xy{r5eNX`#16=tI}a zr#7Gc4o~x(sM7EfZz|ms_wCy6G1Y~qS$DE>wT6e7Cv?Q80G@b3&U@hljJH%gZ9X=} zxbME3$?(AQDzAGw;Jp&?B+of{3ceB^Su1~=e{P4zeb;Mt!n1FvJ=DSHeRz=P0k(jD zY5tF?U-W@r^tR#_yjeA6`oGWz(&9IxFZWhn|L<4O<7J)jmZIa;$a)&DlKthQ+&WH+ z6ZmvK0q=)@)OX$OiJJ0H-BYx^jYS`4ohn3@Z-ht6D%5P{b(u~0oJN01b6#xqRU7UE)gG=!e<3`=eQnmi zy24XDf2K3(UI~xwP$b*pGs)xpQRr$;VJgR zoJ4;1!Q<@T>yFP6^RKV^a;H_^YccUp-&?eu97P{1q4Ch_rSdy!pBe7c*QbtCA09}^ ze?I=L;34*B+WBlRc$)e1Y3M6)eI&yE>YDIj=pCMmSOCAle0WZ80)96ErJxZkGRA#upbo zzJ%cEmCEM`{9pJ@KH*-M51$0eE?L0Lizj+=tQ!NcWSb8YeTp zaq=_sS*18%h|e#UAI|stnExL6XP#Bu&V@II2Ro>|`qXjS!ebn-TcYm{k8q!CHTW=i z)OS7}hbLQ=^OT3tFMwxRXN$u(7@wq^Y=pn-asDXub_9L!!J^~gK6imGAJ3%kJha?< zibKfvyE8T54)--%9Gb!dkE*_GeX z3||b7Fg{d)uY)IMYTUMd_aZ#|kLoc=`*{zZV|=cK&o^*~^L^`&$KYZ1Z&W~Eb+6(U z?W_Dh53di8KdcDY@uIcqe^$#W16EXSxh0kb@^GBh#ThKcnsJ!-^jfdgcZHikv zzVkRd&GYa(!neRPTqoTJe*+%7Px&7Tf8X>QmCq~SKbpVqe7xBEicjoHm3IpI%J9fM z_3PE}CdOZu{}a^mY~cFwep3&1W~lb1Aid%jaEihxOsn=oi6bFDh<7z}Lbv zmnaSo!e4*~_`Mh#XWoIQo|ex6^atS%zcYTFD}nt$4vX~$0_jv{gL^$%}c9zoG%x8YwmLE z%Z0GhZXP}_6&*ic=J}Rc_EEdjc<x&u~3jrE{;B**xuLwG&0py$*{$ z<{P(fhKIN>-r7&IkCo5BU5d}uq&o|JaFYC6z#oC_wBdo4iA=8{>P%f;sib;(Ff+M z9=oBB!?SJ0L-1Mf*bf@7Y}|Mp9%LVgm3N)_@Vgr}UwRduUZ9ei|L5kjQu&XO?uDGc z1V2|xuy*pj`S{KkN_?bvCVba_%fX|Q7>|>l^nS_gle3v*lysPj7hq zPW9g$m!BTYN1cHR(qJkhv&oNzW&}Go}8?7$Kijfdt#VBjwIrW+iZM>ppQPQ@>(1wyBlKj z`jD?3PDCH^UB8|N&z>V6n@3%IvwQ-dh<72~2haz7&plh?^8EeFulVj?PNC1dru=WB zT(80dC3JjQiT``1KSOb|dCMVqa)*wLmC+wJpFz_1hFAL}-@pF-YUFYEz60O-@CER+ z?|S!L?hS_dcm{mqSZDOnr&X>5NmY(XALc#|8#jic&-$Ln8+u6NK$Z(T?eH0e-s!3K zVDsl&;3?mF?0k5L^YT&)k^fuuHd@er8(^R4-IR71bm&z6J{VwNn^l{p457KxR?l@|n1L3>ik>@m?{0;vA zp5eZ4+ZXXIJkIqg^En0&og;rs_q0!y&m8B!Hg4B}hdxk!*}7I6c%X@V3dm0nc=UVq zJ3Ed<;c?c@?07m6o?ssGzw5{@&p(glZr}4*9x#9IPaH+MOW|SPbF*i$zdhpH&-}Ef z=gWoOUce{WMiDUo-SA9twL_i7JI?+S_#8nWe@bzSk;ZX&nETfIz|Zm_-z>a=rE;QvA90H-8lD;)Zj}Ac!GVT?sV6CJ?3#lh2FNHkAGgY zAEn$2+4*rV!gE2V@SS(i2e|H|Tsh9C@Q|@X2VlFC!sEU z1w8D#uCxuFxK}=ti2pu#@_I$A0X|>C1FtC#R*#{VXg_V`^8r4uzbu}sF79qC^n41!oPs04i#K z=XO^7LUD_fQ5@_(tUB=6`KreV{%zpN59PlE9x*-lM{k1TgZ=`Tsww;$;&<74GB4t-;f^GBh#F#6m*YX6V$SwFbLd8v~U+pJnizue{H}(_EKytIvDw zhQ}7EKbD2>hiBeYzp(l3ad_$uwG%t;R60OB7wPylwuFqD!h-|l{}le6;OURVJHiJU zPbepsz$bW|KMK9wiax`7pta}w;i+TF&tCh^Ps(SCef6e)3VrrAmFo`l+u#A7`#Kf-dln;mKuk?g)RawB`v}jz<>fBj`i??pS;DB@Zf}0nUT$JfaFb%k%UGpl@p2 zH$L|?AK$)(C2Y7acl?=@I?55Ob7=fEE`{rxJJJB)j;GY=`A4*nOzo5F+q zPQ-)o_V7$OwVyfg{_u1?#mDw7kA%k?s=Nj0Z-Pf6CwXK@aeZ(PJX=rYJrDg7c&w}R z?)Dq+wGp1?{$Gp3Tktr~3$ph1wZ}0n^j7L?#UaA)0$3c{upSb-R{hb&pEEptAp`!q z`49Th!)oW&uS599o)WL9VmMU_)E;8fRo-jx>4iSkPU%`Zyb2y3TQomo;aS#I#^Ey^ z?(lmJcAj#d@tE3!{&k$y@C@@zTLXCx9_RTR!|{Iuo@IUe6!_;Zuf_ihza2&Iv?$sh zPC2Z&#n?v_=t7dM*^>meh^=fmbRRP}59cP%`#TII6*zwL3pTl}}lb+YV_QY!BLH+aN%UVpATvCNN44)-0`#@az`i@1Cj{WBt))Hp`$(fEJla_8^E!Alc!cvlI}hps z4=quDsf>OEJjZ$ZXv%d5Jjs2gHlM%W^y3vbI}dsk9{6t=&v_;ODR}y9rEB$=>ZS1^ z`jXXC-md^&l0|OK{Yv;q@AMkMre1ZzXBO#Z@o%ywjQRAm`)O9~Z*Y+}G0+pN;UO zuid@`54VwjUG!bLsb5Dnt6$%)kDd3?CsrzwR=;DmD?ZukYX1fJe2G5Fed~4{`4gVz zeCI;+y}yu8l>1(--pl@!=l^~MJ?^ewJ)^iyM)K|iojXu3l?ZMW!FUu%h zhy9Qjq3?~}d06Foo^f>qJWIb=jed&Dt&AY=Z7%xUI;DFWA1;H(tB4PUKLbzn7rz+3 z3!Z7IhGXOT$L8aE-u_7U0Y3S8MWUSQE6H*HJM;Nkahr($&<%=1W}x&oE*(c7^*uM> zteo^Q?ptY&PZM~K`Gb|WD?GkgE$316m&1b-)X>f*pJUADa+TM{w>Ug>xqSY?=U#ZA zl=S-7agy*D_qnJx9cPor`EsGRSJ0<@_cMNEyq26B^PL}0;PX1y%fj5xW$m!o&x%`u z=dtw1rxH9{Q~nmWk`GHCI;x!8I8)DjR;r!YI8gJp|NFYzCFrADRqt2Ro`=F?{2rnm zr$)i!t5h#m-n-zTdP=tk`CkanEK$EJfIngSv*c5qbhpBzM^xTB(Z2`Ju@81Q{7ZOZ zsnQ(>&%q-v%E#Kt$ww5o^fKkg_!;mF=lg2yjx+j6>9g-i-w^+X=)+CrUy1hF8lKuJ zeS7r%;Bk(355c4GP6I`tRYb4>YMflp0%u!4NtZsNV_!y~MZ z+4vSVpHVvQ*m1D8@wm9$-2Gbc@J6NE4*#j}w4?g!3cnv7Z7y!{UjmN|mCt>Y_i6Lz zJf$~2JIu%Te70TiWJoy-qu&pYU$2&C>3$23G*W-8gueK%if1$?z1oeWaCvKAe4D?sRbF3#k2%lp5V~T%k_$+wpSEV}|{vmvHs5qNx=(jANcKkyXmY&K3-{4f3YN%@4(*MW!2sNN^R z+rcA4l>f`%LyYsBVfXf1?=>Etsjd89j((cyD=VIlDZ9@7@HG3P?R;bzJV1N1b^E8_ zDb@`tR0^Eh8F^mZ}&NCo*@JM4Y}{Wa)A+$UZh zugS)FzDIlFc@I3m{o^grFNddED?aP!r(580-@dXv<}+U7+qdWs!_yppEkA$56a2oI z`BQQ}F0QrQ4%~KG+41cThc+CqMh)k+0QGZp7zTc(_&3e(n6J zI7EHd$2$+AeRAGs_4ww4#PfaiuQcga#V7fM{3E1$;os6{I*31nzApOAM&ZJ?*qv5f|^0@&%6P_%q@z%!4Bs_Ji>SYP~jquPQ<hUdjJfim84*e(a+{uc3Ny_^dJjFQnH2RbOqP@|ttHCSo5KnMDv@^UW`ru#c zSdHKf;BlU-b2_{gJj(Cbz76jJPjLOh+R2sh80*jVR6WjEc<2$u)6JgungUNgrubO< zf57y<--Uk?p5nO#HgDMoccv@BKKQ>0kE~aJsRREAo-3_(+X?<7JkwhGCh(H<>xA!m z<(cqoC)MMH)YrO&ihp*6%4OrpdFVsE#9N~e!;@>3pBkhaf#-bt6|Z)Ae%(0jTQ?qa zhSCk~laG7Z+Ix+}C-$TI(QuA0HGf3Ux}24_gIhuQ_MDlec&gSM=Qezz9mQvn&->wF zo&$d|d>K5|N%2Fn!1@OVfcPXDwz$d_?zT@v) zc%+x~Ezz%p$9(IMQ+6ukoK(mGWulDV6?FeggZYZ;#Kd`^3`&l&;NN>Z8y0(1`H>`sVOhK>Bv@P9EovLT`i7 z2TN)uIhD_@ho`w-VDrgOJ|b@8LPe-5Xt9s}0ks@o_<{MUk6uJU93@w8!_*YsDq7SG*3QSa=VJsY0~@X4_c!Rm3Tan4Uipx+3O?UKLM zgHPzyqV03!DCvXzF4AfE96}$z zT5+)Yotq@xNs4C>eKB{#VLsgm&)XRSFAGm>DVpxt@a$`95AI`3yjKHwhUah3#HRr6 z{4V_{_z>gY7wxA*m?uQGiQD|AN>KUC@>~TwUhn1klj*Odw{|-o|44&Vyc8#s&zbNT z`&fFBpC#}F=QZZD0UlughK(r@Jr%s(Z=bo->M?3mD&i9B{dtm3EBmeI{j(TO! zhMt>=|Csc{93S0(zDYbsz3oK$wPoP8ahCbvPU71U4-Ue(?BiY5@hu>a9P4U-vxyJ! zoWm0NEGFK-^Bml-E+d}Hpxqad{&eEQmjJ(t_zlFX+#iBk2f-c0M{h;HaDVua;e0su z@e=9BCnf9k8{)a+!RJ$a=6ng@RX@Y~p+x_Ew?C7<#(mK|wkh~G@oegRkN;Z-dLGFn z?PM$B<2A_RH=F{!`8cxF`F{a?UT3{l5g$pNCsX78 zu`&7?_qXShJ~#_}+<)FkyvFsNv&jEm;#JO5yuIe_LO*-~5RZR;;Cx;L|0eQzmH6;_ zpl>7o9`O;zhwl>)HYNI#Z(-+vRC@T#82=D=Thf8WyZ7z2LYi}cy4pg*4Y z=ZP0m`x)jE&!oUgdkr4dh=TKE{2RyAVH%_)v<^rOrR~zRz%hcFXv% zk$i3<{pihT$9cpbBR>8b`ulck%NVC`UdG=qMnDizsvpeIOzkfUq4Iwzj(RK zH=>k4wpBpR63^9?Fvf7U@$v|xWIym744fjA=$61q#x(H{PryOW#_X1nsLAPdoOny+Fg6Q#mV8bm{n#eZ^XG{V z5D%_Q+UKM5A?NV-K>rf?@5J{qMlJyTZ1OpueCiruS6?B19r1>jK=1wTqwhe@?6%P7 zrKG=u^h4Zd?(yVv#B=*X&xet|HizxVyoZlFpWI{hzdP`In44}Gq9g$ zDd*|L>rRCJecZX)%jG#dKCazCd?Y2$w~1#Kfq#Yk$A|}igZ_QqG$|-+N8&c;OOd~!#2l5}nXEx!v zg$<9vp2fWFuOcscYq{A!qTS~ZKhF8kAEI_a(7gtE&LDm1MAWN;+zNxM2Hxl=vv$zut!QuMr=+3+=lv=|6Bjd{4ps;U>%<2495!eIB|4@rG1h@espV zSnMOW2E0T*Rjwl} z`Y#jz1MwQqbwMix!3V^%heAJl(%v?c4Jy{(_W&Q?N3l2Y;mPQC-j35b9yKse;`T6& z^jW@FvM1%q5wF`5k}PGpoy2QAm*XPRuOvRseRn?IokKkLDab#I^drOzRp>{iGxm26 z@v(JLuG3eY|CMN$m&j*~cP)dJp{_(w7bd|C`8Xz0IJ{;Vk(0xUePh z(Ukqy6CdY(*PY3y$@!$#m-EE4zd}E9{r|9s?KqsoS9rPCp?`ThUSK#2i+x;4`pl=H zXSdtCh!3?vZ|;}=Lwvjrdf1!19wT0TDk;xTh>x9}#BaGDdLB7HiT{rDBU~4lLjE5T zAL9P)Ly3QKbLgSE6XZXF?YM*Cv5NBR-lWgnfpR^b{5uWx)UG01pqFmSW-NeVPLVx@X`9DrPdp6ovx~KiU=KQw> z{T$+dAzoXSw9gIYg-!JXb$n03?QlEd!;BvW$md| zpUYpCAYNS$eCqL7aHHX58vA&N^x3sgFCGgUyhJ=$8~SOaoWCbNe0@?s ze={WOCY~J8);@Q-DpdS%0@qEbL$!C*Kv%jy6a(%wM z2k{^W&aQ`JT!_0$uxmOS`tOY*T zlFyyQ1FloNM*O?PGyI(e??*o(UgLWfUnBk7#H(kazOBSRCSJ$9z0X7UnF+nsxIeIw z^jm)hcy?##)BVO?hLb4vaRlkBXRmLlx6Akae6ZB-Wt>d=bOeOzr;tiig zeZ4;}CqDWO_!H-IF7fO?fV(~1PJHAV)CgJ)f-3Ra0?>Q@>RIB$_rRVHr##>JImhw) zfNx3s+vfq#@tmkn6MutzMpN%Y{h9dqZt#-@(g$18ZX01IxElnYBA!kCUgVy{t4D#- z^|n9px_RiopQ63ZH{1)0J}aajO2sYrH9?-?`(dA*eB?aR*Nz3gg!uKutK3JoBk?=e zQ10WTALcoPp1*oy4fHkAkG_q1N%yzEO}B!aLwCbY&S$yX6CYz9&+Xwr;x`XpMiS&iTU{{Ax&nt+JYzqC%p*$B6AD2F?e=~_+@8v!RdXM+MZa9fz z9}kf}_jA;DAI2L`5wH6L?7`!uH;Fg2!t$RYueD?$RsG4(>(HmqN46tA@(bXNq~DMD zc$lvp~k9+*gc;gQ8pRxq&+tU&zP{iK|;T*~xH;Z$E|~^Ss=F#H)v(zOPcIImCn1 z@0c$mp4$cVFO&XM;+d(y7ZX3%@w-v(NyNWOymkukdx(FN`1l*Zr#Zeq+NH+*;ok1w zBYl>?A3BTlKP8?^?UQ_)_z2%?@NwZo;-yr3t-meG9pb#Wo%}yTyu{yY+n@Meg6qED z*HZg_v!u^*9=8+eXE=YZ=X$$me~tDX=6Z+IFD89Z4@>(S`E(F3@x2nKKZp28C-mw5 z|GasqSHp!#J%98Kl-qDB+OdKBN1V^A@IQ-)-$gvjJiPP&KJnZ!kn?HMzf8Q2dFIa$ zf7ki{5dH_=F9<#+KFsxC9>?YE0#^0wa@%@M<;=2(KxR1#F z`2mKLDE2Xv^uw1xo=-weK|Aq=t)O7H|1*deo`*bc50?@z4S>P7S;j5IN9cz)!DGRF z#78%Qot(TD9(cj&dH#myg?>pq%X5vqUH(G6j=!_Bg5_?=bGdV$gg(99KS#WF83b8K z`a_6k%NRFzA->iu*mH*OA-dl?iu85=LVZ1sT1Ps*+UMw(QLlfK&+(+s&@XwtdWerR zPvUlart|NGhF#A$5HIofo@oBT{ltfMOxE{#;<>HC;RfpYH^hfi@&CVwkEG7)*t8CM zsL@aE&U)=eyg<8cBz_q2pacm&M|_^szXSYc;yuJ0rbGS~;ujFFwSay*;@29^i`d6Q zq#sJ{C(j-Z`G=1Jf1i*4l=Q)WU=QA2ZxYXaE9LiykKKUw_3>rn9hCpXzwHf|bGmq* zXA?>GC0@thLEeFQBk>&Hf7zM%0^-A|aj-zV)CM_6*}i?mgGs=zCZ98jkF1r{!}Wse z@2$LY@U})tHxPWw==pH$<5A~77kcpi_zdx}cQC&EiO>Aj@ek0yE}@*kj%b(QYUqD9 z={F&sW&U|9;&sG_Q~96$o&I+4m$Z!iEhOG>25R&;`LqxZX#bxgeme2O7r^Ibs4uvj zcxg8H{Dt&45wE_B`aZrkZhY7I)Ijg;{<7hGIQDVk*WouxjH_J_e;}Wszr+6T;xqpx zo}quvEcy<-^_B!#$iI4ne9YdxQzjy}fJK6^ND=6oS zq%ZLOCXZ)M<-E9-+E4o%m!|=ICX>%!h}SruI*sl7e>n~B+0?r270!p}2AoIw z+ldeHeT_Yc-{XAVMTa<@_>;sl+^_EQ>v5<54(wqm>HkW+#C5*4`W)xJ{S!(5 z{BgiXQu(@VNk5W$k0VRGF4eE+5-%-9zi@wb4DnH}+wRPAzj-P8;~3Ykef;ep{rHop z*PEn2jd)>SwAVqzuOL3M3pngb{5~&toplZQkoaT7OWa2{mF@mC@$rAd{xhWi3GwU; zDEFVFA3uWqB6Z&5A4#9#{@5J(tS1Rci>nVo`_3i474ebBApZ}D??Zf)=Wboje$hyL z{95!Q_j@N0Z`d3BeO>qz;&n$upZ%2o0^&od-^03*cy1N+b}!|*&G~;9?fZM;4-&63 zpMMtdpAipI^U!yQkMZ15m;WEcNA`sub9~+1ptqs#puW?{|A&i#S2qJboA_2jul@a} zss8?e=TEMO{1W!tUmf|E8qmJbo}BYZJXnHuaeJQc_!ofh%yL_ZXO4rO-5(AbPNLYy zxumbV1AIKLzS;S2gz@o3w)?p+as2vnQV$Q4ew_J-@3V~RH0Y<6+Q0oG>8pD|5642> z;5FjI?7yO3`}-a7!tKd+33dnnVdgnK-rk0Ib}s7m4CR?je2n|$-2cpU{5{n7A#}f> zjd<=ysPC!da~kowhm-BT!{6yo_q?~?vL;$x}z6MyJ<1@dn~KEEbjdLHfK z{r5wsKLY$4NdM4x(Ox<3KlFaRk!(;=z2$gr$sE$}K|I4ade>=wx5?NW3;e?xn@J(r1R_C-xsvD{Og{x#U`9mKC9KHLgE?&rTjyl^DiWisi% zM|>=04`a^fdFZ*9^uIQo7qO3boql`hp^f+cNxb@Zv`Z)PZT6y`xj%t!AlRFD?H(ZQ zq@PB7oaaHg{@aKTT?{>Zjr3m>+{aKt_HicZ$GCoU3vXUYyu|Y}-EI$g4R$j6IOKOb zxrg+b^&#g!$>#~jIX~T+_^XEVBKGln($}tp-ZrBBAAbqT&2oI-hR^(y^uwuh&exX! zQth_30PTA|>9-<2@(J|o_sRcY;-ynT-%a`jhQ|ct*CjK-ztj&ouO?n3pN8GgulJ!J zxa&Z+?**{)g)H|p($`Yw4PHomYz+GJesm@AfWOD>ZF&pw;Umy4Gbqo!&Oi0u$MeK< z+(&mH>A&&~=y~K|@R>#Ym!u!!`-X0ZHR5BNp}tc{zt%piZwuu2Joz?;lPLC)T?2j? z`3$cMy|wU}MZ_DpFRqDrEAdgjKZ2)%U={IPYF%=ec=le{!+GR$v*X-9c@**QIREER zFX;~U_YCn8{h0U1UlJc)AN<#6yZ@bdFokwbJK1E?>ig;Df~!4ODUZiXOSw)o^jNY# z){%ZFH4i$7crCS$G)KI^c+dT9JMnSu&+&D!70zdW)XVc-mlGd;8@T)P+Z?|vDd$7P zM^e8(_$=`%*QxiVo_|Gr^e^E5S9}ET5g+IK_1BR8W8wwQJAB5>9qvN>`=l@BAm=}bk2zk0oK1Kv_$Be|Zz1Q8N&i>kV?P9+S;W`NLT@7* zLryRES}|<3&*9YjTy>-$KM8!?{&y!{;`vDK&u2LOv+%>Gu-uak=SA#eKoTz&pA4cO z?a6z~$tUv-$oVkwi--?bfuBwMRxfuW__6uKzfF9M`@Vd=>3OH`gCgAz|JHH7_j)|} zyidIJ=cN6tFNqhOA3c+rA8jnS)~m$#7wXApC*mV-q8+ou_ah!$fjGzW5(|hAUy1fz zi}8G);e0suaTe*bJdbe>?_KFQ&xv(=zMJ?E_igS+`p1apHb=R462GUHcEWrVS}h31 zNZ+s+`tkAZm&8X?`@`QRKK?%Fk0by860c^^zOIKY>QQd)e3aNl`bosId_RcYA~=+I z!2LY#H)aqYI|%%xo7mrC;td;u|9Zq{Zo+a??@jE*{UL?aIgnlCGqeNRcMjz|jd+zW z`pY&6`@6{Lo6+t^kp64LN52j}?uSR6{vx!C_lqj=y0@TDkLzA>`q|*qNdDh^hW=+3 z=uhYP^=Hx#GyeB-H<|)HG%SUN!7T_rO?>ze@R>#aI}@+_4JhAYeGepFqW$kh`Xilx zYP~-1d^ql-)q|rPRhcfYM>V1}rh>sirIse6SZ*ck@p@CJz?<3{I?K4hIrjEzz2vI zh*wj2iIv1N??V2QNPnr*kHDU{BmTF?;D3TwfWJfhR??3h4g0)__(Q~p7ouLviT{N7 z=&>mG2I7Atp5eOl=ET?HJg)F3*zKm&^R~ptAAp@mH@Ckm@j9Ld>;7jN@$7@3zmfJi zUvQ5lSfqU{GWs}z@8y3p{zUW_tS{ic7uMdr<`AP{3A%{e(84N*^8jJ zQz*g{#0x#Z-OhhOe2j58Y8M3W5^vZX^mE8(ZRz+HH|_;FUm*Tj;tkvv?c>NUj$a1( zk0kve#B&FuM3=wG>DNWMGf3Y?y!JZkyMlTcBwkm8JnrW&aeD6e+kX(?gzzfMb1?h9C-!+>+b2NExEzY|(N2<8wU8b!Igu#A%&=lr*o_!o%>Tra~@ zL2xed+=bx$FShRp@!_Z8Pqt;d+)q67yQCgoAU={Be}6}Ol>4-O9RHYjE`@J?DD+cf zob2HO_QBMDPw95sgKaO~IFW^nY zi^PLeeq)u>-w%DBP5Mipg8Uhtldu=@VWa0o?Bm8Y;CGOJhWj);@9`w@@ng|m9uNH7 z=?{jV+=*qpy9WOMA$_hF`s^V6iM~#E3M|LR&5aI2dj!09Kky&g;hDtih z*C^ks^8WIa)2GhS-TMU4k1Yis_n&vn0-ha(K2IY5Uy@ICIy~eE@pp)iHbD=I*dIS4 z9_$CbeU|haNT8nK_xQ&nTcg|>&mTrF2!c(y|1EPDyJNZ77D~V@P>&5pH4^rna*T1%UJv?pnan0lV>*P~l-btqa_V*s~+>Ma) zELB#7G1nz$CDB`1hfAAR6zbt``#*-PwX-kL~y&Sy%}Z=6j$^Df%O{o&PylWFYZLDHArhMa@E_Y=WaXScr~{W#aNrjq_W;$uHY zxhD``PZ9!JuLl0^;Q_?AAYOeOcI9!}Uc`rf33(2Kx`RWU&ri_r+&?rC&+(iPukT|$ zD7SPj>>p1B!AYbKm{%eDpojQ4=WFvQ=c&ZAUx%C?-+q~R-CfE0-eNc(j(t4k^rwT* zuDtgO@sZSd?0<5c@2gHB{eOuMb)enPrQL2N8<5<`#)=Ix55TTQIY06|=MKyTk5{{rzUs# zJreEGNc?5NSLaXOAbl>CFM549_TLL2;X~x}KIt=M^yq(3o(lDb z<<^t`CucyPIqm~#Cq9LE@G?r2ZB+I*pLq7`(8KMF58H{4e-r!{k$ySx4BtcXdR;)g z`T+dxm2CGB;ti>DQ12n0<+wSE{GWDu?q78~d4+hu`P6Qtzhdd??e@3M=OM^{I_dvT ze0WFb;eO)lHmcqx{$&JTUBCE@(aXNC)INd7OVIyN>i4{MB7H8kZvJ`V!_4!0eVd3E z&V@c_Q?yHKu=9ZVZQKollSy9}puRqiSBO`+AM9H4Imhsc^}U+(!%Y}p?jyB``4WC%-N7`ETN*PlL}i%9G)IYUn78Q|^CuGJK+brmq1% zmV9dKKo4ir9(svq3b2z+$?|l^zp=3)GCi@sD~S(%4fLNOemn8u)V%Kz$2pGpeECPj z8~%p+y5BqX4)m8o2XJr4zk0cIp#hJpgCjW}F<%iZAaN_-dM0ndRyi}-%T>*)8~ZX1b@eHwh+f6jIM4p81m`#hO=HZ@E{b<WzzE1k>9p}0ydS4LiO?+fJB>X<<4<}w7f#2SM`GG~m$5Z>Ii^RvS zLAe`J4__2qa=t}Ak2|09&|l6c{zKv;D}Zmv_IjK6_*Lk4 zO{D*);k<}_Y%&LWt{x0Kbo%Xy2dQ%l_a>fw7V`VNwSjnMci=Zsp1IEdVc;I0G&}!i zlKx=@@sa-mKaR3qNW9@m*yoGHZzf(#z3(HYOhY2l5|J{-1OD8pdn4!zsiYc>c4G%X6I%_i4DCoy3Q~06v#e z&t>A{seKDybo#GA|KD(Z5-%}d=k0hC@!TG;E1y4pi+F+Wr+2g5=ZKH-{jzPS=eLQE z-v>QRWw{?aekO3Q*Jkse&oSz)lk~d~FRcrCE+Bp=@zLwR=aa-25YO><5L;H#VO-0$>!KLxc2f@g`>HKH9o5B56o z%*SvHvnbCy#K%+ToUA<`dK-QW?K?>NPZ2MC3H<*`d|TpU+d~g-Z4)DyJI*Hkjn4mb(3rp1 zd>iqRQAp_VbHfjq$KZP+dy&s~NuMo2o_mSEL_EWNiC-iBCh_6a`|^MBa{2!FE~MWy z$9jD&X;<44ALZ|>wvhfn;-wbo&GmojIOMN=7kY60%rJUB9Q)|{Iq1hOO41)k{tc=9 zT3y6P=7Rnbw%1DHnW@n8ek|iRl1Q}p^B~yO&cx3q{TP4W$NSwij`zb(b|U>7ACOP# z{e>#|k6#FR=8^u9CqX~L-|h8r`3~|gy#x9t(m(3*b05*c#K(w_x1rs4C;p!E;rSsW z)WZfxYdcQ-yYsTuufJ?#^b(&>fqr~k+nsoh@0%Y&meYu57^k@(SnPaK^U!wUL#g-6 zPBna@oEMY6z~4Rbb=VQ&xzu?D_Ykk+`qYkO`8e^RPr#mC{v+Q+yA1sT`uF+EYou>j z3_YAlKJPouyy7mz*Ij`AGRpl+TM*xp_|UrG<9=^<;^RLC?(^J(4d=tLk7MqGoMWjx z(me91n*z|+C0^j~Znv`B-#YzE=wEfj|4V#i2=aTp(NqsT=lFXNF8{_0foJGHzf3+m5-*$u z`3vk94a6Jxe$(EhpF@0{?`QdZKTmv^d88vr-y^v9WkU8bMEU~PU)&#F?EF*blHE)^ zcn@;EKxPjRA5G0Ken@uloCdv>$mbp6Bb$MK4)OmwpFHgU89WwbWTD)~ zwbXepdl9eWIbBo9=Lq6szXBik^NWdBd9DI#7X$_38LrDTkk2Vj&-e#kPWIIhuX`%V z{~F?>e1G9Gw(o7khuY9D&L;n=Yd7Dgpj`O)6{9XSY#53HlUQhbv#OqS| z(ujV zKDHM8q0ir6uYrG+>+C)*e@yz^{z?1alnQPZ#WD6eJkqub>an{Tev0Z|3tj*0kr!P;(I;8 zdSxKL)30?L{lg!?|3lJmO?+f)w3pZGt#R-vq<+_If6^D`pkA__$^LfZdUWPjsF(Na z8BYHZ=zTmrj`$Gw{rb4PocQnt;Ny093Gup5!fs{Tq5WM?yvFm&4gwr}n|O5}@M$9c zH1RS1?vJ3VpB_z=%C`8D}}K)k^B1P>#=@$uAKD*yQz;@J}Pxew|0c0Bd_0*4W=`v~p38O%D^ zP8ve})fj)j<{t8CB7NZu_?el+mk`hJoL;xvrNl>`fZe*CoaXq4>lgIL#ce%!^FoJ=ez$IBc7QCNnCHg*d2Nso{##voxef)!XWHtG0T0|a9+ed{zLle zMxbBHe)L)Hd#vpY+~vu)q1;k6sfXR2KDAG>fq1YId={|mxx_P{0RA@d6NzV2`+rVx zJhfi`#BPu$`y|@&AjYI+(C1S7u0L<|B#M2^AfF7+ zH}g3EXy^YH_~$9lGU8RnneJzX9AAd^_3`u~;tfB5{DUleg!tIQ=%){n|Kr5RzXCmY zobbBi>@OZ4{(*Rn=U*L7{(m<-R#AT4=p^W8jPIwr{97A7k$w{C3-n9SMi5LR9?%c? zc(h9k_}AWn{aj3zN3VhZiR4o{68gD^dgyolx5KVrML}>H@v&zyE?-Fgr|*GsGZ%r+ zYs9a1{?`EaeDWp#hJVYX{J`^vfKMIIYnn|y_mNL#FGzAG@fTgrM)1Fs_-`EN`ohD+ z|LXXQsMnVCx9gnDav9J2II=nMkuK=-BJ$adc#Zjr&53U#9a;T$^<&T%h#x}wAQeB% zAwJ6A^L0OPBJnz&W9j*j4&n{hqQ2*l|5?OK%mZ&t{08E=)cbMYB0j|Ue0S16>Ub)y z_!;rSEhrbgEC}8vKKe6Q=1lTA=t{P4$`1t6kzH3LwT~?f7rpU4g(rD)AL7HzS9mVH z$n}>(>ipY7NMGac;<^8yOFVZaB%eqA1;gW#;QLC_XZd>y%Sdtt@qqg-Tn{%8uX`Ry z6Y1|KUgJE={q}Q?|1n8_;qA~{j`4g0`MmD@Z-rew%6|Gc;={M1U5+FDHq5VP`Mc+b z5)UMSqxPBQy5U!dZ$Z57kKl6_`R_@*bQ}7M`>Vr=kMMnb?=K$*;6Iw0j~q$*?4986 z<$lx;`pn6&A0PLRA$^dVpSBV&oQ;nA4COqXc-_hH=kA{`B0iEj&+S&HpMrXMd*u#X z{d&!}NuTRPdrhU@o+VygkmNJ`ZM0*MI=}r@(q~>oJHCtXEBF)f(UVXwZ?6rTp`SXA zcYCwkZHbT3|9Bpzo_Ha(K6?c5D*eEgt#BVPLk_oA0pkD58UnM@m-yiHI{m0H{67=u+;VG|B zZyYb&PPT4^ozy;nJbCgtnE2@TK{=UtWdqt3=kHrn4|7Rhmpa!aFSx!RI>PruQA!Z> zIseBY=PdF+mv|}lyUEXe3G!#(f}ZD+{(90^UqHX^WPiW+5zseKP9NVNA${#uNaFVJ z4Dsf~y^#m$Jj7oX>f%huM_BNPPSUz^4&kMLe52hvyvPLr0+<_b2@|#0#l& zJ|7^SnF{?EN&f`#2A1pc{EB#u=Rmq2_`CDj6#D-z`E1+{{ghI9t*wZUJqY?%(oZ6u zp`UCZKGkqu#6FH8eRZ9U3_YIr+MLhkX!jD^y`OmQD`*#wAI>H|&fkr_oP0(Mj}^$T zk2w9O(BJPM{sQrA>UR)+MLhUuL!N^535L7+)Ye zkoe`CkBruVesALYlD^7w+6%$#U^gfT+;dbCb z1^jO#{W$p)wgI0n5&tLgy3fMiws8JkXy3xqsP8_+KS{ilI;ZZHFSA^p`|5Gao}{l! z+1sJSNB#{ty}!>VK9q`cP9UCn1oUptuWbuCt3QR`t5VKB(%0C&(}|zq<-Q0$O~fyC zd>-uW3gXuiA37a+c0D{W1Lck$1HBzW`g=%U7y#~ic#L@NE%YN<&a=OliI2Yr`P~kG zLws~4%6*yqKQx>dv5##fp}M+$G0AW_KX6Z!n`ODviI=!<#GhSEe7qj*?szBh>K{@loz`bNMe9+~@u=F@tMKUz!0vm+I5wG(14%`p46VJ^= zJGPMj3gW}3LH_56pXdBj_J4)*xdH9+Wwzs;PTvncvK(fARpQlIN&k5?^ADq!fPNn7 z@BR$*lOgW?>!)5W-`8;YYmT1*{vIc+BO6N9FAd!fd)t?C?o2$#_4-e<+J z`=-2opC+E=IlV`b{%?+d747BnY}7+LoC*E>-`aR!C*s4`W4ySOeD)?j{t)Exb~(c7 z{{g&{^aaCt5&Jlm^tsvKzYE*ta^iJ7r|WD!)3_7c@m|n>iu5l$$#IA0faOSkJNbkD>T`c!+#K-o8e>j@_*Xf0vIlfoo_%_7H{sjHF z{tqSIunhj>2=bY4I4@!!U8E0ahuibs7o0zTPs+#5i;35z))}uNKE(Hx=8(@_#B;w- zw(k?f3p^L4i}VM)3;kzu(1XwSUnTt*=W$-I8u7YEQC}bTxB4~sRQWr$bE)Tb`=HNp z{=WIcw9h)nyI~JgDbIn#N8Uug6Snp@k9a2ayGzZ6lPLCa4(W&Ag`7Sv+(f*<-=Xk0 z^IqaZ+kpO2@_PDyt=GiA7o891zq3iQ=|#}PFwgnlnfTjI&-W?Zu0A5(@FCjEuQ>T=eH#YW{aY94_avXENk7Wwav-e!xdl z>r-dAoKL}We!y~XB0h36IJ-UHOT2nH#utx6F53wFhc<)$myyqNq%Wn;85<|wFc19Q zpZ~+@Q|lv}l)=Bs-;-)0|E-A^mO~!b|L%@+Uy8>e(+%gtv5#Y%e;#^Ru?}u7C0=(t z>a~jP^+n<(zQ=ted0k69cnEu&(`kf)q?}%UN^cMn$wu7M2@S|QI0 zGTMUq%+h$$pZu8g!5q-Pz;=9xc#Zkh^T_8T;yL!;GVu?DK>Kgq%is_18U&vifISDV zC(GTNc*E7u!&&4rgLpNyzxo8?L)?gsr)0mxuUYQF(4^~gDe1FZ=W-jX5HBzfKb7U4 zNxU=(_U8TW65@5Mpl4amu)iCKS3iIsleEA6-A6oo6Zm*MP$iyw0+KuaGsF3C?4yVN zVVM4HTi*LU`HZCE;SarBzUMWE^qWY>)OHDe1Nk>(`<`+Y^fsD0xAs8h>uNkdZBz2u zm3&H5q2Z;(4{-iJg8f`bzcHKm2=nCLUMCUHYzcWbraUFb{|r8hh@U}x=t`73h2?&Q zc=h3=U44`I2;<2H(mzJLj{7iueEB)?4BOq?<#)sjsXWrZhzDh~``!#9*IPk7&j60v z1;IANbITDw9LaheK)moO-i`EU8qSN@$K|9S z;(H3-zBduieh2b+9P%LXF`kd=`R8XG-wk%|an1|lu&ZH?cRufU-RY0Rc;Wr=uf(gn z0>7HFW>!L<4I{9eA>z9d&oTe(aa2$)HTRZ_l}WAkE#KNx%9p!V6&=sFclEaAmp6A0 z6eqRzb+-i_#lC!h-#~AhJYk>tQeRhZCEq)#tK8o_DNC?>MQdMAN$EnMr*)uzc`>}S zt5RS0U;qYWs%2Dq0f}stuIBFcf!@}#6i2vRJSE>c&@<32H?P%@lZ|#;!1+C59t;(#J?`dguDye2qzN?%s_LM4vLH7#1R$5UH zWLp{g?gaVfwzhmrOW(>#rRM&M=mO8>MZfuSe^=Z8hEa4ruhq@xCr!=<(-$7QX!?

    9IgQKqpMPCn$z8>H#%L6TKUCX=LiuwMcv`JZX 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 z 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 z­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

    %2&~J3&G*aW_k@h98 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�t@w^!n1+HaNQ{3hgfu(=lj~XW{)aAJukp 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⪼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
    )r%JmmMgq!xNxx260^E)@B=-s7SCFb5V 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 z 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 %Nwo6*9?6#!e2T|h&Pzgs@MQMtdmrsL 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 U2Sr2 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%0D7S0crfIfiBaCbdm~CNXEI=3m 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
    Xj|6YsO1u(-0_Td`z`0p&=q*A2eCa`Js3d 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 literal 2053616 zcmagmd0b5G{|EkSrm3cynD&yGRu!cZN|tF~B%_6_6%rzQN#V4SN~MKT6opDCYt|-0 zwzO!Ih%CvHN+IO;I`=)kzx(m|{qcK$9#609y5`I|bFQ^w{?s5N|5=vxf3N(18{hYe{WJJC3HRS+=xvD8&E$Vy|KHqq zSni(%|K@++_s{lBl>T|0{7)7*Nc=PYH~;%S`jwI>^?zRf-xSXMcXeN`|C@i`$3&NY zUvB2V@B826(hH#eCi~wmp+6(dLiGCorjBU2zez7km*CCj<#fAqq{=`2|IMkX{|uAA z`S*Qu@V2SGxHj8kzBITob_Ba6rghLTKDZacRjzThn$7Hkl_E-;7UQF}ID;|3`)-A=O*U4ru ziOo`?KzMRI(@u(87@?{4&z4_1DYDsI7GW0C?IS}F^0Z(vZHUsk| zXGBbJISLA5eMwqRS~Q#fj3n7sP-But@wmiSmCLnbF_>a3Dq^3$mOPhBD#&so>hc&YK9j+t2+xj1@p5ye+qtod{~TkUmLv{0re8oLD4P^r3KPg@@L~y*5y4=n za`_CKcT)O<&79NDU<#Rp#frAUL19HCTl0C^M1}22_?$>eSjyk#l*^Nk#OLBuY+`LC z<6T3Te#wd>-B~<4rvk!bMhuHqBTTjyF~JtKu?NZcRH`gCkvHNqayeWQi#L07q=_F# zix*G4S$u9ZVMb6S4k<5Gp5aJ&3!=+pF)^hYM3I+H;WVMIlezAU zY=)yPXXRAu;ZbU=Xg-VZ2wqgoz(#q@Drr^~6_KAI<{8goYANdD@UL{<<+PGW@g($x zTbW3%CX25~w8Vzl$ZJI${pW08a>?;DF=Y+IFQkUZ5w5f!P7@5WcvU<$mq+>95jimu zE5J^$#t~);4stS|sc6k&@zt4Z9&U&XaokCqOvTreVI@qyjy&bdC2Vmn;j?hCGvrm- zHuR~*We_T2f5d`hK3h?PlF4K#+p#cTTzr16{K$5bTrQ*ic$X=YA0C-JjEcZv<>Lcs zv6$P~#7@YNCi)T)LM|(k$z^KcUR#0xrSQOrbSPRaMN6!dc9t#Ccqt z@;n2%1(-T)2vg+Ct_5NwyV!5^?mP0X! zE0e3q@Fgrw+@|=_5&Bdv(bXiWck6P)*wQkp!TjF`Q&Zxl)PB|K*~k>iab#8+UBkDjc9wJ2H=r;S94 z$ri_n$|mCa3@)jmxR_Jvh~-TCXq?<^qC?@!5&tOeXY5=7kB@0!QG~b>hBRZ>z94sr zWDD70M1@&^N31GklPrZ>4};C+*buH6?i~CGc>xcn8LpIniop{qas*Ym*myi)4`U}2 zEY0J}`R!`g$1N$sj)?_5C~GNV!pLS9MY3~A+*!h~X2j+)QrJvB3m--vYm#6x^q9pA z62mYj$%>{dc|s-F@bLJ=wgpv8DOJMQ$Kdk#I@C)|mY4)Hm#vyic(HL35;v`LzQ)o|H-HX}JMS1OvP+(EV)2wfw1OcOS~y4f(95zGoUlgF}A)nc#;Qb=O7HsSJl zY$jKSUV^E?XJ!b*dAZhm#27~-h<@iBhK*_w#bvW9340$)ECDwb2_nx=!^dT?xb#(_ z#a0~_%Se_JYT|$smI>=Vi^mpcyHa=-#1b2v2srEpS~d)#X-&8sLeiGFopF&kF`kFdE_(v%Z37iXU@nJkaH10EPyCyC9)l;Co~ywE4|KPAMPDbh^%T)}PM zs9uJ6gcP=%LJ9Za6JH;X7U zF~cT!@@o-0JQbM9ctBvU=|>}xz@``sQ--X(J_`>9*5!!|RW)w|TuU>}aWRqH6!~^~ z30^c`$HW^8^LhA#A_9qKtVEt-f9G3QIdSoPz%XIP>D4IeTiQnQV$U=9T5Nn4HeZw2 zP(;>->Bm;)=5lc0DWb@ygt{y#wt$O0BqrDZ*Muv{!y240b9FfXa;1n0Ba+J|Rd~cR z*$flHCmc*nGCe~~Y}$#(wqcs-R|vSg2rkc>QNW;&3}#50!PUgxNfUvPT^ehz?LxTu z(tJiN$;E{iK}gJQ@jd(4_-0Gw*!WUGUh8X7bMPf*DR!63V^Q~Ym01${xtP4lvo@4B z#U!dWJZXGmP_t){N*37UEaRD#M;F`$Ym-LDxb*FH&mXO7E$0b2^qPR zPk7jSE(80-!XaoU@;cUpzV)D3ECDx`v{MW`xCw*DpyaqjALA6^h1=jOIs;E2Hc?ik zQs~Q%Xz>LSd^2*B2-q8Eu4G2r*t7Ks!;gQQa82>$k*g)dnlM!pd5rxLeD1jWc%YJK z9#@RXU8+iK2~S8yN>nVh!RI1T_?9K)N)V1Owm>+TSp#W)ffmyft0XLbq#j`?#^F=5 zV+$BgxU^VG^e4dDsWti(5$f}><<<0TGsL9!iQVHZ!=#E49WE1p+i>7>`Eop*mJAB> zOAaaO$>Wa4BOHC)ysYuaB@qS`)`jm1IFRlpm>q5eebBi=Usd_EWR4ym=Zyl(fE!6> zVKy}Bla#P?@fN}$gr6-d&T`@_F-NL8>G2c9cUk#oT*5!Z>EKlwlww z>^ONja~wiNHo>e?YAmdhCmy+eW$bb$k58lo6fxnhw_#{Hae1||#Ft0Zna;wvL2sux}!u9 zFI=$nwiwu%^Gtm_qjAmR^gu?m@#OiCS!|fQ#D?F77Bk8(-jk`AjCCNii7=KRd$Ii{w!z$+O_){IvG~giZZB9yM~?oBFdon2 zuqQlBo@5%~>6g|MO&f9N`>F{%YdiALhSIUV=4_|K5*KhZ8I+K4eHjcEgApO{&^)#r z=OTS_aWVabQo!FP?^hnBaD_@KF_^sJ6h+~S55-|o3;{z{f+xWe;J%2DLMR&^mnFqx zvIr9&o<)w$!JX|iuYgCSO(+~NK9OOwqE%Jd9Ql2?K~j`~klz{0P{MI0Hn`^zz7}@X zNl32>(~n0iP7ll=JpuGElm0E>Hw*y-pO6J~Ng-umILL{{6p>1zwu&g#kfUHUXo<$? z_iLlAE9&bZ4ZsM-g9%Io3!rO?DCxEp+S5e+>Bt#i4Y)HBM{tIjFbmvZHV9x2cz_qo z1#h5hz9|3g5wZaNg|HZWU>VT09O(}$Mg2fz5UhiZun9H;UBSo@QF|M5hp7GUtAy-C zKLR3wK11n>L&n2iNP=XbYacR2)J{dF!vV;IgOCM>;RqasJjjP*a2!qm9!&pKp(u-x z_}=$_bqej%PzvYZB9y^ZpzAvF1_+@7ZUJ3)kX3LG?!zN^3^h;>4bTM5&;rk(4W7eG z=zups*IQ(#s7?1jqWu}Vp$Gb50Db_@-G7RS6a#UP0DQmur`Sj-;E4Leki$U^Um=bU_~s!3gLwMw);bOn^yX0hTZorh_%mk2yzhg;_8M=yFGT z!CX;)9&$b`fJLwbe1NW{$Q7b?0CE)s!Wvi$L9iY+0bN^=!4LvlAr!)4J5cbqqR@_o zJrMVwar*TH^b;Wok|7n+;D74?#xmg`WJ3-d0lJPN^WnIte*#$mMQ{pAfUZ*HSvUt5 z;SyYiYfuh!36VEN?c2yZa2KlJKK!kRXjj8ysDV1DhbPbgjnE9O@El%32fT)N&;=jh z6VUY;`33smJN$wFEhcW-Vn7!QDFKqe1{vUhEXacbD8k=T`cGRGZFSIqQJ@LhpaXh9 zmp;-E@H5IkWr8#pwI?Ahz!Ij2#-@srUU)j%wqPe3b3i(Qv#384=?ZQz8w4;1ykH(I z1YcMRD}b(5$knh8Ho_(dh7bsaFxUrw zV*hE2qb&jSuf6!@L8L$i=;DY{7ReR06_F}10@OugBax$l2b!P-bZLuH7pVvOU;yL5 z2u#2XCc=MfvZ!x?w1g>O1v7vy8>FqMP513YZF{7{f5sirb^$lhm?v^B%!B!`02abx zpvxDz6qbWO1i(sI13|D3Ho|5IhOI!?Hc{?C?t}=4fnBg0=-PwC?`$MV)K5m@uWckv z)K5odLN?^W5y%I+jv-G#5fqEYPKmMvc~;auC&~+=yofA=E2922A3b+ZkfUeuf zdvG5fLN(MuBQ!w^(A9=~4lke`I)JX%$anAox}gXDRxjFp@by1q^lJm6{x?w$B7egl zx-X9N7FZw-5LbMlw z4=e|N2!NIFw^pOQ27+KcY=SKi0->-C!eA#vKqSOKEW|+q?1dyqh7?GJG)RXG$OQZ@ zPqHBw=sJQt3di9D6hI-IgkqrUlqgS&@(i*B&cZpk2!E?g)V_?oDr#Rt3Po*txeByz zK_%RVD!31HJwnz(y{O-SY!tPdkj>BnPvIG~!E<;Cui!Pj0lGSo@8P4U{{`7AYX3m~ zrrQ#Db^~4FNC}VvY2W}|!;tuqg2;*b@<;_x0{rex)LA&)~5oPyKvw@T1H3+LdxX#A2W>1E19?Q6&zqP7ru3o79@+=VK*2Y>56+K-?b zYM~yUKqEB6-+GF6D?Eee@CrJBu6M{z_y8Z_3-rNP=!b7W*PtkWB8T7)-Iv7u5?CMs zk{}Iq$slC`KZX!F(U<~K5tKk#G^UDF6SYSmM}mf^KMJWSYHK02K?n3;4CupHFal#R z19PBjB65Ap7FI-n1RqH$y7crbwp zqOplc3$TP~FdeJ`zvcZ?c1U}007r0!zvYVdY;YHi%|m*_V(5pak^*Uv4jGUI zhad;&I)coH6L1oW;S`*Pvv3a1!zG~WGV;2peM6MxNFh|fEvSSlpz9v;fv8ZDo$W~~B=gp#xsS8+Zp@@DV;iFMNf+HGuXH7=$5u9RIZrU1FldKa~-2kN`=L z1{sirVZa4NPy$sL0i$3v(8WV)fwriRAH9h_7=jU)f*DxARG0>Qz`vXl8?b}FyhXVXxfqs!5BR|{@P`1PYZY=e1d94=k?UatY=W&2 z2H~(BD2RY4h=y38D-M|;YA1;@8JP|la1gQ~2Xf&EP7a!SLhdweMA0$pLAdPpT!9N#g2#pOVpPXrL-tzkg}pS7b!1l zD-F2`~{X!3w6rbg%|Hum?wQ1{e5SGtqVhH<$yS zK$n*&=OX99d{_)VuoRYqKdgk+um;w`I@kakfvzp03`T}PC~Sjp*a37=$ViBWU9bn@ zArX=x71AIRvfwb#m4nQMd?&;$MO4Sv8cplb;E2N*K=T?Xi4Atgj@DWnX@ ziu%Km3ZNwFD_&;%{efiYkJbd5!hgYjSn<}ewifE7%G8Nde{ zumwkO0%w>Bt}qMS!2>*jE-&O$q1j1Sfg7vTgHo|5I zhOH0^VL;bTBqeG`Afq5g)Q?5(fjEeV1V{wB(nPr*nF$9W3l78I$`Q4XAoCy}PKd?| zMM*Dv8tqaz3+F`R=S6uDSq4``{Ts+~QTryc5~|=HJb=IT2<;kCzgCoW$OciHUak@C zrvLQmv1at2LL0n*m(T%kpc6j8XP~QFlwXivp&!1%clZH=K-W*?5c~lK2lqA*2fEmz zq}x)WwhWRZY7a-!|Md)A@}g8kDuFVnfEtVh4WMhZC^bc?iyQ;`UgG4qh-9=D~be01IIeEQTfUw|vm{6ZMxO zmw`X5fK{*>0%0xCwH~=a)ZU2PENX8-215vJg>cvoJ76b7Kn(1LIQU!fXzzt2NP#ps z0GV(Q4nYna1-kN(Cq(T6QPSf@Xczyde+un0qJD`e&mzyk1yTPJvJ9@m4Y&n#RU+>~ z72JdS@EGc#9-cr0(A6l)CS)@_g=eC%Hc>uDz7VzBkuTvjyb+E4yC(cbj{bY-f)DT! zJ_B9d$SV6TDy^(6tb`2$p~kEQJ*i z0CcTJu7!1?{s!bG2!X8-3Uq}dw~N|4MHz*Rf!(719%MWuLMrTsOrYx^G7ECyh-i!+ z&qtfp>swx7(p|a7HkT1Ro_kXNLiCoCX)$tIbB>N~ti8l!B2fqpil?@m%`h#T-uT`typzI0Z`EjV?`D^S$r3!JZ~P|2VPf#twJ;*l(Z9 zEqLE={+@p+{p9}6_P1MGtXVTmy&Wfa72Tuyo|wz!=-7;Ln={lp^4K2N^L6s8wmz@+ zR@PWOxTdse&%Ld;tSHm^DqDkwSqrb-6yAMnWq4te{Nk6_9Bs#s`ZOg;dYh+Y;kgB| z2`Nnos`+=aeEg73LJZk-wzyakKM}a|Um7B>LC0lpRN!2(BuOQ^z)*CuvBEpEwjP zn0cV0%Xr3NbV=%pYH>HE8!`U=jhx!U#s0L zRW6NRt{=K!&iU7Uj;k+7mSwqLq24^X(W$>U`OvAZsQf&=_>LQPK^_`yV@AJXsr-Dc zvEZa@Y`)ya$75`i?K6eWJGbUMu_B<0# z`##y^@~7yN*=8DrJC$c=70u!v%k4hok=ke;r>3oZLG{%+ z*OgW6@& zub1%H@6RvkPR{!ezsE0s(4~0Hw7l)%;H#^Y8*}!`vJ8$=dF0zC9X4vwf11Wz+Yv37 z^sIP!SEqto&W7Zk!jHeCo#(brezdpgwf7mHnbJp0B!91HnmVI#Zx6OJj(=(X>X_NL zUtdlNFRf(wjJvga&Ciu_Rc$5>oZbmZIgIe0uHyj)@0WPp-1yvrDl^UXvRM1#&gP>l z$0(0bsg(}YTb*UHUm{`B0nhl1q@!*LSJbCg9@xLNv#DeDgY(0DZtVCfG5)9PuyfnB zIyiNwhU)ooI+|BCUQOujEYm!+t6$c&L&EG;aYXYpEv3-uCrb~1-()Cza@5#!yzjX90*l>Pej;}|hPr-t#vNz7!?*160dVbcu zm9^ddMMpFDPHj(#di3~G%i}q2_riR?Zrre?=}B;~(iasYe;4s+iv?Foa2-zID0>^0 zFAZHRTbKLl)d&95&ceD(@hOQPE`~n4b1O;Cv6V~gHhnnOR-5R4X@BQ}U=A=MX zVl!qL|5A{Bx~1U5x(H7EQ1*m?FGQngc<9@!{qlRPTwWF~I^JI2Gb;SfAqYqK}?THJcw7)HkT4&OP%T1A1hY@`g?{7`}M=%YO0U5Mg$8X|lz%=eJe2jAL&L zeX=-f%9_?24{e${Hs{FxS(ss!y=~lTu2rk+aW}_v9exoLi#j-0A}+nXQT13&mT|iB zj`@ra-l1_-sXCVU&Q`L2a}PJYY=2n$Gq>q{*(*O6ofF#;bE0l@=!(p^;Hw_&@;k22 z^*kiz9GVxkYp#O6$8AMM%z^OS_7!|T6mm)1QzaNxS3lY_zM zhzZ%ZjKsTVhnVTJ-yXZu-*xU#z1kOZF=O?pPg$Sec_be_PF4AS+cK5u9mem8FWANF zxn{Wa?(s!V+nW8h%)S&*PEm&&m-y{6(^xW7eDl3}$7aqeu^)%Dj<5STVshYM%d*9* z-^shgYkwR!V)Y3HyNWLrl_#FMTd!n#sl>|7)hicY={&FP=Znc7d8g<8a9dC??Tqi4 zxJQOPoB_-4#vQ(aT}2C+VP8M*udWwd;dPtjj?Vd-{Nl$)Pp@keyJuv*Ym+`}J76W= z@Qx!qynFcrxtoTWy?36($IU6Y^Rp|z&7xG#RLygvW|*hsZXEXu9be-)GJ`iNSnbKa z`x;79IzyKvqnC7z8y+kzedP4FqirRY13~v_O2N8!=I6nN^uYn< zjm{QJ4=JaRd&Y+b``-Jv!|OR_mv)S77^ZzTRXS_Y+eWYFW_}r#W$AJ{2l~x^Oz9rA zNU=jwc~RFkiF3v`Wrh^OhJL^H&K;5LnK^IT^q9Oqdj_1>AMT2>Ea>{G+N^i-Zji3! zisUDTJA(z0GxRp?92&bU#C!D(72^wEf~2mLHW(({6Hb35;hYn*OpL@kc}R_(8Gn0F zMq?g&kF&CVdPd#rfYm1U|BskESoKh)v_hR+aCGm5mwPz_mM7S`k}ua@{)}tu@=` zHtlpCHuY*<^!2C}L+ZEXtOg^)GbCE;dp}Q@_$pR&zxV3sG@16gi9@fw(=Ug-SMOOq zr>3W|>X=eTnqf~zpWLsID^A-24Bq|mug#sdd3S7{#`br^8R|tvO1pQ>U#{m^VW6I6 z{Us+Lf$u8avTM^!!EP9iPR0rI@|e^=+(l&`|k@8hdB&yFQkl zYJ<+LPFru?O`qjly4Y~p>&&(hXM~Dvr*$@!o>WzPJ$b`Yoh%QNEZNJV~lb~sZaehIxK#8>6X!9Q-qtu ztM1AQANegV_b}~enOVAzZa21W+KD-Kx^?lmBT?Nxs(GuH=TQ8RjN_dt!HTccP1_9T zjHT9m$+P-!;?YDau~}t!hTP8XEjIAfl=v`rW`LVi!Ahs93mGL0buZ0Q!9uC)%SNxW zsq`tS{1mF6qp9)a<8`O`IuD)ds+kvzf_8ka5#OY@|H2_&?~H-g-eS|uDf`Nq6BFY` zCf4Wc++KC@>oD`o3+Z-(?3Z>6FKflhT>oe}_oJKSw8D#4+an6%w;LSo=;?j;euKt_ z{5b_$0g5^;ADluaSLH>I+~iv?%__X1DmmOMacw|o7Bf75`ue%$qtg{OWHw$1IyT~L z@%A~FhP64Ywt9WUo|F1%ozaZSv$y72Bs?u#zpU}~y$rQe*CaEPyC3gdb1?W<>zgkv z>OCBrLG2K!D9-YYS*J5=->)ivUd+*|+GwIZbhE`uWtYZqS2=^ElHN)*4yf zYd`eB>YU}p7n5#RSn;0Z?=etsTej=hye;zf4m9WGt<^8&61;2s^I@r6u1W$e(N0 z9XnXuc(mZ^?C2wYamJCgL764jFY65)p4y3RamGK=h*wIl)BGM);>3QjS!4aa*c7ks zHNLT`s#EwOEpx6~vQIvfoc~F|c-@i4_pU`R(_F74X19h-oGa<4eet_tnd^vHOX*9g zRgux=2lB4*R(tnHhs32SZJ1E7;^F9doo*L)$DMPxV<;;ZX_aL=$*l}t9MIO}IAQV0 zfB@+wlCDPnGNF>yX7yut26yQRPce<&WUb2*sFuhcrFIN#FjY{WGRpH{O+-L$`%Q{Pr3%Pni{Dt`+>i#9~@S!wZkblJ~VCX6nqviE`PAHx{tG z2b=?y#)f~4k>9s$?U|s-VZxVBw&eu}AMPDxUHx+K;=C*VPkP5LoVcQ}SM}$W%0GQA zvzKSov~>R&IZ1^G)m6)rCLdD$)OMX$wKqH`+$&}%_3>V5!WeHB_`zQ8)s*Qn*Y8f1 zncKSXYjnXf{n^s#+Mi=MIjLcL?rqB%c0y|2S7DZE@wPp|;}0G4@i_Q6-7zIuxGPnM zd$=J}OZk1=l}Dikzw)Zuc01n;8{SiUZrqnMm-VEg>xG}353$?6tBv2_Ui#pDWb@Z| zmYLs;&C-YO{c+w~X3C0by_YMtwqfRR6VtTq2L2(|TT6UqR)=2|^ZN8_TGYimwnr86@*Ca-qJdD%L>17r?#}S+=};ExIZ3o>*iPf$I;eJ^{1DW&sA?Zx_e9U zjtJ$lsh7|0j(w*lp0(XSTB*EUQNjGu6%T`{$}Y9*$Bg`@5;9qSl1BS0rH>ujYF!^g zzCI63sNU-{ThH=}SHD(fUDxzED{JD73v-;93Jw!wqeox7xk&PujIuXw2ZO3O!bY3*H zJjPq~Letn2hjL@eFZew9og}cIUy>g!ygjQB`)GVupnEH6_@TRD{zrDMvb-zF8QsewwGOOj0PR7}}+8(D} zj^5EsO&_D{Butv<^If=Ztj*BN(7<}f$^}7Z&q|x0n7K#6l4YXxUANui;qH4{c`AEm zJ&7~1YaJ`|s(bl{+LkF#%f~K!wsd0c#A_orGHgs=ov)tS(iCSKbU(Pbc9MKp&)UA3 z^XuJ5d93?Yuu>y&N|kW5Zc8hloZVA+O3Kp4@vGQ<-<8WobTnI*zG@rn=$rC;>)U4g zKCSQNm2EGcZH$-Pop5ktUPsTo^v8L^wsdy+0sYuV20o>%c~4s|m8@D);bV7CXg{bn zIlooO%xT~7=zU_%C1>BSU54$2{bud>(W;j;N#?iCs4)(g8@HZ_(kRV#N}Of;XyV5o zru!!|CI;5m+E4PQ?vZCF0{E?GS6rH8r1I9Y>-b>Sq(rycuM1ahadALSaId6Y@{W8g6<9RfAGRCc`Ezv z7^$qVdWn-uLDSTzeN)zTRk)h(meSp1T;^az=_ z!}QFDsTP4fZQJVorqzBw-w?Cvarq(b+_iw5KmD>anf4%~58NhvDZ*YV+;-#Ised3q!H6Hc1e%vVl& z?gZV24`b|QP^pT#^XPsjB_pn3Pk`DT*Cm*nnU@Ba3ajfckWleZphW*#nL zKfkf^%hf`oDH7)gWS?2xF^)`ayc)qN)3W~1^kAf?-Vw^OaQ#@9)PNsG`qJ|*_&@d^ z{`CmQGduf)|gofMak>Aw?}t- zbsJSGxkWwCkXa$ywjhSg-Z=K~P+rgb4XZG3J2p;o2yb7cRi2h=dP+yj`NheO9iXR2UL6zr1O|`)yo@ z=s@ntolBLc`s;MfwQNq>!xvVUP+tyiXl*GTeuS@a_YyCRjJF#+9b47vEOk||?&rx? z{+akICB-Y=>m}p8K8JNSPSK2<5bu)yyzr@cM6~&)_F~K%#k-JY{XTk28kX^JygDem zu6pEe z=MJnMJF;5c|NX+S?(-@aT9=+%Xzbzk$fEyQ$*?QJ2m88asy$74K>f<%LZjkBX7!%Y!!|s2zWechPe#J2CeID3Yu-xy>fFBF z>sG4vn|`-*D^^W@Cz0Cd`Dp65sFyA=t&{BMs$FQBvsYp$Vac)EPg4(ieh3acw)&R3 zt-YABcFL?l69c~1;OWZBde!GsN1t}Qy={g=a8mridRGS`8Qy!%@!*6TLz)&PrVT;Y z=Wq4bUa|57_SIp;gt`I#!G*?8;^b`8=WS7QELPq!mSMCwb?fLKn0LSK$`psDCMxZwEcVpa z6s;cptm4SjW4p@~-94D<2mu6!^Brz7a-A?|ImKR%%+bQBt_AAa8`^*e~tI%I}l1KDjBq zuc&cx)4Z^&&h^caU1{~VY%9oVjx>9Yzs1=NG-%Yag^Kxx+lJ%G^pb{*CF1wQcs=*>A)Z*J&EH)eb0~nV_~* zBEdq(T*Vjbj~}soMv+GsyWQ&fpFLxIt^`>qUR8XYGH!;g%ZkR~m#n;Vdm1d(^=Uov zc1Y6xWtF3@qj+Z#Ri#?2m-*%Mn&$f@o91o1>zqM7`F$+p+gFEMMVvLK-rLqX%*Naf zbyuG|kdWmyty|!(b%2TsSyTGre8ZwuGdnbwd7SjvvXEuN@;ez(pQO8g({@kRQ2Zs` z&sTiEzldG8wqW;^GY=^bZ;xGHoAXXS&55hF)2O$3S+HqwZ;<{n?R9-A0hi|d-gE37 z=OjCHOunSAHTEs#zS%qj9n~_bzb)``!=%)2hu`NdF>551!S(ZGlR3MCTx%kR)huhM z%IO((Jkj9tnQzrgH_2`@6VqnDSm>F)r8gyhl`w^|U{+wF#Dh^AO3q*2q!Dj+`r^rb zEeE<5I|zd(j2v2(nB@L+TD-+8bN7t4rD}D(C!7yRK9jOaIW@2&@b=4H*Q)*4>6lkR z;}3~4;SE#WZF!HIpVS6@-cx$L`x|GH(^`&yql=2N`^g%|W9Kh#aK5<1_4j1Y!JM(W z9gV*pt2O&34Kt6~_+aLS38U6(8lF>kPH_0%GdB0;EWenf$#dDimL5;jy_cgfI6vg9 zO|kBD;l527-y$BFM&%_9*=A%q2jE|_{pBJjF0JlN`f+^tig|y&hHOlJv;KL^q1Eyh zt%t)d79OkbsB+VfeJZ>6XIqR=FyI$k75sd|-~*ckyLR*YFXEb3yrXgs9X+|{+f*Ct z{g1An8(16}Zf)hPuqI&WjE2A`e3wy-dYy66v9J@Hv~6bHX{^ZG_UyW~*7w0_GjsBA zjXyf_acj|ubwjNtDkmKeOcbbZOi$jWU34>#;rMdJlPlea<<9QcH9gyKKKabgB;TBY z+1X#O)s=rL_@!sono?VMHhDmDp;z;deHZIGrTRKX#~P;GatYn7zLnCY`W+76?|!lE zT2d*t)BL%!Ut-p$gPU!aWSOQHzAbQ#@)lR`+OQx^_0>{)#=Z?(f2IGNTl@Vz@5tjV ztWAbvZ!3M-sxaY+`odFf z>4`fms4kD-1zJh1%P;*lYu9zG2|K8G`QWwcz`z5Jf3mOR_@v5jE-rbhac5uTjau`` zKO@D|Hra^08%L zfS$$}urNxJ!9%>Z-kG|r^=#b*-brbY2WUK>sDSJ-VZ{lwAPpTyJ} z>z1oTmF-JA<>MPU?uf-meG!3)vZ`{|tOqpRT=!_8iZ!-CN3^{$cqUhY{a~eOo!b zfAM>wQnEPoNN&KpD$TdH;V0e>Q*p38AyxBbXvwVmzgGti<2W}(va{;Wg)>LryQ3&R z!MPwawn{&K;TiS@hsT2OU-zWOCXBf46!-p_yLrgqmfeCE*GnXfW7M;jZ7K}rWL}wh ze6>v-yXd}`g^HuiRlhN_E1vG={i@z?%vp6ny=pV}z{HV8eU0)G?tv9T=BZgK>4a&S z61h3^?xOmZAE8N;a#PQ%U-nt3S9d1FaP#ZYv3(~8PHB&P@Tx%}{6UxRsj+u;1|rH5 zGlDg&!ozf3Z~itM?h}}0C@3vFanDiz{IjU*W%o|54vxsTDa|il{zAfzb$fBtof%d0 zhez#aY-)CidAYo@E823xhKqiN_YT$1Oua3+YjBxm<+6I2Y}2r1VPD<%zBk^J*EHjn z>Q~uvMy+MdUIR7jTbU92M^}0T3S;dUVV8S1-25~Dq=u(+@c3z;-e2z2EF9G!onu?H zE5v2zZ^f$f_f*zAta;in^Qh*EttXFjj=3i#OntHcjnm;Py|%5%sy4YxwnWsF`>mWb zy=|SPMr!#D#+mh{NzY_|{<^wjEH!4)OO^g_8D%$?TU2)sACTLXy8gla%d;0fkWu^8 z9U$i$wa7`>u&w0kWaSC5`SvN_>@ay+0#4mee(4 z!GPZ3L2F^@r{Eriv4W%P1NSae=-qVpNdxoOi^&gOzPBj8r_gaFP0y<$@y-F4l>0w* z#62fHpX@)$7xRjLUcLU&!1yui9{-SV*O;=$W}XjgTb90cc6gN6*<(_!K4dV@L}nR7 zF7o(?*e-LK0FzbnMJsA{Fi)8Xx`c1Dr%BnmIc%%BYo$X1A9Z~uE`0%iOb2or*D$hV zpRJitvwcrdU*qfhdBRc8JSK8j_`!1gL#?z&^VVV8zBs3DYX)TPdByB*y{0?kk$>?A z@0jC;ZQaa)^+^+^#5tvxi@!dgoDqKSV(+_iZ4dg2t5mWrpBc4!kFZwU5_#u4Bjm%8 zk`e2%9S>x|AJL(i+ocqkUVQB~21n zdb(rrz2JFAGG& zb6=@;yYa=e&!$CFk?ty4y^(^?g3&8IMRNdWl=g!ZazKyH#IQmmk zV>-KUbMx*sCPbSHmAqGSPw4WPw9R(59nik>-TP~AT0FT&){k0PJY{&tr;ireckaD* zd|9&kO-2npf6(fjNPFZ7gJ8fEAt><|0Y>dEKXHtaDypv zV@F+m9hEI|rk3%z@Al-O8wNj|x2np}zq+Tz!zS7M)8%DLuo+3DB@IMPyu1@oK zM^xwEH(%Znv+Kc!+&}+!H|k>bgO?|j>*~psx^R~mZ>&_*TZyEJItzQdX;|h@s3HypZT|bh0;OW_eK~(y`9~y2Nzxt>l^0|=&#BMfELpqnq$o?1 z?X5GUzkJ|*ka56{t&2USUnX1X>a=Xvx2jv6$G64VI@O5yJ1**1_S6-MFO1$?Ab8f< ztRMc@qt>*4_Y}J|Yh#&H>AEEye=6nrhu`W&^}IcJ%lP`++P?gB?)r;W!xNQHQD#;| zg}*=UuDpJ5i;&o1_F|dh)@<9j_GIDDxt~1Dxh}e8SeYejjkTPGnppOI`Mdk!O+C)% z-m8ttSL@l6S)Wf#`up~l#tWZ@XQ=-vM;X)JGM##+GjDFOVPA=Ug~$GVeoxW`|J;81 zW@^u6JG!l})h|b-E|2qVy1XFsKau|>$^F_maZiVD--GU@NxLd``1d30pWbe^@yM?~ zcMN`9Fm(FR0mj(}lNvhoJ~98VtW`6wX}POlrx^{i{FbDA({1MN6DQ=!RJHE8uy%(t zejX9EJ+5J$zN;r#3+B1Ac+H`$_ecAVJ!n#S+2l&~8XnHrr{$17S%i+M*18?`Bb)Pf zb*AWB@$)Em&#LviU$n0d{rF^d3Dd`dU2`9q;%!qRQLALJ6=uhc-1?|k@tyNm+`PVX z^UBpBAKw0b&eyAQ=3k{ZduQ(b=f8g48);R#Pf8h6b!=$9?j3SD+PBUAZEE=)mFf&V zKj2~4S83}+XKM92D)@+XeW(5 zYSV#Sz4~`Znqz+XxP!AsSwH>SkbaD1#~LhR>5g$XYfjj(wEEOqNiNoz zmTueV1|c)k-I;ZG_#b1>TuE7V^O3rokKo%WdiBh*du6rbC6=;c=(ph6-ySeh2^hW{r5u?{;U})@)tTYLyqn5W;ZN&GkoLLxt26tO7}gw z(RpD>^vTVQYGpnBq2<^v^}ojabIf$SyP?&)o)w4GnwR{2g<1!bHv2lg${;{VTqgem8mK{MZ8!+U1=>qp}GEenPH)%{nw zxRJfGbR67d^0Sm1-=vsmzcKGy`*Gb<4XU{5Y>WM&-JaZVe7c=~pM{P}d4tSM# zQ?{1J4%{)C3r?ADo1X1xpYW`&CZFxUb#3v=8&c-&__*zVpVC!`%(in@Q2Ny*Fltbek)R{w}U8$FrW=33Q1-b^sh=$-bDxQw$h zzRtcW`1x8#?g6P+X3uMyTkl~+rTh`cqDu5M+;qphUbMQ%a%+tS~jL4d;f8&|W?rvOMpyF0T zyRZAQEN)*U^X6w;pFJ-2<@|rUAC%2A%v18t{OPm9dwnmJ?f3Q1|GfI2`OZN@_?gKi zn^(wjsqLiQ8&WO#wXII;xf43>`}{dz(;dT&3(4B9kRQ zyRzfZY@?i8bCrC5yzI{dW0rynIf+wv^*|uoG%)wDT+ z`!QEbR}Nm2ZsGHk6$>3mn<~ZTJtEFt-#VSB8e40`zk3?JY2I$*yX+lT=WX>o@zi>` zw^fN*b?@GW^aY2VZ?NK@aZ|n~_O9!{uSK6z#x3&;{#|xNxqQZnt7{zXaKBsO{}np; zeRIyq)sKGN-l1djAGzKQ`jmd@x4l>Qt&Vu}m+jD=*PYM({NgFlX6f^uy_?0Fk2&`q zjNV!}veLU=h3|oBSM{-_iGGwiOSPJ#10(aY@tGdcNplv0<%RShMusmw10@rwSdP)Y#W` z@q$G^DwbcDA>Y({zgo3?aI9qKDvwS+NP9u7FC{uP9rY|lwRGjTT~Ax$*s(RU%4Bo5 z+WYj}uct%S2CYp#-QZ|E`tJV>t;09JU2!=oNxlMeT9+S?$(1W@gW%wc?GbcVCmTtv|Q>V{v$ug_BFYW5Tj_!|YYkO3yr{`p^Q(88c&2qNw z%jh`;^Yp3OWNiN4BM!M=XRg=s@yYdR29!>^c6;~#LL7^NBk%6a`p5gY42QDcuAVHi z-PuhepN;I1|MZn9JsUo5B>GriUGw`)57hnq<_xfh%v{z1ZwS(RxeTbnwN#PrhZc zV^g7Y^NM^OeA3ik-^=;hGM&JE;wtcSG$Hy$+k>j}U#Erz2V&_F1?fqx!@Et(| zOPb3Nh=KwP9B`U?8A|-R@Q8vvdfKCbqaOe-|^7liVd%3u0B@YuM)`mo)Y)9CGg8Z zZxiP7c_0b-r+*{vlS@FS+`5GQQ@u-=KM~J0Oi2If>V$db&I$8huM>`^Y|n&wBH^D< zyUE2fKojDL&n3*~en^gyWnNpkG}B^lMC)gmt>EO_&+jXNLg&DiDB=4Z!=AOgR420qUw~v4rcVOOk|j zvI?Dqjt8Ox%VHUpc-97}tKb0R*gs{$ah?vaF8v;0-}D5SFWm!-*Sd2FxBFXw zc1r|UhqsG5NoYN+C;FRT{LkN-uS?i}e}MU0IY6C^2v8^e0`zxh0G)LK{F{k!Oz8Nb zT7dlg2v8@-+9h0X+XA%vBtV>x1MKfP1FRbv*Cd?hy#d<&8eko}6M&ZukcW=}#_@W9 zI2)!&IL;_j!g*^PK<8(Gyfs{xuztz_{mK_$Uepbc&zS+nWz4CB+iehl?>?KbzkH@d zLhDu20QHtTK%9pHtV@mn{e9Uf;dthEOPI@Nr6sfuWDL;mm;m+T2{0~m1Jv!E0Qnyn zVBF=i*At4fdw@8z2B_zMk|(TFG(h~_yCm%2Em$$vzAc1CEg^=_iss<&j_$SYz?53Hb9>12H4jM1&Dt` zfN{?jpx#o6coLew(*oqVM}T%e2I$w}0OLD8fd88S?MAInIL=|_gn70A{aPGAe{t!A z$FWm@b|V9fOYH#t8Wy0QSBL|UgzBw&fOfM4IKJvD)`x_~@rHm2>0b?yH)8<(M*-HK zcLCP<=>hhUe*)CQ&>jiL=?T#8>HzDWEx^3H6Clpf=MrvLJ`X9Oe7*~?j}Lj3u#S9x zNkYeI{|4B<+6U;^fczW|P={**)a|SQd}qpp`&%qPJmmuH3!eh4C#gld z3FTkD`z4`zej6bFbpqt!O921i0Cn;`fd7>M;}{oUy!r^9P`?fa$mi>`3HSF_fV|lP z#Q!V6`JbBsj{oJe#}dl(F_DLa>Um*+c$#lXSf^Hi{6q%eMK(*Fw3<^s$WmAi{ik?N z)nagqeBh}t{8l^zt1h^=Y;v9Rwbt6f`QY{j@DI^{E1oY`4cvM)nNB*1I+OOUF}Ue) zQvKh;O}D+P!1V`k3WB$Vi`-lUcjpxe6c(xf6wmLPNd5oBKnrU_9=R9XkRpvv;>0|W z*1r_ES3X!@*j)XmV9bNnFAqg4!{4!v;I>&n~dDi)Sm;L+Vl_A&r77$Oc&8F`3@>++h4=qS2~^k zZ}~iSX+7$ZHvmxY^QsdEZd{ByLAJ#+(#0f_b!#?Yd`*ziCN>23$_M2OlkX*ymi2e) zB!fb4V6DtpaQ$J(f~ov8eGYDr5A72+NB=3F)8+y<#Uc;$$bYh3&mgp0g8UBi5*cxLju9CvGF=rkceCnmmZ*Hs4dLdDro6tLuu&EWDqaMB7@2Y2!X z7Ra7>wlulRkDDy;_x_1|s`nF}=>hJZfc$iXymsjlxW@#p*6=R3zzuvzrJ6?#*sj~J z-8Zaf!z@G?Mg8%2sWTAz+sTtH12@YDMGG^Kru#t?XpAp=hPF9w!zSeZ1;m96OOODFW^uigwN9b9?{@~bJwdzj9eL6=i-C~(+8xxbT4yq>26vx_{(87;bCy$Q4Y*iFbZa{Z+#(;? zFH9`6y44hgB=wC|;Xjr9tr$4TEv=DfHQzt7ZY}Zw+QL52f6rdF%ZFX>!LPONYp5?D ziY`p8S0RVNeYxW2vpVb6AzvOOY@_~DJd1Y+{I&TIo=D!2X{TNrtkv*5nZh`%>^{hHuLzWhhMU$guY zaMv{Cp+Eh*az0x7qFwwH&qqEFe-j^+oQ(6gqspgz7`-s{{>lo+;O~$R;1(ucZLQmq zRp3_nzB;8EnI8K=Q7&hpHgK|W+ym`J;BW9mcS z=T|>#JAvD8q|p89(0{}=a{16?VQL=Pwt>6kOQwYV(0_{K0x>``exrOLkg$s6#h7QG zd})C&3;Am9zYe}!tQzzAU7SGCbvD6Yl)Y{tjMK~)pNMI$TL#V-TNU`LI!XRJbUaBB zr_yPagFGv^%5z?>pVnr`!$IoXI>6u58@wFjye}3yy$<70=bPw1)Cum`96$b|*}=`< z;E&eDJ2}Jwp48FG!9R>TuZ5uG*7~TB(&YUYQokAe2a^YLp8DjA--Kb*#PfrP!{2f_ z{(K3K1NT*cPC4ov=?8A&aeEW;fqB8r)e!kC@^dP05ztrf;w^mz{`UHaWGVf3iUm{l z%U2%x6tcQ)6brkahlZ%1W#okhf?L)=zaaTK1GrJXP*0eAC#|$jCUDah#3{Bj-Hf7O zq`svz;*sy~m6rV!b>u_pg~|7lO6y{$&ReuwTS8%#$Ag={fUCNC{T$pSAFM6xh5l1K zW1D%?Uot0{%5zJ`?_P!Y$IyR&7wA~z3weYoemoDjM{cabRNfA8ewk)q97P%EwuI|| zkLzcC@8i3_zToX4`O@9&*8$Y|JMxd>07kEewcr`aERTrl6u&6M& zaUk+mi~iI5fV*N5e*<#)ehaB@i-vw#@^)9j?M?4771U&tlQtN#?o>7&41 z4-k)9KN}vWKR>^SWm&hLHgNCa`28xemHur-qJ*{9e~Qmd`{nt%^xCPZVgnV1EQ#OG zg}=F4DxJ^Ke~R}7WCAzImxKya>qhV-aP^WUrJsF0+f9mgRUYhOK=pCSjy$OORc9u+ zClA^cWux2n-qab2emx{Vdkfs*_xbePHE^%r@y3T!;MPN!FC7y>Xog6vJ}&YlgTht= zYq6`qEq=#WNiKprcpk49{c|$UmNxP8d|^ENjejHl4)ot&2;AEbc@WFEZbc%%?Hv)1 z+LsHw1UDT)9d@Vx#?j!OC(y4=eqSs&vR~%v&tfJ(XZZSH-L`4Ep+O#-Ju)7E&QBYnfwmt z%VEFy6309^_>!(l^gp8NnV&;dJ%@~ByC#uvVSDJGOLS27%faIrmCtb2xi1=dQ{&|c zg}a-%CjMME2lr+71+Zv*ZrhVim-9RHUY+}IL%h*9lwT`~`c z{(br{=>dONMpUv$uWpO3leYm^`5z_zkL;I~$Bl|t5*w?|`NG%N)X!WSTz`SEP)HAF1;7vUim^FVe9pu;+;Kb!A<;Uw4w1;P@J{psu!%FFXc+tw#L$n~HHdxIUv5 zvEQ=(P4Yq@VOf~Bow=anEsuPvaSRm+m+^b5f|p{u_U7bUp;L-F2VR2vjw6$5p8B$b z8#U-upiX)>xV;h-i-X`Bd^DG(&M*I-esNJZ(&|< zqkjzh<){xXrj>3suAlA-h+oZ@#9sDyCE`@^#D#!6CZW>$Q0EKRH~j@^f^{b^J{$g~ zV6+=XUbGuIUl6R0H@1s_W&RzRP$we2y44ejmE7xh96L2XxT`7R7sIMs%sp^-J;WJG zzNaYp1o(F*FV&R#^N{CNtn;qLz)cI`Ux)q`2ZCFEpnfWnzhS>TMvS8fPq%)e`!are zH~4oTFD?=&xnVN=)w-QY8~{jeY#Kjr2iJg`Kn zzZ(6^uK@S1hYm(ryz|Ts?vpRw6{h0(-&Aq~{3G<=ig(5h0XLt5e*&qI{hnm1=l`6=Ms6@S>PUiZx}`XD;C_F3UR7B&#{315%KvG z5wL967KL$F`Ki7U+*mfXuKb4j2SfnU-{trHsZmT!$+i0ES10-p6%$-?iz9wMkBfnm z+}t1Ss`LNe3E)N^cd7Mi({6CLe2J;Bm(-8qzTn~a1tJ37UNauwUF6fida#Y5j(pLw zFg0EyYk_NN5YOer`meP=$eroI*Czol90PyPcIb%1UER88qs}k3OJ2hUZs++5HBYBq z1vj-od4DQq`$j4;t|84TlUA`j(Lb@G5L$B;7-4FvTbg*TLkf}q`s5&Z)g3Nrp}sC z@V7ohyS2$LIl*mPFz#Ylb*otk+_4Ao_o05h-{_wR?Y5@Bt24N{2-cGymJ9++J z93JR)GBb6Y&{;yBZ78_sbo@A*bOg8Xxb7C?xxbP++Y!IY=PVJJ%(LqU))`Swx`ng@ zchpC}Zjn#Q3-00fN^{9?6$3XcMx3hNK8XZMeNS%ai(%5uxf$FdUxF>Hmi|+GpDz{` z>F>M;{}A$jM8LXE8}xTH`PnAmUY=L{hUT?y;?MPdHO0LCPJj6xa$VnVzmvcuJJsEI$nwq9oKczB5%S?w{RY}7}p~Ha^#hNhrb~O0{=>$ zQLX2HBc96S&&8iheRCJ^qU2sN{U!JCxTpkqQn9g0u5my5gZ$qr;J)){cL#aj6X1ph znAaE`@qKs=aPv#}i)BQ&cg&BE`6)%7s}TKr!@nl^tJC0~>(I}`2KH?PxAuj9WBLb) zZp!#ACeYJjG5)(?-=l5~q~tDgXaxI z+I4Hy6aJ14=+`+6zc%I}`3&fbGSjUr>&@=>J#4Fk@VEFK=Uc~t8+_0Yqs|?*o^ak} zA-4^Kzt!)2SIbCnXKIYsIj%nsgTQT^FX**+=WPyfZ#IleX6h&7{B<`%M`u#!wn&uB zo2e)A{2&Sb;OPo*_eLm-WkI*oT&cgILeT;qc!|okF|d zZ{hd9YJP2)5AFyk-{t2)OG~tSmfU5Bj`0QRQ|VV^-P%6IuiIH& z*zOx-Sk*%!?spDex2et##JzyO>md4-nEkS;{IfpA^wh0!Z~6~HySvG6k72uVp%w-; z@vi!j;Lh9NZRx*R#q$&U-6hs@H&J-9PK?74|7ZHQxBza-4&}^@v*--+9LRG7{cTg( zZhCOFZqMfU8o2+O>ECQG{H+&||DoiKINvqD`QEV?{IzKGYY6?1alf#=LEVZ!*X=6T zD-W-47iFW{0L}~d49tt)*{=NBJcupjS{~*?nWi0Y@m^w!b!{5W}2a1q46$7oW z8`F?yHLuT$d`s?V3!R#5x0V{OTj-baAHlrY!V!;}7qUF0jV&_56B&EQvW zF$3Z6^E+r(Evymwrke2ge!{p{CO^kKTm14IxqdS1G*L`K7&Zm~-&k_H1 z^0gu`eY~bXCk5AsP%)sAyLmo8EB)uM0r$K>{S+rp#eK@)cmDZBNBCRX#_#WY=Eqex zem+OJ8IL)Bz5V3{cdkmSw}_vbR$w8x&F_5ULas~BqtIW^ID3kO%YNC0f{SUcTQ^bg zk~@zh|6-cxmOlgeJgh&JnICz-i>~uaG$bre|0%wQqP~IOuPOa)gW+#KfIO)A;t*+< zIxc>XR)9L+g`ngHUgxRy-}fAMPce+wd-{)zq5n?k_aWcW0o>6a72b?|Q(tiRT=+L2 z?^PFED~J53`Pd-`xY2JPj}ZaOIDIXVH#Oh;^djfJ)}8v@MZrjaE3XrqO5R{2xS<^S z)rI^#`{mt*IBSu&<+xjTU8tHbwcOBg^ZObxe7Y?<1#S#QRjdjK0nu+n;@S>sFRrMvuR~~|6zm)qiSQbZcxN`{V)&_UY%HvGyE5s8`K34=R^Jz~D{UYT3)qLmoS!%xT6%Nwh zJq$W(omm=3ol1yb&C@-x;D%J-Y9E)kW$EpPqdv>C-4sS}Yfb21Bmc>D#w;K7By0nD z(`xW{--3>tdF#SB4MU)VpPKeQ0{*_9+!yFyMI5-wc#Qktsn&r_A}x}e20&lU->cj& z+$+G9et0+fe@Fg>tZrw`;NEtKUyX0jS#awYV!>rmu#KY8)o@V6I&zslPgRsUt- zA4>n|;qZ6*-7hdL7r2ApzZasvp)I&47&;@!FK(nxb>zQ0`6jME77OyJ)}Pa&BeGxC zzfdRX>7SVM#aSNyDi6C@R}OjMfw0;1Ur-P_z9{rp>C95=UgP-fP7?pr>$W>|M0x0D zSPSm>1b?+&Jz7ZK0$enw+f}Yhz9r!3wWfU)LnZYccIYEZnzkw$+%o}nF4Cx5L$2rc z*{G8}mR8&q0gp=|8SIxNRfaZNWbn!*$G10iYuNPnCwhZwK-wrl)Rk zVgZryI}1Z!EF-!_upZp`;U7$1A(H+nq5qllVjbgmI}yJ)oX{;>S@;`Rx8dZQ!~vUZ zSDS+TsQin^=`NlAJZB=3ZENlZ80&NQVC@5gUVemxJkr84rCnS8y-lWfn!}$`PHH#JQ^r|Tu&^S;J=0X zXIYnNT1@4K($ckao?cXSHcPPeD9p5fL3~nxf`8b;X zb47R=wd~sT8##4?Y7zI3a~w^6NSi{H-ylpXTJfnP<%}&u;POavWWw5jp-!+<(~@+%^;IfXdsyi|8*OfF>-G z`v0(gysRHYB|dkEi7E9>jiIBSU$N~TxF-~OQ2qLPhn&|Bs5}%q4X&L>{Y> z3GRG~x?M{BzcPV4_=VX2=O;0^D+%)dFa3KB0=M%%?sDYyM}eET&I?)HjuZp8F2V?k z?&wyk5Ow(dW;A*17;wW=jEk6Vx{cZbZf=48syZ*h;~b~o{T(Sb!QYe)<5G({@3=2J zczvK6$6VK`-v${_(IgLmPNXBOFa+%o|>q0Gx;{o3nQO@(t!MNNyfwL)>Qn@IA1KBFHPwG zODq?99U9RuRfj#AgIl(senxS9I9&wXI2`^eo>QXWrH;k#KHnl77mMHh8WT9~)>rYz z{qid4xK5$Js@+*0w%Z!xm7DR8wSk+KKqrhmtr%z-k0%4-6lv5gdOWz7_qTQ+pW9IR zqkg)RUn4gSL>_|3=h^B1Hh%n(`N54%(Cz@{ZOm`rj^f~#sI$sQo!a2X$vb8RH+;f; zRQCW3C*yGzjSWb!Bd!Hv95UgdKu z$Hm6)PgR}R>cHPp0Qs3go!^Uq`?&tsBQI46-0eoY4stt>dtJLy=p-Zg2OjqtuEM`D zdARsP*`-%w{H>%mkG@wXvQFQlcukL$nqxTo83Q7@8vdHhh5eEn%~%N4{k zi@eZC@0L&y(qrVhWa6w_0;l&!!GFXGqpl~>?e4y;r~@E>jOMsQmdtXGGrGnMO% zZw>k-%1O6VYCbMSKEud^`a#DvAG|hs%7freK5t44w{G*Nf?G16Uut|GWCwTix=pc6 z>6W+$xTyy8>ylUD`sv_(WM=Zj(bO3Q{}bfpSm(a&Xjj#ty({DKVZ>FxCNa-$e!p3Z zIv+2?-@)_GB3-&QTMMrJ5BlB7LwI~;pDzkS*go=PL*Z{f8b5EYUf{-l;41$wIp2L- z!P`>jl3IU~V7xk!$B2exy?NeZeD{#c+W{mubjAuZggj>`xTP8DXOgH_X}Os<5A&7< zSo_6!XW4|jsqc%gh=G&(+79USN{l}!MDE-KK9@Rs_QT)z6LCUK(~9Nn4- zWt{Jk2Q^*?E`pnjAu{qCFlgLQ6NhrB(b|H#7d_Y446$3ItgP=6)jY)1db zBkAw=T%9Rf!42)<--7;W2Z8%GB7U)K>UQl0xR>`)TFL(u`H}Zcd;IPLy&VC6Q+H;J z<8_*KYj22lhf(JwKc{&7zPGXsWt{x}x;FiDW&wA$K%63M-A-Nw*IFXaY8{?^oH}*W z=zjMYPizu!OAzvTn>wqCf_uk=0Vk6M!S0;>$ zx{vS36L5>)@oII}gL4z|T#7mo72)qViu|Z?{BiAo2lX0g?X3Fyt*idGtweLucflx07iT#X=$doqpegR6I-0^V_2Abvwv79pTVH z>*8~(2tew%d!k=u=zqIAxVbv=P@TNrMsQ;v_^b0Cr7D1HyuSmz(6ryTgFA;H52;y) za#@q@`tm?$0`==|2KVxOmpJUvEvOr~=|4nXj(orraC4eeI;lclGd=ZrJsVmV-#?1x zWV@CIsJ9@-Q#g+L6`)g$I{mhRTWwHK$I0%2)L)PMgwVfiICa`#T~)_#aUx*Zu8Y^b zi12hvD+)<+GtaApk!M&A?(qBGGdt&tiSwlq{Ug#YQasotaTTWvO3a8MtjJ`dgWNOG9vDKQx$^*FVc_X6ybesDd zxFs?C>yig^oiVonA4k6SCH!5-MFNGDCjYsZ?M91TXEbyJWoE2{4cSv$oyC* zB2M*v+&c@nouB)%(?97YaAz>`Gl2Yy*a)PK`z_*(CXW+g==tx2I8{FHJE^k;1rN;1*t=DGr-;Tgmm@!|O?u&M2_~ zNgWTLe_n|Gqs-viU+7mI@*yJM(%+g0{Swnbw+xKm)dlg-<+$X1%6Q}pkAyYVe~R;j ztXt1==$9wYB>s=oHyr?1`%ZnvX&Z<6o|FE!SJD3r^01El0M`v?L&PJ$50h4{BmC_v zpi`cFglI_bS0DIyhr9NnEV$Y4`m{Ezf6ET|i)~l8OWeOaJpW&ne0mY;4@JM!e2>ct z?%?w`($jxxF>v?7`2J0MgKNBhVLknu%>eiCJ_5Dxqi^*gVwEdX~!VBD+Fzj+V(*TlG($iF$keVlh4$xAaohLh;82v4^sSE$nn zd;@tE)~AP`<8G6Ga=_nH4DmD}4;lw<^t;cc&0}ygzsD5QN4L*~+3q0ZK^_0>ED7%9 z`vMS^cus&QR9Uy~YUr7qd`}5*-xT<(bvtf2xY_Uih{0SxEjKV;rKs~%OjxP!yMp|y{ciFUa63Oo zhtU5j$KAwn4FPP z7Wyilbv>YC3xWSz>MXlK&hvH1lBV4j3#n|^!}AR3>0cm>JQDFJ9uy01O%cD{)1mmW|NK2dr(oOP#Z*D=~b!rR)ptoQn7xkgpUISXbZv?pcCUnGd zt=m6K!HxWUr|M^;SP-PXaZCI>v=Rx?+ieH^_DP`gna8EZ#;JAC30SMZdF0v)outh3 z-e~BU{H_BTE2fFm_x8tpgqnEXtq_#laRuY0uKz661Khy%Qno9S|5fvJ3G2k@ zcU{4cWAL}~didX{6S@`L&uKjq+~oJUBW?+}Z#o86EIYcj5C{BH z$4~+JTuI)2Hn^<>{6*Nh9eoP!T8H}SNd7z$+?o#g5!Wp)dFPP_uEK<@Zti^WH#bB+Gn4l_3hph1bvQTvOxt@C z+~N2A#l#)puBC`v?Xwe^Pit-DvkUdhjDo-Y9)!g7dc*5zwuhz0y>7NsE1zk zKfV#%*bnj4AiplckoDu`_ikc3=vIK-%+EEUqb6IOiZccJc_)TSckhr z!u9%$g1c+}Em5XCXg7+NvYY$>d|jLL_xuVd$5-KHlO zzoGQ6HU`}M99+%29-K$MURalM&_A&lAQ`{!1@fTAy*}r!V_JM2C;MyQ_teFyvsDBv zb!`0nSQzQhCawW@zCc~6eQ|;GoX8d6%;qT$~z-nD;dzSJ1g%MPBzL5E`@xC*a=hPxyGEQTa zbh`2o>et&3ZrKN&x#T^#E?FNS&yC1GO@P1s8+aJ`2I_eEeKE2m-s>Uyt&d}FjH8O@ z#~E<#GunMgot&+~J%6L#)O?xp6x_|{A#|mGu0h}?zwhb(65W*T+Ibys3i_Avg8TS= zpBN_H+H!q1@V*SCpK~|-ExX0SD6E|RQ`|T2puXR6ZzeJRvR%v1B)Vr^`geRtJ{_4c zvrgvnc+7AZ`4Q!(n|UStwG}8F5r%GOFSFe`(8)lZ?E}G`{2t0e{~vor`CV5~@-h5Pyk0_$d)NzbJ3mi#W4q=f)PI8crSiXdGq}_5zW%!T zz};OCr`UFN8?Y7J(hd=dv!8O0{<7Q4+@ z+ypoIT`#?j`>&@p@~rxsbR_((Cgk}yw)=hyb^M-x@{aS}%kQ%~(?5M>#&Z%n5#$XD zgFE_zt9Bbqr9Yo*q5K>2IN82BwXPt#uiGDe;cw)1*Q#zqnuEJHW86E?e~3u9tOt|d zbIZ$!!jRm_=OBg9Kg&__l2~smk@w|1weY#k9m&5;hQB8{#zpD8duc!a9#q{rm{^Gad{dx!J{|iLzzlHOFyUL>7^3>_v8{8Iy z2=|iDy+qFELyB_MtpN8C5BCw3&m+62p9Um90a9b|uOrXx!aBzba^`?#!=869!>&nN^7pgvQP6Br)MvH3w`IG)8zw78? zd%@qs^Uq2@X(+g>DcW7ac+!glGre8TFQsqizGFEUzYb4xzcc#Kucg!(*_t}M4_c&G zw`r%rOxLzc; zllmUN=lLJZ0&e8GDyFAyDf5wsqDK$NKQslmb01WnYkKwox0#WL(#)snHMoP{8%8FE zkbNw;`2+mJs6Vy>xP{N*MAeCXp#Zpn=dToZT?cpbx(KCHqdU008S-3;`u#(|J$z1r zs?P&$s8cwF?y0UT73&(^j{^CBU5v5U1F-bTcdhH}bjA1<5De0k`>m9`RlR_i?=vWuRM? z+2HnIWLV{M{|s`!`<;9A1h?}0GF7*YxUO3K*3}dujj|54L6~=HT>j;}^ZDJ+J7yx= z^*hg8k;f;_eaNR;uMTX0zqu&J9Y4i;C0^k0h7#a!oIL!iH# zJpUZ(myVyGSR-{#qhFO+|7o6pI~JpUR6OO1f*b9aUuxZsISX$18~egqwmY{gxRcjQ zHzsfE0e828zMAi*(ctFC@$<8S`S&n8<1>(x6D*3{6;MNHk zca^tQq9d|hdw2M&>ooGIc2l8Ukrv%5avbe`Pu$b|5>rndf1G$yZvztrIYhtjuSx zSa4HH#2G?=Q9c;2|B~orEBS8&!HsJ$UIoePi~={@2VX~?NGx13PE#bf_;cNwwgk65 zME*CEPu>Xb;Cp|{k$0XB?#&iIpA$xc+xgr)F&w((>ke)#gm!X7e`upu` zMR?re;(c?ft~`a{@8fyhOw`HV58Undd8(C@`kOJ1YJJO-8QiiRvyS_k5M> zLG3zh#M z?st}M&`-p6)0j;vdgU)_4Sp4ca1e0|heD8i6BW(aB4cNY^= za&tE5i1OAg$586{eGb~%iu@0(KUL@-&N|dCApbR(|D{pzx70;Fh{GY>Lizc~u^aj6 zK^`O$E93FFpc76WQ6AjM>yDa{Pp?GY7WwQ(ex?JsuRq$&&Uo&yKCSJ+L&(RAf68`E ztP_>biL6hr-*w~V2EgCV=TL>R-FED+wFdNkjohk4hX?dITqZ`nH_wk9il`RpYyUD*Tl;HbqQKJ)cW3zQxIpIKj<+pHJf) z;NBwf*Wp*}m&SgHH0st`EcjAi zsOHNL^h?#}p}Ej;)Igk-+3x03;GVt6r&yMC`xp#vKaX}3aef6&0Jr=D{ciOCP>TMW zlIcX0rEV3(Mj-oZ=kxH@x_zw&xOsxeg)p(4>Nad6xQ+KQsW^w$1vm2fkjj6*2wUpA z`8>1=)Tvn?+|?TMLhYwbMIq__@ts5qI5Q#s zLns%m^BMSi-XNdqc(n}c*3b@o7u!u227i~|^%!ya7>_*RCQQZutuMHN_b)flf2(O# zdxKjBVqDgchff1HXNupigT=vp%b*`e|G(0MYje>dmFKbIM3&5(kMH3U+njDm8IO4m z+Ewwa%L9L7CFqNE>2^jGj9w2$_~$3zR~y{I?{TV<|27HS`3wH7$qV%W_xgP=^Hro* z>bv~zXRrAh+*}l&M8tH{?ZHxTZ7K4Tn*3@3a0`!r%;ducfxGz}60!a1_Aj|>8{$;Q zds{Bk-;6rh&v`T?n(gxXNp&2UqBPq*hI&)y18atW8~7fvVQlxknfeC!tMMAoJo_>s zo<8Wd)_pttO~cVsb-pG1cW`@NjF&k4&@F#2a2vm;D@VS%3%HNZX>UrtVjQ^kC)yR| zty{`E;MP3J^?z3+|4JRxJH$VRyyzzQ8;2ks)$R};C)ih`KE?8)+aPg3BFEiQ6FTaC z-rr|}oBTeH?_C7$ZG~~iUujzZ-{{Z#Xwqt*H&=P6!c5=_Z#QCr!lyR`X@y<^?Ggw{vUZdwZAMy zPQI61@fk0{ZM+YtCjFb*!M(gLh2^8Q&kL?qLp*96_xGf}-}T|;)cW9eUCO@&;cw{# zo%C$iB|5IJ5B!`GL|*tNxVH=PS%kc~5!`KtP6P6@VnLHShRVo8792wtEr_QWb#@&h&mk5fVJiMvJRUYY#Jmv8oo>nI z!{1sDan>bYwG-UQ^Bd~;VP-#Y^TPP^>-Bwb$3(=V)}=#2P>+8MdNhpst=O))KH3c- zKRq1&rmOMwr~D3XOocqF{LB**MCu!x!v7d`X4L?^CaTHqb9bokbnt@7V}PF-*E8 zvs0h-k7zY*{#=HK z$$E=yNS$c(>u>6$U_HCf!C%#L2lm&q19@9R|3|D7n_r#GXWhE_9yBZc9~#lF7J>}S zCcm%pP!s(%lXn#hqds1K=g%(}1vgEEj!3(1PhNuC{O(UFmrcd=>sHAHZsGOb zGnlvX+rVAZpx=T1uV#UJcwDE(NAXdAoJ|td3CjJH+=$s z!&1!mPV|oz1*W%q5$&pV<8TE1`JCY!^bcDA?rSJIE=;)THt!m^llOgRAuqZa+|GSD z2l>Q-;HGtmU)A9s;typ!+Dp`7M*K(XD8iH6;CDWx&scDu-}6#_zW{E`Ahd+tVY>x5 z?lz9QTKATT0+9L+em|x5&9x<|vlioJqfTb_%j(y!i}m4e@jE^r!FaUa5l=Yl@B!zw z!-VMVt`ECvfqQ-6 zD*vVDfIIlTo2sAL++XZ|*QKXg4}Tw@qd0@(weAvi_`RnZ_l?YhFDLp{i+R`{PM!9c zUm^_M(q#m9KSyR-lE-o1w{8RfNM5N9{JlJGJjnhAbKD(%%f~mgTJ;BdB!Xg&p!|!*kzn=PlqizW3)d=S5@%`pXNXg^i`oT+Uz1H_Vsij3-oV5c)b$ zRVKz>5VCyNDN>R8(&&#B3;^0>>%>nm!Ld)cn99@;%k z{%;%TnB{?)uo>hn3xk{dj&rti{kOM5JoD&Z={V!5gY^n(;yL=P6JK{EaytD}nCZ{! zyC#y$+b(3k9Q1ETe(oT+D;xB~$Wy6toP<26{LjAye~aJ!^_g>l+jtxzmLuJ6ab9~k zuXB*+;=1bPbL4&_pI!hu&X&n^f@;yUf>*)q{2U?5K)0GJ+3q%YmLs37)*oJ&JE8wH0-)_FwsU zf0<{4-|=l!ZE$ZE^mj9Lyc}P<-~FwlAFE@@`xQ%xMt$VDdNF zpkwFvuwt6%<~{~)@p3^Q)vIZR7{A%?eXqywLB}u}?e?b5`!V27ey&VU-ex1X zkDnt{U6r^9?kWhKSMICC(VBAWD3@U$$>c4{GHBuXK0Rgg{*GPM=+jim>1%3UAJ4JP-T5O`TSlL zXXT3EhNBqw0rc;C8QfYO?N(2WUwqk1ofjA>krv%5aXq)^hfX!}idOi02gk45>`TGj zGZ4R8&zsa^yA4o3Q>nA%F#Y*lboHFcR331r-*X6;$I?F~^h2m~x*WK9KjIW+qubr1 z;HIi+^nZUP|ItI~BcC?%iS5BHEzvLaJgA_q;MVuxBJH{ri37LuI>U>c7bOdW8+g63 z7(U&8wWfYj=u}DqK6M(nna@Frpnu!G;9i~&Y((Cy5_OKFzqQCawgLC#f_`DfGoAJ0 zypH~g?(0@52L2|$>n`Ti2evRKfV-)6#SblYDUI*Nn4}2~C?I-BZ_gSMC;=P4Sz)jPUhyK(FSr6_@ zhIaoU*9wBWTE*}0oBZHTo>y0SxL+FFx)c6l`_rupk3-CU$06Uv1}F35*nxI;B!>U5 z-sGcECl{zQzB{Jm>I85X&ugi=Z8Q+v z%j*@za;ICG!Qk#ah<^d=VcAV^i{E|a+nRyf`Fx3B>Qoj7etO-O#W<>UJ}dVHqu=@e z8~3U2cV2X+=(yBz^E~qq=0EEJ^1qRv=4`j%7PiatIn&91ihf8Pa}vyJbzE9yHMrp- zbn?D;A1?}HP|qi%yYfSZC)Cm+e5HlcqP)Rj1V)vfp-a4YW*Rr&v3 z0Nlv?1**{hEyvyMx6Y&xd63Wh_4+;UH^V6ER7U>sQ`6c`1-JO!|0O>r=y~pl{0wKi zJ=iaMLG)`4`8w9Q)9?DgD9$4<*X?ln7n)0bzSpu9`6*TBE0F(a@-@rh?^y#b(x_X* zRp1652WBBZ&-yX3e$;rSQ^$LL*K_{24my@3=vPM8`GR`jjtH!WVj0n`%yw|sQ25^_ z?=Xxy7cgH`o`b}n%Y0fa$Y)!wOXZ#5o=x%lWzGri<>y?r9>%!9-F!}OXSQ3FT|0F{^l9T&t&TK;k8$T{0(c+qnXsP zv3}gEk%wC3)^6}O`kkjbP!!xU0VAmLJmx%k8t7MMos?J%Zfb?hpQZlphyO>|cYxPb z9Bm&;2;`%P&>;{}O-I-cy~sAM7!cTm65vXft|ehvx~Sj+gbRe;E`)?01cY89T7UpS z^iU%R1PG7_LJNHS5&2TS{3PU`nfIMNd(OS)KhI<9?z^)yv$M0ad-m+v1H5tp=)GS* ze*^IPFQCtwFkiCmcEB62gxoX8=Vsc!d^_yZNc@?@LEpSQ?CJYq{&qj`(*Ho8jp&G# z4&ar^;Ik|B{}Ja2rAI+8;l-|1*k4B82mNH?Yi|rb4SY}8`}G>rfDcbag(U3QHDe#( zV;?|~F5)vqkhbq&?tOs`?*!hITTlK?H}K{kL7(rE&(WOcH*EZ0hPa*goC*3-J}>Zo z^zFyVXFBM&ryb6`9C(HM5Oyd33+d;BeBXad;xGRg^bPx?9X*cqGVayih5EWZ599cf zya@XB+3uTkg3r*I@RJ4Pzw311qjNzh!>e8TdaT-Qg!`*yxyi0?ZcBZ*pTX}Vj^y~> zd;{#}{{NFrLEkhRdWw2>^@=+w|N7kXpey$WUgC2E33ql~ax3s;2K;9(@z1{xyqxo& zJsttx#C4&yNWZoiR^>KxAHp{oA39{hVD+5{KYxhy`$$C;FMkd88Bcso`cDJ>$K(H* zjE4=mb6PGdk4O|^dq_TnV&oZy!?06OUz=|U#=w1^#Q++d+z|? z&3%yD#dds@^MpahfA^DLF93br3Gj!{$p7k>fHxd~`u>XeNk0dk{1)x?BIM3SqOZH=dXI) z{^Bm+O+1%rI{A#A54>Sx_`_`CdYp*)8`lH)F3NK8&NE5B0*&uc6%ky#@5c`#_&I;;(E5eDo05L8cjY?NA52d@bxRZ0*`? zKj2NeYYj9$BQYSN-OvuK)hut@Ude+FVj4`PJ4lT`21bm(yp0OQ27jY zp}yZHKKaL_pAHR$tzCb8pY+^Uk6I+jug(Kr&b?3iWgqcdpwCX^bK38Lk6kLZkn6u_ zx3@Y-KMJ}2p4VLVqlEovEAr9XC9@~{soQxK84wj8;XL2x30Ir~ypntW{p!~#w+H&* z|0MbL4ASTJfqzpBtNiPZfSw}GuD@?WdfvC5M*NOlfj9B|E01Fj{1SM15A=(hNWb!( zq(28W@_zJU8}N}oAwJ(q`Xf#UKKupjd?fK*E+c*j^qfij+;PCiIPQD9{KM;;+plsP z<4M!Q(8ueWyaql^xpQM~Sr2&fCH(W>l)LC$%FXR3FJ1?{A@_WwC=RA}Zs-CZAAe5} zcU6374sb5}CiC|s{Rr%{4*jYu0YvFXF97{{)aNS3^M<9iHAC7GVeW?TW?IHc|w*y{x4eBfIYFF?3S zz=!XFT%T|6_6qRk+;>C%M;t)yRz3lC_W1B``dj&K@L8Mw@a9^eFMR{_Pg0+2IUWsj zT=Vg9v!g&ivK#c@iF{5y1Nh)_hy#a_&xKQfk8UmoNADCeBOI`bqNP zd!Vns4T!jnUB9FM*S!jRo5b0=uWSQ5+(JILoejKhRrrt7Z?rz};RJG} zI(F?qe;DI?AFj_d#^XkpF0bV*8 zcJTQ2GX13KWpEa@c3rU{=ttHA{jCsIeuTK9qRvp`hJ6a?l}eYqq%uh_wB&P=7Mr2 z=?ja24?haai@VzOnmD%gi@&0u?oPace%qY;Uf34YbL4i|?M%|wFAqM=w2$|Tv-*LL z=H9njllMDg4XBsvIsa(t!}DPGA^(Sd4ZP`Kv`Z85^G^jnG=_RPpRL~pUg0{!=A{3W z^%~B-S8^oByW|P*nN0c}&!#@#fS!90pZO5*I_|gMp7<%VsSn>%Sey8UuTh`eJnd%b zQ07;c!=5tDvuoBNq(2P)@ShccPkdJ6_WH@gJkJNMmLy9z0DZ#!mZ(LNJlYJrf%|8! z0Gnin@KL#=Jdef4qczT>+;vc2sg7M|Eg=6z;CvJDFJ=O7&Yd4Vh4YQd%vFt2n#rz5 z9|Qf^RKy?m=MROU>eI9ikn35oi>?RW@LTBPiz`nm&9U+<6S-U)p4IQY+2 znj>(kLRyn1blEO)ORN3{_k7B zn;CCWJ6R__9{AY(a2$`Tvx~r!_rRx~e6AfJ{oSCSM0^{L`y)4j-uuhx>w&)h-_X|GJ$13p{?V1kL?ig7>NC&_7{+kI&y^JJ#vJAac1q$F7Aw70#d6 zrrbS`1U|Yh=(k@E8Na5ThjVsbX9nn#+&p3VX5dZSXR;3Y|7$AndOk;!aA(&}_W^Hw z7E#N^{Y|tlbl4nu0;M}&jWo!?)<0+Uk6^{dd`NV z-{rf+e*^zq9eI3E&@LM3(&h?{YnNJt=Hh^z}-Ke z-<ys{tY4|Dti z^4}ErY~nu}1>Tfk`jfn@0NfGsuVc(LRoU?JD4d=Y#(@Nq-H;g*xt6?<796 z9rP8R=Z{e@Np7RR4gC{*+LuFt4|}QS_3*3d2jC^11MlO=avZf_`)bw2S-I#HWFee1sM}j`Z)zz-s=<=ZV`A-)d{%jmN{D z9=CfKCljvwd4GRJ0>1JY;<{@K`SiDw{~pkPI`K`92j0x_&gUCFTL2$C3UXyyV%NuS z1Fz@NP5fuC0WanDng2r^)$DmA>UA*b zUw@SRc`l#FlYgE_{0+$Ucr{KYRLZAe2K4lK%Y4Swrd(Y8`n#YXWtZ@B$mroT1rgLdDK zd_K4n^!3MsQl=|*J+T4shSfmt@$EG+m#za`mRkq7hyFi&Dd@K#pA}aJpFw^%#PxaN zI^d&Ez@AT${!c=n`j7JaRvQtYyaMpLqfp;Hh`+(OG!uR89N z^tdtmRN%vZ&bH$zzop#Ve!{&Z5GkLLo1o_olzZO{;0?LwcYjy_JUJ2kCG6Yvgmh%( zQ{uUl&^AfRoR&rVpKimmBi&^YCUjl{l8Qx4BPcHY*gAb(Kft3vJk@nN; z#%(C~H0a+7IJx>R;G9VT^xn{`SQz;6u6nMH8Xh8un+OK zzfU~3|83kafS0*$zdz~!^#GpZypem3^PvP5)06Z6%}GC-b{n~7MMKrHKrilRSKIHXPwu;TuUrj08H7YJuU(s* zL;BT#??(JU@n5Z1GtY(adcFBg;ANg;iD)3UAwIk$=4v) z=b4XJfRAnid?x8P{v+_Z+aVFPPLi#+0bcn&+I<@7?>id!*#2KPWSIE0`^iTGuUz;) zNq+VN;0fQq@OUL*33lN3dL~(^B-ywOe3<*++z!`^q10|ee1BQo&#oQlx0O$!r*t2? zZk+=9@)l^{8^bK>L6PA35$eiJPy-N&vq zjsjld^IW(8c^t2YE&%_nNPo9X6t!N%eBS4Naw+59$mCUwQidnHdY=M)!waa_|I*HH z-3~nAIla%4{x{zOKDGtq%CK(NsgDxpcRJP}zH5Q}x!+(<;!lx(J@=nGpQE+_ef^Q( zzjS#N*ns_|^fTB;+}N&*Ujuz}Zk}J50emF4Z)Z39c|t#z;m@uoZv}nhba?(a;-{Sh zJXr&Fn@xO2QCRIfa@LB5pf@GS24(W$``|tvz5Hw9eDBHY`)NDyp}n*1zSh;in|Q7u z-7VRddnGX1mbg9m{(uMWRzC0^kDSM&9-r~C7t-Xj0pc=vf3c-^PaXD0cq zwl(ky*Qs3pJ?PK%&qD4^q~Ci#(r=46;NOwFxE}b>WY}i|(tkrbl(z5KvA`u9*`>$k zE8g6R7N0>}mu;=zO@TcJiSNd^-7qfeKhur{eR%=uHPQLVMA7*3dHP)9r(OVjCAx^QVC~y^nS|LF}m44ve?;xp;dY{bBfQ@aX}0vXdyLdX~68jNByY zdKLJH9=IphhNQo*9{AuCwBuvMkGUIoJ2%`TNIXzI$M{`E8J_IwUktp&bAdb#9JL>K1oiW zW8BZX;OC;AU2BV*soXO6U3(n(yZbrUY2D8+xrqAg2)~_4KI_j1KE~%GyAz*M54^&C zN81y>lkHVzd#y?Q0?r@mxX!!>@t-~mK7)Kt>hzO+oXzb|Sa)^M5Aioz{hyLjhNl8@f`uubG`>0RuKI`Oq>OUzP$Htx@e_imA>l6CJQ;v54cRxJl z5YU(SKJO6i{CqF)gwGe6jGKJsnEh*XQ`C1e;_EPeCe(9l;(LFOdhP%}_xQO;23ECm z9ruTz7D=*E2k@bNz+Z+NyG|CfTYTX8w099drJMM9pr1_q?;JPFD}wWM;^R1fZsI=Y z-H6YS;>N!SkCkfLb>?lro0o#mB;u=W2Rz|>j{6Y5MFNHLsr(A`R}nvke%o*_>~K2q z>!mrAzM1dKIRA!uz?+@`{kv?Jcg_Po!hQ8VF5Ive>0gH2mB|0o2XH_BLhgS2uk^P{ zZvMGofAASP8XSbJUEeqf_#oH4W!hlZkEv%P_l53BeDiZjzb5>AHt{8U18;a8dTv5| zgO`BU>&8gAygxp^5%9{!pm+R*#lVNS|KT?BxpN%w!9LJ$P5i~@$Y&GqZzKLQ>eF~N z?0gvQ+$#mOT@tRtc)dP*gK~5GRlfTH<^B@ z5AvKw={|Pt!gjCcJ|FMzQ{D#sFz*+BK>EvH1zuW!cJX=LVLJe?=ktQ8q(9;o;7$CV z>6XOz=mDPaxr597@=fwN8T_{*{qOGwUim+;|L@Q|$-Z|2Z(a!e|FT_fSOa+ZY7oL2 z^88H(8nyG_5bW>o6aDZC^2wba@&f&{p8o0M?1P(wzV0w^-j{mb^?Trrd=BDv+gaSw zh%}mcXB?{@Gjy^k@&%9fqv}k zh#R{RzjRabc@2ElB>wb!!0T>513O}V!xPSO;^8c$W+$r9ayI=lm_C04 zULgJu?O)E>{|~>WT*mX=N&jOxD(e54xc3&HKnQ?dm z>8DD-*Ln>uLQ6UQmz}^zbMw;2zXg1V>r{J@&tbO$Z{mB4O~gOtxHGy5_)FNdYZmQ1 z!u6JGi9hu-@F|~+el6j}u8mIu-pF-4X%4$SW`C@(KZ<&Gb>9Q};Rj*=i^S9)aDCG2)lI(|<-C0+>34eAwm5Y8LfeNjkFPNeO=VZPM>8Wcr+UF!%k| zBiSFzx&4i+vmXs^2t8$Zvg`zw#ugiT`<@7s%m$*Mc z0@DlfFuSxp%*)K|b-Xv<+wHn){t`7QKPyE#-l ztAq5@)&M@t_l|cVzJ)MU`wTq?`f`P|&&z{65;YxhH7 zAGhcoG0uN3A$|(=sn2~st8J9^;=Uc1`@A@+${l_H?d9jUZz7JN zc;htq+e#ca?>`y%(7Vuc7UfoG&&Ks&Pia=W+D@cg?w?tWct;=k@LUuhU;g$2@VcGR zjuJ-f+U&=`6FwJ{Fk;t~!^r1D=;`MMOp%6G{ma~+Ce^X)kJ8YJ4_=FL$N8MN9_hb8 zzwrIuyKsJ$+y{T-XFHSo=7YYu9(Hg&*Csy3^M1v=c2%Z>zVW-z)8%eH1bp;#=;Q5M zdLH-)_jPPU`>#Sh2Xp6mf4LO&_1x!kAmzT-2E6DzU0vQ^a{c|A_kh0f2I%8{ z^2eFLn{w}`v=0Lx<^7kaVb@&pDU%OcQ@#Tu6GF9r9l!hR?f$}9P^dC#dH~-;0 zwu5;4^}y@7e`XxS1-xGN90_3)keqGwF!ugfUeO9We{D;2}ef(V0XZ8nPDM0Qb@|pb%@TR}Q z&eMpW^cwJn-1Exs_X4luz6GC`o+1oY?%)$E8wVf9-=Ln!wrCeo!>%nkk80otA%9D} zG#h+M|A5{8%<*o6J1IB!Tw@KXrpj$PAD*)-`_UBgN#>!xZRB5U2Yn^CAN9)ZDEDgE zS;CiH4{Qc}hO?_uqo?b}YBv@{zQo&S&1( zT?Q1nVAUkq`)=?byAJlOkpE*B0dL+3a@{{4_z3vuZivkL(4KE{9x`?V=#L(fuGc*d_d)-EuwF0x3iP92qP+%*Uq}9xm$Lkq3YoUo824vx zP5$kZfR{c4pD&1S_CE0XpTiC^jj`*LGVp}^wa{uw^7SWx4;~3VbEwZ2=K&whySi3^ZLPTyFbbJP|3xICpoTFnqaq? zK{|c( zfHktVU4gfFT3*683dV5{qb)457K>AInPc!xLdFI6JK|jR%_w`7>`Gdggd9DJi zA@AqXPnvRZqfr8a*0=6F)c0-j*{a3)i$lug@#>Icfe+{Qd+Z_s(Cn-Sm&xV#5x--< z7{|a6;6tBg{rniVSF#Q)`3C(*hfA&R5YK73gnUk(K>R-N z--7rU^)FqM<-bZD=tsFvL&Abx+i*RqF1H_e&K{s|cnbV)ApLC|cgnf>m>zSddX{o= z>1p49W;NbIz zTdx8>as}GO-$VbB`ZRIh{tVjrqsKsBHw}KWHSvYC^C0bvXpkh=N}y0ZhjaTY)|p5? zypP_QdVVSmr}RyHKS;>zI->%-vNiOaN&K-9;N{#trLV06yu{}P<48Y^{db7#^Scv& z=>yO=JP!LfuCGOyofp8)vJ7I^haUp3=XaXENnBqyR{92x7w`&s4tYE9@@lZ#{-poc ztH4W~pKM6{;(dw#864V(uS>rg%F+L28_=YX@HDK0`6DT_-;cy!jK<_d4Pejsl+S0sr*4I$s1S z|Dp3?XSdtDbAeZQuGd`h`3L)ZiTh!|ElGa=5a@?Dgj|_6*fnhv^8XGvZ%_P&(}6es z8*$)B;xAu8xw+?Jf23ax<<1p3d27%oi^2a8@;Qm~mJxmzz{iD~-UEHDA9x<{GT)DuX0_`I`c>srw8&P(D>5-Kf8)6ae$L^rIFjO{dm`@5ApL)+ z=OD-HS;Pm#QI)>wpj8at>^i`Uav1@piw?!+rmCF+}rg; zH}KN=+4??zGv#grJ!SdAu1ETSH{J~Tsl+em{9$B!_`{EhFMI&><$r?D$?T_3(9av! zM!jZ}{x+$&>N)bgl?>UB_~-S&2d9F+&!diC0KDON=<_7$KRyh-5tQk z4hDT4@rHWf&D`&|1@XBu5GeoT@)Zr4MSL3hRQ3g*{fPgx0{RBNXK^s`8|AO^sn-p_ za&2e-CrRf%z)L@e<~I;OO#+n3<#U$Dh);Wqe9nUZA47cU)xaBn0>9dY_}~cf+_-ty zuYnIA3O;WCNppZV@%sfn-&jKexaq$D{`qb4zd{0?;uW4>A#P*WA0;d(UT%TiWSFz- zo&Cvw4YZ4NE4w~p+^Z|XA8tUgkaBZ`eatm zXX-&;+7In@A?Y^~ht&2O<37eMi2tq#e5f1r#}c3RGVsPDAlL1G+SMn0AQh5g?p z{qGl2?nUrV314=daux8A%h0~!-ge!|`qr-q&VQ8trq>Z$g1&J+?6WHE{8urE`7@ut z`1d=$_B!w+cfWbI1PZ0E@cz`__nER8@X;pl_kP+fKa_ry_r>o+o#Y7#)QS&t|LRl3 zUlDy3ALO}1_Y)ug68Z4FS@-7$#F32u@{oHg>92VMc%>ihavF~UV}eOBEI9Mz)Le=hr6iHS>hO~=NRMOBGUJWBPl+_ zb1F66NxNR0L;gIUU(~bfrdxoI>iZ;moku@!Okg+f*Y&T1zK(voA;^2%3vq z+I1D@4p1aZy2X*7IT;le2b>9K{ zp`%gXLy6D09eAY-{$~@P^Cs}*8SoiLe78>E&Get0h_6LElyc91ppVD5x-RlR8GiB{>ED-$leTYZci6d}_-&g3AKMN1 z7Q{<`0A9Wd_V@QYI&LEUO3>$P^xIF420p_3EMF(Qq91s2JM`I={4e+c@X9}ccMyM$ z_G#jJP7m?h-vxccjnL=�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͜xyEEFNSfVnp1p@`$E>oG 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®M5 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�e4J4|n1lZ$^>5`?1 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%0D0bjc?pE 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 z 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

      -+FkXN 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

      9IgQKqpMPCn$z8>H#%L6TKUCX=LiuwMcv`JZX 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 f{VrSbuj{A1J! Date: Sat, 6 Jun 2026 06:12:18 +0200 Subject: [PATCH 08/14] Target Java 17 so the facade runs on the Spark 3.5 (Java 17) runtime Compile jmeos-core for Java 17 and rewrite the type-pattern switches in STBox and the time types as instanceof-pattern if/else chains (instanceof patterns are Java 17). The facade bytecode then loads on the Spark Connect server's Java 17 runtime (Spark 3.5's supported JRE), and still runs on later runtimes. --- jmeos-core/pom.xml | 5 +- .../src/main/java/types/boxes/STBox.java | 24 ++- .../java/types/collections/time/tstzset.java | 130 ++++++-------- .../java/types/collections/time/tstzspan.java | 167 ++++++++---------- .../types/collections/time/tstzspanset.java | 140 +++++++-------- 5 files changed, 196 insertions(+), 270 deletions(-) diff --git a/jmeos-core/pom.xml b/jmeos-core/pom.xml index 50255343..50c7a40f 100644 --- a/jmeos-core/pom.xml +++ b/jmeos-core/pom.xml @@ -296,9 +296,8 @@ maven-compiler-plugin 3.11.0 - 21 - 21 - --enable-preview + 17 + 17 diff --git a/jmeos-core/src/main/java/types/boxes/STBox.java b/jmeos-core/src/main/java/types/boxes/STBox.java index 22f3091c..cb54d74e 100644 --- a/jmeos-core/src/main/java/types/boxes/STBox.java +++ b/jmeos-core/src/main/java/types/boxes/STBox.java @@ -77,14 +77,12 @@ public STBox _get_box(Object other, boolean allow_space_only, boolean allow_time } else if (other instanceof TPoint) { other_box = new STBox(functions.tspatial_to_stbox(((TPoint)other).getPointInner())); } else if (allow_time_only) { - switch (other) { - case STBox st -> other_box = new STBox(st.get_inner()); - case tstzset p -> other_box = new STBox(functions.tstzset_to_stbox(p.get_inner())); - case tstzspan ps -> other_box = new STBox(functions.tstzspan_to_stbox(ps.get_inner())); - case Temporal t -> other_box = new STBox(functions.tstzset_to_stbox(functions.temporal_to_tstzspan(t.getInner()))); - case tstzspanset ts -> other_box = new STBox(functions.tstzspanset_to_stbox(ts.get_inner())); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof STBox st) other_box = new STBox(st.get_inner()); + else if (other instanceof tstzset p) other_box = new STBox(functions.tstzset_to_stbox(p.get_inner())); + else if (other instanceof tstzspan ps) other_box = new STBox(functions.tstzspan_to_stbox(ps.get_inner())); + else if (other instanceof Temporal t) other_box = new STBox(functions.tstzset_to_stbox(functions.temporal_to_tstzspan(t.getInner()))); + else if (other instanceof tstzspanset ts) other_box = new STBox(functions.tstzspanset_to_stbox(ts.get_inner())); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); } return other_box; } @@ -248,12 +246,10 @@ public static STBox from_geometry(Geometry geom) { */ public static STBox from_time(Time other) { STBox returnValue; - switch (other){ - case tstzset p -> returnValue = new STBox(functions.tstzset_to_stbox(p.get_inner())); - case tstzspan ps -> returnValue = new STBox(functions.tstzspan_to_stbox(ps.get_inner())); - case tstzspanset ts -> returnValue = new STBox(functions.tstzspanset_to_stbox(ts.get_inner())); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzset p) returnValue = new STBox(functions.tstzset_to_stbox(p.get_inner())); + else if (other instanceof tstzspan ps) returnValue = new STBox(functions.tstzspan_to_stbox(ps.get_inner())); + else if (other instanceof tstzspanset ts) returnValue = new STBox(functions.tstzspanset_to_stbox(ts.get_inner())); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } diff --git a/jmeos-core/src/main/java/types/collections/time/tstzset.java b/jmeos-core/src/main/java/types/collections/time/tstzset.java index 4c0e40c7..2ee7a269 100644 --- a/jmeos-core/src/main/java/types/collections/time/tstzset.java +++ b/jmeos-core/src/main/java/types/collections/time/tstzset.java @@ -333,13 +333,11 @@ >>> tstzset('{2012-01-01, 2012-01-02}').is_contained_in(tstzspan('(2012-01-01, 2 */ public boolean is_contained_in(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.contained_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.contained_spanset_spanset(functions.set_to_span(this._inner), ps.get_inner()); - case Temporal t -> returnValue = this.is_contained_in(t.time()); - case Box b -> returnValue = functions.contained_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.is_contained_in((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.contained_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.contained_spanset_spanset(functions.set_to_span(this._inner), ps.get_inner()); + else if (other instanceof Temporal t) returnValue = this.is_contained_in(t.time()); + else if (other instanceof Box b) returnValue = functions.contained_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.is_contained_in((Base) other); return returnValue; } @@ -369,11 +367,9 @@ public boolean is_contained_in(TemporalObject other) throws Exception { */ public boolean contains(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzset ts -> returnValue = functions.contains_set_set(this._inner, ts.get_inner()); - case Temporal t -> returnValue = this.contains(t.time()); - default -> returnValue = super.contains((Base) other); - } + if (other instanceof tstzset ts) returnValue = functions.contains_set_set(this._inner, ts.get_inner()); + else if (other instanceof Temporal t) returnValue = this.contains(t.time()); + else returnValue = super.contains((Base) other); return returnValue; } @@ -403,13 +399,11 @@ >>> tstzset('{2012-01-01, 2012-01-02}').overlaps(tstzspan('(2012-01-02, 2012-01- */ public boolean overlaps(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overlaps_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.overlaps_spanset_spanset(functions.set_to_spanset(this._inner), ps.get_inner()); - case tstzset ts -> returnValue = functions.overlaps_set_set(this._inner, ts.get_inner()); - case Box b -> returnValue = functions.overlaps_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.overlaps((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overlaps_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overlaps_spanset_spanset(functions.set_to_spanset(this._inner), ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overlaps_set_set(this._inner, ts.get_inner()); + else if (other instanceof Box b) returnValue = functions.overlaps_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.overlaps((Base) other); return returnValue; } @@ -461,14 +455,12 @@ public boolean is_same(Time other) throws Exception { */ public boolean is_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.right_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.right_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); - case tstzset ts -> returnValue = functions.right_set_set(this._inner, ts.get_inner()); - case Temporal t -> returnValue = this.to_period().is_after(other); - case Box b -> returnValue = functions.right_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.is_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.right_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.right_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.right_set_set(this._inner, ts.get_inner()); + else if (other instanceof Temporal t) returnValue = this.to_period().is_after(other); + else if (other instanceof Box b) returnValue = functions.right_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.is_left((Base) other); return returnValue; } @@ -498,14 +490,12 @@ public boolean is_after(TemporalObject other) throws Exception { */ public boolean is_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.left_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.left_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); - case tstzset ts -> returnValue = functions.left_set_set(this._inner, ts.get_inner()); - case Temporal t -> returnValue = this.to_period().is_before(other); - case Box b -> returnValue = functions.left_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.is_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.left_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.left_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.left_set_set(this._inner, ts.get_inner()); + else if (other instanceof Temporal t) returnValue = this.to_period().is_before(other); + else if (other instanceof Box b) returnValue = functions.left_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.is_left((Base) other); return returnValue; } @@ -534,14 +524,12 @@ public boolean is_before(TemporalObject other) throws Exception { */ public boolean is_over_or_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overright_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.overright_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); - case tstzset ts -> returnValue = functions.overright_set_set(this._inner, ts.get_inner()); - case Temporal t -> returnValue = this.to_period().is_over_or_after(other); - case Box b -> returnValue = functions.overright_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.is_over_or_right((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overright_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overright_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overright_set_set(this._inner, ts.get_inner()); + else if (other instanceof Temporal t) returnValue = this.to_period().is_over_or_after(other); + else if (other instanceof Box b) returnValue = functions.overright_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.is_over_or_right((Base) other); return returnValue; } @@ -571,14 +559,12 @@ public boolean is_over_or_after(TemporalObject other) throws Exception { */ public boolean is_over_or_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overleft_span_span(functions.set_to_span(this._inner), p.get_inner()); - case tstzspanset ps -> returnValue = functions.overleft_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); - case tstzset ts -> returnValue = functions.overleft_set_set(this._inner, ts.get_inner()); - case Temporal t -> returnValue = this.to_period().is_over_or_before(other); - case Box b -> returnValue = functions.overleft_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); - default -> returnValue = super.is_over_or_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overleft_span_span(functions.set_to_span(this._inner), p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overleft_span_spanset(functions.set_to_span(this._inner), ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overleft_set_set(this._inner, ts.get_inner()); + else if (other instanceof Temporal t) returnValue = this.to_period().is_over_or_before(other); + else if (other instanceof Box b) returnValue = functions.overleft_span_span(functions.set_to_span(this._inner), b.to_period().get_inner()); + else returnValue = super.is_over_or_left((Base) other); return returnValue; } @@ -650,14 +636,12 @@ public Duration distance(Object other) throws Exception { */ public Time intersection(TemporalObject other) throws Exception { Time returnValue = null; - switch (other) { - case tstzspan p -> returnValue = new tstzspanset(functions.intersection_spanset_span(functions.set_to_spanset(this._inner), p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.intersection_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); - case tstzset ts -> returnValue = new tstzset(functions.intersection_set_set(this._inner,ts.get_inner())); - case Temporal t -> returnValue = (Time) this.intersection(t.time()); - case Box b -> returnValue = (Time) this.intersection(b.to_period()); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.intersection_spanset_span(functions.set_to_spanset(this._inner), p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.intersection_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzset(functions.intersection_set_set(this._inner,ts.get_inner())); + else if (other instanceof Temporal t) returnValue = (Time) this.intersection(t.time()); + else if (other instanceof Box b) returnValue = (Time) this.intersection(b.to_period()); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -696,14 +680,12 @@ public Time mul(TemporalObject other) throws Exception { */ public Time minus(TemporalObject other) throws Exception { Time returnValue = null; - switch (other) { - case tstzspan p -> returnValue = new tstzspanset(functions.minus_spanset_span(functions.set_to_spanset(this._inner), p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.minus_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); - case tstzset ts -> returnValue = new tstzset(functions.minus_set_set(this._inner,ts.get_inner())); - case Temporal t -> returnValue = (Time) this.minus(t.time()); - case Box b -> returnValue = (Time) this.minus(b.to_period()); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.minus_spanset_span(functions.set_to_spanset(this._inner), p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.minus_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzset(functions.minus_set_set(this._inner,ts.get_inner())); + else if (other instanceof Temporal t) returnValue = (Time) this.minus(t.time()); + else if (other instanceof Box b) returnValue = (Time) this.minus(b.to_period()); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -743,14 +725,12 @@ public Time sub(Time other) throws Exception { */ public Time union(TemporalObject other) throws Exception { Time returnValue = null; - switch (other) { - case tstzspan p -> returnValue = new tstzspan(functions.union_spanset_span(functions.set_to_spanset(this._inner),p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.union_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); - case tstzset ts -> returnValue = new tstzset(functions.union_set_set(this._inner,ts.get_inner())); - case Temporal t -> returnValue = (Time) this.union(t.time()); - case Box b -> returnValue = (Time) this.union(b.to_period()); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspan(functions.union_spanset_span(functions.set_to_spanset(this._inner),p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.union_spanset_spanset(functions.set_to_spanset(this._inner),ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzset(functions.union_set_set(this._inner,ts.get_inner())); + else if (other instanceof Temporal t) returnValue = (Time) this.union(t.time()); + else if (other instanceof Box b) returnValue = (Time) this.union(b.to_period()); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } diff --git a/jmeos-core/src/main/java/types/collections/time/tstzspan.java b/jmeos-core/src/main/java/types/collections/time/tstzspan.java index 1cd72b46..603553e8 100644 --- a/jmeos-core/src/main/java/types/collections/time/tstzspan.java +++ b/jmeos-core/src/main/java/types/collections/time/tstzspan.java @@ -458,15 +458,12 @@ public long hash(){ */ public boolean is_adjacent(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.adjacent_span_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.adjacent_spanset_span(ps.get_inner(), this._inner); - //case Time dt -> returnValue = functions.adjacent_period_timestamp(this._inner, ConversionUtils.datetimeToTimestampTz(dt)); - case tstzset ts -> returnValue = functions.adjacent_spanset_spanset(this._inner, functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = functions.adjacent_span_span(this._inner,functions.temporal_to_tstzspan(t.getInner())); - case Box b -> returnValue = functions.adjacent_span_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_adjacent((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.adjacent_span_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.adjacent_spanset_span(ps.get_inner(), this._inner); + else if (other instanceof tstzset ts) returnValue = functions.adjacent_spanset_spanset(this._inner, functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = functions.adjacent_span_span(this._inner,functions.temporal_to_tstzspan(t.getInner())); + else if (other instanceof Box b) returnValue = functions.adjacent_span_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_adjacent((Base) other); return returnValue; } @@ -495,13 +492,11 @@ public boolean is_adjacent(TemporalObject other) throws Exception { */ public boolean is_contained_in(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.contained_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.contained_span_spanset(this._inner,ps.get_inner()); - case Temporal t -> returnValue = this.is_contained_in((TemporalObject)t.period()); - case Box b -> returnValue = functions.contained_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_contained_in((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.contained_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.contained_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof Temporal t) returnValue = this.is_contained_in((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.contained_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.is_contained_in((Base) other); return returnValue; } @@ -532,14 +527,12 @@ public boolean is_contained_in(TemporalObject other) throws Exception { */ public boolean contains(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.contains_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.contains_span_spanset(this._inner,ps.get_inner()); - case tstzset ts -> returnValue = functions.contains_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = contains((TemporalObject) t.period()); - case Box b -> returnValue = functions.contains_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.contains((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.contains_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.contains_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.contains_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = contains((TemporalObject) t.period()); + else if (other instanceof Box b) returnValue = functions.contains_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.contains((Base) other); return returnValue; } @@ -568,14 +561,12 @@ public boolean contains(TemporalObject other) throws Exception { */ public boolean overlaps(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.overlaps_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.overlaps_spanset_span(ps.get_inner(),this._inner); - case tstzset ts -> returnValue = functions.overlaps_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = this.overlaps((TemporalObject)t.period()); - case Box b -> returnValue = functions.overlaps_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.overlaps((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overlaps_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overlaps_spanset_span(ps.get_inner(),this._inner); + else if (other instanceof tstzset ts) returnValue = functions.overlaps_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = this.overlaps((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.overlaps_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.overlaps((Base) other); return returnValue; } @@ -597,14 +588,12 @@ public boolean overlaps(TemporalObject other) throws Exception { */ public boolean is_same(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.span_eq(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.span_eq(this._inner,functions.spanset_span(ps.get_inner())); - case tstzset ts -> returnValue = functions.span_eq(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = this.is_same((TemporalObject)t.period()); - case Box b -> returnValue = functions.span_eq(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_same((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.span_eq(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.span_eq(this._inner,functions.spanset_span(ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = functions.span_eq(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = this.is_same((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.span_eq(this._inner,b.to_period().get_inner()); + else returnValue = super.is_same((Base) other); return returnValue; } @@ -638,14 +627,12 @@ public boolean is_same(TemporalObject other) throws Exception { */ public boolean is_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.left_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.left_span_spanset(this._inner,ps.get_inner()); - case tstzset ts -> returnValue = functions.left_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_before(t.period()); - case Box b -> returnValue = functions.left_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.left_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.left_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.left_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_before(t.period()); + else if (other instanceof Box b) returnValue = functions.left_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.is_left((Base) other); return returnValue; } @@ -676,14 +663,12 @@ public boolean is_before(TemporalObject other) throws Exception { */ public boolean is_over_or_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.overleft_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.overleft_span_spanset(this._inner,ps.get_inner()); - case tstzset ts -> returnValue = functions.overleft_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_over_or_before(t.period()); - case Box b -> returnValue = functions.overleft_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_over_or_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overleft_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overleft_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overleft_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_over_or_before(t.period()); + else if (other instanceof Box b) returnValue = functions.overleft_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.is_over_or_left((Base) other); return returnValue; } @@ -713,14 +698,12 @@ public boolean is_over_or_before(TemporalObject other) throws Exception { */ public boolean is_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.right_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.right_span_spanset(this._inner,ps.get_inner()); - case tstzset ts -> returnValue = functions.right_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_after(t.period()); - case Box b -> returnValue = functions.right_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_right((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.right_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.right_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.right_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_after(t.period()); + else if (other instanceof Box b) returnValue = functions.right_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.is_right((Base) other); return returnValue; } @@ -753,14 +736,12 @@ public boolean is_after(TemporalObject other) throws Exception { */ public boolean is_over_or_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.overright_span_span(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.overright_span_spanset(this._inner,ps.get_inner()); - case tstzset ts -> returnValue = functions.overright_span_span(this._inner,functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_over_or_after(t.period()); - case Box b -> returnValue = functions.overright_span_span(this._inner,b.to_period().get_inner()); - default -> returnValue = super.is_over_or_right((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overright_span_span(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overright_span_spanset(this._inner,ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overright_span_span(this._inner,functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_over_or_after(t.period()); + else if (other instanceof Box b) returnValue = functions.overright_span_span(this._inner,b.to_period().get_inner()); + else returnValue = super.is_over_or_right((Base) other); return returnValue; } @@ -786,13 +767,11 @@ public boolean is_over_or_after(TemporalObject other) throws Exception { */ public double distance(TemporalObject other) throws Exception { double returnValue; - switch (other){ - case tstzspan p -> returnValue = functions.distance_tstzspan_tstzspan(this._inner,p.get_inner()); - case tstzspanset ps -> returnValue = functions.distance_tstzspanset_tstzspan(ps.get_inner(),this._inner); - case tstzset ts -> returnValue = ts.to_span().distance(other); - case Box b -> returnValue = functions.distance_tstzspan_tstzspan(this._inner, b.to_period().get_inner()); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = functions.distance_tstzspan_tstzspan(this._inner,p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.distance_tstzspanset_tstzspan(ps.get_inner(),this._inner); + else if (other instanceof tstzset ts) returnValue = ts.to_span().distance(other); + else if (other instanceof Box b) returnValue = functions.distance_tstzspan_tstzspan(this._inner, b.to_period().get_inner()); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -816,12 +795,10 @@ public double distance(TemporalObject other) throws Exception { */ public Time intersection(TemporalObject other) throws Exception { Time returnValue = null; - switch (other){ - case tstzspan p -> returnValue = new tstzspan(functions.intersection_span_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.intersection_spanset_span(ps.get_inner(), this._inner)); - case tstzset ts -> returnValue = new tstzset(functions.intersection_spanset_span(functions.set_to_spanset(ts.get_inner()),this._inner)); - default -> returnValue = (Time) new Exception("Operation not supported with this type"); - } + if (other instanceof tstzspan p) returnValue = new tstzspan(functions.intersection_span_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.intersection_spanset_span(ps.get_inner(), this._inner)); + else if (other instanceof tstzset ts) returnValue = new tstzset(functions.intersection_spanset_span(functions.set_to_spanset(ts.get_inner()),this._inner)); + else returnValue = (Time) new Exception("Operation not supported with this type"); return returnValue; } @@ -862,12 +839,10 @@ public Time mul(Time other) throws Exception { */ public tstzspanset minus(Time other) { tstzspanset returnValue; - switch (other){ - case tstzspan p -> returnValue = new tstzspanset(functions.minus_span_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.minus_span_spanset(this._inner,ps.get_inner())); - case tstzset ts -> returnValue = new tstzspanset(functions.minus_span_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.minus_span_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.minus_span_spanset(this._inner,ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzspanset(functions.minus_span_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -908,12 +883,10 @@ public tstzspanset sub(Time other) { */ public tstzspanset union(Time other) { tstzspanset returnValue; - switch (other){ - case tstzspan p -> returnValue = new tstzspanset(functions.union_span_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.union_spanset_span(ps.get_inner(),this._inner)); - case tstzset ts -> returnValue = new tstzspanset(functions.union_spanset_span(functions.set_to_spanset(ts.get_inner()),this._inner)); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.union_span_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.union_spanset_span(ps.get_inner(),this._inner)); + else if (other instanceof tstzset ts) returnValue = new tstzspanset(functions.union_spanset_span(functions.set_to_spanset(ts.get_inner()),this._inner)); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } diff --git a/jmeos-core/src/main/java/types/collections/time/tstzspanset.java b/jmeos-core/src/main/java/types/collections/time/tstzspanset.java index abae5e2d..efc3bb51 100644 --- a/jmeos-core/src/main/java/types/collections/time/tstzspanset.java +++ b/jmeos-core/src/main/java/types/collections/time/tstzspanset.java @@ -334,14 +334,12 @@ public long hash(){ */ public boolean is_adjacent(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.adjacent_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.adjacent_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.adjacent_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); - case Temporal t -> returnValue = is_adjacent((TemporalObject)t.period()); - case Box b -> returnValue = functions.adjacent_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_adjacent((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.adjacent_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.adjacent_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.adjacent_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_adjacent((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.adjacent_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_adjacent((Base) other); return returnValue; } @@ -368,13 +366,11 @@ public boolean is_adjacent(TemporalObject other) throws Exception { */ public boolean is_contained_in(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.contained_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.contained_spanset_spanset(this._inner, ps.get_inner()); - case Temporal t -> returnValue = is_contained_in((TemporalObject)t.period()); - case Box b -> returnValue = functions.contained_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_contained_in((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.contained_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.contained_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof Temporal t) returnValue = is_contained_in((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.contained_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_contained_in((Base) other); return returnValue; } @@ -402,14 +398,12 @@ public boolean is_contained_in(TemporalObject other) throws Exception { */ public boolean contains(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.contains_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.contains_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.contains_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); - case Temporal t -> returnValue = contains((TemporalObject)t.period()); - case Box b -> returnValue = functions.contains_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.contains((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.contains_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.contains_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.contains_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = contains((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.contains_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.contains((Base) other); return returnValue; } @@ -435,14 +429,12 @@ public boolean contains(TemporalObject other) throws Exception { */ public boolean overlaps(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overlaps_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.overlaps_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.overlaps_spanset_spanset(this._inner, functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = overlaps((TemporalObject)t.period()); - case Box b -> returnValue = functions.overlaps_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.overlaps((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overlaps_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overlaps_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overlaps_spanset_spanset(this._inner, functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = overlaps((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.overlaps_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.overlaps((Base) other); return returnValue; } @@ -487,14 +479,12 @@ public boolean is_same(TemporalObject other) throws Exception { */ public boolean is_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.left_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.left_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.left_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); - case Temporal t -> returnValue = is_before((TemporalObject)t.period()); - case Box b -> returnValue = functions.left_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.left_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.left_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.left_spanset_spanset(this._inner, functions.set_to_spanset(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_before((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.left_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_left((Base) other); return returnValue; } @@ -525,14 +515,12 @@ public boolean is_before(TemporalObject other) throws Exception { */ public boolean is_over_or_before(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overleft_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.overleft_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.overleft_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_over_or_before((TemporalObject)t.period()); - case Box b -> returnValue = functions.overleft_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_over_or_left((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overleft_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overleft_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overleft_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_over_or_before((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.overleft_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_over_or_left((Base) other); return returnValue; } @@ -559,14 +547,12 @@ public boolean is_over_or_before(TemporalObject other) throws Exception { */ public boolean is_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.right_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.right_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.right_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_after((TemporalObject)t.period()); - case Box b -> returnValue = functions.right_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_right((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.right_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.right_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.right_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_after((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.right_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_right((Base) other); return returnValue; } @@ -595,14 +581,12 @@ public boolean is_after(TemporalObject other) throws Exception { */ public boolean is_over_or_after(TemporalObject other) throws Exception { boolean returnValue; - switch (other) { - case tstzspan p -> returnValue = functions.overright_spanset_span(this._inner, p.get_inner()); - case tstzspanset ps -> returnValue = functions.overright_spanset_spanset(this._inner, ps.get_inner()); - case tstzset ts -> returnValue = functions.overright_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); - case Temporal t -> returnValue = is_over_or_after((TemporalObject)t.period()); - case Box b -> returnValue = functions.overright_spanset_span(this._inner, b.to_period().get_inner()); - default -> returnValue = super.is_over_or_right((Base) other); - } + if (other instanceof tstzspan p) returnValue = functions.overright_spanset_span(this._inner, p.get_inner()); + else if (other instanceof tstzspanset ps) returnValue = functions.overright_spanset_spanset(this._inner, ps.get_inner()); + else if (other instanceof tstzset ts) returnValue = functions.overright_spanset_span(this._inner, functions.set_to_span(ts.get_inner())); + else if (other instanceof Temporal t) returnValue = is_over_or_after((TemporalObject)t.period()); + else if (other instanceof Box b) returnValue = functions.overright_spanset_span(this._inner, b.to_period().get_inner()); + else returnValue = super.is_over_or_right((Base) other); return returnValue; } @@ -626,12 +610,10 @@ public boolean is_over_or_after(TemporalObject other) throws Exception { */ public Time intersection(Time other) { Time returnValue; - switch (other) { - case tstzspan p -> returnValue = new tstzspan(functions.intersection_spanset_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspan(functions.intersection_spanset_spanset(this._inner,ps.get_inner())); - case tstzset ts -> returnValue = new tstzspan(functions.intersection_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspan(functions.intersection_spanset_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspan(functions.intersection_spanset_spanset(this._inner,ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzspan(functions.intersection_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -667,12 +649,10 @@ public Time mul(Time other) { */ public tstzspanset minus(Time other) { tstzspanset returnValue; - switch (other) { - case tstzspan p -> returnValue = new tstzspanset(functions.minus_spanset_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.minus_spanset_spanset(this._inner,ps.get_inner())); - case tstzset ts -> returnValue = new tstzspanset(functions.minus_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.minus_spanset_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.minus_spanset_spanset(this._inner,ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzspanset(functions.minus_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } @@ -710,12 +690,10 @@ public tstzspanset sub(Time other) { */ public tstzspanset union(Time other) { tstzspanset returnValue; - switch (other) { - case tstzspan p -> returnValue = new tstzspanset(functions.union_spanset_span(this._inner,p.get_inner())); - case tstzspanset ps -> returnValue = new tstzspanset(functions.union_spanset_spanset(this._inner,ps.get_inner())); - case tstzset ts -> returnValue = new tstzspanset(functions.union_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); - default -> throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); - } + if (other instanceof tstzspan p) returnValue = new tstzspanset(functions.union_spanset_span(this._inner,p.get_inner())); + else if (other instanceof tstzspanset ps) returnValue = new tstzspanset(functions.union_spanset_spanset(this._inner,ps.get_inner())); + else if (other instanceof tstzset ts) returnValue = new tstzspanset(functions.union_spanset_spanset(this._inner,functions.set_to_spanset(ts.get_inner()))); + else throw new TypeNotPresentException(other.getClass().toString(), new Throwable("Operation not supported with this type")); return returnValue; } From 612f9c99634b391884e8458f58cb3c6675d86dec Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 06:32:24 +0200 Subject: [PATCH 09/14] Extract the canonical named-operation surface for binding codegen Add extract_named_surface.py, which produces meos-named-surface.json from the two canonical sources already in the MobilityDB tree: the SQL CREATE FUNCTION catalog (named functions, overloads, per-argument DEFAULTs -> valid call arities) and the doxygen chain (@sqlfn on the PG wrapper, @csqlfn on the MEOS function) linking each SQL name to its PG and MEOS C functions. This is the layer above the C-FFI IDL from which a binding's named surface and its Spark Connect registrar are generated, rather than hand-maintained. 1284 named functions, asMFJSON resolving to temporal_as_mfjson with minArity 1 / maxArity 4. --- codegen/input/meos-named-surface.json | 137842 ++++++++++++++++++++++ codegen/tools/NAMED_SURFACE.md | 42 + codegen/tools/extract_named_surface.py | 101 + 3 files changed, 137985 insertions(+) create mode 100644 codegen/input/meos-named-surface.json create mode 100644 codegen/tools/NAMED_SURFACE.md create mode 100644 codegen/tools/extract_named_surface.py diff --git a/codegen/input/meos-named-surface.json b/codegen/input/meos-named-surface.json new file mode 100644 index 00000000..9dafa6f8 --- /dev/null +++ b/codegen/input/meos-named-surface.json @@ -0,0 +1,137842 @@ +{ + "source": "MobilityDB SQL catalog + doxygen @sqlfn/@csqlfn chain", + "functionCount": 1284, + "functions": [ + { + "name": "NearestApproachDistance", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "NearestApproachInstant", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "SRID", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_srid", + "meos": "cbuffer_srid" + }, + { + "pg": "Stbox_srid", + "meos": "stbox_srid" + }, + { + "pg": "Spatialset_srid", + "meos": "spatialset_srid" + }, + { + "pg": "Tspatial_srid", + "meos": "tspatial_srid" + }, + { + "pg": "Npoint_srid", + "meos": "npoint_srid" + }, + { + "pg": "Nsegment_srid", + "meos": "nsegment_srid" + } + ] + }, + { + "name": "Temporal_out", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "Tmax", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_tmax", + "meos": "stbox_tmax" + }, + { + "pg": "Tbox_tmax", + "meos": "tbox_tmax" + } + ] + }, + { + "name": "TmaxInc", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "Tmin", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_tmin", + "meos": "stbox_tmin" + }, + { + "pg": "Tbox_tmin", + "meos": "tbox_tmin" + } + ] + }, + { + "name": "TminInc", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "Xmax", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_xmax", + "meos": "stbox_xmax" + }, + { + "pg": "Tbox_xmax", + "meos": "tbox_xmax" + }, + { + "pg": "Tbox_xmax", + "meos": "tboxint_xmax" + }, + { + "pg": "Tbox_xmax", + "meos": "tboxbigint_xmax" + }, + { + "pg": "Tbox_xmax", + "meos": "tboxfloat_xmax" + } + ] + }, + { + "name": "XmaxInc", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "Xmin", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_xmin", + "meos": "stbox_xmin" + }, + { + "pg": "Tbox_xmin", + "meos": "tbox_xmin" + }, + { + "pg": "Tbox_xmin", + "meos": "tboxint_xmin" + }, + { + "pg": "Tbox_xmin", + "meos": "tboxbigint_xmin" + }, + { + "pg": "Tbox_xmin", + "meos": "tboxfloat_xmin" + } + ] + }, + { + "name": "XminInc", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "Ymax", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_ymax", + "meos": "stbox_ymax" + } + ] + }, + { + "name": "Ymin", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_ymin", + "meos": "stbox_ymin" + } + ] + }, + { + "name": "Zmax", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_zmax", + "meos": "stbox_zmax" + } + ] + }, + { + "name": "Zmin", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_zmin", + "meos": "stbox_zmin" + } + ] + }, + { + "name": "_edisjoint", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "_mdb_internal_clip_difference", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "_mdb_internal_clip_intersection", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "_mdb_internal_clip_sym_difference", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "_mdb_internal_clip_union", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "_mobdb_span_joinsel", + "overloads": [ + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "_mobdb_span_sel", + "overloads": [ + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "regclass", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "regoper", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "_trgeometry_geom_clip_polygon", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "_trgeometry_geom_clip_polygon_posed", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "aContains", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Acontains_geo_trgeometry", + "meos": "econtains_geo_trgeo" + }, + { + "pg": "Acontains_geo_trgeometry", + "meos": "acontains_geo_trgeo" + }, + { + "pg": "Acontains_geo_tcbuffer", + "meos": "ea_contains_geo_tcbuffer" + }, + { + "pg": "Acontains_geo_tcbuffer", + "meos": "acontains_geo_tcbuffer" + }, + { + "pg": "Acontains_tcbuffer_geo", + "meos": "acontains_tcbuffer_geo" + }, + { + "pg": "Acontains_cbuffer_tcbuffer", + "meos": "acontains_cbuffer_tcbuffer" + }, + { + "pg": "Acontains_tcbuffer_cbuffer", + "meos": "acontains_tcbuffer_cbuffer" + }, + { + "pg": "Acontains_geo_tgeo", + "meos": "acontains_geo_tgeo" + }, + { + "pg": "Acontains_tgeo_geo", + "meos": "acontains_tgeo_geo" + }, + { + "pg": "Acontains_tgeo_tgeo", + "meos": "acontains_tgeo_tgeo" + } + ] + }, + { + "name": "aCovers", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Acovers_geo_trgeometry", + "meos": "acovers_geo_trgeo" + }, + { + "pg": "Acovers_trgeometry_geo", + "meos": "acovers_trgeo_geo" + }, + { + "pg": "Acovers_geo_tcbuffer", + "meos": "ea_covers_geo_tcbuffer" + }, + { + "pg": "Acovers_geo_tcbuffer", + "meos": "acovers_geo_tcbuffer" + }, + { + "pg": "Acovers_tcbuffer_geo", + "meos": "acovers_tcbuffer_geo" + }, + { + "pg": "Acovers_cbuffer_tcbuffer", + "meos": "acovers_cbuffer_tcbuffer" + }, + { + "pg": "Acovers_tcbuffer_cbuffer", + "meos": "acovers_tcbuffer_cbuffer" + }, + { + "pg": "Acovers_geo_tgeo", + "meos": "acovers_geo_tgeo" + }, + { + "pg": "Acovers_tgeo_geo", + "meos": "acovers_tgeo_geo" + } + ] + }, + { + "name": "aDisjoint", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Adisjoint_trgeometry_geo", + "meos": "adisjoint_trgeo_geo" + }, + { + "pg": "Adisjoint_trgeometry_trgeometry", + "meos": "adisjoint_trgeo_trgeo" + }, + { + "pg": "Adisjoint_tcbuffer_geo", + "meos": "adisjoint_tcbuffer_geo" + }, + { + "pg": "Adisjoint_tcbuffer_geo", + "meos": "adisjoint_tcbuffer_cbuffer" + }, + { + "pg": "Adisjoint_tcbuffer_tcbuffer", + "meos": "adisjoint_tcbuffer_tcbuffer" + }, + { + "pg": "Adisjoint_tgeo_geo", + "meos": "adisjoint_tgeo_geo" + }, + { + "pg": "Adisjoint_tgeo_tgeo", + "meos": "adisjoint_tgeo_tgeo" + } + ] + }, + { + "name": "aDisjointPairs", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [ + { + "pg": "Adisjoint_tgeoarr_tgeoarr", + "meos": "adisjoint_tgeoarr_tgeoarr" + } + ] + }, + { + "name": "aDwithin", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Adwithin_trgeometry_geo", + "meos": "adwithin_trgeo_geo" + }, + { + "pg": "Adwithin_trgeometry_trgeometry", + "meos": "adwithin_trgeo_trgeo" + }, + { + "pg": "Adwithin_tcbuffer_geo", + "meos": "adwithin_tcbuffer_geo" + }, + { + "pg": "Adwithin_tcbuffer_cbuffer", + "meos": "adwithin_tcbuffer_cbuffer" + }, + { + "pg": "Adwithin_tcbuffer_tcbuffer", + "meos": "adwithin_tcbuffer_tcbuffer" + }, + { + "pg": "Adwithin_tgeo_geo", + "meos": "adwithin_tgeo_geo" + }, + { + "pg": "Adwithin_tgeo_tgeo", + "meos": "adwithin_tgeo_tgeo" + } + ] + }, + { + "name": "aIntersects", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Aintersects_trgeometry_geo", + "meos": "aintersects_trgeo_geo" + }, + { + "pg": "Aintersects_trgeometry_trgeometry", + "meos": "aintersects_trgeo_trgeo" + }, + { + "pg": "Aintersects_tcbuffer_tcbuffer", + "meos": "ea_spatialrel_tcbuffer_tcbuffer" + }, + { + "pg": "Aintersects_tcbuffer_geo", + "meos": "aintersects_tcbuffer_geo" + }, + { + "pg": "Aintersects_tcbuffer_cbuffer", + "meos": "aintersects_tcbuffer_cbuffer" + }, + { + "pg": "Aintersects_tcbuffer_tcbuffer", + "meos": "aintersects_tcbuffer_tcbuffer" + }, + { + "pg": "Aintersects_tgeo_geo", + "meos": "eintersects_tgeo_geo" + }, + { + "pg": "Aintersects_tgeo_geo", + "meos": "aintersects_tgeo_geo" + }, + { + "pg": "Aintersects_tgeo_tgeo", + "meos": "aintersects_tgeo_tgeo" + } + ] + }, + { + "name": "aTouches", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Atouches_trgeometry_geo", + "meos": "atouches_trgeo_geo" + }, + { + "pg": "Acovers_tcbuffer_tcbuffer", + "meos": "acovers_tcbuffer_tcbuffer" + }, + { + "pg": "Atouches_tcbuffer_geo", + "meos": "etouches_tcbuffer_geo" + }, + { + "pg": "Atouches_tcbuffer_geo", + "meos": "atouches_tcbuffer_geo" + }, + { + "pg": "Atouches_tcbuffer_cbuffer", + "meos": "etouches_tcbuffer_cbuffer" + }, + { + "pg": "Atouches_tcbuffer_cbuffer", + "meos": "atouches_tcbuffer_cbuffer" + }, + { + "pg": "Atouches_tcbuffer_tcbuffer", + "meos": "atouches_tcbuffer_tcbuffer" + }, + { + "pg": "Atouches_tpoint_geo", + "meos": "etouches_tpoint_geo" + }, + { + "pg": "Atouches_tpoint_geo", + "meos": "atouches_tpoint_geo" + }, + { + "pg": "Atouches_tgeo_geo", + "meos": "atouches_tgeo_geo" + }, + { + "pg": "Atouches_tgeo_tgeo", + "meos": "atouches_tgeo_tgeo" + } + ] + }, + { + "name": "above", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "abs", + "overloads": [ + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_abs", + "meos": "tnumberinst_abs" + }, + { + "pg": "Tnumber_abs", + "meos": "tnumberseq_abs" + }, + { + "pg": "Tnumber_abs", + "meos": "tnumberseqset_abs" + }, + { + "pg": "Tnumber_abs", + "meos": "tnumber_abs" + } + ] + }, + { + "name": "adjacent", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "affine", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 13, + "maxArity": 13 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 7, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 13, + "maxArity": 13 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 7, + "maxArity": 7 + } + ], + "c": [ + { + "pg": "Tgeo_affine", + "meos": "tgeo_affine" + } + ] + }, + { + "name": "after", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "afterTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "always_eq", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_eq_geo_trgeometry", + "meos": "always_eq_geo_trgeometry" + }, + { + "pg": "Always_eq_trgeometry_geo", + "meos": "always_eq_trgeometry_geo" + }, + { + "pg": "Always_eq_trgeometry_trgeometry", + "meos": "always_eq_trgeometry_trgeometry" + }, + { + "pg": "Always_eq_cbuffer_tcbuffer", + "meos": "always_eq_cbuffer_tcbuffer" + }, + { + "pg": "Always_eq_tcbuffer_cbuffer", + "meos": "always_eq_tcbuffer_cbuffer" + }, + { + "pg": "Always_eq_tcbuffer_tcbuffer", + "meos": "always_eq_tcbuffer_tcbuffer" + }, + { + "pg": "Always_eq_pose_tpose", + "meos": "always_eq_pose_tpose" + }, + { + "pg": "Always_eq_tpose_pose", + "meos": "always_eq_tpose_pose" + }, + { + "pg": "Always_eq_tpose_tpose", + "meos": "always_eq_tpose_tpose" + }, + { + "pg": "Always_eq_geo_tgeo", + "meos": "always_eq_geo_tgeo" + }, + { + "pg": "Always_eq_tgeo_geo", + "meos": "always_eq_tgeo_geo" + }, + { + "pg": "Always_eq_tgeo_tgeo", + "meos": "always_eq_tgeo_tgeo" + }, + { + "pg": "Always_eq_temporal_temporal", + "meos": "always_eq_temporal_temporal" + }, + { + "pg": "Always_eq_base_temporal", + "meos": "always_eq_bigint_tbigint" + }, + { + "pg": "Always_eq_base_temporal", + "meos": "always_eq_bool_tbool" + }, + { + "pg": "Always_eq_base_temporal", + "meos": "always_eq_int_tint" + }, + { + "pg": "Always_eq_base_temporal", + "meos": "always_eq_float_tfloat" + }, + { + "pg": "Always_eq_base_temporal", + "meos": "always_eq_text_ttext" + }, + { + "pg": "Always_eq_temporal_base", + "meos": "always_eq_tbigint_bigint" + }, + { + "pg": "Always_eq_temporal_base", + "meos": "always_eq_tbool_bool" + }, + { + "pg": "Always_eq_temporal_base", + "meos": "always_eq_tint_int" + }, + { + "pg": "Always_eq_temporal_base", + "meos": "always_eq_tfloat_float" + }, + { + "pg": "Always_eq_temporal_base", + "meos": "always_eq_ttext_text" + }, + { + "pg": "Always_eq_npoint_tnpoint", + "meos": "always_eq_npoint_tnpoint" + }, + { + "pg": "Always_eq_tnpoint_npoint", + "meos": "always_eq_tnpoint_npoint" + }, + { + "pg": "Always_eq_tnpoint_tnpoint", + "meos": "always_eq_tnpoint_tnpoint" + } + ] + }, + { + "name": "always_ge", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_ge_temporal_temporal", + "meos": "always_ge_temporal_temporal" + }, + { + "pg": "Always_ge_base_temporal", + "meos": "always_ge_bigint_tbigint" + }, + { + "pg": "Always_ge_base_temporal", + "meos": "always_ge_int_tint" + }, + { + "pg": "Always_ge_base_temporal", + "meos": "always_ge_float_tfloat" + }, + { + "pg": "Always_ge_base_temporal", + "meos": "always_ge_text_ttext" + }, + { + "pg": "Always_ge_temporal_base", + "meos": "always_ge_tbigint_bigint" + }, + { + "pg": "Always_ge_temporal_base", + "meos": "always_ge_tint_int" + }, + { + "pg": "Always_ge_temporal_base", + "meos": "always_ge_tfloat_float" + }, + { + "pg": "Always_ge_temporal_base", + "meos": "always_ge_ttext_text" + } + ] + }, + { + "name": "always_gt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_gt_temporal_temporal", + "meos": "always_gt_temporal_temporal" + }, + { + "pg": "Always_gt_base_temporal", + "meos": "always_gt_bigint_tbigint" + }, + { + "pg": "Always_gt_base_temporal", + "meos": "always_gt_int_tint" + }, + { + "pg": "Always_gt_base_temporal", + "meos": "always_gt_float_tfloat" + }, + { + "pg": "Always_gt_base_temporal", + "meos": "always_gt_text_ttext" + }, + { + "pg": "Always_gt_temporal_base", + "meos": "always_gt_tbigint_bigint" + }, + { + "pg": "Always_gt_temporal_base", + "meos": "always_gt_tint_int" + }, + { + "pg": "Always_gt_temporal_base", + "meos": "always_gt_tfloat_float" + }, + { + "pg": "Always_gt_temporal_base", + "meos": "always_gt_ttext_text" + } + ] + }, + { + "name": "always_le", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_le_temporal_temporal", + "meos": "always_le_temporal_temporal" + }, + { + "pg": "Always_le_base_temporal", + "meos": "always_le_bigint_tbigint" + }, + { + "pg": "Always_le_base_temporal", + "meos": "always_le_int_tint" + }, + { + "pg": "Always_le_base_temporal", + "meos": "always_le_float_tfloat" + }, + { + "pg": "Always_le_base_temporal", + "meos": "always_le_text_ttext" + }, + { + "pg": "Always_le_temporal_base", + "meos": "always_le_tbigint_bigint" + }, + { + "pg": "Always_le_temporal_base", + "meos": "always_le_tint_int" + }, + { + "pg": "Always_le_temporal_base", + "meos": "always_le_tfloat_float" + }, + { + "pg": "Always_le_temporal_base", + "meos": "always_le_ttext_text" + } + ] + }, + { + "name": "always_lt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_lt_temporal_temporal", + "meos": "always_lt_temporal_temporal" + }, + { + "pg": "Always_lt_base_temporal", + "meos": "always_lt_bigint_tbigint" + }, + { + "pg": "Always_lt_base_temporal", + "meos": "always_lt_int_tint" + }, + { + "pg": "Always_lt_base_temporal", + "meos": "always_lt_float_tfloat" + }, + { + "pg": "Always_lt_base_temporal", + "meos": "always_lt_text_ttext" + }, + { + "pg": "Always_lt_temporal_base", + "meos": "always_lt_tbigint_bigint" + }, + { + "pg": "Always_lt_temporal_base", + "meos": "always_lt_tint_int" + }, + { + "pg": "Always_lt_temporal_base", + "meos": "always_lt_tfloat_float" + }, + { + "pg": "Always_lt_temporal_base", + "meos": "always_lt_ttext_text" + } + ] + }, + { + "name": "always_ne", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Always_ne_geo_trgeometry", + "meos": "always_ne_geo_trgeometry" + }, + { + "pg": "Always_ne_trgeometry_geo", + "meos": "always_ne_trgeometry_geo" + }, + { + "pg": "Always_ne_trgeometry_trgeometry", + "meos": "always_ne_trgeometry_trgeometry" + }, + { + "pg": "Always_ne_cbuffer_tcbuffer", + "meos": "always_ne_cbuffer_tcbuffer" + }, + { + "pg": "Always_ne_tcbuffer_cbuffer", + "meos": "always_ne_tcbuffer_cbuffer" + }, + { + "pg": "Always_ne_tcbuffer_tcbuffer", + "meos": "always_ne_tcbuffer_tcbuffer" + }, + { + "pg": "Always_ne_pose_tpose", + "meos": "always_ne_pose_tpose" + }, + { + "pg": "Always_ne_tpose_pose", + "meos": "always_ne_tpose_pose" + }, + { + "pg": "Always_ne_tpose_tpose", + "meos": "always_ne_tpose_tpose" + }, + { + "pg": "Always_ne_geo_tgeo", + "meos": "always_ne_geo_tgeo" + }, + { + "pg": "Always_ne_tgeo_geo", + "meos": "always_ne_tgeo_geo" + }, + { + "pg": "Always_ne_tgeo_tgeo", + "meos": "always_ne_tgeo_tgeo" + }, + { + "pg": "Always_ne_temporal_temporal", + "meos": "always_ne_temporal_temporal" + }, + { + "pg": "Always_ne_base_temporal", + "meos": "always_ne_bigint_tbigint" + }, + { + "pg": "Always_ne_base_temporal", + "meos": "always_ne_bool_tbool" + }, + { + "pg": "Always_ne_base_temporal", + "meos": "always_ne_int_tint" + }, + { + "pg": "Always_ne_base_temporal", + "meos": "always_ne_float_tfloat" + }, + { + "pg": "Always_ne_base_temporal", + "meos": "always_ne_text_ttext" + }, + { + "pg": "Always_ne_temporal_base", + "meos": "always_ne_tbigint_bigint" + }, + { + "pg": "Always_ne_temporal_base", + "meos": "always_ne_tbool_bool" + }, + { + "pg": "Always_ne_temporal_base", + "meos": "always_ne_tint_int" + }, + { + "pg": "Always_ne_temporal_base", + "meos": "always_ne_tfloat_float" + }, + { + "pg": "Always_ne_temporal_base", + "meos": "always_ne_ttext_text" + }, + { + "pg": "Always_ne_npoint_tnpoint", + "meos": "always_ne_npoint_tnpoint" + }, + { + "pg": "Always_ne_tnpoint_npoint", + "meos": "always_ne_tnpoint_npoint" + }, + { + "pg": "Always_ne_tnpoint_tnpoint", + "meos": "always_ne_tnpoint_tnpoint" + } + ] + }, + { + "name": "angularDifference", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tpoint_angular_difference", + "meos": "tpoint_angular_difference" + }, + { + "pg": "Tpoint_angular_difference", + "meos": "tnumber_angular_difference" + } + ] + }, + { + "name": "angularSpeed", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpose_angular_speed", + "meos": "tpose_angular_speed" + } + ] + }, + { + "name": "appendInstant", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_append_tinstant", + "meos": "trgeometry_append_tinstant" + }, + { + "pg": "Temporal_app_tinst_transfn", + "meos": "temporal_app_tinst_transfn" + }, + { + "pg": "Temporal_append_tinstant", + "meos": "tsequence_append_tinstant" + }, + { + "pg": "Temporal_append_tinstant", + "meos": "tsequenceset_append_tinstant" + }, + { + "pg": "Temporal_append_tinstant", + "meos": "temporal_append_tinstant" + } + ] + }, + { + "name": "appendSequence", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_append_tsequence", + "meos": "trgeometry_append_tsequence" + }, + { + "pg": "Temporal_app_tseq_transfn", + "meos": "temporal_app_tseq_transfn" + }, + { + "pg": "Temporal_append_tsequence", + "meos": "tsequence_append_tsequence" + }, + { + "pg": "Temporal_append_tsequence", + "meos": "tsequenceset_append_tsequence" + }, + { + "pg": "Temporal_append_tsequence", + "meos": "temporal_append_tsequence" + } + ] + }, + { + "name": "applyPose", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Pose_apply_geo", + "meos": "pose_apply_geo" + }, + { + "pg": "Tpose_apply_geo", + "meos": "tpose_apply_geo" + } + ] + }, + { + "name": "area", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_area", + "meos": "stbox_area" + }, + { + "pg": "Stbox_perimeter", + "meos": "stbox_perimeter" + } + ] + }, + { + "name": "arrowRoundtrip", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "asBinary", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "asEWKB", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "asEWKT", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_as_ewkt", + "meos": "cbuffer_as_ewkt" + }, + { + "pg": "Pose_as_ewkt", + "meos": "pose_as_ewkt" + }, + { + "pg": "Spatialset_as_ewkt", + "meos": "spatialset_as_ewkt" + }, + { + "pg": "Tspatial_as_ewkt", + "meos": "tspatial_as_ewkt" + }, + { + "pg": "Npoint_as_ewkt", + "meos": "npoint_as_ewkt" + } + ] + }, + { + "name": "asGeoPose", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tpose_as_geopose", + "meos": "tpose_as_geopose" + } + ] + }, + { + "name": "asHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "asHexWKB", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_as_hexwkb", + "meos": "cbuffer_as_hexwkb" + }, + { + "pg": "Pose_as_hexwkb", + "meos": "pose_as_hexwkb" + }, + { + "pg": "Stbox_as_hexwkb", + "meos": "stbox_as_hexwkb" + }, + { + "pg": "Set_as_hexwkb", + "meos": "set_as_hexwkb" + }, + { + "pg": "Span_as_hexwkb", + "meos": "span_as_hexwkb" + }, + { + "pg": "Spanset_as_hexwkb", + "meos": "spanset_as_hexwkb" + }, + { + "pg": "Tbox_as_hexwkb", + "meos": "tbox_as_hexwkb" + }, + { + "pg": "Temporal_as_hexwkb", + "meos": "temporal_as_hexwkb" + }, + { + "pg": "Npoint_as_hexwkb", + "meos": "npoint_as_hexwkb" + } + ] + }, + { + "name": "asMFJSON", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [ + { + "pg": "Temporal_as_mfjson", + "meos": "temporal_as_mfjson" + } + ] + }, + { + "name": "asMVTGeom", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "int4", + "hasDefault": true + }, + { + "type": "bool", + "hasDefault": true + }, + { + "type": "wlocalOutlierFactor(geometry[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + } + ], + "c": [ + { + "pg": "Tpoint_AsMVTGeom", + "meos": "tpoint_as_mvtgeom" + } + ] + }, + { + "name": "asText", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool[]", + "hasDefault": false + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint[]", + "hasDefault": false + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint[]", + "hasDefault": false + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext[]", + "hasDefault": false + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint[]", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": true + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_as_text", + "meos": "cbuffer_as_text" + }, + { + "pg": "Pose_as_text", + "meos": "pose_as_text" + }, + { + "pg": "Spatialset_as_text", + "meos": "spatialset_as_text" + }, + { + "pg": "Tspatial_as_text", + "meos": "tspatial_as_text" + }, + { + "pg": "Npoint_as_text", + "meos": "npoint_as_text" + } + ] + }, + { + "name": "atElevation", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "atGeometry", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_at_geom", + "meos": "trgeometry_at_geom" + }, + { + "pg": "Tcbuffer_at_geom", + "meos": "tcbuffer_restrict_geom" + }, + { + "pg": "Tcbuffer_at_geom", + "meos": "tcbuffer_at_geom" + }, + { + "pg": "Tpose_trajectory", + "meos": "tpose_trajectory" + }, + { + "pg": "Tpose_at_geom", + "meos": "tpose_at_geom" + }, + { + "pg": "Tgeo_at_geom", + "meos": "tpoint_at_geom" + }, + { + "pg": "Tgeo_at_geom", + "meos": "tgeo_at_geom" + }, + { + "pg": "Tgeo_at_elevation", + "meos": "tpoint_at_elevation" + }, + { + "pg": "Tgeo_at_elevation", + "meos": "tgeo_at_elevation" + }, + { + "pg": "Tnpoint_at_geom", + "meos": "tnpoint_at_geom" + } + ] + }, + { + "name": "atMax", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_at_max", + "meos": "temporal_at_max" + } + ] + }, + { + "name": "atMin", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_at_min", + "meos": "temporal_at_min" + }, + { + "pg": "Temporal_at_min", + "meos": "temporal_restrict_minmax" + }, + { + "pg": "Temporal_at_min", + "meos": "tdiscseq_restrict_minmax" + }, + { + "pg": "Temporal_at_min", + "meos": "tcontseq_restrict_minmax" + }, + { + "pg": "Temporal_at_min", + "meos": "tsequenceset_restrict_minmax" + } + ] + }, + { + "name": "atStbox", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Trgeometry_at_stbox", + "meos": "trgeometry_at_stbox" + }, + { + "pg": "Tgeo_at_stbox", + "meos": "tgeoinst_restrict_stbox" + }, + { + "pg": "Tgeo_at_stbox", + "meos": "tgeoseq_restrict_stbox" + }, + { + "pg": "Tgeo_at_stbox", + "meos": "tgeoseqset_restrict_stbox" + }, + { + "pg": "Tgeo_at_stbox", + "meos": "tgeo_at_stbox" + } + ] + }, + { + "name": "atTbox", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tnumber_at_tbox", + "meos": "tnumber_at_tbox" + } + ] + }, + { + "name": "atTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_at_timestamptz", + "meos": "trgeo_at_timestamptz" + }, + { + "pg": "Temporal_at_tstzspanset", + "meos": "trgeo_at_tstzset" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "trgeo_at_tstzspan" + }, + { + "pg": "Temporal_at_tstzspanset", + "meos": "trgeo_at_tstzspanset" + }, + { + "pg": "Temporal_at_timestamptz", + "meos": "temporal_at_timestamptz" + }, + { + "pg": "Temporal_at_tstzset", + "meos": "temporal_at_tstzset" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "temporal_at_tstzspan" + }, + { + "pg": "Temporal_at_tstzspanset", + "meos": "temporal_at_tstzspanset" + }, + { + "pg": "Temporal_at_timestamptz", + "meos": "temporal_restrict_timestamptz" + }, + { + "pg": "Temporal_at_tstzset", + "meos": "temporal_restrict_tstzset" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "temporal_restrict_tstzspan" + }, + { + "pg": "Temporal_at_timestamptz", + "meos": "tinstant_restrict_timestamptz" + }, + { + "pg": "Temporal_at_tstzset", + "meos": "tinstant_restrict_tstzset" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "tinstant_restrict_tstzspan" + }, + { + "pg": "Temporal_at_tstzspanset", + "meos": "tinstant_restrict_tstzspanset" + }, + { + "pg": "Temporal_at_timestamptz", + "meos": "tsequence_at_timestamptz" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "tsequence_restrict_tstzspan" + }, + { + "pg": "Temporal_at_timestamptz", + "meos": "tsequenceset_restrict_timestamptz" + }, + { + "pg": "Temporal_at_tstzset", + "meos": "tsequenceset_restrict_tstzset" + }, + { + "pg": "Temporal_at_tstzspan", + "meos": "tsequenceset_restrict_tstzspan" + }, + { + "pg": "Temporal_at_tstzspanset", + "meos": "tsequenceset_restrict_tstzspanset" + } + ] + }, + { + "name": "atTpcbox", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "atTpcboxFine", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "atValue", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_at_value", + "meos": "trgeo_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tcbuffer_restrict_cbuffer" + }, + { + "pg": "Temporal_at_value", + "meos": "tcbuffer_at_cbuffer" + }, + { + "pg": "Tcbuffer_at_stbox", + "meos": "tcbuffer_restrict_stbox" + }, + { + "pg": "Tcbuffer_at_stbox", + "meos": "tcbuffer_at_stbox" + }, + { + "pg": "Temporal_at_value", + "meos": "tpose_at_pose" + }, + { + "pg": "Temporal_at_value", + "meos": "tpoint_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tgeo_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tbool_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tint_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tfloat_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "ttext_at_value" + }, + { + "pg": "Temporal_at_value", + "meos": "temporal_restrict_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tinstant_restrict_value" + }, + { + "pg": "Temporal_at_value", + "meos": "tsequenceset_restrict_value" + } + ] + }, + { + "name": "atValues", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography(Point)", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_at_values", + "meos": "trgeo_at_values" + }, + { + "pg": "Temporal_at_values", + "meos": "temporal_at_values" + }, + { + "pg": "Temporal_at_values", + "meos": "temporal_restrict_values" + }, + { + "pg": "Temporal_at_values", + "meos": "tinstant_restrict_values" + }, + { + "pg": "Temporal_at_values", + "meos": "tsequenceset_restrict_values" + }, + { + "pg": "Tnpoint_at_npoint", + "meos": "tnpoint_at_npoint" + }, + { + "pg": "Tnpoint_at_npointset", + "meos": "tnpoint_at_npointset" + } + ] + }, + { + "name": "averageHausdorffDistance", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "avgValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_avg_value", + "meos": "tnumberseqset_avg_val" + }, + { + "pg": "Tnumber_avg_value", + "meos": "tnumber_avg_value" + } + ] + }, + { + "name": "azimuth", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpoint_azimuth", + "meos": "tpointseq_azimuth" + }, + { + "pg": "Tpoint_azimuth", + "meos": "tpointseqset_azimuth" + }, + { + "pg": "Tpoint_azimuth", + "meos": "tpoint_azimuth" + } + ] + }, + { + "name": "back", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "bearing", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "isSimple(tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Bearing_point_point", + "meos": "bearing_point_point" + }, + { + "pg": "Bearing_tpoint_point", + "meos": "bearing_tpoint_point" + }, + { + "pg": "Bearing_tpoint_tpoint", + "meos": "bearing_tpoint_tpoint" + } + ] + }, + { + "name": "before", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "beforeTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "below", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "bigintsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintset_out", + "overloads": [ + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintset_send", + "overloads": [ + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintset_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "bigintset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_to_bigintspan", + "meos": "tbox_bigintspan" + }, + { + "pg": "Tbox_to_bigintspan", + "meos": "tbox_to_bigintspan" + } + ] + }, + { + "name": "bigintspanFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspanFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan_out", + "overloads": [ + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan_send", + "overloads": [ + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspan_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "bigintspan_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspansetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspansetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspanset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspanset_out", + "overloads": [ + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspanset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bigintspanset_send", + "overloads": [ + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "bins", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": true + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": true + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "bodyPointTrajectory", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_body_point_trajectory", + "meos": "trgeometry_body_point_trajectory" + } + ] + }, + { + "name": "box", + "overloads": [ + { + "args": [ + { + "type": "point", + "hasDefault": false + }, + { + "type": "point", + "hasDefault": false + } + ], + "returns": "box", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "box2d", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "box2d", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_to_box2d", + "meos": "stbox_to_gbox" + } + ] + }, + { + "name": "box3d", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "box3d", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_to_box3d", + "meos": "stbox_to_box3d" + } + ] + }, + { + "name": "cbuffer", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_constructor", + "meos": "cbuffer_make" + }, + { + "pg": "Geom_to_cbuffer", + "meos": "geom_to_cbuffer" + } + ] + }, + { + "name": "cbuffer_cmp", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_cmp", + "meos": "cbuffer_cmp" + } + ] + }, + { + "name": "cbuffer_contains", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_contains", + "meos": "cbuffer_contains" + }, + { + "pg": "Cbuffer_contains", + "meos": "contains_cbuffer_cbuffer" + } + ] + }, + { + "name": "cbuffer_covers", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_covers", + "meos": "cbuffer_covers" + }, + { + "pg": "Cbuffer_covers", + "meos": "covers_cbuffer_cbuffer" + } + ] + }, + { + "name": "cbuffer_disjoint", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_disjoint", + "meos": "cbuffer_disjoint" + } + ] + }, + { + "name": "cbuffer_dwithin", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Cbuffer_dwithin", + "meos": "dwithin_cbuffer_cbuffer" + } + ] + }, + { + "name": "cbuffer_eq", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_eq", + "meos": "cbuffer_eq" + } + ] + }, + { + "name": "cbuffer_ge", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_ge", + "meos": "cbuffer_ge" + } + ] + }, + { + "name": "cbuffer_gt", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_gt", + "meos": "cbuffer_gt" + } + ] + }, + { + "name": "cbuffer_hash", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbuffer_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "cbuffer_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_in", + "meos": "cbuffer_in" + } + ] + }, + { + "name": "cbuffer_intersects", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_intersects", + "meos": "cbuffer_intersects" + }, + { + "pg": "Cbuffer_intersects", + "meos": "disjoint_cbuffer_cbuffer" + }, + { + "pg": "Cbuffer_intersects", + "meos": "intersects_cbuffer_cbuffer" + } + ] + }, + { + "name": "cbuffer_le", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_le", + "meos": "cbuffer_le" + } + ] + }, + { + "name": "cbuffer_lt", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_lt", + "meos": "cbuffer_lt" + } + ] + }, + { + "name": "cbuffer_ne", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_ne", + "meos": "cbuffer_ne" + } + ] + }, + { + "name": "cbuffer_out", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_out", + "meos": "cbuffer_out" + } + ] + }, + { + "name": "cbuffer_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_recv", + "meos": "cbuffer_from_wkb" + }, + { + "pg": "Cbuffer_recv", + "meos": "cbuffer_as_wkb" + } + ] + }, + { + "name": "cbuffer_same", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "cbuffer_send", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbuffer_touches", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_touches", + "meos": "cbuffer_touches" + }, + { + "pg": "Cbuffer_touches", + "meos": "touches_cbuffer_cbuffer" + } + ] + }, + { + "name": "cbuffersetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbuffersetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbufferset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbufferset_out", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbufferset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbufferset_send", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "cbufferset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ceil", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Floatset_ceil", + "meos": "floatset_ceil" + }, + { + "pg": "Floatspanset_ceil", + "meos": "floatspanset_ceil" + }, + { + "pg": "Floatspan_ceil", + "meos": "floatspan_ceil" + }, + { + "pg": "Tfloat_ceil", + "meos": "tfloat_ceil" + } + ] + }, + { + "name": "centroid", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_centroid", + "meos": "trgeometry_centroid" + }, + { + "pg": "Tgeo_centroid", + "meos": "tgeo_centroid" + } + ] + }, + { + "name": "circle", + "overloads": [ + { + "args": [ + { + "type": "point", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "circle", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "contained", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "contained_rid", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "contains", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "contains_rid", + "overloads": [ + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "convexHull", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_convex_hull", + "meos": "trgeometry_convex_hull" + }, + { + "pg": "Tcbuffer_convex_hull", + "meos": "tcbuffer_convex_hull" + }, + { + "pg": "Tgeo_convex_hull", + "meos": "tgeo_convex_hull" + } + ] + }, + { + "name": "create_trip", + "overloads": [ + { + "args": [ + { + "type": "record[]", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "cumulativeLength", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_cumulative_length", + "meos": "trgeometry_cumulative_length" + }, + { + "pg": "Tpoint_cumulative_length", + "meos": "tpointseq_cumulative_length" + }, + { + "pg": "Tpoint_cumulative_length", + "meos": "tpointseqset_cumulative_length" + }, + { + "pg": "Tpoint_cumulative_length", + "meos": "tpoint_cumulative_length" + }, + { + "pg": "Tnpoint_cumulative_length", + "meos": "tnpoint_cumulative_length" + } + ] + }, + { + "name": "dateN", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Datespanset_date_n", + "meos": "datespanset_date_n" + } + ] + }, + { + "name": "dates", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Datespanset_dates", + "meos": "datespanset_dates" + } + ] + }, + { + "name": "dateset", + "overloads": [ + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tstzset_to_dateset", + "meos": "tstzset_to_dateset" + } + ] + }, + { + "name": "datesetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datesetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "dateset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "dateset_out", + "overloads": [ + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "dateset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "dateset_send", + "overloads": [ + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "dateset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan_out", + "overloads": [ + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan_send", + "overloads": [ + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespan_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "datespan_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanset", + "overloads": [ + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tstzspanset_to_datespanset", + "meos": "tstzspanset_to_datespanset" + } + ] + }, + { + "name": "datespansetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespansetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanset_out", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "datespanset_send", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "degrees", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Floatset_degrees", + "meos": "floatset_degrees" + }, + { + "pg": "Floatspanset_degrees", + "meos": "floatspanset_degrees" + }, + { + "pg": "Floatspan_degrees", + "meos": "floatspan_degrees" + }, + { + "pg": "Float_degrees", + "meos": "float_degrees" + }, + { + "pg": "Tfloat_degrees", + "meos": "tfloat_degrees" + } + ] + }, + { + "name": "deleteTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_delete_tstzset", + "meos": "trgeometry_delete_tstzset" + }, + { + "pg": "Temporal_delete_tstzspan", + "meos": "trgeometry_delete_tstzspan" + }, + { + "pg": "Temporal_delete_tstzspanset", + "meos": "trgeometry_delete_tstzspanset" + }, + { + "pg": "Temporal_delete_timestamptz", + "meos": "tsequence_delete_timestamptz" + }, + { + "pg": "Temporal_delete_tstzset", + "meos": "tsequence_delete_tstzset" + }, + { + "pg": "Temporal_delete_tstzspan", + "meos": "tsequence_delete_tstzspan" + }, + { + "pg": "Temporal_delete_tstzspanset", + "meos": "tsequence_delete_tstzspanset" + }, + { + "pg": "Temporal_delete_timestamptz", + "meos": "temporal_delete_timestamptz" + }, + { + "pg": "Temporal_delete_tstzset", + "meos": "temporal_delete_tstzset" + }, + { + "pg": "Temporal_delete_tstzspan", + "meos": "temporal_delete_tstzspan" + }, + { + "pg": "Temporal_delete_tstzspanset", + "meos": "temporal_delete_tstzspanset" + } + ] + }, + { + "name": "deltaValue", + "overloads": [ + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_delta_value", + "meos": "tnumber_delta_value" + } + ] + }, + { + "name": "derivative", + "overloads": [ + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_derivative", + "meos": "tsequence_derivative" + }, + { + "pg": "Temporal_derivative", + "meos": "tsequenceset_derivative" + }, + { + "pg": "Temporal_derivative", + "meos": "temporal_derivative" + } + ] + }, + { + "name": "direction", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpoint_direction", + "meos": "tpointseq_direction" + }, + { + "pg": "Tpoint_direction", + "meos": "tpointseqset_direction" + }, + { + "pg": "Tpoint_direction", + "meos": "tpoint_direction" + } + ] + }, + { + "name": "distance", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "douglasPeuckerSimplify", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_simplify_dp", + "meos": "temporal_simplify_dp" + } + ] + }, + { + "name": "duration", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "interval", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_duration", + "meos": "tsequence_duration" + }, + { + "pg": "Temporal_duration", + "meos": "tsequenceset_duration" + }, + { + "pg": "Datespanset_duration", + "meos": "datespanset_duration" + }, + { + "pg": "Tstzspanset_duration", + "meos": "tstzspanset_duration" + }, + { + "pg": "Datespan_duration", + "meos": "datespan_duration" + }, + { + "pg": "Tstzspan_duration", + "meos": "tstzspan_duration" + }, + { + "pg": "Temporal_duration", + "meos": "temporal_duration" + } + ] + }, + { + "name": "dynTimeWarpDistance", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_dyntimewarp_distance", + "meos": "trgeometry_dyntimewarp_distance" + }, + { + "pg": "Temporal_dyntimewarp_distance", + "meos": "temporal_dyntimewarp_distance" + } + ] + }, + { + "name": "dynTimeWarpPath", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_dyntimewarp_path", + "meos": "trgeometry_dyntimewarp_path" + }, + { + "pg": "Temporal_dyntimewarp_path", + "meos": "temporal_dyntimewarp_path" + } + ] + }, + { + "name": "eContains", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Econtains_tcbuffer_geo", + "meos": "ea_contains_tcbuffer_geo" + }, + { + "pg": "Econtains_tcbuffer_geo", + "meos": "econtains_tcbuffer_geo" + }, + { + "pg": "Econtains_cbuffer_tcbuffer", + "meos": "econtains_cbuffer_tcbuffer" + }, + { + "pg": "Econtains_tcbuffer_cbuffer", + "meos": "econtains_tcbuffer_cbuffer" + }, + { + "pg": "Econtains_geo_tgeo", + "meos": "econtains_geo_tgeo" + }, + { + "pg": "Econtains_tgeo_geo", + "meos": "econtains_tgeo_geo" + }, + { + "pg": "Econtains_tgeo_tgeo", + "meos": "econtains_tgeo_tgeo" + } + ] + }, + { + "name": "eCovers", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ecovers_geo_trgeometry", + "meos": "ecovers_geo_trgeo" + }, + { + "pg": "Ecovers_trgeometry_geo", + "meos": "ecovers_trgeo_geo" + }, + { + "pg": "Ecovers_geo_tcbuffer", + "meos": "ecovers_geo_tcbuffer" + }, + { + "pg": "Ecovers_tcbuffer_geo", + "meos": "ea_covers_tcbuffer_geo" + }, + { + "pg": "Ecovers_tcbuffer_geo", + "meos": "ecovers_tcbuffer_geo" + }, + { + "pg": "Ecovers_cbuffer_tcbuffer", + "meos": "ecovers_cbuffer_tcbuffer" + }, + { + "pg": "Ecovers_tcbuffer_cbuffer", + "meos": "ecovers_tcbuffer_cbuffer" + }, + { + "pg": "Ecovers_geo_tgeo", + "meos": "ecovers_geo_tgeo" + }, + { + "pg": "Ecovers_tgeo_geo", + "meos": "ecovers_tgeo_geo" + }, + { + "pg": "Ecovers_tgeo_tgeo", + "meos": "ecovers_tgeo_tgeo" + }, + { + "pg": "Acovers_tgeo_tgeo", + "meos": "acovers_tgeo_tgeo" + } + ] + }, + { + "name": "eDisjoint", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeometry", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeometry", + "hasDefault": false + }, + { + "type": "_edisjoint(geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeography", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeography", + "hasDefault": false + }, + { + "type": "aDisjoint(geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeompoint", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeompoint", + "hasDefault": false + }, + { + "type": "_edisjoint(geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeogpoint", + "hasDefault": false + }, + { + "type": "eDisjoint(tgeogpoint", + "hasDefault": false + }, + { + "type": "aDisjoint(geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Edisjoint_trgeometry_geo", + "meos": "edisjoint_trgeo_geo" + }, + { + "pg": "Edisjoint_trgeometry_trgeometry", + "meos": "edisjoint_trgeo_trgeo" + }, + { + "pg": "Edisjoint_tcbuffer_geo", + "meos": "ea_disjoint_tcbuffer_geo" + }, + { + "pg": "Edisjoint_tcbuffer_geo", + "meos": "ea_disjoint_geo_tcbuffer" + }, + { + "pg": "Edisjoint_tcbuffer_geo", + "meos": "edisjoint_tcbuffer_geo" + }, + { + "pg": "Edisjoint_tcbuffer_cbuffer", + "meos": "ea_disjoint_tcbuffer_cbuffer" + }, + { + "pg": "Edisjoint_tcbuffer_cbuffer", + "meos": "ea_disjoint_cbuffer_tcbuffer" + }, + { + "pg": "Edisjoint_tcbuffer_cbuffer", + "meos": "edisjoint_tcbuffer_cbuffer" + }, + { + "pg": "Edisjoint_tcbuffer_tcbuffer", + "meos": "ea_disjoint_tcbuffer_tcbuffer" + }, + { + "pg": "Edisjoint_tcbuffer_tcbuffer", + "meos": "edisjoint_tcbuffer_tcbuffer" + }, + { + "pg": "Edisjoint_tgeo_geo", + "meos": "ea_disjoint_tgeo_geo" + }, + { + "pg": "Edisjoint_tgeo_geo", + "meos": "edisjoint_tgeo_geo" + }, + { + "pg": "Edisjoint_tgeo_tgeo", + "meos": "edisjoint_tgeo_tgeo" + } + ] + }, + { + "name": "eDwithin", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Edwithin_tcbuffer_geo", + "meos": "ea_dwithin_tcbuffer_geo" + }, + { + "pg": "Edwithin_tcbuffer_geo", + "meos": "edwithin_tcbuffer_geo" + }, + { + "pg": "Edwithin_tcbuffer_cbuffer", + "meos": "edwithin_tcbuffer_cbuffer" + }, + { + "pg": "Edwithin_tcbuffer_tcbuffer", + "meos": "ea_dwithin_tcbuffer_tcbuffer" + }, + { + "pg": "Edwithin_tcbuffer_tcbuffer", + "meos": "edwithin_tcbuffer_tcbuffer" + }, + { + "pg": "Edwithin_tgeo_geo", + "meos": "ea_dwithin_tgeo_geo" + }, + { + "pg": "Edwithin_tgeo_geo", + "meos": "edwithin_tgeo_geo" + }, + { + "pg": "Edwithin_tgeo_tgeo", + "meos": "ea_dwithin_tgeo_tgeo" + }, + { + "pg": "Edwithin_tgeo_tgeo", + "meos": "edwithin_tgeo_tgeo" + } + ] + }, + { + "name": "eDwithinPairs", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [ + { + "pg": "Edwithin_tgeoarr_tgeoarr", + "meos": "edwithin_tgeoarr_tgeoarr" + } + ] + }, + { + "name": "eIntersects", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Eintersects_trgeometry_geo", + "meos": "eintersects_trgeo_geo" + }, + { + "pg": "Eintersects_trgeometry_trgeometry", + "meos": "eintersects_trgeo_trgeo" + }, + { + "pg": "Eintersects_tcbuffer_geo", + "meos": "ea_intersects_tcbuffer_geo" + }, + { + "pg": "Eintersects_tcbuffer_geo", + "meos": "ea_intersects_geo_tcbuffer" + }, + { + "pg": "Eintersects_tcbuffer_geo", + "meos": "eintersects_tcbuffer_geo" + }, + { + "pg": "Eintersects_tcbuffer_cbuffer", + "meos": "ea_intersects_tcbuffer_cbuffer" + }, + { + "pg": "Eintersects_tcbuffer_cbuffer", + "meos": "ea_intersects_cbuffer_tcbuffer" + }, + { + "pg": "Eintersects_tcbuffer_cbuffer", + "meos": "eintersects_tcbuffer_cbuffer" + }, + { + "pg": "Eintersects_tcbuffer_tcbuffer", + "meos": "ea_intersects_tcbuffer_tcbuffer" + }, + { + "pg": "Eintersects_tcbuffer_tcbuffer", + "meos": "eintersects_tcbuffer_tcbuffer" + }, + { + "pg": "Eintersects_tgeo_tgeo", + "meos": "ea_disjoint_tgeo_tgeo" + }, + { + "pg": "Eintersects_tgeo_geo", + "meos": "ea_intersects_tgeo_geo" + }, + { + "pg": "Eintersects_tgeo_tgeo", + "meos": "ea_intersects_tgeo_tgeo" + }, + { + "pg": "Eintersects_tgeo_tgeo", + "meos": "eintersects_tgeo_tgeo" + } + ] + }, + { + "name": "eTouches", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Etouches_trgeometry_geo", + "meos": "etouches_trgeo_geo" + }, + { + "pg": "Ecovers_tcbuffer_tcbuffer", + "meos": "ea_covers_tcbuffer_tcbuffer" + }, + { + "pg": "Ecovers_tcbuffer_tcbuffer", + "meos": "ecovers_tcbuffer_tcbuffer" + }, + { + "pg": "Etouches_tcbuffer_geo", + "meos": "ea_touches_tcbuffer_geo" + }, + { + "pg": "Etouches_tcbuffer_geo", + "meos": "ea_touches_geo_tcbuffer" + }, + { + "pg": "Etouches_tcbuffer_cbuffer", + "meos": "ea_touches_tcbuffer_cbuffer" + }, + { + "pg": "Etouches_tcbuffer_cbuffer", + "meos": "ea_touches_cbuffer_tcbuffer" + }, + { + "pg": "Etouches_tcbuffer_tcbuffer", + "meos": "ea_touches_tcbuffer_tcbuffer" + }, + { + "pg": "Etouches_tcbuffer_tcbuffer", + "meos": "etouches_tcbuffer_tcbuffer" + }, + { + "pg": "Etouches_tpoint_geo", + "meos": "ea_touches_tpoint_geo" + }, + { + "pg": "Etouches_tgeo_geo", + "meos": "ea_touches_tgeo_geo" + }, + { + "pg": "Etouches_tgeo_geo", + "meos": "etouches_tgeo_geo" + }, + { + "pg": "Etouches_tgeo_tgeo", + "meos": "ea_touches_tgeo_tgeo" + }, + { + "pg": "Etouches_tgeo_tgeo", + "meos": "etouches_tgeo_tgeo" + } + ] + }, + { + "name": "edisjoint", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "eintersects", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "endDate", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Datespanset_end_date", + "meos": "datespanset_end_date" + } + ] + }, + { + "name": "endInstant", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_end_instant", + "meos": "trgeometry_end_instant" + }, + { + "pg": "Temporal_end_instant", + "meos": "temporal_end_instant" + } + ] + }, + { + "name": "endNumPoints", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "endPosition", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "double", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Nsegment_end_position", + "meos": "nsegment_end_position" + } + ] + }, + { + "name": "endSequence", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_end_sequence", + "meos": "trgeometry_end_sequence" + }, + { + "pg": "Temporal_end_sequence", + "meos": "temporal_end_sequence" + } + ] + }, + { + "name": "endSpan", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_end_span", + "meos": "spanset_end_span" + } + ] + }, + { + "name": "endTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_end_timestamptz", + "meos": "tsequence_end_timestamptz" + }, + { + "pg": "Temporal_end_timestamptz", + "meos": "tsequenceset_end_timestamptz" + }, + { + "pg": "Tstzspanset_end_timestamptz", + "meos": "tstzspanset_end_timestamptz" + }, + { + "pg": "Temporal_end_timestamptz", + "meos": "temporal_end_timestamptz" + } + ] + }, + { + "name": "endValue", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_end_value", + "meos": "cbufferset_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tcbuffer_end_value" + }, + { + "pg": "Set_end_value", + "meos": "pcpointset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "pcpatchset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "poseset_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tpose_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tgeo_end_value" + }, + { + "pg": "Set_end_value", + "meos": "geoset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "intset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "bigintset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "floatset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "textset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "dateset_end_value" + }, + { + "pg": "Set_end_value", + "meos": "tstzset_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tbool_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tint_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tbigint_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tfloat_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "ttext_end_value" + }, + { + "pg": "Set_end_value", + "meos": "npointset_end_value" + }, + { + "pg": "Temporal_end_value", + "meos": "tnpoint_end_value" + } + ] + }, + { + "name": "ever_eq", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_eq_geo_trgeometry", + "meos": "ever_eq_geo_trgeometry" + }, + { + "pg": "Ever_eq_trgeometry_geo", + "meos": "ever_eq_trgeometry_geo" + }, + { + "pg": "Ever_eq_trgeometry_trgeometry", + "meos": "ever_eq_trgeometry_trgeometry" + }, + { + "pg": "Ever_eq_cbuffer_tcbuffer", + "meos": "ever_eq_cbuffer_tcbuffer" + }, + { + "pg": "Ever_eq_tcbuffer_cbuffer", + "meos": "ever_eq_tcbuffer_cbuffer" + }, + { + "pg": "Ever_eq_tcbuffer_tcbuffer", + "meos": "ever_eq_tcbuffer_tcbuffer" + }, + { + "pg": "Ever_eq_pose_tpose", + "meos": "ever_eq_pose_tpose" + }, + { + "pg": "Ever_eq_tpose_pose", + "meos": "ever_eq_tpose_pose" + }, + { + "pg": "Ever_eq_tpose_tpose", + "meos": "ever_eq_tpose_tpose" + }, + { + "pg": "Ever_eq_geo_tgeo", + "meos": "ever_eq_geo_tgeo" + }, + { + "pg": "Ever_eq_tgeo_geo", + "meos": "ever_eq_tgeo_geo" + }, + { + "pg": "Ever_eq_tgeo_tgeo", + "meos": "ever_eq_tgeo_tgeo" + }, + { + "pg": "Ever_eq_temporal_temporal", + "meos": "ever_eq_temporal_temporal" + }, + { + "pg": "Ever_eq_base_temporal", + "meos": "ever_eq_bigint_tbigint" + }, + { + "pg": "Ever_eq_base_temporal", + "meos": "ever_eq_bool_tbool" + }, + { + "pg": "Ever_eq_base_temporal", + "meos": "ever_eq_int_tint" + }, + { + "pg": "Ever_eq_base_temporal", + "meos": "ever_eq_float_tfloat" + }, + { + "pg": "Ever_eq_base_temporal", + "meos": "ever_eq_text_ttext" + }, + { + "pg": "Ever_eq_temporal_base", + "meos": "ever_eq_tbigint_bigint" + }, + { + "pg": "Ever_eq_temporal_base", + "meos": "ever_eq_tbool_bool" + }, + { + "pg": "Ever_eq_temporal_base", + "meos": "ever_eq_tint_int" + }, + { + "pg": "Ever_eq_temporal_base", + "meos": "ever_eq_tfloat_float" + }, + { + "pg": "Ever_eq_temporal_base", + "meos": "ever_eq_ttext_text" + }, + { + "pg": "Ever_eq_npoint_tnpoint", + "meos": "ever_eq_npoint_tnpoint" + }, + { + "pg": "Ever_eq_tnpoint_npoint", + "meos": "ever_eq_tnpoint_npoint" + }, + { + "pg": "Ever_eq_tnpoint_tnpoint", + "meos": "ever_eq_tnpoint_tnpoint" + } + ] + }, + { + "name": "ever_ge", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_ge_temporal_temporal", + "meos": "ever_ge_temporal_temporal" + }, + { + "pg": "Ever_ge_base_temporal", + "meos": "ever_ge_bigint_tbigint" + }, + { + "pg": "Ever_ge_base_temporal", + "meos": "ever_ge_int_tint" + }, + { + "pg": "Ever_ge_base_temporal", + "meos": "ever_ge_float_tfloat" + }, + { + "pg": "Ever_ge_base_temporal", + "meos": "ever_ge_text_ttext" + }, + { + "pg": "Ever_ge_temporal_base", + "meos": "ever_ge_tbigint_bigint" + }, + { + "pg": "Ever_ge_temporal_base", + "meos": "ever_ge_tint_int" + }, + { + "pg": "Ever_ge_temporal_base", + "meos": "ever_ge_tfloat_float" + }, + { + "pg": "Ever_ge_temporal_base", + "meos": "ever_ge_ttext_text" + } + ] + }, + { + "name": "ever_gt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_gt_temporal_temporal", + "meos": "ever_gt_temporal_temporal" + }, + { + "pg": "Ever_gt_base_temporal", + "meos": "ever_gt_bigint_tbigint" + }, + { + "pg": "Ever_gt_base_temporal", + "meos": "ever_gt_int_tint" + }, + { + "pg": "Ever_gt_base_temporal", + "meos": "ever_gt_float_tfloat" + }, + { + "pg": "Ever_gt_base_temporal", + "meos": "ever_gt_text_ttext" + }, + { + "pg": "Ever_gt_temporal_base", + "meos": "ever_gt_tbigint_bigint" + }, + { + "pg": "Ever_gt_temporal_base", + "meos": "ever_gt_tint_int" + }, + { + "pg": "Ever_gt_temporal_base", + "meos": "ever_gt_tfloat_float" + }, + { + "pg": "Ever_gt_temporal_base", + "meos": "ever_gt_ttext_text" + } + ] + }, + { + "name": "ever_le", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_le_temporal_temporal", + "meos": "ever_le_temporal_temporal" + }, + { + "pg": "Ever_le_base_temporal", + "meos": "ever_le_bigint_tbigint" + }, + { + "pg": "Ever_le_base_temporal", + "meos": "ever_le_int_tint" + }, + { + "pg": "Ever_le_base_temporal", + "meos": "ever_le_float_tfloat" + }, + { + "pg": "Ever_le_base_temporal", + "meos": "ever_le_text_ttext" + }, + { + "pg": "Ever_le_temporal_base", + "meos": "ever_le_tbigint_bigint" + }, + { + "pg": "Ever_le_temporal_base", + "meos": "ever_le_tint_int" + }, + { + "pg": "Ever_le_temporal_base", + "meos": "ever_le_tfloat_float" + }, + { + "pg": "Ever_le_temporal_base", + "meos": "ever_le_ttext_text" + } + ] + }, + { + "name": "ever_lt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_lt_temporal_temporal", + "meos": "ever_lt_temporal_temporal" + }, + { + "pg": "Ever_lt_base_temporal", + "meos": "ever_lt_int_tint" + }, + { + "pg": "Ever_lt_base_temporal", + "meos": "ever_lt_bigint_tbigint" + }, + { + "pg": "Ever_lt_base_temporal", + "meos": "ever_lt_float_tfloat" + }, + { + "pg": "Ever_lt_base_temporal", + "meos": "ever_lt_text_ttext" + }, + { + "pg": "Ever_lt_temporal_base", + "meos": "ever_lt_tbigint_bigint" + }, + { + "pg": "Ever_lt_temporal_base", + "meos": "ever_lt_tint_int" + }, + { + "pg": "Ever_lt_temporal_base", + "meos": "ever_lt_tfloat_float" + }, + { + "pg": "Ever_lt_temporal_base", + "meos": "ever_lt_ttext_text" + } + ] + }, + { + "name": "ever_ne", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ever_ne_geo_trgeometry", + "meos": "ever_ne_geo_trgeometry" + }, + { + "pg": "Ever_ne_trgeometry_geo", + "meos": "ever_ne_trgeometry_geo" + }, + { + "pg": "Ever_ne_trgeometry_trgeometry", + "meos": "ever_ne_trgeometry_trgeometry" + }, + { + "pg": "Ever_ne_cbuffer_tcbuffer", + "meos": "ever_ne_cbuffer_tcbuffer" + }, + { + "pg": "Ever_ne_tcbuffer_cbuffer", + "meos": "ever_ne_tcbuffer_cbuffer" + }, + { + "pg": "Ever_ne_tcbuffer_tcbuffer", + "meos": "ever_ne_tcbuffer_tcbuffer" + }, + { + "pg": "Ever_ne_pose_tpose", + "meos": "ever_ne_pose_tpose" + }, + { + "pg": "Ever_ne_tpose_pose", + "meos": "ever_ne_tpose_pose" + }, + { + "pg": "Ever_ne_tpose_tpose", + "meos": "ever_ne_tpose_tpose" + }, + { + "pg": "Ever_ne_geo_tgeo", + "meos": "ever_ne_geo_tgeo" + }, + { + "pg": "Ever_ne_tgeo_geo", + "meos": "ever_ne_tgeo_geo" + }, + { + "pg": "Ever_ne_tgeo_tgeo", + "meos": "ever_ne_tgeo_tgeo" + }, + { + "pg": "Ever_ne_temporal_temporal", + "meos": "ever_ne_temporal_temporal" + }, + { + "pg": "Ever_ne_base_temporal", + "meos": "ever_ne_bigint_tbigint" + }, + { + "pg": "Ever_ne_base_temporal", + "meos": "ever_ne_bool_tbool" + }, + { + "pg": "Ever_ne_base_temporal", + "meos": "ever_ne_int_tint" + }, + { + "pg": "Ever_ne_base_temporal", + "meos": "ever_ne_float_tfloat" + }, + { + "pg": "Ever_ne_base_temporal", + "meos": "ever_ne_text_ttext" + }, + { + "pg": "Ever_ne_temporal_base", + "meos": "ever_ne_tbigint_bigint" + }, + { + "pg": "Ever_ne_temporal_base", + "meos": "ever_ne_tbool_bool" + }, + { + "pg": "Ever_ne_temporal_base", + "meos": "ever_ne_tint_int" + }, + { + "pg": "Ever_ne_temporal_base", + "meos": "ever_ne_tfloat_float" + }, + { + "pg": "Ever_ne_temporal_base", + "meos": "ever_ne_ttext_text" + }, + { + "pg": "Ever_ne_npoint_tnpoint", + "meos": "ever_ne_npoint_tnpoint" + }, + { + "pg": "Ever_ne_tnpoint_npoint", + "meos": "ever_ne_tnpoint_npoint" + }, + { + "pg": "Ever_ne_tnpoint_tnpoint", + "meos": "ever_ne_tnpoint_tnpoint" + } + ] + }, + { + "name": "exp", + "overloads": [ + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "expand", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tcbuffer_expand", + "meos": "tcbuffer_expand" + }, + { + "pg": "Tstzspan_expand", + "meos": "tstzspan_expand" + } + ] + }, + { + "name": "expandSpace", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_expand_space", + "meos": "stbox_expand_space" + } + ] + }, + { + "name": "expandTime", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_expand_time", + "meos": "tbox_expand_time" + } + ] + }, + { + "name": "expandValue", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_expand_value", + "meos": "tbigintbox_expand" + }, + { + "pg": "Tbox_expand_value", + "meos": "tintbox_expand" + }, + { + "pg": "Tbox_expand_value", + "meos": "tfloatbox_expand" + }, + { + "pg": "Tbox_expand_value", + "meos": "tbox_expand_value" + } + ] + }, + { + "name": "extendedKalmanFilter", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 4, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 4, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "fill_oid_cache", + "overloads": [ + { + "args": [], + "returns": "VOID", + "minArity": 0, + "maxArity": 0 + } + ], + "c": [] + }, + { + "name": "floatset", + "overloads": [ + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Intset_to_floatset", + "meos": "intset_to_floatset" + } + ] + }, + { + "name": "floatsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatset_out", + "overloads": [ + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatset_send", + "overloads": [ + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatset_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "floatset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_to_intspan", + "meos": "tbox_intspan" + }, + { + "pg": "Tbox_to_intspan", + "meos": "tbox_to_intspan" + }, + { + "pg": "Tbox_to_floatspan", + "meos": "tbox_floatspan" + }, + { + "pg": "Tbox_to_floatspan", + "meos": "tbox_to_floatspan" + } + ] + }, + { + "name": "floatspanFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan_out", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan_send", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspan_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "floatspan_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanset", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Intspanset_to_floatspanset", + "meos": "intspanset_to_floatspanset" + } + ] + }, + { + "name": "floatspansetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspansetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanset_out", + "overloads": [ + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floatspanset_send", + "overloads": [ + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "floor", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Floatset_floor", + "meos": "floatset_floor" + }, + { + "pg": "Floatspanset_floor", + "meos": "floatspanset_floor" + }, + { + "pg": "Floatspan_floor", + "meos": "floatspan_floor" + }, + { + "pg": "Tfloat_floor", + "meos": "tfloat_floor" + } + ] + }, + { + "name": "frechetDistance", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_frechet_distance", + "meos": "trgeometry_frechet_distance" + }, + { + "pg": "Temporal_frechet_distance", + "meos": "temporal_frechet_distance" + } + ] + }, + { + "name": "frechetDistancePath", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_frechet_path", + "meos": "trgeometry_frechet_path" + }, + { + "pg": "Temporal_frechet_path", + "meos": "temporal_frechet_path" + } + ] + }, + { + "name": "front", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "geoMeasure", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "geoToH3Cell", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "geoToH3IndexSet", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "geodstboxT", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geodstboxZ", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 6, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "geodstboxZT", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 7, + "maxArity": 8 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 7, + "maxArity": 8 + } + ], + "c": [] + }, + { + "name": "geography", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "geogsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogsetFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogsetFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogsetFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogset_out", + "overloads": [ + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogset_send", + "overloads": [ + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geogset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geometry", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_to_geom", + "meos": "cbuffer_to_geom" + }, + { + "pg": "Stbox_to_geo", + "meos": "stbox_geo" + }, + { + "pg": "Stbox_to_geo", + "meos": "stbox_to_geo" + }, + { + "pg": "Tpoint_to_geomeas", + "meos": "tpoint_tfloat_to_geomeas" + }, + { + "pg": "Npoint_to_geompoint", + "meos": "npoint_to_geompoint" + }, + { + "pg": "Nsegment_to_geom", + "meos": "nsegment_to_geom" + } + ] + }, + { + "name": "geomsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomsetFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomsetFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomsetFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomset_out", + "overloads": [ + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomset_send", + "overloads": [ + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geomset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geopose_frame_is_geographic", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geopose_frame_name", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "geopose_frame_srid", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "getBin", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": true + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "getDim", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Pcpoint_get_dim", + "meos": "pcpoint_get_dim" + } + ] + }, + { + "name": "getPosition", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "double", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "getSpace", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_get_space", + "meos": "stbox_get_space" + } + ] + }, + { + "name": "getSpaceTile", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 4, + "maxArity": 5 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 3, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "getSpaceTimeTile", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 6, + "maxArity": 8 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 4, + "maxArity": 6 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 5, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "getStboxTimeTile", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "getTBoxTimeTile", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "getTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_time", + "meos": "tinstant_time" + }, + { + "pg": "Temporal_time", + "meos": "tsequence_time" + }, + { + "pg": "Temporal_time", + "meos": "tsequenceset_time" + }, + { + "pg": "Temporal_time", + "meos": "temporal_time" + } + ] + }, + { + "name": "getTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "getValue", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tinstant_value", + "meos": "tinstant_value_p" + } + ] + }, + { + "name": "getValueTile", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "getValueTimeTile", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox", + "minArity": 4, + "maxArity": 6 + } + ], + "c": [] + }, + { + "name": "getValues", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbuffer[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatch[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "pose[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geography[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3index[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "float[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "text[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "date[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npoint[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_values", + "meos": "cbufferset_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tcbuffer_values" + }, + { + "pg": "Set_values", + "meos": "pcpointset_values" + }, + { + "pg": "Set_values", + "meos": "pcpatchset_values" + }, + { + "pg": "Set_values", + "meos": "poseset_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tpose_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tgeo_values" + }, + { + "pg": "Set_values", + "meos": "geoset_values" + }, + { + "pg": "Set_values", + "meos": "intset_values" + }, + { + "pg": "Set_values", + "meos": "bigintset_values" + }, + { + "pg": "Set_values", + "meos": "floatset_values" + }, + { + "pg": "Set_values", + "meos": "textset_values" + }, + { + "pg": "Set_values", + "meos": "dateset_values" + }, + { + "pg": "Set_values", + "meos": "tstzset_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tinstant_values_p" + }, + { + "pg": "Temporal_valueset", + "meos": "tnumberinst_valuespans" + }, + { + "pg": "Temporal_valueset", + "meos": "tsequence_values_p" + }, + { + "pg": "Tnumber_valuespans", + "meos": "tnumberseq_valuespans" + }, + { + "pg": "Set_values", + "meos": "set_vals" + }, + { + "pg": "Set_values", + "meos": "set_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tsequenceset_values_p" + }, + { + "pg": "Tnumber_valuespans", + "meos": "tnumberseqset_valuespans" + }, + { + "pg": "Temporal_valueset", + "meos": "tbool_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tint_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tbigint_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tfloat_values" + }, + { + "pg": "Temporal_valueset", + "meos": "ttext_values" + }, + { + "pg": "Temporal_valueset", + "meos": "temporal_values" + }, + { + "pg": "Tnumber_valuespans", + "meos": "tnumber_valuespans" + }, + { + "pg": "Set_values", + "meos": "npointset_values" + }, + { + "pg": "Temporal_valueset", + "meos": "tnpoint_values" + } + ] + }, + { + "name": "getX", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pcpoint_get_x", + "meos": "pcpoint_get_x" + }, + { + "pg": "Tpoint_get_x", + "meos": "tpoint_get_x" + } + ] + }, + { + "name": "getY", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pcpoint_get_y", + "meos": "pcpoint_get_y" + }, + { + "pg": "Tpoint_get_y", + "meos": "tpoint_get_y" + } + ] + }, + { + "name": "getZ", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pcpoint_get_z", + "meos": "pcpoint_get_z" + }, + { + "pg": "Tpoint_get_z", + "meos": "tpoint_get_z" + } + ] + }, + { + "name": "h3_are_neighbor_cells", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_area", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_boundary", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_center_child", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_child_pos", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_children", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_latlng", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_latlng_tgeompoint", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_local_ij", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_parent", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_vertex", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_cell_to_vertexes", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_cells_to_directed_edge", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_child_pos_to_cell", + "overloads": [ + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "h3_compact_cells", + "overloads": [ + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_directed_edge_to_boundary", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_edge_length", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_get_base_cell_number", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_get_directed_edge_destination", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_get_directed_edge_origin", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_get_icosahedron_faces", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_get_resolution", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_great_circle_distance", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "h3_grid_disk", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_grid_distance", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_grid_path_cells", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_grid_ring", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_is_pentagon", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_is_res_class_iii", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_is_valid_cell", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_is_valid_directed_edge", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_is_valid_vertex", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_latlng_to_cell", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_local_ij_to_cell", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_origin_to_directed_edges", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3_uncompact_cells", + "overloads": [ + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3_vertex_to_latlng", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3index_cmp", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_eq", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_ge", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_gt", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_hash", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3index_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3index_le", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_lt", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_ne", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "h3index_out", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3index_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3index_send", + "overloads": [ + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexset_out", + "overloads": [ + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexset_send", + "overloads": [ + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "h3indexset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "hasT", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_hast", + "meos": "stbox_hast" + }, + { + "pg": "Tbox_hast", + "meos": "tbox_hast" + } + ] + }, + { + "name": "hasX", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_hasx", + "meos": "stbox_hasx" + }, + { + "pg": "Tbox_hasx", + "meos": "tbox_hasx" + } + ] + }, + { + "name": "hasZ", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_hasz", + "meos": "stbox_hasz" + } + ] + }, + { + "name": "hausdorffDistance", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_hausdorff_distance", + "meos": "trgeometry_hausdorff_distance" + } + ] + }, + { + "name": "initcap", + "overloads": [ + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Textset_initcap", + "meos": "textset_initcap" + } + ] + }, + { + "name": "insert", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_insert", + "meos": "temporal_insert" + } + ] + }, + { + "name": "instantN", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_instant_n", + "meos": "trgeometry_instant_n" + }, + { + "pg": "Temporal_instant_n", + "meos": "tsequenceset_inst_n" + }, + { + "pg": "Temporal_instant_n", + "meos": "temporal_instant_n" + } + ] + }, + { + "name": "instants", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_instants", + "meos": "trgeometry_instants" + }, + { + "pg": "Temporal_instants", + "meos": "tinstant_insts" + }, + { + "pg": "Temporal_instants", + "meos": "temporal_instants" + } + ] + }, + { + "name": "integral", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "interp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_interp", + "meos": "temporal_interp" + } + ] + }, + { + "name": "intset", + "overloads": [ + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Floatset_to_intset", + "meos": "floatset_to_intset" + } + ] + }, + { + "name": "intsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_from_hexwkb", + "meos": "set_from_hexwkb" + } + ] + }, + { + "name": "intset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_in", + "meos": "cbufferset_in" + }, + { + "pg": "Set_in", + "meos": "pcpointset_in" + }, + { + "pg": "Set_in", + "meos": "pcpatchset_in" + }, + { + "pg": "Set_in", + "meos": "poseset_in" + }, + { + "pg": "Set_in", + "meos": "geomset_in" + }, + { + "pg": "Set_in", + "meos": "geogset_in" + }, + { + "pg": "Set_in", + "meos": "intset_in" + }, + { + "pg": "Set_in", + "meos": "bigintset_in" + }, + { + "pg": "Set_in", + "meos": "floatset_in" + }, + { + "pg": "Set_in", + "meos": "textset_in" + }, + { + "pg": "Set_in", + "meos": "dateset_in" + }, + { + "pg": "Set_in", + "meos": "tstzset_in" + }, + { + "pg": "Set_in", + "meos": "set_in" + }, + { + "pg": "Set_in", + "meos": "npointset_in" + } + ] + }, + { + "name": "intset_out", + "overloads": [ + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_out", + "meos": "cbufferset_out" + }, + { + "pg": "Set_out", + "meos": "pcpointset_out" + }, + { + "pg": "Set_out", + "meos": "pcpatchset_out" + }, + { + "pg": "Set_out", + "meos": "poseset_out" + }, + { + "pg": "Set_out", + "meos": "spatialset_out" + }, + { + "pg": "Set_out", + "meos": "intset_out" + }, + { + "pg": "Set_out", + "meos": "bigintset_out" + }, + { + "pg": "Set_out", + "meos": "floatset_out" + }, + { + "pg": "Set_out", + "meos": "textset_out" + }, + { + "pg": "Set_out", + "meos": "dateset_out" + }, + { + "pg": "Set_out", + "meos": "tstzset_out" + }, + { + "pg": "Set_out", + "meos": "set_out" + }, + { + "pg": "Set_out", + "meos": "npointset_out" + } + ] + }, + { + "name": "intset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_recv", + "meos": "set_from_wkb" + } + ] + }, + { + "name": "intset_send", + "overloads": [ + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_send", + "meos": "set_as_wkb" + } + ] + }, + { + "name": "intset_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "intset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspan", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Span_constructor", + "meos": "intspan_make" + }, + { + "pg": "Span_constructor", + "meos": "bigintspan_make" + }, + { + "pg": "Span_constructor", + "meos": "floatspan_make" + }, + { + "pg": "Span_constructor", + "meos": "datespan_make" + }, + { + "pg": "Span_constructor", + "meos": "tstzspan_make" + } + ] + }, + { + "name": "intspanFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspanFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Span_from_hexwkb", + "meos": "span_from_hexwkb" + } + ] + }, + { + "name": "intspan_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspan_out", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspan_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspan_send", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspan_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "intspan_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspanset", + "overloads": [ + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Value_to_spanset", + "meos": "int_to_spanset" + }, + { + "pg": "Value_to_spanset", + "meos": "bigint_to_spanset" + }, + { + "pg": "Value_to_spanset", + "meos": "float_to_spanset" + }, + { + "pg": "Value_to_spanset", + "meos": "date_to_spanset" + }, + { + "pg": "Value_to_spanset", + "meos": "timestamptz_to_spanset" + }, + { + "pg": "Set_to_spanset", + "meos": "set_spanset" + }, + { + "pg": "Set_to_spanset", + "meos": "set_to_spanset" + }, + { + "pg": "Floatspanset_to_intspanset", + "meos": "floatspanset_to_intspanset" + } + ] + }, + { + "name": "intspansetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspansetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_from_hexwkb", + "meos": "spanset_from_hexwkb" + } + ] + }, + { + "name": "intspanset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspanset_out", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspanset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "intspanset_send", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "isGeodetic", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_isgeodetic", + "meos": "stbox_isgeodetic" + } + ] + }, + { + "name": "lcssDistance", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "left", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "length", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "double", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_length", + "meos": "trgeometry_length" + }, + { + "pg": "Tpoint_length", + "meos": "tpointseq_length" + }, + { + "pg": "Tpoint_length", + "meos": "tpointseqset_length" + }, + { + "pg": "Tpoint_length", + "meos": "tpoint_length" + }, + { + "pg": "Tpoint_length", + "meos": "tpoint_speed" + }, + { + "pg": "Tnpoint_length", + "meos": "tnpoint_length" + } + ] + }, + { + "name": "line", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "line", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "ln", + "overloads": [ + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tfloat_exp", + "meos": "tfloat_exp" + }, + { + "pg": "Tfloat_ln", + "meos": "tfloat_ln" + }, + { + "pg": "Tfloat_log10", + "meos": "tfloat_log10" + } + ] + }, + { + "name": "log10", + "overloads": [ + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "lower", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Textset_lower", + "meos": "textset_lower" + }, + { + "pg": "Span_lower", + "meos": "intspan_lower" + }, + { + "pg": "Span_lower", + "meos": "bigintspan_lower" + }, + { + "pg": "Span_lower", + "meos": "floatspan_lower" + }, + { + "pg": "Span_lower", + "meos": "datespan_lower" + }, + { + "pg": "Span_lower", + "meos": "tstzspan_lower" + }, + { + "pg": "Spanset_lower", + "meos": "intspanset_lower" + }, + { + "pg": "Spanset_lower", + "meos": "bigintspanset_lower" + }, + { + "pg": "Spanset_lower", + "meos": "floatspanset_lower" + }, + { + "pg": "Spanset_lower", + "meos": "tstzspanset_lower" + }, + { + "pg": "Spanset_lower", + "meos": "spanset_lower" + }, + { + "pg": "Ttext_lower", + "meos": "ttext_lower" + }, + { + "pg": "Ttext_lower", + "meos": "ttext_initcap" + } + ] + }, + { + "name": "lowerInc", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_lower_inc", + "meos": "temporal_lower_inc" + } + ] + }, + { + "name": "lseg", + "overloads": [ + { + "args": [ + { + "type": "point", + "hasDefault": false + }, + { + "type": "point", + "hasDefault": false + } + ], + "returns": "lseg", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "makeSimple", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpoint_make_simple", + "meos": "tpointseq_make_simple" + }, + { + "pg": "Tpoint_make_simple", + "meos": "tpointseqset_make_simple" + }, + { + "pg": "Tpoint_make_simple", + "meos": "tpoint_make_simple" + } + ] + }, + { + "name": "maxDistSimplify", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "maxInstant", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_max_instant", + "meos": "tsequence_max_inst_p" + }, + { + "pg": "Temporal_max_instant", + "meos": "tsequenceset_max_inst_p" + }, + { + "pg": "Temporal_max_instant", + "meos": "temporal_max_inst_p" + }, + { + "pg": "Temporal_max_instant", + "meos": "temporal_max_instant" + } + ] + }, + { + "name": "maxValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_max_value", + "meos": "tsequence_max_val" + }, + { + "pg": "Temporal_max_value", + "meos": "tsequenceset_max_val" + }, + { + "pg": "Temporal_max_value", + "meos": "tint_max_value" + }, + { + "pg": "Temporal_max_value", + "meos": "tbigint_max_value" + }, + { + "pg": "Temporal_max_value", + "meos": "tfloat_max_value" + }, + { + "pg": "Temporal_max_value", + "meos": "ttext_max_value" + }, + { + "pg": "Temporal_max_value", + "meos": "temporal_max_value" + } + ] + }, + { + "name": "memSize", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "int", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_mem_size", + "meos": "set_mem_size" + }, + { + "pg": "Spanset_mem_size", + "meos": "spanset_mem_size" + }, + { + "pg": "Temporal_mem_size", + "meos": "temporal_mem_size" + } + ] + }, + { + "name": "merge", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool[]", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint[]", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint[]", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext[]", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_merge_transfn", + "meos": "temporal_merge_transfn" + }, + { + "pg": "Temporal_merge_combinefn", + "meos": "temporal_merge_combinefn" + }, + { + "pg": "Temporal_merge", + "meos": "tinstant_merge" + }, + { + "pg": "Temporal_merge", + "meos": "geoarr_merge" + }, + { + "pg": "Temporal_merge_array", + "meos": "tinstant_merge_array" + }, + { + "pg": "Temporal_merge", + "meos": "tsequence_merge" + }, + { + "pg": "Temporal_merge_array", + "meos": "tsequence_merge_array" + }, + { + "pg": "Temporal_merge", + "meos": "tsequenceset_merge" + }, + { + "pg": "Temporal_merge_array", + "meos": "tsequenceset_merge_array" + }, + { + "pg": "Temporal_merge", + "meos": "temporal_merge" + }, + { + "pg": "Temporal_merge_array", + "meos": "temporal_merge_array" + } + ] + }, + { + "name": "minDistSimplify", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_simplify_min_dist", + "meos": "temporal_simplify_min_dist" + } + ] + }, + { + "name": "minDistance", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "tgeompoint[]", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "tgeometry[]", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Mindistance_tgeoarr_tgeoarr", + "meos": "mindistance_tgeoarr_tgeoarr" + } + ] + }, + { + "name": "minDistance_transfn", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "minInstant", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_min_instant", + "meos": "tsequence_min_inst_p" + }, + { + "pg": "Temporal_min_instant", + "meos": "tsequenceset_min_inst_p" + }, + { + "pg": "Temporal_min_instant", + "meos": "temporal_min_instant" + } + ] + }, + { + "name": "minTimeDeltaSimplify", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_simplify_min_tdelta", + "meos": "temporal_simplify_min_tdelta" + } + ] + }, + { + "name": "minValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_min_value", + "meos": "tsequence_min_val" + }, + { + "pg": "Temporal_min_value", + "meos": "tsequenceset_min_val" + }, + { + "pg": "Temporal_min_value", + "meos": "tint_min_value" + }, + { + "pg": "Temporal_min_value", + "meos": "tbigint_min_value" + }, + { + "pg": "Temporal_min_value", + "meos": "tfloat_min_value" + }, + { + "pg": "Temporal_min_value", + "meos": "ttext_min_value" + } + ] + }, + { + "name": "minusElevation", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "minusGeometry", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_minus_geom", + "meos": "trgeometry_minus_geom" + }, + { + "pg": "Tcbuffer_minus_geom", + "meos": "tcbuffer_minus_geom" + }, + { + "pg": "Tpose_minus_geom", + "meos": "tpose_minus_geom" + }, + { + "pg": "Tgeo_minus_geom", + "meos": "tpoint_minus_geom" + }, + { + "pg": "Tgeo_minus_geom", + "meos": "tgeo_minus_geom" + }, + { + "pg": "Tgeo_minus_elevation", + "meos": "tpoint_minus_elevation" + }, + { + "pg": "Tgeo_minus_elevation", + "meos": "tgeo_minus_elevation" + }, + { + "pg": "Tnpoint_minus_geom", + "meos": "tnpoint_minus_geom" + } + ] + }, + { + "name": "minusMax", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_minus_max", + "meos": "temporal_minus_max" + } + ] + }, + { + "name": "minusMin", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_minus_min", + "meos": "temporal_minus_min" + } + ] + }, + { + "name": "minusStbox", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Trgeometry_minus_stbox", + "meos": "trgeometry_minus_stbox" + }, + { + "pg": "Tgeo_minus_stbox", + "meos": "tgeo_minus_stbox" + } + ] + }, + { + "name": "minusTbox", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tnumber_minus_tbox", + "meos": "tnumber_minus_tbox" + } + ] + }, + { + "name": "minusTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_minus_timestamptz", + "meos": "trgeo_minus_timestamptz" + }, + { + "pg": "Temporal_minus_tstzspanset", + "meos": "trgeo_minus_tstzset" + }, + { + "pg": "Temporal_minus_tstzspan", + "meos": "trgeo_minus_tstzspan" + }, + { + "pg": "Temporal_minus_tstzspanset", + "meos": "trgeo_minus_tstzspanset" + }, + { + "pg": "Temporal_minus_timestamptz", + "meos": "temporal_minus_timestamptz" + }, + { + "pg": "Temporal_minus_tstzset", + "meos": "temporal_minus_tstzset" + }, + { + "pg": "Temporal_minus_tstzspan", + "meos": "temporal_minus_tstzspan" + }, + { + "pg": "Temporal_minus_tstzspanset", + "meos": "temporal_minus_tstzspanset" + }, + { + "pg": "Temporal_minus_timestamptz", + "meos": "tsequenceset_delete_timestamptz" + }, + { + "pg": "Temporal_minus_tstzset", + "meos": "tsequenceset_delete_tstzset" + }, + { + "pg": "Temporal_minus_tstzspan", + "meos": "tsequenceset_delete_tstzspan" + }, + { + "pg": "Temporal_minus_tstzspanset", + "meos": "tsequenceset_delete_tstzspanset" + } + ] + }, + { + "name": "minusTpcbox", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "minusTpcboxFine", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "minusValue", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_minus_value", + "meos": "trgeo_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "tcbuffer_minus_cbuffer" + }, + { + "pg": "Tcbuffer_minus_stbox", + "meos": "tcbuffer_minus_stbox" + }, + { + "pg": "Temporal_minus_value", + "meos": "tpose_minus_pose" + }, + { + "pg": "Temporal_minus_value", + "meos": "tpoint_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "tgeo_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "tbool_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "tint_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "tfloat_minus_value" + }, + { + "pg": "Temporal_minus_value", + "meos": "ttext_minus_value" + } + ] + }, + { + "name": "minusValues", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography(Point)", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_minus_values", + "meos": "trgeo_minus_values" + }, + { + "pg": "Temporal_minus_values", + "meos": "temporal_minus_values" + }, + { + "pg": "Tnpoint_minus_npoint", + "meos": "tnpoint_minus_npoint" + }, + { + "pg": "Tnpoint_minus_npointset", + "meos": "tnpoint_minus_npointset" + } + ] + }, + { + "name": "mobilitydb_full_version", + "overloads": [ + { + "args": [], + "returns": "text", + "minArity": 0, + "maxArity": 0 + } + ], + "c": [] + }, + { + "name": "mobilitydb_version", + "overloads": [ + { + "args": [], + "returns": "text", + "minArity": 0, + "maxArity": 0 + } + ], + "c": [] + }, + { + "name": "multirange", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "int4multirange", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "int8multirange", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datemultirange", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzmultirange", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "nearestApproachDistance", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "int", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "NAD_tcbuffer_geo", + "meos": "nad_tcbuffer_geo" + }, + { + "pg": "NAD_tcbuffer_geo", + "meos": "nad_tcbuffer_stbox" + }, + { + "pg": "NAD_tcbuffer_cbuffer", + "meos": "nad_tcbuffer_cbuffer" + }, + { + "pg": "NAD_tcbuffer_tcbuffer", + "meos": "nad_tcbuffer_tcbuffer" + }, + { + "pg": "NAD_tpcbox_tpcbox", + "meos": "nad_tpcbox_tpcbox" + }, + { + "pg": "NAD_tpointcloud_tpcbox", + "meos": "nad_tpointcloud_tpcbox" + }, + { + "pg": "NAD_tpointcloud_tpointcloud", + "meos": "nad_tpointcloud_tpointcloud" + }, + { + "pg": "NAD_tpose_geo", + "meos": "nad_tpose_geo" + }, + { + "pg": "NAD_tpose_geo", + "meos": "nad_tpose_stbox" + }, + { + "pg": "NAD_tpose_pose", + "meos": "nad_tpose_pose" + }, + { + "pg": "NAD_tpose_tpose", + "meos": "nad_tpose_tpose" + }, + { + "pg": "NAD_tgeo_geo", + "meos": "nad_tgeo_geo" + }, + { + "pg": "NAD_stbox_geo", + "meos": "nad_stbox_geo" + }, + { + "pg": "NAD_stbox_stbox", + "meos": "nad_stbox_stbox" + }, + { + "pg": "NAD_tgeo_stbox", + "meos": "nad_tgeo_stbox" + }, + { + "pg": "NAD_tgeo_tgeo", + "meos": "nad_tgeo_tgeo" + }, + { + "pg": "NAD_tnumber_number", + "meos": "nad_tint_int" + }, + { + "pg": "NAD_tnumber_number", + "meos": "nad_tfloat_float" + }, + { + "pg": "NAD_tnumber_tbox", + "meos": "nad_tint_tbox" + }, + { + "pg": "NAD_tnumber_tbox", + "meos": "nad_tfloat_tbox" + }, + { + "pg": "NAD_tbox_tbox", + "meos": "nad_tboxint_tboxint" + }, + { + "pg": "NAD_tbox_tbox", + "meos": "nad_tboxfloat_tboxfloat" + }, + { + "pg": "NAD_tnumber_tnumber", + "meos": "nad_tint_tint" + }, + { + "pg": "NAD_tnumber_tnumber", + "meos": "nad_tfloat_tfloat" + }, + { + "pg": "NAD_tbox_tbox", + "meos": "nad_tbox_tbox" + }, + { + "pg": "NAD_tnumber_tbox", + "meos": "nad_tnumber_tbox" + }, + { + "pg": "NAD_tnpoint_geo", + "meos": "nad_tnpoint_geo" + }, + { + "pg": "NAD_tnpoint_stbox", + "meos": "nad_tnpoint_stbox" + }, + { + "pg": "NAD_tnpoint_npoint", + "meos": "nad_tnpoint_npoint" + }, + { + "pg": "NAD_tnpoint_tnpoint", + "meos": "nad_tnpoint_tnpoint" + } + ] + }, + { + "name": "nearestApproachInstant", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "NAI_tcbuffer_geo", + "meos": "nai_tcbuffer_geo" + }, + { + "pg": "NAI_tcbuffer_cbuffer", + "meos": "nai_tcbuffer_cbuffer" + }, + { + "pg": "NAI_tcbuffer_tcbuffer", + "meos": "nai_tcbuffer_tcbuffer" + }, + { + "pg": "NAI_tpose_geo", + "meos": "nai_tpose_geo" + }, + { + "pg": "NAI_tpose_pose", + "meos": "nai_tpose_pose" + }, + { + "pg": "NAI_tpose_tpose", + "meos": "nai_tpose_tpose" + }, + { + "pg": "NAI_tgeo_geo", + "meos": "nai_tgeo_geo" + }, + { + "pg": "NAI_tgeo_tgeo", + "meos": "nai_tgeo_tgeo" + }, + { + "pg": "NAI_tnpoint_geo", + "meos": "nai_tnpoint_geo" + }, + { + "pg": "NAI_tnpoint_npoint", + "meos": "nai_tnpoint_npoint" + }, + { + "pg": "NAI_tnpoint_tnpoint", + "meos": "nai_tnpoint_tnpoint" + } + ] + }, + { + "name": "normalise", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_normalise", + "meos": "pose_normalise" + } + ] + }, + { + "name": "npoint", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Geompoint_to_npoint", + "meos": "geompoint_to_npoint" + }, + { + "pg": "Npoint_constructor", + "meos": "npoint_make" + } + ] + }, + { + "name": "npointFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npoint_cmp", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_cmp", + "meos": "npoint_cmp" + } + ] + }, + { + "name": "npoint_eq", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_eq", + "meos": "npoint_eq" + } + ] + }, + { + "name": "npoint_ge", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_ge", + "meos": "npoint_ge" + } + ] + }, + { + "name": "npoint_gt", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_gt", + "meos": "npoint_gt" + } + ] + }, + { + "name": "npoint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Npoint_in", + "meos": "npoint_in" + } + ] + }, + { + "name": "npoint_le", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_le", + "meos": "npoint_le" + } + ] + }, + { + "name": "npoint_lt", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_lt", + "meos": "npoint_lt" + } + ] + }, + { + "name": "npoint_ne", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Npoint_ne", + "meos": "npoint_ne" + } + ] + }, + { + "name": "npoint_out", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Npoint_out", + "meos": "npoint_out" + } + ] + }, + { + "name": "npoint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Npoint_recv", + "meos": "npoint_from_wkb" + }, + { + "pg": "Npoint_recv", + "meos": "npoint_as_wkb" + } + ] + }, + { + "name": "npoint_send", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointsetFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointsetFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointsetFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointset_out", + "overloads": [ + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointset_send", + "overloads": [ + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "npointset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "nsegment", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": true + }, + { + "type": "precision", + "hasDefault": true + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Nsegment_constructor", + "meos": "nsegment_make" + }, + { + "pg": "Npoint_to_nsegment", + "meos": "npoint_to_nsegment" + }, + { + "pg": "Geom_to_nsegment", + "meos": "geom_to_nsegment" + } + ] + }, + { + "name": "nsegment_cmp", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_cmp", + "meos": "nsegment_cmp" + } + ] + }, + { + "name": "nsegment_eq", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_eq", + "meos": "nsegment_eq" + } + ] + }, + { + "name": "nsegment_ge", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_ge", + "meos": "nsegment_ge" + } + ] + }, + { + "name": "nsegment_gt", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_gt", + "meos": "nsegment_gt" + } + ] + }, + { + "name": "nsegment_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Nsegment_in", + "meos": "nsegment_in" + } + ] + }, + { + "name": "nsegment_le", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_le", + "meos": "nsegment_le" + } + ] + }, + { + "name": "nsegment_lt", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_lt", + "meos": "nsegment_lt" + } + ] + }, + { + "name": "nsegment_ne", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Nsegment_ne", + "meos": "nsegment_ne" + } + ] + }, + { + "name": "nsegment_out", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Nsegment_out", + "meos": "nsegment_out" + } + ] + }, + { + "name": "nsegment_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "nsegment_send", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "numDates", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Datespanset_num_dates", + "meos": "datespanset_num_dates" + } + ] + }, + { + "name": "numInstants", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_num_instants", + "meos": "tsequenceset_num_instants" + }, + { + "pg": "Temporal_num_instants", + "meos": "temporal_num_instants" + } + ] + }, + { + "name": "numPoints", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "numSequences", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_num_sequences", + "meos": "temporal_num_sequences" + } + ] + }, + { + "name": "numSpans", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_num_spans", + "meos": "spanset_num_spans" + } + ] + }, + { + "name": "numTimestamps", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_num_timestamps", + "meos": "tsequenceset_num_timestamps" + }, + { + "pg": "Tstzspanset_num_timestamps", + "meos": "tstzspanset_num_timestamps" + }, + { + "pg": "Temporal_num_timestamps", + "meos": "temporal_num_timestamps" + } + ] + }, + { + "name": "numValues", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_num_values", + "meos": "set_num_values" + } + ] + }, + { + "name": "orientation", + "overloads": [ + { + "args": [ + { + "type": "tempSubtype(tpose", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "quaternion", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "overabove", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overafter", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overback", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overbefore", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overbelow", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overfront", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overlaps", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overlaps_rid", + "overloads": [ + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overleft", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "overright", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "path", + "overloads": [ + { + "args": [ + { + "type": "point[]", + "hasDefault": false + } + ], + "returns": "path", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcid", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pcpoint_pcid", + "meos": "pcpoint_get_pcid" + }, + { + "pg": "Pcpatch_pcid", + "meos": "pcpatch_hash" + } + ] + }, + { + "name": "pcpatch", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "pcpoint[]", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pcpatchsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchset_out", + "overloads": [ + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchset_send", + "overloads": [ + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpatchset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpoint", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "pcpointsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointset_out", + "overloads": [ + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointset_send", + "overloads": [ + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pcpointset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "perimeter", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pitch", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_pitch", + "meos": "pose_pitch" + } + ] + }, + { + "name": "point", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "point", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_point", + "meos": "cbuffer_point_p" + }, + { + "pg": "Cbuffer_point", + "meos": "cbuffer_point" + } + ] + }, + { + "name": "points", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "TABLE", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tcbuffer_points", + "meos": "tcbuffer_members" + }, + { + "pg": "Tcbuffer_points", + "meos": "tcbuffer_points" + }, + { + "pg": "Tcbuffer_points", + "meos": "tcbuffer_radius" + }, + { + "pg": "Tpose_points", + "meos": "tpose_points" + } + ] + }, + { + "name": "polygon", + "overloads": [ + { + "args": [ + { + "type": "point[]", + "hasDefault": false + } + ], + "returns": "polygon", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pose", + "overloads": [ + { + "args": [ + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "pose", + "minArity": 3, + "maxArity": 4 + }, + { + "args": [ + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "pose", + "minArity": 7, + "maxArity": 8 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + }, + { + "type": "precision", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "poseFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseFromGeoPose", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pose_cmp", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_eq", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_ge", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_gt", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_hash", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "pose_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_in", + "meos": "pose_in" + } + ] + }, + { + "name": "pose_le", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_lt", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_ne", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_out", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_out", + "meos": "pose_out" + } + ] + }, + { + "name": "pose_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_recv", + "meos": "pose_from_wkb" + }, + { + "pg": "Pose_recv", + "meos": "pose_as_wkb" + } + ] + }, + { + "name": "pose_same", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "pose_send", + "overloads": [ + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "posesetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "posesetFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "posesetFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "posesetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "posesetFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseset_out", + "overloads": [ + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseset_send", + "overloads": [ + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "poseset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "positions", + "overloads": [ + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "nsegment[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnpoint_positions", + "meos": "tnpoint_positions" + } + ] + }, + { + "name": "quadSplit", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "radians", + "overloads": [ + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Floatset_radians", + "meos": "floatset_radians" + }, + { + "pg": "Floatspanset_radians", + "meos": "floatspanset_radians" + }, + { + "pg": "Floatspan_radians", + "meos": "floatspan_radians" + }, + { + "pg": "Tfloat_radians", + "meos": "tfloat_radians" + } + ] + }, + { + "name": "radius", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_radius", + "meos": "cbuffer_radius" + } + ] + }, + { + "name": "range", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "int4range", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "int8range", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "daterange", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzrange", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "right", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "roll", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_roll", + "meos": "pose_roll" + } + ] + }, + { + "name": "rotate", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "rotateX", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "rotateY", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "rotateZ", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "rotation", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "round", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "trgeometry[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tcbuffer[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpose[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeompoint[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeogpoint[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeometry[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tgeography[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tfloat[]", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "nsegment", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_round", + "meos": "trgeometry_round" + }, + { + "pg": "Cbufferarr_round", + "meos": "cbufferarr_round" + }, + { + "pg": "Tpcbox_round", + "meos": "tpcbox_round" + }, + { + "pg": "Pose_round", + "meos": "pose_round" + }, + { + "pg": "Posearr_round", + "meos": "posearr_round" + }, + { + "pg": "Stbox_round", + "meos": "stbox_round" + }, + { + "pg": "Stboxarr_round", + "meos": "stboxarr_round" + }, + { + "pg": "Tbox_round", + "meos": "tbox_round" + }, + { + "pg": "Floatspanset_round", + "meos": "floatspanset_round" + } + ] + }, + { + "name": "route", + "overloads": [ + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnpoint_route", + "meos": "tnpoint_route" + }, + { + "pg": "Npoint_route", + "meos": "npoint_route" + }, + { + "pg": "Nsegment_route", + "meos": "nsegment_route" + } + ] + }, + { + "name": "routes", + "overloads": [ + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnpoint_routes", + "meos": "tnpoint_routes" + }, + { + "pg": "Npointset_routes", + "meos": "npointset_routes" + } + ] + }, + { + "name": "same", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "same_rid", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "scale", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tgeo_scale", + "meos": "tgeo_scale" + } + ] + }, + { + "name": "scaleTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_scale_time", + "meos": "temporal_scale_time" + } + ] + }, + { + "name": "scaleValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tnumber_scale_value", + "meos": "tint_scale_value" + }, + { + "pg": "Tnumber_scale_value", + "meos": "tbigint_scale_value" + }, + { + "pg": "Tnumber_scale_value", + "meos": "tfloat_scale_value" + } + ] + }, + { + "name": "segmentMaxDuration", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "segmentMinDuration", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "segments", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_segments", + "meos": "tsequence_segments" + }, + { + "pg": "Temporal_segments", + "meos": "tsequenceset_segments" + }, + { + "pg": "Temporal_segments", + "meos": "temporal_segments" + } + ] + }, + { + "name": "sequenceN", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_sequence_n", + "meos": "trgeometry_sequence_n" + }, + { + "pg": "Temporal_sequence_n", + "meos": "temporal_sequence_n" + } + ] + }, + { + "name": "sequences", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_sequences", + "meos": "trgeometry_sequences" + }, + { + "pg": "Temporal_sequences", + "meos": "tsequence_seqs" + }, + { + "pg": "Temporal_sequences", + "meos": "temporal_sequences_p" + }, + { + "pg": "Temporal_sequences", + "meos": "temporal_sequences" + } + ] + }, + { + "name": "set", + "overloads": [ + { + "args": [ + { + "type": "cbuffer[]", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint[]", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatch[]", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose[]", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry[]", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geography[]", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3index[]", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "integer[]", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigint[]", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float[]", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "text[]", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "date[]", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz[]", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npoint[]", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Set_constructor", + "meos": "cbufferset_make" + }, + { + "pg": "Value_to_set", + "meos": "cbuffer_to_set" + }, + { + "pg": "Set_constructor", + "meos": "pcpointset_make" + }, + { + "pg": "Value_to_set", + "meos": "pcpoint_to_set" + }, + { + "pg": "Set_constructor", + "meos": "pcpatchset_make" + }, + { + "pg": "Value_to_set", + "meos": "pcpatch_to_set" + }, + { + "pg": "Set_constructor", + "meos": "poseset_make" + }, + { + "pg": "Value_to_set", + "meos": "pose_to_set" + }, + { + "pg": "Set_constructor", + "meos": "geoset_make" + }, + { + "pg": "Value_to_set", + "meos": "geo_set" + }, + { + "pg": "Value_to_set", + "meos": "geo_to_set" + }, + { + "pg": "Set_constructor", + "meos": "intset_make" + }, + { + "pg": "Set_constructor", + "meos": "bigintset_make" + }, + { + "pg": "Set_constructor", + "meos": "floatset_make" + }, + { + "pg": "Set_constructor", + "meos": "textset_make" + }, + { + "pg": "Set_constructor", + "meos": "dateset_make" + }, + { + "pg": "Set_constructor", + "meos": "tstzset_make" + }, + { + "pg": "Value_to_set", + "meos": "int_to_set" + }, + { + "pg": "Value_to_set", + "meos": "bigint_to_set" + }, + { + "pg": "Value_to_set", + "meos": "float_to_set" + }, + { + "pg": "Value_to_set", + "meos": "text_to_set" + }, + { + "pg": "Value_to_set", + "meos": "date_to_set" + }, + { + "pg": "Value_to_set", + "meos": "timestamptz_to_set" + }, + { + "pg": "Set_constructor", + "meos": "npointset_make" + }, + { + "pg": "Value_to_set", + "meos": "npoint_to_set" + } + ] + }, + { + "name": "setInterp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_set_interp", + "meos": "trgeometry_set_interp" + }, + { + "pg": "Temporal_set_interp", + "meos": "tsequenceset_set_interp" + }, + { + "pg": "Temporal_set_interp", + "meos": "temporal_set_interp" + } + ] + }, + { + "name": "setSRID", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Cbuffer_set_srid", + "meos": "cbuffer_set_srid" + }, + { + "pg": "Tpcbox_set_srid", + "meos": "tpcbox_set_srid" + }, + { + "pg": "Stbox_set_srid", + "meos": "stbox_set_srid" + }, + { + "pg": "Spatialset_set_srid", + "meos": "spatialset_set_srid" + }, + { + "pg": "Tspatial_set_srid", + "meos": "tspatial_set_srid" + } + ] + }, + { + "name": "set_cmp", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_cmp", + "meos": "set_cmp" + } + ] + }, + { + "name": "set_contained", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contained_value_set", + "meos": "contained_cbuffer_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_pcpoint_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_pcpatch_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_pose_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_geo_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_int_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_bigint_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_float_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_text_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_date_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_timestamptz_set" + }, + { + "pg": "Contained_set_set", + "meos": "contained_set_set" + }, + { + "pg": "Contained_value_set", + "meos": "contained_npoint_set" + } + ] + }, + { + "name": "set_contains", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contains_set_value", + "meos": "contains_set_cbuffer" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_pcpoint" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_pcpatch" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_pose" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_geo" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_int" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_bigint" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_float" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_text" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_date" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_timestamptz" + }, + { + "pg": "Contains_set_set", + "meos": "contains_set_set" + }, + { + "pg": "Contains_set_value", + "meos": "contains_set_npoint" + } + ] + }, + { + "name": "set_distance", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Distance_set_value", + "meos": "distance_set_int" + }, + { + "pg": "Distance_set_value", + "meos": "distance_set_bigint" + }, + { + "pg": "Distance_set_value", + "meos": "distance_set_float" + }, + { + "pg": "Distance_set_value", + "meos": "distance_set_date" + }, + { + "pg": "Distance_set_value", + "meos": "distance_set_timestamptz" + }, + { + "pg": "Distance_set_set", + "meos": "distance_intset_intset" + }, + { + "pg": "Distance_set_set", + "meos": "distance_bigintset_bigintset" + }, + { + "pg": "Distance_set_set", + "meos": "distance_floatset_floatset" + }, + { + "pg": "Distance_set_set", + "meos": "distance_dateset_dateset" + }, + { + "pg": "Distance_set_set", + "meos": "distance_tstzset_tstzset" + }, + { + "pg": "Distance_set_set", + "meos": "distance_set_set" + } + ] + }, + { + "name": "set_eq", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_eq", + "meos": "set_eq" + } + ] + }, + { + "name": "set_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "set_ge", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_ge", + "meos": "set_ge" + } + ] + }, + { + "name": "set_gin_extract_query", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 7, + "maxArity": 7 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 7, + "maxArity": 7 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 7, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "set_gin_extract_value", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "set_gin_triconsistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "char", + "minArity": 7, + "maxArity": 7 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "char", + "minArity": 7, + "maxArity": 7 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "char", + "minArity": 7, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "set_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "set_gt", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_gt", + "meos": "set_gt" + } + ] + }, + { + "name": "set_hash", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "set_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "set_intersection", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Intersection_set_value", + "meos": "intersection_set_cbuffer" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_pcpoint" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_pcpoint_set" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_pcpatch" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_pcpatch_set" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_pose" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_geo" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_int" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_bigint" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_float" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_text" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_date" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_timestamptz" + }, + { + "pg": "Intersection_set_set", + "meos": "intersection_set_set" + }, + { + "pg": "Intersection_set_value", + "meos": "intersection_set_npoint" + } + ] + }, + { + "name": "set_le", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_le", + "meos": "set_le" + } + ] + }, + { + "name": "set_left", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Left_value_set", + "meos": "left_int_set" + }, + { + "pg": "Left_value_set", + "meos": "left_bigint_set" + }, + { + "pg": "Left_value_set", + "meos": "left_float_set" + }, + { + "pg": "Left_value_set", + "meos": "left_text_set" + }, + { + "pg": "Left_value_set", + "meos": "before_date_set" + }, + { + "pg": "Left_value_set", + "meos": "before_timestamptz_set" + }, + { + "pg": "Left_set_value", + "meos": "left_set_int" + }, + { + "pg": "Left_set_value", + "meos": "left_set_bigint" + }, + { + "pg": "Left_set_value", + "meos": "left_set_float" + }, + { + "pg": "Left_set_value", + "meos": "left_set_text" + }, + { + "pg": "Left_set_value", + "meos": "before_set_date" + }, + { + "pg": "Left_set_value", + "meos": "before_set_timestamptz" + }, + { + "pg": "Left_set_set", + "meos": "left_set_set" + } + ] + }, + { + "name": "set_lt", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_lt", + "meos": "set_lt" + } + ] + }, + { + "name": "set_minus", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Minus_value_set", + "meos": "minus_cbuffer_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_cbuffer" + }, + { + "pg": "Minus_value_set", + "meos": "minus_pcpoint_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_pcpoint" + }, + { + "pg": "Minus_value_set", + "meos": "minus_pcpatch_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_pcpatch" + }, + { + "pg": "Minus_value_set", + "meos": "minus_pose_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_pose" + }, + { + "pg": "Minus_value_set", + "meos": "minus_geo_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_geo" + }, + { + "pg": "Minus_value_set", + "meos": "minus_int_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_bigint_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_float_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_text_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_date_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_timestamptz_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_int" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_bigint" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_float" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_text" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_date" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_timestamptz" + }, + { + "pg": "Minus_set_set", + "meos": "minus_set_set" + }, + { + "pg": "Minus_value_set", + "meos": "minus_npoint_set" + }, + { + "pg": "Minus_set_value", + "meos": "minus_set_npoint" + } + ] + }, + { + "name": "set_ne", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Set_ne", + "meos": "set_ne" + } + ] + }, + { + "name": "set_overlaps", + "overloads": [ + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overlaps_set_set", + "meos": "overlaps_set_set" + } + ] + }, + { + "name": "set_overleft", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overleft_value_set", + "meos": "overleft_int_set" + }, + { + "pg": "Overleft_value_set", + "meos": "overleft_bigint_set" + }, + { + "pg": "Overleft_value_set", + "meos": "overleft_float_set" + }, + { + "pg": "Overleft_value_set", + "meos": "overleft_text_set" + }, + { + "pg": "Overleft_value_set", + "meos": "overbefore_date_set" + }, + { + "pg": "Overleft_value_set", + "meos": "overbefore_timestamptz_set" + }, + { + "pg": "Overleft_set_value", + "meos": "overleft_set_int" + }, + { + "pg": "Overleft_set_value", + "meos": "overleft_set_bigint" + }, + { + "pg": "Overleft_set_value", + "meos": "overleft_set_float" + }, + { + "pg": "Overleft_set_value", + "meos": "overleft_set_text" + }, + { + "pg": "Overleft_set_value", + "meos": "overbefore_set_date" + }, + { + "pg": "Overleft_set_value", + "meos": "overbefore_set_timestamptz" + }, + { + "pg": "Overleft_set_set", + "meos": "overleft_set_set" + } + ] + }, + { + "name": "set_overright", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overright_value_set", + "meos": "overright_int_set" + }, + { + "pg": "Overright_value_set", + "meos": "overright_bigint_set" + }, + { + "pg": "Overright_value_set", + "meos": "overright_float_set" + }, + { + "pg": "Overright_value_set", + "meos": "overright_text_set" + }, + { + "pg": "Overright_value_set", + "meos": "overafter_date_set" + }, + { + "pg": "Overright_value_set", + "meos": "overafter_timestamptz_set" + }, + { + "pg": "Overright_set_value", + "meos": "overright_set_int" + }, + { + "pg": "Overright_set_value", + "meos": "overright_set_bigint" + }, + { + "pg": "Overright_set_value", + "meos": "overright_set_float" + }, + { + "pg": "Overright_set_value", + "meos": "overright_set_text" + }, + { + "pg": "Overright_set_value", + "meos": "overafter_set_date" + }, + { + "pg": "Overright_set_value", + "meos": "overafter_set_timestamptz" + }, + { + "pg": "Overright_set_set", + "meos": "overright_set_set" + } + ] + }, + { + "name": "set_right", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Right_value_set", + "meos": "right_int_set" + }, + { + "pg": "Right_value_set", + "meos": "right_bigint_set" + }, + { + "pg": "Right_value_set", + "meos": "right_float_set" + }, + { + "pg": "Right_value_set", + "meos": "right_text_set" + }, + { + "pg": "Right_value_set", + "meos": "after_date_set" + }, + { + "pg": "Right_value_set", + "meos": "after_timestamptz_set" + }, + { + "pg": "Right_set_value", + "meos": "right_set_int" + }, + { + "pg": "Right_set_value", + "meos": "right_set_bigint" + }, + { + "pg": "Right_set_value", + "meos": "right_set_float" + }, + { + "pg": "Right_set_value", + "meos": "right_set_text" + }, + { + "pg": "Right_set_value", + "meos": "after_set_date" + }, + { + "pg": "Right_set_value", + "meos": "after_set_timestamptz" + }, + { + "pg": "Right_set_set", + "meos": "right_set_set" + } + ] + }, + { + "name": "set_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "set_union", + "overloads": [ + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatchset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3indexset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npointset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Union_set_value", + "meos": "union_set_cbuffer" + }, + { + "pg": "Union_set_value", + "meos": "union_cbuffer_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_cbuffer_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_pcpoint" + }, + { + "pg": "Union_set_value", + "meos": "union_pcpoint_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_pcpatch" + }, + { + "pg": "Union_set_value", + "meos": "union_pcpatch_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_pose" + }, + { + "pg": "Union_set_value", + "meos": "union_pose_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_pose_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_geo" + }, + { + "pg": "Union_set_value", + "meos": "union_geo_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_geo_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_int" + }, + { + "pg": "Union_set_value", + "meos": "union_set_bigint" + }, + { + "pg": "Union_set_value", + "meos": "union_set_float" + }, + { + "pg": "Union_set_value", + "meos": "union_set_text" + }, + { + "pg": "Union_set_value", + "meos": "union_set_date" + }, + { + "pg": "Union_set_value", + "meos": "union_set_timestamptz" + }, + { + "pg": "Union_set_value", + "meos": "union_int_set" + }, + { + "pg": "Union_set_value", + "meos": "union_bigint_set" + }, + { + "pg": "Union_set_value", + "meos": "union_float_set" + }, + { + "pg": "Union_set_value", + "meos": "union_text_set" + }, + { + "pg": "Union_set_value", + "meos": "union_date_set" + }, + { + "pg": "Union_set_value", + "meos": "union_timestamptz_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_int_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_bigint_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_float_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_text_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_date_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_timestamptz_set" + }, + { + "pg": "Union_set_set", + "meos": "union_set_set" + }, + { + "pg": "Union_set_value", + "meos": "union_set_npoint" + }, + { + "pg": "Union_set_value", + "meos": "union_npoint_set" + }, + { + "pg": "Union_set_value", + "meos": "intersection_npoint_set" + } + ] + }, + { + "name": "set_union_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "shift", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Numset_shift", + "meos": "intset_shift_scale" + }, + { + "pg": "Numset_shift", + "meos": "bigintset_shift_scale" + }, + { + "pg": "Numset_shift", + "meos": "floatset_shift_scale" + }, + { + "pg": "Numset_shift", + "meos": "dateset_shift_scale" + }, + { + "pg": "Tstzset_shift", + "meos": "tstzset_shift_scale" + }, + { + "pg": "Numspan_shift", + "meos": "intspan_shift_scale" + }, + { + "pg": "Numspan_shift", + "meos": "bigintspan_shift_scale" + }, + { + "pg": "Numspan_shift", + "meos": "floatspan_shift_scale" + }, + { + "pg": "Numspan_shift", + "meos": "datespan_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "intspanset_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "bigintspanset_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "floatspanset_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "datespanset_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "numspanset_shift_scale" + }, + { + "pg": "Numspanset_shift", + "meos": "tstzspanset_shift_scale" + }, + { + "pg": "Numspan_expand", + "meos": "numspan_expand" + }, + { + "pg": "Numspan_expand", + "meos": "intspan_expand" + }, + { + "pg": "Numspan_expand", + "meos": "bigintspan_expand" + }, + { + "pg": "Numspan_expand", + "meos": "floatspan_expand" + }, + { + "pg": "Timestamptz_shift", + "meos": "timestamptz_shift" + }, + { + "pg": "Tstzspan_shift", + "meos": "tstzspan_shift_scale" + } + ] + }, + { + "name": "shiftScale", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "dateset", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "shiftScaleTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "shiftScaleValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tnumber_shift_scale_value", + "meos": "tint_shift_scale_value" + }, + { + "pg": "Tnumber_shift_scale_value", + "meos": "tbigint_shift_scale_value" + }, + { + "pg": "Tnumber_shift_scale_value", + "meos": "tfloat_shift_scale_value" + } + ] + }, + { + "name": "shiftTime", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_shift_time", + "meos": "stbox_shift_scale_time" + }, + { + "pg": "Tbox_shift_time", + "meos": "tbox_shift_scale_time" + }, + { + "pg": "Temporal_shift_time", + "meos": "tinstant_shift_time" + }, + { + "pg": "Temporal_shift_time", + "meos": "tsequence_shift_scale_time" + }, + { + "pg": "Temporal_shift_time", + "meos": "tsequenceset_shift_scale_time" + }, + { + "pg": "Temporal_shift_time", + "meos": "temporal_shift_scale_time" + }, + { + "pg": "Temporal_shift_time", + "meos": "temporal_shift_time" + } + ] + }, + { + "name": "shiftValue", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_shift_value", + "meos": "tintbox_shift_scale" + }, + { + "pg": "Tbox_shift_value", + "meos": "tbigintbox_shift_scale" + }, + { + "pg": "Tbox_shift_value", + "meos": "tfloatbox_shift_scale" + }, + { + "pg": "Tnumber_shift_value", + "meos": "tnumberseqset_shift_scale_value" + }, + { + "pg": "Tnumber_shift_value", + "meos": "tint_shift_value" + }, + { + "pg": "Tnumber_shift_value", + "meos": "tbigint_shift_value" + }, + { + "pg": "Tnumber_shift_value", + "meos": "tfloat_shift_value" + }, + { + "pg": "Tnumber_shift_value", + "meos": "tnumber_shift_scale_value" + } + ] + }, + { + "name": "shortestLine", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Shortestline_tcbuffer_geo", + "meos": "shortestline_tcbuffer_geo" + }, + { + "pg": "Shortestline_tcbuffer_cbuffer", + "meos": "shortestline_tcbuffer_cbuffer" + }, + { + "pg": "Shortestline_tcbuffer_tcbuffer", + "meos": "shortestline_tcbuffer_tcbuffer" + }, + { + "pg": "Shortestline_tpose_geo", + "meos": "shortestline_tpose_geo" + }, + { + "pg": "Shortestline_tpose_pose", + "meos": "shortestline_tpose_pose" + }, + { + "pg": "Shortestline_tpose_tpose", + "meos": "shortestline_tpose_tpose" + }, + { + "pg": "Shortestline_tgeo_geo", + "meos": "shortestline_tgeo_geo" + }, + { + "pg": "Shortestline_tgeo_tgeo", + "meos": "shortestline_tgeo_tgeo" + }, + { + "pg": "Shortestline_tnpoint_geo", + "meos": "shortestline_tnpoint_geo" + }, + { + "pg": "Shortestline_tnpoint_npoint", + "meos": "shortestline_tnpoint_npoint" + }, + { + "pg": "Shortestline_tnpoint_tnpoint", + "meos": "shortestline_tnpoint_tnpoint" + } + ] + }, + { + "name": "spaceBoxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 6 + } + ], + "c": [ + { + "pg": "Trgeometry_space_boxes", + "meos": "trgeometry_space_boxes" + } + ] + }, + { + "name": "spaceSplit", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + } + ], + "c": [] + }, + { + "name": "spaceTiles", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 6 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + } + ], + "c": [ + { + "pg": "Stbox_space_tiles", + "meos": "stbox_space_tiles" + } + ] + }, + { + "name": "spaceTimeBoxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 4, + "maxArity": 8 + } + ], + "c": [ + { + "pg": "Trgeometry_space_time_boxes", + "meos": "trgeometry_space_time_boxes" + } + ] + }, + { + "name": "spaceTimeSplit", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 9 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 8 + } + ], + "c": [] + }, + { + "name": "spaceTimeTiles", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 8 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 5, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 4, + "maxArity": 7 + } + ], + "c": [ + { + "pg": "Stbox_space_time_tiles", + "meos": "stbox_space_time_tiles" + } + ] + }, + { + "name": "span", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "int4range", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "int8range", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "daterange", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzrange", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Value_to_span", + "meos": "int_to_span" + }, + { + "pg": "Value_to_span", + "meos": "bigint_to_span" + }, + { + "pg": "Value_to_span", + "meos": "float_to_span" + }, + { + "pg": "Value_to_span", + "meos": "date_to_span" + }, + { + "pg": "Value_to_span", + "meos": "timestamptz_to_span" + }, + { + "pg": "Spanset_to_span", + "meos": "span_to_spanset" + }, + { + "pg": "Spanset_to_span", + "meos": "spanset_span" + }, + { + "pg": "Set_to_span", + "meos": "set_span" + }, + { + "pg": "Set_to_span", + "meos": "set_to_span" + } + ] + }, + { + "name": "spanN", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_span_n", + "meos": "spanset_span_n" + } + ] + }, + { + "name": "span_adjacent", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Adjacent_span_value", + "meos": "adjacent_span_int" + }, + { + "pg": "Adjacent_span_value", + "meos": "adjacent_span_bigint" + }, + { + "pg": "Adjacent_span_value", + "meos": "adjacent_span_float" + }, + { + "pg": "Adjacent_span_value", + "meos": "adjacent_span_date" + }, + { + "pg": "Adjacent_span_value", + "meos": "adjacent_span_timestamptz" + }, + { + "pg": "Adjacent_spanset_span", + "meos": "adjacent_spanset_span" + }, + { + "pg": "Adjacent_span_spanset", + "meos": "adjacent_span_spanset" + }, + { + "pg": "Adjacent_spanset_spanset", + "meos": "adjacent_spanset_spanset" + }, + { + "pg": "Adjacent_span_span", + "meos": "adjacent_span_span" + }, + { + "pg": "Adjacent_spanset_value", + "meos": "adjacent_spanset_int" + }, + { + "pg": "Adjacent_spanset_value", + "meos": "adjacent_spanset_bigint" + }, + { + "pg": "Adjacent_spanset_value", + "meos": "adjacent_spanset_float" + }, + { + "pg": "Adjacent_spanset_value", + "meos": "adjacent_spanset_date" + }, + { + "pg": "Adjacent_spanset_value", + "meos": "adjacent_spanset_timestamptz" + } + ] + }, + { + "name": "span_analyze", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "span_cmp", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_cmp", + "meos": "span_cmp" + } + ] + }, + { + "name": "span_contained", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contained_value_span", + "meos": "contained_int_span" + }, + { + "pg": "Contained_value_span", + "meos": "contained_bigint_span" + }, + { + "pg": "Contained_value_span", + "meos": "contained_float_span" + }, + { + "pg": "Contained_value_span", + "meos": "contained_date_span" + }, + { + "pg": "Contained_value_span", + "meos": "contained_timestamptz_span" + }, + { + "pg": "Contained_span_spanset", + "meos": "contained_span_spanset" + }, + { + "pg": "Contained_spanset_span", + "meos": "contained_spanset_span" + }, + { + "pg": "Contained_spanset_spanset", + "meos": "contained_spanset_spanset" + }, + { + "pg": "Contained_value_span", + "meos": "contained_span_span" + }, + { + "pg": "Contained_value_spanset", + "meos": "contained_int_spanset" + }, + { + "pg": "Contained_value_spanset", + "meos": "contained_bigint_spanset" + }, + { + "pg": "Contained_value_spanset", + "meos": "contained_float_spanset" + }, + { + "pg": "Contained_value_spanset", + "meos": "contained_date_spanset" + }, + { + "pg": "Contained_value_spanset", + "meos": "contained_timestamptz_spanset" + } + ] + }, + { + "name": "span_contains", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contains_span_value", + "meos": "contains_span_int" + }, + { + "pg": "Contains_span_value", + "meos": "contains_span_bigint" + }, + { + "pg": "Contains_span_value", + "meos": "contains_span_float" + }, + { + "pg": "Contains_span_value", + "meos": "contains_span_date" + }, + { + "pg": "Contains_spanset_value", + "meos": "contains_spanset_timestamptz" + }, + { + "pg": "Contains_spanset_span", + "meos": "contains_spanset_span" + }, + { + "pg": "Contains_span_spanset", + "meos": "contains_span_spanset" + }, + { + "pg": "Contains_spanset_spanset", + "meos": "contains_spanset_spanset" + }, + { + "pg": "Contains_span_value", + "meos": "contains_span_timestamptz" + }, + { + "pg": "Contains_span_span", + "meos": "contains_span_span" + }, + { + "pg": "Contains_spanset_value", + "meos": "contains_spanset_int" + }, + { + "pg": "Contains_spanset_value", + "meos": "contains_spanset_bigint" + }, + { + "pg": "Contains_spanset_value", + "meos": "contains_spanset_float" + }, + { + "pg": "Contains_spanset_value", + "meos": "contains_spanset_date" + } + ] + }, + { + "name": "span_distance", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Distance_span_value", + "meos": "distance_span_int" + }, + { + "pg": "Distance_span_value", + "meos": "distance_span_bigint" + }, + { + "pg": "Distance_span_value", + "meos": "distance_span_float" + }, + { + "pg": "Distance_span_value", + "meos": "distance_span_date" + }, + { + "pg": "Distance_span_value", + "meos": "distance_span_timestamptz" + }, + { + "pg": "Distance_span_span", + "meos": "distance_intspan_intspan" + }, + { + "pg": "Distance_span_span", + "meos": "distance_bigintspan_bigintspan" + }, + { + "pg": "Distance_span_span", + "meos": "distance_floatspan_floatspan" + }, + { + "pg": "Distance_span_span", + "meos": "distance_datespan_datespan" + }, + { + "pg": "Distance_span_span", + "meos": "distance_tstzspan_tstzspan" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_spanset_span" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_spanset_spanset" + }, + { + "pg": "Distance_span_span", + "meos": "distance_span_span" + }, + { + "pg": "Distance_spanset_value", + "meos": "distance_spanset_int" + }, + { + "pg": "Distance_spanset_value", + "meos": "distance_spanset_bigint" + }, + { + "pg": "Distance_spanset_value", + "meos": "distance_spanset_float" + }, + { + "pg": "Distance_spanset_value", + "meos": "distance_spanset_date" + }, + { + "pg": "Distance_spanset_value", + "meos": "distance_spanset_timestamptz" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_intspanset_intspan" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_bigintspanset_bigintspan" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_floatspanset_floatspan" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_datespanset_datespan" + }, + { + "pg": "Distance_spanset_span", + "meos": "distance_tstzspanset_tstzspan" + }, + { + "pg": "Distance_spanset_spanset", + "meos": "distance_intspanset_intspanset" + }, + { + "pg": "Distance_spanset_spanset", + "meos": "distance_bigintspanset_bigintspanset" + }, + { + "pg": "Distance_spanset_spanset", + "meos": "distance_floatspanset_floatspanset" + }, + { + "pg": "Distance_spanset_spanset", + "meos": "distance_datespanset_datespanset" + }, + { + "pg": "Distance_spanset_spanset", + "meos": "distance_tstzspanset_tstzspanset" + } + ] + }, + { + "name": "span_eq", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_eq", + "meos": "span_eq" + } + ] + }, + { + "name": "span_extent_combinefn", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_ge", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_ge", + "meos": "span_gt" + } + ] + }, + { + "name": "span_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "span_gist_distance", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "span_gist_fetch", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "span_gist_penalty", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "span_gist_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_gist_same", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "span_gist_union", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_gt", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_gt", + "meos": "span_ge" + } + ] + }, + { + "name": "span_hash", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Span_hash", + "meos": "span_hash" + } + ] + }, + { + "name": "span_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_intersection", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Intersection_span_value", + "meos": "intersection_span_int" + }, + { + "pg": "Intersection_span_value", + "meos": "intersection_span_bigint" + }, + { + "pg": "Intersection_span_value", + "meos": "intersection_span_float" + }, + { + "pg": "Intersection_span_value", + "meos": "intersection_span_date" + }, + { + "pg": "Intersection_span_value", + "meos": "intersection_span_timestamptz" + }, + { + "pg": "Minus_value_span", + "meos": "minus_int_span" + }, + { + "pg": "Minus_value_span", + "meos": "minus_bigint_span" + }, + { + "pg": "Minus_value_span", + "meos": "minus_float_span" + }, + { + "pg": "Minus_value_span", + "meos": "minus_date_span" + }, + { + "pg": "Minus_value_span", + "meos": "minus_timestamptz_span" + }, + { + "pg": "Minus_span_value", + "meos": "minus_span_int" + }, + { + "pg": "Minus_span_value", + "meos": "minus_span_bigint" + }, + { + "pg": "Minus_span_value", + "meos": "minus_span_float" + }, + { + "pg": "Minus_span_value", + "meos": "minus_span_date" + }, + { + "pg": "Minus_span_value", + "meos": "minus_span_timestamptz" + }, + { + "pg": "Intersection_spanset_span", + "meos": "intersection_spanset_span" + }, + { + "pg": "Intersection_span_spanset", + "meos": "intersection_span_spanset" + }, + { + "pg": "Intersection_spanset_spanset", + "meos": "intersection_spanset_spanset" + }, + { + "pg": "Intersection_span_span", + "meos": "intersection_span_span" + }, + { + "pg": "Intersection_spanset_value", + "meos": "intersection_spanset_int" + }, + { + "pg": "Intersection_spanset_value", + "meos": "intersection_spanset_bigint" + }, + { + "pg": "Intersection_spanset_value", + "meos": "intersection_spanset_float" + }, + { + "pg": "Intersection_spanset_value", + "meos": "intersection_spanset_date" + }, + { + "pg": "Intersection_spanset_value", + "meos": "intersection_spanset_timestamptz" + } + ] + }, + { + "name": "span_joinsel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "span_kdtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_kdtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_kdtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_le", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_le", + "meos": "span_le" + } + ] + }, + { + "name": "span_left", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Left_value_span", + "meos": "left_int_span" + }, + { + "pg": "Left_value_span", + "meos": "left_bigint_span" + }, + { + "pg": "Left_value_span", + "meos": "left_float_span" + }, + { + "pg": "Left_value_span", + "meos": "before_date_span" + }, + { + "pg": "Left_value_span", + "meos": "before_timestamptz_span" + }, + { + "pg": "Left_span_value", + "meos": "left_span_int" + }, + { + "pg": "Left_span_value", + "meos": "left_span_bigint" + }, + { + "pg": "Left_span_value", + "meos": "left_span_float" + }, + { + "pg": "Left_span_value", + "meos": "before_span_date" + }, + { + "pg": "Left_span_value", + "meos": "before_span_timestamptz" + }, + { + "pg": "Left_span_spanset", + "meos": "left_span_spanset" + }, + { + "pg": "Left_spanset_span", + "meos": "left_spanset_span" + }, + { + "pg": "Left_spanset_spanset", + "meos": "left_spanset_spanset" + }, + { + "pg": "Left_span_span", + "meos": "left_span_span" + }, + { + "pg": "Left_value_spanset", + "meos": "left_int_spanset" + }, + { + "pg": "Left_value_spanset", + "meos": "left_bigint_spanset" + }, + { + "pg": "Left_value_spanset", + "meos": "left_float_spanset" + }, + { + "pg": "Left_value_spanset", + "meos": "before_date_spanset" + }, + { + "pg": "Left_value_spanset", + "meos": "before_timestamptz_spanset" + }, + { + "pg": "Left_spanset_value", + "meos": "left_spanset_int" + }, + { + "pg": "Left_spanset_value", + "meos": "left_spanset_bigint" + }, + { + "pg": "Left_spanset_value", + "meos": "left_spanset_float" + }, + { + "pg": "Left_spanset_value", + "meos": "before_spanset_date" + }, + { + "pg": "Left_spanset_value", + "meos": "before_spanset_timestamptz" + } + ] + }, + { + "name": "span_lt", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_lt", + "meos": "span_lt" + } + ] + }, + { + "name": "span_minus", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Minus_span_spanset", + "meos": "minus_span_spanset" + }, + { + "pg": "Minus_spanset_span", + "meos": "minus_spanset_span" + }, + { + "pg": "Minus_spanset_spanset", + "meos": "minus_spanset_spanset" + }, + { + "pg": "Minus_value_spanset", + "meos": "minus_int_spanset" + }, + { + "pg": "Minus_value_spanset", + "meos": "minus_bigint_spanset" + }, + { + "pg": "Minus_value_spanset", + "meos": "minus_float_spanset" + }, + { + "pg": "Minus_value_spanset", + "meos": "minus_date_spanset" + }, + { + "pg": "Minus_value_spanset", + "meos": "minus_timestamptz_spanset" + }, + { + "pg": "Minus_spanset_value", + "meos": "minus_spanset_int" + }, + { + "pg": "Minus_spanset_value", + "meos": "minus_spanset_bigint" + }, + { + "pg": "Minus_spanset_value", + "meos": "minus_spanset_float" + }, + { + "pg": "Minus_spanset_value", + "meos": "minus_spanset_date" + }, + { + "pg": "Minus_spanset_value", + "meos": "minus_spanset_timestamptz" + } + ] + }, + { + "name": "span_ne", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Span_ne", + "meos": "span_ne" + } + ] + }, + { + "name": "span_overlaps", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overlaps_spanset_span", + "meos": "overlaps_spanset_span" + }, + { + "pg": "Overlaps_span_spanset", + "meos": "overlaps_span_spanset" + }, + { + "pg": "Overlaps_spanset_spanset", + "meos": "overlaps_spanset_spanset" + }, + { + "pg": "Overlaps_span_span", + "meos": "overlaps_span_span" + } + ] + }, + { + "name": "span_overleft", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overleft_value_span", + "meos": "overleft_int_span" + }, + { + "pg": "Overleft_value_span", + "meos": "overleft_bigint_span" + }, + { + "pg": "Overleft_value_span", + "meos": "overleft_float_span" + }, + { + "pg": "Overleft_value_span", + "meos": "overbefore_date_span" + }, + { + "pg": "Overleft_value_span", + "meos": "overbefore_timestamptz_span" + }, + { + "pg": "Overleft_span_value", + "meos": "overleft_span_int" + }, + { + "pg": "Overleft_span_value", + "meos": "overleft_span_bigint" + }, + { + "pg": "Overleft_span_value", + "meos": "overleft_span_float" + }, + { + "pg": "Overleft_span_value", + "meos": "overbefore_span_date" + }, + { + "pg": "Overleft_span_value", + "meos": "overbefore_span_timestamptz" + }, + { + "pg": "Overleft_span_spanset", + "meos": "overleft_span_spanset" + }, + { + "pg": "Overleft_spanset_span", + "meos": "overleft_spanset_span" + }, + { + "pg": "Overleft_spanset_spanset", + "meos": "overleft_spanset_spanset" + }, + { + "pg": "Overleft_span_span", + "meos": "overleft_span_span" + }, + { + "pg": "Overleft_spanset_value", + "meos": "overleft_spanset_int" + }, + { + "pg": "Overleft_spanset_value", + "meos": "overleft_spanset_bigint" + }, + { + "pg": "Overleft_spanset_value", + "meos": "overleft_spanset_float" + }, + { + "pg": "Overleft_spanset_value", + "meos": "overbefore_spanset_date" + }, + { + "pg": "Overleft_spanset_value", + "meos": "overbefore_spanset_timestamptz" + }, + { + "pg": "Overleft_value_spanset", + "meos": "overleft_int_spanset" + }, + { + "pg": "Overleft_value_spanset", + "meos": "overleft_bigint_spanset" + }, + { + "pg": "Overleft_value_spanset", + "meos": "overleft_float_spanset" + }, + { + "pg": "Overleft_value_spanset", + "meos": "overbefore_date_spanset" + }, + { + "pg": "Overleft_value_spanset", + "meos": "overbefore_timestamptz_spanset" + } + ] + }, + { + "name": "span_overright", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overright_value_span", + "meos": "overright_int_span" + }, + { + "pg": "Overright_value_span", + "meos": "overright_bigint_span" + }, + { + "pg": "Overright_value_span", + "meos": "overright_float_span" + }, + { + "pg": "Overright_value_span", + "meos": "overafter_date_span" + }, + { + "pg": "Overright_value_span", + "meos": "overafter_timestamptz_span" + }, + { + "pg": "Overright_span_value", + "meos": "overright_span_int" + }, + { + "pg": "Overright_span_value", + "meos": "overright_span_bigint" + }, + { + "pg": "Overright_span_value", + "meos": "overright_span_float" + }, + { + "pg": "Overright_span_value", + "meos": "overafter_span_date" + }, + { + "pg": "Overright_span_value", + "meos": "overafter_span_timestamptz" + }, + { + "pg": "Overright_span_spanset", + "meos": "overright_span_spanset" + }, + { + "pg": "Overright_spanset_span", + "meos": "overright_spanset_span" + }, + { + "pg": "Overright_spanset_spanset", + "meos": "overright_spanset_spanset" + }, + { + "pg": "Overright_span_span", + "meos": "overright_span_span" + }, + { + "pg": "Overright_value_spanset", + "meos": "overright_int_spanset" + }, + { + "pg": "Overright_value_spanset", + "meos": "overright_bigint_spanset" + }, + { + "pg": "Overright_value_spanset", + "meos": "overright_float_spanset" + }, + { + "pg": "Overright_value_spanset", + "meos": "overafter_date_spanset" + }, + { + "pg": "Overright_value_spanset", + "meos": "overafter_timestamptz_spanset" + }, + { + "pg": "Overright_spanset_value", + "meos": "overright_spanset_int" + }, + { + "pg": "Overright_spanset_value", + "meos": "overright_spanset_bigint" + }, + { + "pg": "Overright_spanset_value", + "meos": "overright_spanset_float" + }, + { + "pg": "Overright_spanset_value", + "meos": "overafter_spanset_date" + }, + { + "pg": "Overright_spanset_value", + "meos": "overafter_spanset_timestamptz" + } + ] + }, + { + "name": "span_quadtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_quadtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_quadtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_right", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Right_value_span", + "meos": "right_int_span" + }, + { + "pg": "Right_value_span", + "meos": "right_bigint_span" + }, + { + "pg": "Right_value_span", + "meos": "right_float_span" + }, + { + "pg": "Right_value_span", + "meos": "after_date_span" + }, + { + "pg": "Right_value_span", + "meos": "after_timestamptz_span" + }, + { + "pg": "Right_span_value", + "meos": "right_span_int" + }, + { + "pg": "Right_span_value", + "meos": "right_span_bigint" + }, + { + "pg": "Right_span_value", + "meos": "right_span_float" + }, + { + "pg": "Right_span_value", + "meos": "after_span_date" + }, + { + "pg": "Right_span_value", + "meos": "after_span_timestamptz" + }, + { + "pg": "Right_span_spanset", + "meos": "right_span_spanset" + }, + { + "pg": "Right_spanset_span", + "meos": "right_spanset_span" + }, + { + "pg": "Right_spanset_spanset", + "meos": "right_spanset_spanset" + }, + { + "pg": "Right_span_span", + "meos": "right_span_span" + }, + { + "pg": "Right_value_spanset", + "meos": "right_int_spanset" + }, + { + "pg": "Right_value_spanset", + "meos": "right_bigint_spanset" + }, + { + "pg": "Right_value_spanset", + "meos": "right_float_spanset" + }, + { + "pg": "Right_value_spanset", + "meos": "after_date_spanset" + }, + { + "pg": "Right_value_spanset", + "meos": "after_timestamptz_spanset" + }, + { + "pg": "Right_spanset_value", + "meos": "right_spanset_int" + }, + { + "pg": "Right_spanset_value", + "meos": "right_spanset_bigint" + }, + { + "pg": "Right_spanset_value", + "meos": "right_spanset_float" + }, + { + "pg": "Right_spanset_value", + "meos": "after_spanset_date" + }, + { + "pg": "Right_spanset_value", + "meos": "after_spanset_timestamptz" + } + ] + }, + { + "name": "span_sel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "span_spgist_leaf_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "span_union", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Union_spanset_span", + "meos": "union_spanset_span" + }, + { + "pg": "Union_span_spanset", + "meos": "union_span_spanset" + }, + { + "pg": "Union_spanset_spanset", + "meos": "union_spanset_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_int_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_bigint_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_float_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_date_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_timestamptz_spanset" + }, + { + "pg": "Union_spanset_value", + "meos": "union_spanset_int" + }, + { + "pg": "Union_spanset_value", + "meos": "union_spanset_bigint" + }, + { + "pg": "Union_spanset_value", + "meos": "union_spanset_float" + }, + { + "pg": "Union_spanset_value", + "meos": "union_spanset_date" + }, + { + "pg": "Union_spanset_value", + "meos": "union_spanset_timestamptz" + } + ] + }, + { + "name": "spans", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_spans", + "meos": "temporal_spans" + }, + { + "pg": "Spanset_spans", + "meos": "spanset_spans" + }, + { + "pg": "Set_spans", + "meos": "set_spans" + } + ] + }, + { + "name": "spanset", + "overloads": [ + { + "args": [ + { + "type": "intspan[]", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan[]", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan[]", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan[]", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan[]", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "date", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "floatspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "int4multirange", + "hasDefault": false + } + ], + "returns": "intspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "int8multirange", + "hasDefault": false + } + ], + "returns": "bigintspanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datemultirange", + "hasDefault": false + } + ], + "returns": "datespanset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzmultirange", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_constructor", + "meos": "spanset_make" + } + ] + }, + { + "name": "spanset_cmp", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_cmp", + "meos": "spanset_cmp" + } + ] + }, + { + "name": "spanset_eq", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_eq", + "meos": "spanset_eq" + } + ] + }, + { + "name": "spanset_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "spanset_ge", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_ge", + "meos": "spanset_ge" + } + ] + }, + { + "name": "spanset_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "spanset_gt", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_gt", + "meos": "spanset_gt" + } + ] + }, + { + "name": "spanset_hash", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_hash", + "meos": "spanset_hash" + } + ] + }, + { + "name": "spanset_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_hash_extended", + "meos": "spanset_hash_extended" + } + ] + }, + { + "name": "spanset_le", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_le", + "meos": "spanset_le" + } + ] + }, + { + "name": "spanset_lt", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_lt", + "meos": "spanset_lt" + } + ] + }, + { + "name": "spanset_ne", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spanset_ne", + "meos": "spanset_ne" + } + ] + }, + { + "name": "spanset_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "spanset_union_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "spatialset_analyze", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "spatialset_sel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "set_eq(geomset", + "hasDefault": false + }, + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "speed", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_speed", + "meos": "trgeometry_speed" + }, + { + "pg": "Tpose_speed", + "meos": "tpose_speed" + }, + { + "pg": "Tnpoint_speed", + "meos": "tnpointseq_speed" + }, + { + "pg": "Tnpoint_speed", + "meos": "tnpoint_speed" + } + ] + }, + { + "name": "splitEachNSpans", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_split_each_n_spans", + "meos": "temporal_split_each_n_spans" + }, + { + "pg": "Set_split_each_n_spans", + "meos": "set_split_each_n_spans" + } + ] + }, + { + "name": "splitEachNStboxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tgeo_split_each_n_stboxes", + "meos": "tgeo_split_each_n_stboxes" + } + ] + }, + { + "name": "splitEachNTboxes", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tnumber_split_each_n_tboxes", + "meos": "tnumber_split_each_n_tboxes" + } + ] + }, + { + "name": "splitNSpans", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigintspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "datespan[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_split_n_spans", + "meos": "temporal_split_n_spans" + } + ] + }, + { + "name": "splitNStboxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tgeo_split_n_stboxes", + "meos": "tgeo_split_n_stboxes" + } + ] + }, + { + "name": "splitNTboxes", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tnumber_split_n_tboxes", + "meos": "tnumber_split_n_tboxes" + } + ] + }, + { + "name": "srid", + "overloads": [ + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "startDate", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Datespanset_start_date", + "meos": "datespanset_start_date" + } + ] + }, + { + "name": "startInstant", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_start_instant", + "meos": "trgeometry_start_instant" + }, + { + "pg": "Temporal_start_instant", + "meos": "temporal_start_instant" + } + ] + }, + { + "name": "startNumPoints", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "startPosition", + "overloads": [ + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "double", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Nsegment_start_position", + "meos": "nsegment_start_position" + } + ] + }, + { + "name": "startSequence", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_start_sequence", + "meos": "trgeometry_start_sequence" + }, + { + "pg": "Temporal_start_sequence", + "meos": "temporal_start_sequence" + } + ] + }, + { + "name": "startSpan", + "overloads": [ + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "datespan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Spanset_start_span", + "meos": "spanset_start_span" + } + ] + }, + { + "name": "startTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_start_timestamptz", + "meos": "tsequence_start_timestamptz" + }, + { + "pg": "Temporal_start_timestamptz", + "meos": "tsequenceset_start_timestamptz" + }, + { + "pg": "Tstzspanset_start_timestamptz", + "meos": "tstzspanset_start_timestamptz" + }, + { + "pg": "Temporal_start_timestamptz", + "meos": "temporal_start_timestamptz" + } + ] + }, + { + "name": "startValue", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_start_value", + "meos": "trgeometry_start_value" + }, + { + "pg": "Set_start_value", + "meos": "cbufferset_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tcbuffer_start_value" + }, + { + "pg": "Set_start_value", + "meos": "pcpointset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "pcpatchset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "poseset_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tpose_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tgeo_start_value" + }, + { + "pg": "Set_start_value", + "meos": "geoset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "intset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "bigintset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "floatset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "textset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "dateset_start_value" + }, + { + "pg": "Set_start_value", + "meos": "tstzset_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tbool_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tint_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tbigint_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tfloat_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "ttext_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "temporal_start_value" + }, + { + "pg": "Set_start_value", + "meos": "npointset_start_value" + }, + { + "pg": "Temporal_start_value", + "meos": "tnpoint_start_value" + } + ] + }, + { + "name": "stbox", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "box2d", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "box3d", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "nsegment", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Cbuffer_to_stbox", + "meos": "cbuffer_to_stbox" + }, + { + "pg": "Cbuffer_timestamptz_to_stbox", + "meos": "cbuffer_timestamptz_to_stbox" + }, + { + "pg": "Cbuffer_tstzspan_to_stbox", + "meos": "cbuffer_tstzspan_to_stbox" + }, + { + "pg": "Pose_to_stbox", + "meos": "pose_to_stbox" + }, + { + "pg": "Pose_timestamptz_to_stbox", + "meos": "pose_timestamptz_to_stbox" + }, + { + "pg": "Pose_tstzspan_to_stbox", + "meos": "pose_tstzspan_to_stbox" + }, + { + "pg": "Geo_to_stbox", + "meos": "geo_stbox" + }, + { + "pg": "Geo_to_stbox", + "meos": "geo_to_stbox" + }, + { + "pg": "Timestamptz_to_stbox", + "meos": "timestamptz_to_stbox" + }, + { + "pg": "Tstzset_to_stbox", + "meos": "tstzset_to_stbox" + }, + { + "pg": "Tstzspan_to_stbox", + "meos": "tstzspan_to_stbox" + }, + { + "pg": "Tstzspanset_to_stbox", + "meos": "tstzspanset_to_stbox" + }, + { + "pg": "Spatialset_to_stbox", + "meos": "spatialset_to_stbox" + }, + { + "pg": "Tspatial_to_stbox", + "meos": "tspatial_to_stbox" + }, + { + "pg": "Npoint_to_stbox", + "meos": "npoint_to_stbox" + }, + { + "pg": "Nsegment_to_stbox", + "meos": "nsegment_to_stbox" + }, + { + "pg": "Npoint_timestamptz_to_stbox", + "meos": "npoint_timestamptz_to_stbox" + }, + { + "pg": "Npoint_tstzspan_to_stbox", + "meos": "npoint_tstzspan_to_stbox" + } + ] + }, + { + "name": "stboxFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stboxFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_from_hexwkb", + "meos": "stbox_from_hexwkb" + } + ] + }, + { + "name": "stboxT", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stboxX", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 4, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "stboxXT", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 5, + "maxArity": 6 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 5, + "maxArity": 6 + } + ], + "c": [] + }, + { + "name": "stboxZ", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 6, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "stboxZT", + "overloads": [ + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 7, + "maxArity": 8 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 7, + "maxArity": 8 + } + ], + "c": [] + }, + { + "name": "stbox_above", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_adjacent", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Adjacent_stbox_stbox", + "meos": "adjacent_stbox_stbox" + } + ] + }, + { + "name": "stbox_after", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_back", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_before", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_below", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_cmp", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_cmp", + "meos": "stbox_cmp" + } + ] + }, + { + "name": "stbox_contained", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contained_stbox_stbox", + "meos": "contained_stbox_stbox" + } + ] + }, + { + "name": "stbox_contains", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contains_stbox_stbox", + "meos": "contains_stbox_stbox" + } + ] + }, + { + "name": "stbox_eq", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_eq", + "meos": "stbox_eq" + } + ] + }, + { + "name": "stbox_extent_combinefn", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_front", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_ge", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_ge", + "meos": "stbox_ge" + } + ] + }, + { + "name": "stbox_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "stbox_gist_distance", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "stbox_gist_penalty", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "stbox_gist_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_gist_same", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "stbox_gist_union", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_gt", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_gt", + "meos": "stbox_gt" + } + ] + }, + { + "name": "stbox_hash", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stbox_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_hash_extended", + "meos": "stbox_hash_extended" + } + ] + }, + { + "name": "stbox_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stbox_intersection", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Intersection_stbox_stbox", + "meos": "intersection_stbox_stbox" + }, + { + "pg": "Stbox_quad_split", + "meos": "stbox_quad_split" + } + ] + }, + { + "name": "stbox_kdtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_kdtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_kdtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_le", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_le", + "meos": "stbox_le" + } + ] + }, + { + "name": "stbox_left", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_lt", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_lt", + "meos": "stbox_lt" + } + ] + }, + { + "name": "stbox_ne", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Stbox_ne", + "meos": "stbox_ne" + } + ] + }, + { + "name": "stbox_out", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stbox_overabove", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overafter", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overback", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overbefore", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overbelow", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overfront", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overlaps", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overlaps_stbox_stbox", + "meos": "overlaps_stbox_stbox" + } + ] + }, + { + "name": "stbox_overleft", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_overright", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_quadtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_quadtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_quadtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_recv", + "meos": "stbox_from_wkb" + }, + { + "pg": "Stbox_recv", + "meos": "stbox_as_wkb" + } + ] + }, + { + "name": "stbox_right", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_same", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Same_stbox_stbox", + "meos": "same_stbox_stbox" + } + ] + }, + { + "name": "stbox_send", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "stbox_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_spgist_leaf_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "stbox_union", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Union_stbox_stbox", + "meos": "union_stbox_stbox" + } + ] + }, + { + "name": "stboxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "stbox[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tgeo_stboxes", + "meos": "tgeo_stboxes" + }, + { + "pg": "Geo_stboxes", + "meos": "geo_stboxes" + } + ] + }, + { + "name": "stops", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "0.0", + "hasDefault": false + }, + { + "type": "stops(tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "0.0", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "timeSplit(tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 8, + "maxArity": 15 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tContains", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tcontains_geo_tcbuffer", + "meos": "tcontains_geo_tcbuffer" + }, + { + "pg": "Tcontains_geo_tcbuffer", + "meos": "tcontains_tcbuffer_geo" + }, + { + "pg": "Tcontains_cbuffer_tcbuffer", + "meos": "tcontains_cbuffer_tcbuffer" + }, + { + "pg": "Tcontains_cbuffer_tcbuffer", + "meos": "tcontains_tcbuffer_cbuffer" + }, + { + "pg": "Tcontains_tcbuffer_tcbuffer", + "meos": "tcontains_tcbuffer_tcbuffer" + }, + { + "pg": "Tcontains_geo_tgeo", + "meos": "tcontains_geo_tgeo" + }, + { + "pg": "Tcontains_tgeo_geo", + "meos": "tcontains_tgeo_geo" + } + ] + }, + { + "name": "tCovers", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tcovers_geo_tcbuffer", + "meos": "tcovers_geo_tcbuffer" + }, + { + "pg": "Tcovers_tcbuffer_geo", + "meos": "tcovers_tcbuffer_geo" + }, + { + "pg": "Tcovers_cbuffer_tcbuffer", + "meos": "tcovers_cbuffer_tcbuffer" + }, + { + "pg": "Tcovers_cbuffer_tcbuffer", + "meos": "tcovers_tcbuffer_cbuffer" + }, + { + "pg": "Tcovers_tcbuffer_tcbuffer", + "meos": "tcovers_tcbuffer_tcbuffer" + }, + { + "pg": "Tcovers_geo_tgeo", + "meos": "tcovers_geo_tgeo" + }, + { + "pg": "Tcovers_tgeo_geo", + "meos": "tcovers_tgeo_geo" + } + ] + }, + { + "name": "tDisjoint", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tdisjoint_tcbuffer_geo", + "meos": "tdisjoint_geo_tcbuffer" + }, + { + "pg": "Tdisjoint_tcbuffer_geo", + "meos": "tdisjoint_tcbuffer_geo" + }, + { + "pg": "Tdisjoint_tcbuffer_geo", + "meos": "tdisjoint_cbuffer_tcbuffer" + }, + { + "pg": "Tdisjoint_tcbuffer_geo", + "meos": "tdisjoint_tcbuffer_cbuffer" + }, + { + "pg": "Tdisjoint_tcbuffer_tcbuffer", + "meos": "tdisjoint_tcbuffer_tcbuffer" + }, + { + "pg": "Tdisjoint_geo_tgeo", + "meos": "tdisjoint_geo_tgeo" + }, + { + "pg": "Tdisjoint_tgeo_geo", + "meos": "tdisjoint_tgeo_geo" + }, + { + "pg": "Tdisjoint_tgeo_tgeo", + "meos": "tdisjoint_tgeo_tgeo" + } + ] + }, + { + "name": "tDistance", + "overloads": [ + { + "args": [ + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Distance_cbuffer_cbuffer", + "meos": "distance_cbuffer_cbuffer" + }, + { + "pg": "Distance_cbuffer_geo", + "meos": "distance_cbuffer_geo" + }, + { + "pg": "Distance_cbuffer_stbox", + "meos": "distance_cbuffer_stbox" + }, + { + "pg": "Tdistance_tcbuffer_cbuffer", + "meos": "tdistance_tcbuffer_cbuffer" + }, + { + "pg": "Tdistance_tcbuffer_geo", + "meos": "tdistance_tcbuffer_geo" + }, + { + "pg": "Tdistance_tcbuffer_tcbuffer", + "meos": "tdistance_tcbuffer_tcbuffer" + }, + { + "pg": "NAD_cbuffer_stbox", + "meos": "nad_cbuffer_stbox" + }, + { + "pg": "Tdistance_tpose_geo", + "meos": "tdistance_tpose_geo" + }, + { + "pg": "Tdistance_tpose_pose", + "meos": "tdistance_tpose_pose" + }, + { + "pg": "Tdistance_tpose_tpose", + "meos": "tdistance_tpose_tpose" + }, + { + "pg": "Tdistance_tgeo_geo", + "meos": "tdistance_tgeo_geo" + }, + { + "pg": "Tdistance_tgeo_tgeo", + "meos": "tdistance_tgeo_tgeo" + }, + { + "pg": "Tdistance_tnumber_number", + "meos": "tdistance_tint_int" + }, + { + "pg": "Tdistance_tnumber_number", + "meos": "tdistance_tfloat_float" + }, + { + "pg": "Tdistance_tnumber_tnumber", + "meos": "tdistance_tnumber_tnumber" + }, + { + "pg": "Tdistance_tnpoint_geo", + "meos": "tdistance_tnpoint_geo" + }, + { + "pg": "Tdistance_tnpoint_npoint", + "meos": "tdistance_tnpoint_npoint" + }, + { + "pg": "Tdistance_tnpoint_tnpoint", + "meos": "tdistance_tnpoint_tnpoint" + } + ] + }, + { + "name": "tDwithin", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tdwithin_tcbuffer_cbuffer", + "meos": "tdwithin_tcbuffer_cbuffer" + }, + { + "pg": "Tdwithin_tcbuffer_tcbuffer", + "meos": "tdwithin_tcbuffer_tcbuffer" + }, + { + "pg": "Tdwithin_tgeo_geo", + "meos": "tdwithin_tspatial_spatial" + }, + { + "pg": "Tdwithin_tgeo_geo", + "meos": "tdwithin_tgeo_geo" + }, + { + "pg": "Tdwithin_tgeo_tgeo", + "meos": "tdwithin_tgeo_tgeo" + } + ] + }, + { + "name": "tDwithinPairs", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 6, + "maxArity": 6 + }, + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "setof", + "minArity": 6, + "maxArity": 6 + } + ], + "c": [ + { + "pg": "Tdwithin_tgeoarr_tgeoarr", + "meos": "tdwithin_tgeoarr_tgeoarr" + } + ] + }, + { + "name": "tIntersects", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tintersects_tcbuffer_geo", + "meos": "tintersects_tcbuffer_geo" + }, + { + "pg": "Tintersects_tcbuffer_geo", + "meos": "tintersects_geo_tcbuffer" + }, + { + "pg": "Tintersects_cbuffer_tcbuffer", + "meos": "tintersects_cbuffer_tcbuffer" + }, + { + "pg": "Tintersects_tcbuffer_cbuffer", + "meos": "tintersects_tcbuffer_cbuffer" + }, + { + "pg": "Tintersects_tcbuffer_tcbuffer", + "meos": "tintersects_tcbuffer_tcbuffer" + }, + { + "pg": "Tintersects_tgeo_geo", + "meos": "tintersects_tgeo_geo" + }, + { + "pg": "Tintersects_geo_tgeo", + "meos": "tintersects_geo_tgeo" + }, + { + "pg": "Tintersects_tgeo_tgeo", + "meos": "tintersects_tgeo_tgeo" + } + ] + }, + { + "name": "tTouches", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Ttouches_tcbuffer_geo", + "meos": "ttouches_tcbuffer_geo" + }, + { + "pg": "Ttouches_tcbuffer_geo", + "meos": "ttouches_geo_tcbuffer" + }, + { + "pg": "Ttouches_cbuffer_tcbuffer", + "meos": "ttouches_cbuffer_tcbuffer" + }, + { + "pg": "Ttouches_cbuffer_tcbuffer", + "meos": "ttouches_tcbuffer_cbuffer" + }, + { + "pg": "Ttouches_tcbuffer_geo", + "meos": "ttouches_tcbuffer_tcbuffer" + }, + { + "pg": "Tdwithin_tcbuffer_geo", + "meos": "tdwithin_tcbuffer_geo" + }, + { + "pg": "Tdwithin_tcbuffer_geo", + "meos": "tdwithin_geo_tcbuffer" + }, + { + "pg": "Ttouches_tgeo_geo", + "meos": "ttouches_tgeo_geo" + }, + { + "pg": "Ttouches_geo_tgeo", + "meos": "ttouches_geo_tgeo" + }, + { + "pg": "Ttouches_tgeo_tgeo", + "meos": "ttouches_tgeo_tgeo" + } + ] + }, + { + "name": "taggstate_deserialize", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "taggstate_serialize", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tavg_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tavg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tavg_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tint_to_tbigint", + "meos": "tint_to_tbigint" + }, + { + "pg": "Tfloat_to_tbigint", + "meos": "tfloat_to_tbigint" + } + ] + }, + { + "name": "tbigintFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigintFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigintFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigintInst", + "overloads": [ + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigintSeq", + "overloads": [ + { + "args": [ + { + "type": "tbigint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigintSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tbigint[]", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigintSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tbigint[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbigint_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigint_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tbigint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbigint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbigint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbigint_tmax_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_tmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_tmin_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_tmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_tsum_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_tsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbigint_wmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbigint_wmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbigint_wsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbool", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tboolFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboolFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboolFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboolInst", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboolSeq", + "overloads": [ + { + "args": [ + { + "type": "tbool[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tboolSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tbool[]", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboolSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tbool[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_and", + "overloads": [ + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbool_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tbool_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbool_not", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbool_or", + "overloads": [ + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbool_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tbool_tand_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_tand_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_tor_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbool_tor_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "numeric", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Number_timestamptz_to_tbox", + "meos": "number_timestamptz_to_tbox" + }, + { + "pg": "Number_tstzspan_to_tbox", + "meos": "number_tstzspan_to_tbox" + }, + { + "pg": "Numspan_timestamptz_to_tbox", + "meos": "numspan_timestamptz_to_tbox" + }, + { + "pg": "Numspan_timestamptz_to_tbox", + "meos": "numspan_tstzspan_to_tbox" + }, + { + "pg": "Number_to_tbox", + "meos": "number_tbox" + }, + { + "pg": "Timestamptz_to_tbox", + "meos": "timestamptz_to_tbox" + }, + { + "pg": "Set_to_tbox", + "meos": "set_tbox" + }, + { + "pg": "Set_to_tbox", + "meos": "set_to_tbox" + }, + { + "pg": "Span_to_tbox", + "meos": "span_tbox" + }, + { + "pg": "Number_timestamptz_to_tbox", + "meos": "int_timestamptz_to_tbox" + }, + { + "pg": "Number_timestamptz_to_tbox", + "meos": "bigint_timestamptz_to_tbox" + }, + { + "pg": "Number_timestamptz_to_tbox", + "meos": "float_timestamptz_to_tbox" + }, + { + "pg": "Number_tstzspan_to_tbox", + "meos": "int_tstzspan_to_tbox" + }, + { + "pg": "Number_tstzspan_to_tbox", + "meos": "bigint_tstzspan_to_tbox" + }, + { + "pg": "Number_tstzspan_to_tbox", + "meos": "float_tstzspan_to_tbox" + }, + { + "pg": "Number_to_tbox", + "meos": "int_to_tbox" + }, + { + "pg": "Number_to_tbox", + "meos": "bigint_to_tbox" + }, + { + "pg": "Number_to_tbox", + "meos": "float_to_tbox" + }, + { + "pg": "Span_to_tbox", + "meos": "span_to_tbox" + }, + { + "pg": "Spanset_to_tbox", + "meos": "spanset_tbox" + }, + { + "pg": "Spanset_to_tbox", + "meos": "spanset_to_tbox" + }, + { + "pg": "Tnumber_to_tbox", + "meos": "tnumber_to_tbox" + } + ] + }, + { + "name": "tboxFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tboxFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_from_hexwkb", + "meos": "tbox_from_hexwkb" + } + ] + }, + { + "name": "tbox_adjacent", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Adjacent_tbox_tbox", + "meos": "adjacent_tbox_tbox" + } + ] + }, + { + "name": "tbox_after", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "After_tbox_tbox", + "meos": "after_tbox_tbox" + } + ] + }, + { + "name": "tbox_before", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Before_tbox_tbox", + "meos": "before_tbox_tbox" + } + ] + }, + { + "name": "tbox_cmp", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_cmp", + "meos": "tbox_cmp" + } + ] + }, + { + "name": "tbox_contained", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contained_tbox_tbox", + "meos": "contained_tbox_tbox" + } + ] + }, + { + "name": "tbox_contains", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Contains_tbox_tbox", + "meos": "contains_tbox_tbox" + } + ] + }, + { + "name": "tbox_eq", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_eq", + "meos": "tbox_eq" + } + ] + }, + { + "name": "tbox_extent_combinefn", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_ge", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_ge", + "meos": "tbox_ge" + } + ] + }, + { + "name": "tbox_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tbox_gist_distance", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tbox_gist_penalty", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbox_gist_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_gist_same", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tbox_gist_union", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_gt", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_gt", + "meos": "tbox_gt" + } + ] + }, + { + "name": "tbox_hash", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_hash", + "meos": "tbox_hash" + } + ] + }, + { + "name": "tbox_hash_extended", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_hash_extended", + "meos": "tbox_hash_extended" + } + ] + }, + { + "name": "tbox_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_in", + "meos": "tbox_in" + } + ] + }, + { + "name": "tbox_intersection", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_kdtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_kdtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_kdtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_le", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_le", + "meos": "tbox_le" + } + ] + }, + { + "name": "tbox_left", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Left_tbox_tbox", + "meos": "left_tbox_tbox" + } + ] + }, + { + "name": "tbox_lt", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_lt", + "meos": "tbox_lt" + } + ] + }, + { + "name": "tbox_ne", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tbox_ne", + "meos": "tbox_ne" + } + ] + }, + { + "name": "tbox_out", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_out", + "meos": "tbox_out" + } + ] + }, + { + "name": "tbox_overafter", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overafter_tbox_tbox", + "meos": "overafter_tbox_tbox" + } + ] + }, + { + "name": "tbox_overbefore", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overbefore_tbox_tbox", + "meos": "overbefore_tbox_tbox" + } + ] + }, + { + "name": "tbox_overlaps", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overlaps_tbox_tbox", + "meos": "overlaps_tbox_tbox" + } + ] + }, + { + "name": "tbox_overleft", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overleft_tbox_tbox", + "meos": "overleft_tbox_tbox" + } + ] + }, + { + "name": "tbox_overright", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overright_tbox_tbox", + "meos": "overright_tbox_tbox" + } + ] + }, + { + "name": "tbox_quadtree_choose", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_quadtree_inner_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_quadtree_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_recv", + "meos": "tbox_from_wkb" + } + ] + }, + { + "name": "tbox_right", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Right_tbox_tbox", + "meos": "right_tbox_tbox" + } + ] + }, + { + "name": "tbox_same", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Same_tbox_tbox", + "meos": "same_tbox_tbox" + } + ] + }, + { + "name": "tbox_send", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbox_send", + "meos": "tbox_as_wkb" + } + ] + }, + { + "name": "tbox_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_spgist_leaf_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tbox_union", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tboxes", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbox[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_tboxes", + "meos": "tnumber_tboxes" + } + ] + }, + { + "name": "tcbuffer", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tgeometry_to_tcbuffer", + "meos": "tgeometry_to_tcbuffer" + } + ] + }, + { + "name": "tcbufferFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferInst", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbufferSeq", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tcbufferSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tcbufferSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tcbuffer_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tcbuffer_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tcbuffer_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tcbuffer_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcbuffer_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcentroid_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tcentroid_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tcentroid_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tcount_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tcount_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tdensity_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tdirection", + "overloads": [ + { + "args": [ + { + "type": "azimuth(tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tdistance", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography(Point)", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography(Point)", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tempBasetype", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_basetype_name", + "meos": "temporal_basetype_name" + } + ] + }, + { + "name": "tempSubtype", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_subtype", + "meos": "temporal_subtype" + } + ] + }, + { + "name": "temporal_above", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Above_stbox_tspatial", + "meos": "above_stbox_tspatial" + }, + { + "pg": "Above_tspatial_stbox", + "meos": "above_tspatial_stbox" + }, + { + "pg": "Above_tspatial_tspatial", + "meos": "above_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_adjacent", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_after", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "After_stbox_tspatial", + "meos": "after_stbox_tspatial" + }, + { + "pg": "After_tspatial_stbox", + "meos": "after_tspatial_stbox" + }, + { + "pg": "After_tspatial_tspatial", + "meos": "after_tspatial_tspatial" + }, + { + "pg": "After_tstzspan_temporal", + "meos": "after_tstzspan_temporal" + }, + { + "pg": "After_temporal_tstzspan", + "meos": "after_temporal_tstzspan" + }, + { + "pg": "After_temporal_temporal", + "meos": "after_temporal_temporal" + }, + { + "pg": "After_tbox_tnumber", + "meos": "after_tbox_tnumber" + }, + { + "pg": "After_tnumber_tbox", + "meos": "after_tnumber_tbox" + }, + { + "pg": "After_tnumber_tnumber", + "meos": "after_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_analyze", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_app_tinst_transfn", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "temporal_app_tseq_transfn", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_append_finalfn", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_back", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Back_stbox_tspatial", + "meos": "back_stbox_tspatial" + }, + { + "pg": "Back_tspatial_stbox", + "meos": "back_tspatial_stbox" + }, + { + "pg": "Back_tspatial_tspatial", + "meos": "back_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_before", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Before_stbox_tspatial", + "meos": "before_stbox_tspatial" + }, + { + "pg": "Before_tspatial_stbox", + "meos": "before_tspatial_stbox" + }, + { + "pg": "Before_tspatial_tspatial", + "meos": "before_tspatial_tspatial" + }, + { + "pg": "Before_tstzspan_temporal", + "meos": "before_tstzspan_temporal" + }, + { + "pg": "Before_temporal_tstzspan", + "meos": "before_temporal_tstzspan" + }, + { + "pg": "Before_temporal_temporal", + "meos": "before_temporal_temporal" + }, + { + "pg": "Before_tbox_tnumber", + "meos": "before_tbox_tnumber" + }, + { + "pg": "Before_tnumber_tbox", + "meos": "before_tnumber_tbox" + }, + { + "pg": "Before_tnumber_tnumber", + "meos": "before_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_below", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Below_stbox_tspatial", + "meos": "below_stbox_tspatial" + }, + { + "pg": "Below_tspatial_stbox", + "meos": "below_tspatial_stbox" + }, + { + "pg": "Below_tspatial_tspatial", + "meos": "below_tspatial_tspatial" + }, + { + "pg": "Left_stbox_stbox", + "meos": "left_stbox_stbox" + }, + { + "pg": "Overleft_stbox_stbox", + "meos": "overleft_stbox_stbox" + }, + { + "pg": "Right_stbox_stbox", + "meos": "right_stbox_stbox" + }, + { + "pg": "Overright_stbox_stbox", + "meos": "overright_stbox_stbox" + }, + { + "pg": "Below_stbox_stbox", + "meos": "below_stbox_stbox" + }, + { + "pg": "Overbelow_stbox_stbox", + "meos": "overbelow_stbox_stbox" + }, + { + "pg": "Above_stbox_stbox", + "meos": "above_stbox_stbox" + }, + { + "pg": "Overabove_stbox_stbox", + "meos": "overabove_stbox_stbox" + }, + { + "pg": "Front_stbox_stbox", + "meos": "front_stbox_stbox" + }, + { + "pg": "Overfront_stbox_stbox", + "meos": "overfront_stbox_stbox" + }, + { + "pg": "Back_stbox_stbox", + "meos": "back_stbox_stbox" + }, + { + "pg": "Overback_stbox_stbox", + "meos": "overback_stbox_stbox" + }, + { + "pg": "Before_stbox_stbox", + "meos": "before_stbox_stbox" + }, + { + "pg": "Overbefore_stbox_stbox", + "meos": "overbefore_stbox_stbox" + }, + { + "pg": "After_stbox_stbox", + "meos": "after_stbox_stbox" + }, + { + "pg": "Overafter_stbox_stbox", + "meos": "overafter_stbox_stbox" + } + ] + }, + { + "name": "temporal_cmp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "int4", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_contained", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_contains", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_eq", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_extent_combinefn", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_front", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Front_stbox_tspatial", + "meos": "front_stbox_tspatial" + }, + { + "pg": "Front_tspatial_stbox", + "meos": "front_tspatial_stbox" + }, + { + "pg": "Front_tspatial_tspatial", + "meos": "front_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_ge", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_gt", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_hash", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_joinsel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "temporal_le", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_left", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Left_stbox_tspatial", + "meos": "left_stbox_tspatial" + }, + { + "pg": "Left_tspatial_stbox", + "meos": "left_tspatial_stbox" + }, + { + "pg": "Left_tspatial_tspatial", + "meos": "left_tspatial_tspatial" + }, + { + "pg": "Left_numspan_tnumber", + "meos": "left_numspan_tnumber" + }, + { + "pg": "Left_tnumber_numspan", + "meos": "left_tnumber_numspan" + }, + { + "pg": "Left_tbox_tnumber", + "meos": "left_tbox_tnumber" + }, + { + "pg": "Left_tnumber_tbox", + "meos": "left_tnumber_tbox" + }, + { + "pg": "Left_tnumber_tnumber", + "meos": "left_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_lt", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_merge_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_merge_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_ne", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_out", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_overabove", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overabove_stbox_tspatial", + "meos": "overabove_stbox_tspatial" + }, + { + "pg": "Overabove_tspatial_stbox", + "meos": "overabove_tspatial_stbox" + }, + { + "pg": "Overabove_tspatial_tspatial", + "meos": "overabove_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_overafter", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overafter_stbox_tspatial", + "meos": "overafter_stbox_tspatial" + }, + { + "pg": "Overafter_tspatial_stbox", + "meos": "overafter_tspatial_stbox" + }, + { + "pg": "Overafter_tspatial_tspatial", + "meos": "overafter_tspatial_tspatial" + }, + { + "pg": "Overafter_tstzspan_temporal", + "meos": "overafter_tstzspan_temporal" + }, + { + "pg": "Overafter_temporal_tstzspan", + "meos": "overafter_temporal_tstzspan" + }, + { + "pg": "Overafter_temporal_temporal", + "meos": "overafter_temporal_temporal" + }, + { + "pg": "Overafter_tbox_tnumber", + "meos": "overafter_tbox_tnumber" + }, + { + "pg": "Overafter_tnumber_tbox", + "meos": "overafter_tnumber_tbox" + }, + { + "pg": "Overafter_tnumber_tnumber", + "meos": "overafter_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_overback", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overback_stbox_tspatial", + "meos": "overback_stbox_tspatial" + }, + { + "pg": "Overback_tspatial_stbox", + "meos": "overback_tspatial_stbox" + }, + { + "pg": "Overback_tspatial_tspatial", + "meos": "overback_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_overbefore", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overbefore_stbox_tspatial", + "meos": "overbefore_stbox_tspatial" + }, + { + "pg": "Overbefore_tspatial_stbox", + "meos": "overbefore_tspatial_stbox" + }, + { + "pg": "Overbefore_tspatial_tspatial", + "meos": "overbefore_tspatial_tspatial" + }, + { + "pg": "Overbefore_tstzspan_temporal", + "meos": "overbefore_tstzspan_temporal" + }, + { + "pg": "Overbefore_temporal_tstzspan", + "meos": "overbefore_temporal_tstzspan" + }, + { + "pg": "Overbefore_temporal_temporal", + "meos": "overbefore_temporal_temporal" + }, + { + "pg": "Overbefore_tbox_tnumber", + "meos": "overbefore_tbox_tnumber" + }, + { + "pg": "Overbefore_tnumber_tbox", + "meos": "overbefore_tnumber_tbox" + }, + { + "pg": "Overbefore_tnumber_tnumber", + "meos": "overbefore_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_overbelow", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overbelow_stbox_tspatial", + "meos": "overbelow_stbox_tspatial" + }, + { + "pg": "Overbelow_tspatial_stbox", + "meos": "overbelow_tspatial_stbox" + }, + { + "pg": "Overbelow_tspatial_tspatial", + "meos": "overbelow_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_overfront", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overfront_stbox_tspatial", + "meos": "overfront_stbox_tspatial" + }, + { + "pg": "Overfront_tspatial_stbox", + "meos": "overfront_tspatial_stbox" + }, + { + "pg": "Overfront_tspatial_tspatial", + "meos": "overfront_tspatial_tspatial" + } + ] + }, + { + "name": "temporal_overlaps", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_overleft", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overleft_stbox_tspatial", + "meos": "overleft_stbox_tspatial" + }, + { + "pg": "Overleft_tspatial_stbox", + "meos": "overleft_tspatial_stbox" + }, + { + "pg": "Overleft_tspatial_tspatial", + "meos": "overleft_tspatial_tspatial" + }, + { + "pg": "Overleft_numspan_tnumber", + "meos": "overleft_numspan_tnumber" + }, + { + "pg": "Overleft_tnumber_numspan", + "meos": "overleft_tnumber_numspan" + }, + { + "pg": "Overleft_tbox_tnumber", + "meos": "overleft_tbox_tnumber" + }, + { + "pg": "Overleft_tnumber_tbox", + "meos": "overleft_tnumber_tbox" + }, + { + "pg": "Overleft_tnumber_tnumber", + "meos": "overleft_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_overright", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Overright_stbox_tspatial", + "meos": "overright_stbox_tspatial" + }, + { + "pg": "Overright_tspatial_stbox", + "meos": "overright_tspatial_stbox" + }, + { + "pg": "Overright_tspatial_tspatial", + "meos": "overright_tspatial_tspatial" + }, + { + "pg": "Overright_numspan_tnumber", + "meos": "overright_numspan_tnumber" + }, + { + "pg": "Overright_tnumber_numspan", + "meos": "overright_tnumber_numspan" + }, + { + "pg": "Overright_tbox_tnumber", + "meos": "overright_tbox_tnumber" + }, + { + "pg": "Overright_tnumber_tbox", + "meos": "overright_tnumber_tbox" + }, + { + "pg": "Overright_tnumber_tnumber", + "meos": "overright_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_right", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Right_stbox_tspatial", + "meos": "right_stbox_tspatial" + }, + { + "pg": "Right_tspatial_stbox", + "meos": "right_tspatial_stbox" + }, + { + "pg": "Right_tspatial_tspatial", + "meos": "right_tspatial_tspatial" + }, + { + "pg": "Right_numspan_tnumber", + "meos": "right_numspan_tnumber" + }, + { + "pg": "Right_tnumber_numspan", + "meos": "right_tnumber_numspan" + }, + { + "pg": "Right_tbox_tnumber", + "meos": "right_tbox_tnumber" + }, + { + "pg": "Right_tnumber_tbox", + "meos": "right_tnumber_tbox" + }, + { + "pg": "Right_tnumber_tnumber", + "meos": "right_tnumber_tnumber" + } + ] + }, + { + "name": "temporal_same", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "temporal_sel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "temporal_send", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_teq", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Teq_geo_trgeometry", + "meos": "teq_geo_trgeometry" + }, + { + "pg": "Teq_trgeometry_geo", + "meos": "teq_trgeometry_geo" + }, + { + "pg": "Teq_cbuffer_tcbuffer", + "meos": "teq_cbuffer_tcbuffer" + }, + { + "pg": "Teq_tcbuffer_cbuffer", + "meos": "teq_tcbuffer_cbuffer" + }, + { + "pg": "Teq_pose_tpose", + "meos": "teq_pose_tpose" + }, + { + "pg": "Teq_tpose_pose", + "meos": "teq_tpose_pose" + }, + { + "pg": "Teq_geo_tgeo", + "meos": "teq_geo_tgeo" + }, + { + "pg": "Teq_tgeo_geo", + "meos": "teq_tgeo_geo" + }, + { + "pg": "Teq_temporal_temporal", + "meos": "teq_temporal_temporal" + }, + { + "pg": "Teq_base_temporal", + "meos": "teq_bool_tbool" + }, + { + "pg": "Teq_base_temporal", + "meos": "teq_int_tint" + }, + { + "pg": "Teq_base_temporal", + "meos": "teq_float_tfloat" + }, + { + "pg": "Teq_base_temporal", + "meos": "teq_text_ttext" + }, + { + "pg": "Teq_temporal_base", + "meos": "teq_tbool_bool" + }, + { + "pg": "Teq_temporal_base", + "meos": "teq_tint_int" + }, + { + "pg": "Teq_temporal_base", + "meos": "teq_tfloat_float" + }, + { + "pg": "Teq_temporal_base", + "meos": "teq_ttext_text" + }, + { + "pg": "Teq_tnpoint_npoint", + "meos": "teq_tnpoint_npoint" + } + ] + }, + { + "name": "temporal_tge", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tge_base_temporal", + "meos": "tge_int_tint" + }, + { + "pg": "Tge_base_temporal", + "meos": "tge_float_tfloat" + }, + { + "pg": "Tge_base_temporal", + "meos": "tge_text_ttext" + }, + { + "pg": "Tge_temporal_base", + "meos": "tge_tint_int" + }, + { + "pg": "Tge_temporal_base", + "meos": "tge_tfloat_float" + }, + { + "pg": "Tge_temporal_base", + "meos": "tge_ttext_text" + }, + { + "pg": "Tge_temporal_temporal", + "meos": "tge_temporal_temporal" + } + ] + }, + { + "name": "temporal_tgt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tgt_base_temporal", + "meos": "tgt_int_tint" + }, + { + "pg": "Tgt_base_temporal", + "meos": "tgt_float_tfloat" + }, + { + "pg": "Tgt_base_temporal", + "meos": "tgt_text_ttext" + }, + { + "pg": "Tgt_temporal_base", + "meos": "tgt_tint_int" + }, + { + "pg": "Tgt_temporal_base", + "meos": "tgt_tfloat_float" + }, + { + "pg": "Tgt_temporal_base", + "meos": "tgt_ttext_text" + }, + { + "pg": "Tgt_temporal_temporal", + "meos": "tgt_temporal_temporal" + } + ] + }, + { + "name": "temporal_tle", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tle_base_temporal", + "meos": "tle_int_tint" + }, + { + "pg": "Tle_base_temporal", + "meos": "tle_float_tfloat" + }, + { + "pg": "Tle_base_temporal", + "meos": "tle_text_ttext" + }, + { + "pg": "Tle_temporal_base", + "meos": "tle_tint_int" + }, + { + "pg": "Tle_temporal_base", + "meos": "tle_tfloat_float" + }, + { + "pg": "Tle_temporal_base", + "meos": "tle_ttext_text" + }, + { + "pg": "Tle_temporal_temporal", + "meos": "tle_temporal_temporal" + } + ] + }, + { + "name": "temporal_tlt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tlt_base_temporal", + "meos": "tlt_int_tint" + }, + { + "pg": "Tlt_base_temporal", + "meos": "tlt_float_tfloat" + }, + { + "pg": "Tlt_base_temporal", + "meos": "tlt_text_ttext" + }, + { + "pg": "Tlt_temporal_base", + "meos": "tlt_tint_int" + }, + { + "pg": "Tlt_temporal_base", + "meos": "tlt_tfloat_float" + }, + { + "pg": "Tlt_temporal_base", + "meos": "tlt_ttext_text" + }, + { + "pg": "Tlt_temporal_temporal", + "meos": "tlt_temporal_temporal" + } + ] + }, + { + "name": "temporal_tne", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "h3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tne_geo_trgeometry", + "meos": "tne_geo_trgeometry" + }, + { + "pg": "Tne_trgeometry_geo", + "meos": "tne_trgeometry_geo" + }, + { + "pg": "Tne_cbuffer_tcbuffer", + "meos": "tne_cbuffer_tcbuffer" + }, + { + "pg": "Tne_tcbuffer_cbuffer", + "meos": "tne_tcbuffer_cbuffer" + }, + { + "pg": "Tne_pose_tpose", + "meos": "tne_pose_tpose" + }, + { + "pg": "Tne_tpose_pose", + "meos": "tne_tpose_pose" + }, + { + "pg": "Tne_geo_tgeo", + "meos": "tne_geo_tgeo" + }, + { + "pg": "Tne_tgeo_geo", + "meos": "tne_tgeo_geo" + }, + { + "pg": "Tne_temporal_temporal", + "meos": "tne_temporal_temporal" + }, + { + "pg": "Tne_base_temporal", + "meos": "tne_bool_tbool" + }, + { + "pg": "Tne_base_temporal", + "meos": "tne_int_tint" + }, + { + "pg": "Tne_base_temporal", + "meos": "tne_float_tfloat" + }, + { + "pg": "Tne_base_temporal", + "meos": "tne_text_ttext" + }, + { + "pg": "Tne_temporal_base", + "meos": "tne_tbool_bool" + }, + { + "pg": "Tne_temporal_base", + "meos": "tne_tint_int" + }, + { + "pg": "Tne_temporal_base", + "meos": "tne_tfloat_float" + }, + { + "pg": "Tne_temporal_base", + "meos": "tne_ttext_text" + }, + { + "pg": "Tne_tnpoint_npoint", + "meos": "tne_tnpoint_npoint" + } + ] + }, + { + "name": "temporal_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "temporal_typmod_out", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "teq", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "textsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textset_cat", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Textcat_text_textset", + "meos": "textcat_text_textset" + }, + { + "pg": "Textcat_textset_text", + "meos": "textcat_textset_text" + } + ] + }, + { + "name": "textset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textset_out", + "overloads": [ + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textset_send", + "overloads": [ + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "textset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloat", + "overloads": [ + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tcbuffer_to_tfloat", + "meos": "tcbuffer_to_tfloat" + }, + { + "pg": "Tint_to_tfloat", + "meos": "tint_to_tfloat" + }, + { + "pg": "Tbigint_to_tfloat", + "meos": "tbigint_to_tfloat" + } + ] + }, + { + "name": "tfloatFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloatFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloatFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloatInst", + "overloads": [ + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloatSeq", + "overloads": [ + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloatSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloatSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tfloat[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tfloat_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloat_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tfloat_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tfloat_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tfloat_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tfloat_tmax_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_tmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_tmin_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_tmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_tsum_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_tsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tfloat_wmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tfloat_wmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tfloat_wsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tge", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tgeo_teq", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tgeo_tne", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tgeogpoint", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography(Point)", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointInst", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointSeq", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpointSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tgeogpoint_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tgeogpoint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeogpoint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeogpoint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeogpoint_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeography", + "overloads": [ + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tgeometry_to_tgeography", + "meos": "tgeometry_to_tgeography" + } + ] + }, + { + "name": "tgeographyFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographyInst", + "overloads": [ + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographySeq", + "overloads": [ + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographySeqSet", + "overloads": [ + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeographySeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tgeography[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tgeography_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tgeography_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeography_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeography_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeography_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometry", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_to_tgeometry", + "meos": "trgeometry_to_tgeometry" + }, + { + "pg": "Tgeography_to_tgeometry", + "meos": "tgeography_to_tgeometry" + }, + { + "pg": "Tpoint_to_tgeo", + "meos": "tgeompoint_to_tgeometry" + }, + { + "pg": "Tpoint_to_tgeo", + "meos": "tgeogpoint_to_tgeography" + } + ] + }, + { + "name": "tgeometryFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometryInst", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometrySeq", + "overloads": [ + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometrySeqSet", + "overloads": [ + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometrySeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tgeometry[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tgeometry_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tgeometry_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeometry_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeometry_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeometry_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompoint", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tcbuffer_to_tgeompoint", + "meos": "tcbuffer_to_tgeompoint" + }, + { + "pg": "Geomeas_to_tpoint", + "meos": "geomeas_to_tpoint" + }, + { + "pg": "Tgeo_to_tpoint", + "meos": "tgeometry_to_tgeompoint" + }, + { + "pg": "Tgeo_to_tpoint", + "meos": "tgeography_to_tgeogpoint" + }, + { + "pg": "Tnpoint_to_tgeompoint", + "meos": "tnpoint_to_tgeompoint" + } + ] + }, + { + "name": "tgeompointFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointInst", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointSeq", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompointSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tgeompoint_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tgeompoint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeompoint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tgeompoint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgeompoint_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tgt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "th3index", + "overloads": [ + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "th3indexFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "th3indexFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "th3index_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "th3index_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "th3index_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "th3index", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "timeBins", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan[]", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "timeBoxes", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox[]", + "minArity": 2, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "timeSpan", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_to_tstzspan", + "meos": "stbox_to_tstzspan" + }, + { + "pg": "Tbox_to_tstzspan", + "meos": "tbox_tstzspan" + }, + { + "pg": "Tbox_to_tstzspan", + "meos": "tbox_to_tstzspan" + }, + { + "pg": "Temporal_to_tstzspan", + "meos": "temporal_to_tstzspan" + } + ] + }, + { + "name": "timeSplit", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "setof", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_time_split", + "meos": "temporal_time_split" + } + ] + }, + { + "name": "timeTiles", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Stbox_time_tiles", + "meos": "stbox_time_tiles" + } + ] + }, + { + "name": "time_distance", + "overloads": [ + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "timespan", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "timestampN", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_timestamptz_n", + "meos": "tsequenceset_timestamptz_n" + }, + { + "pg": "Tstzspanset_timestamptz_n", + "meos": "tstzspanset_timestamptz_n" + }, + { + "pg": "Temporal_timestamptz_n", + "meos": "temporal_timestamptz_n" + } + ] + }, + { + "name": "timestamps", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "timestamptz[]", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_timestamps", + "meos": "tinstant_timestamps" + }, + { + "pg": "Temporal_timestamps", + "meos": "tsequence_timestamps" + }, + { + "pg": "Temporal_timestamps", + "meos": "tsequenceset_timestamps" + }, + { + "pg": "Tstzspanset_timestamps", + "meos": "tstzspanset_timestamps" + }, + { + "pg": "Temporal_timestamps", + "meos": "temporal_timestamps" + } + ] + }, + { + "name": "tint", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tinstant_constructor", + "meos": "tcbufferinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tposeinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tpointinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tgeoinst_make" + }, + { + "pg": "Tsequence_from_base_tstzset", + "meos": "tsequence_from_base_tstzset" + }, + { + "pg": "Tinstant_constructor", + "meos": "tbigintinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tboolinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tintinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "tfloatinst_make" + }, + { + "pg": "Tinstant_constructor", + "meos": "ttextinst_make" + }, + { + "pg": "Tbool_to_tint", + "meos": "tbool_to_tint" + }, + { + "pg": "Tbigint_to_tint", + "meos": "tbigint_to_tint" + }, + { + "pg": "Tfloat_to_tint", + "meos": "tfloat_to_tint" + }, + { + "pg": "Tinstant_constructor", + "meos": "tnpointinst_make" + } + ] + }, + { + "name": "tintFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tintFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_from_hexwkb", + "meos": "temporal_from_hexwkb" + } + ] + }, + { + "name": "tintFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_from_mfjson", + "meos": "tgeompointinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeogpointinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeometryinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeographyinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeompointseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeogpointseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeometryseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeographyseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeompointseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeogpointseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeometryseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tgeographyseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tbigintinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tboolinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tintinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tfloatinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "ttextinst_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tbigintseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tboolseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tintseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tfloatseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "ttextseq_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tboolseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tintseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tbigintseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "tfloatseqset_from_mfjson" + }, + { + "pg": "Temporal_from_mfjson", + "meos": "ttextseqset_from_mfjson" + } + ] + }, + { + "name": "tintInst", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_to_tinstant", + "meos": "tsequence_to_tinstant" + }, + { + "pg": "Temporal_to_tinstant", + "meos": "tsequenceset_to_tinstant" + }, + { + "pg": "Temporal_to_tinstant", + "meos": "temporal_to_tinstant" + } + ] + }, + { + "name": "tintSeq", + "overloads": [ + { + "args": [ + { + "type": "tint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tsequence_constructor", + "meos": "tsequence_make" + }, + { + "pg": "Temporal_to_tsequence", + "meos": "tinstant_to_tsequence" + }, + { + "pg": "Temporal_to_tsequence", + "meos": "tinstant_to_tsequence_free" + }, + { + "pg": "Temporal_to_tsequence", + "meos": "tsequenceset_to_tsequence" + }, + { + "pg": "Temporal_to_tsequence", + "meos": "temporal_tsequence" + }, + { + "pg": "Temporal_to_tsequence", + "meos": "temporal_to_tsequence" + } + ] + }, + { + "name": "tintSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tint[]", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_to_tsequenceset", + "meos": "trgeoseq_to_tsequenceset_free" + }, + { + "pg": "Tsequenceset_constructor", + "meos": "tsequenceset_make" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "tinstant_to_tsequenceset" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "tsequence_to_tsequenceset" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "tsequence_to_tsequenceset_free" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "tsequence_to_tsequenceset_interp" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "temporal_tsequenceset" + }, + { + "pg": "Temporal_to_tsequenceset", + "meos": "temporal_to_tsequenceset" + } + ] + }, + { + "name": "tintSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tint[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tsequenceset_constructor_gaps", + "meos": "tsequenceset_make_gaps" + } + ] + }, + { + "name": "tint_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tint_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_recv", + "meos": "temporal_as_wkb" + }, + { + "pg": "Temporal_recv", + "meos": "temporal_from_wkb" + } + ] + }, + { + "name": "tint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tint_tmax_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_tmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_tmin_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_tmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_tsum_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_tsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tint_wmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tint_wmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tint_wsum_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tle", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tlt", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tmax", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_tmax", + "meos": "tpcbox_tmax" + } + ] + }, + { + "name": "tmin", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_tmin", + "meos": "tpcbox_tmin" + } + ] + }, + { + "name": "tne", + "overloads": [ + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "cbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geography", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "geography", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "boolean", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "npoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tnpoint", + "overloads": [ + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "npoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tgeompoint_to_tnpoint", + "meos": "tgeompoint_to_tnpoint" + } + ] + }, + { + "name": "tnpointFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointInst", + "overloads": [ + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointSeq", + "overloads": [ + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpointSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tnpoint[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tnpoint_gin_extract_query", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 7, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "tnpoint_gin_extract_value", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tnpoint_gin_triconsistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "int2", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "int4", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "char", + "minArity": 7, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "tnpoint_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tnpoint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tnpoint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tnpoint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tnpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnpoints_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tnumber_add", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Add_number_tnumber", + "meos": "add_bigint_tbigint" + }, + { + "pg": "Add_number_tnumber", + "meos": "add_int_tint" + }, + { + "pg": "Add_number_tnumber", + "meos": "add_float_tfloat" + }, + { + "pg": "Add_tnumber_number", + "meos": "add_tbigint_bigint" + }, + { + "pg": "Add_tnumber_number", + "meos": "add_tint_int" + }, + { + "pg": "Add_tnumber_number", + "meos": "add_tfloat_float" + }, + { + "pg": "Add_tnumber_tnumber", + "meos": "add_tnumber_tnumber" + } + ] + }, + { + "name": "tnumber_div", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Div_number_tnumber", + "meos": "div_bigint_tbigint" + }, + { + "pg": "Div_number_tnumber", + "meos": "div_int_tint" + }, + { + "pg": "Div_number_tnumber", + "meos": "div_float_tfloat" + }, + { + "pg": "Div_tnumber_number", + "meos": "div_tfloat_float" + }, + { + "pg": "Div_tnumber_tnumber", + "meos": "div_tnumber_tnumber" + } + ] + }, + { + "name": "tnumber_extent_combinefn", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbox", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tnumber_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tnumber_joinsel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tnumber_mul", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Mul_number_tnumber", + "meos": "mul_bigint_tbigint" + }, + { + "pg": "Mul_number_tnumber", + "meos": "mul_int_tint" + }, + { + "pg": "Mul_number_tnumber", + "meos": "mul_float_tfloat" + }, + { + "pg": "Mul_tnumber_number", + "meos": "mul_tbigint_bigint" + }, + { + "pg": "Mul_tnumber_number", + "meos": "mul_tint_int" + }, + { + "pg": "Mul_tnumber_number", + "meos": "mul_tfloat_float" + }, + { + "pg": "Mul_tnumber_tnumber", + "meos": "mul_tnumber_tnumber" + } + ] + }, + { + "name": "tnumber_sel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tnumber_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tnumber_sub", + "overloads": [ + { + "args": [ + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "integer", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "float", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Sub_number_tnumber", + "meos": "sub_bigint_tbigint" + }, + { + "pg": "Sub_number_tnumber", + "meos": "sub_int_tint" + }, + { + "pg": "Sub_number_tnumber", + "meos": "sub_float_tfloat" + }, + { + "pg": "Sub_tnumber_number", + "meos": "sub_tbigint_bigint" + }, + { + "pg": "Sub_tnumber_number", + "meos": "sub_tint_int" + }, + { + "pg": "Sub_tnumber_number", + "meos": "sub_tfloat_float" + }, + { + "pg": "Sub_tnumber_tnumber", + "meos": "sub_tnumber_tnumber" + } + ] + }, + { + "name": "tnumber_supportfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpc_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpc_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpc_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpc_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpc_typmod_out", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox", + "overloads": [ + { + "args": [ + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 4, + "maxArity": 6 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pcpoint_to_tpcbox", + "meos": "pcpoint_to_tpcbox" + } + ] + }, + { + "name": "tpcbox_above", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_adjacent", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_after", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_back", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_before", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_below", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_cmp", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Tpcbox_cmp", + "meos": "tpcbox_cmp" + } + ] + }, + { + "name": "tpcbox_contained", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_contains", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_eq", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_front", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_ge", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_distance", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_penalty", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_picksplit", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_same", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcbox_gist_union", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_gt", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox_intersection", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_le", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_left", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_lt", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_ne", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_out", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox_overabove", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overafter", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overback", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overbefore", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overbelow", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overfront", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overlaps", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overleft", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_overright", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox_right", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_same", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_send", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcbox_t", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_union", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + }, + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "tpcbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tpcbox_xt", + "overloads": [ + { + "args": [ + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 5, + "maxArity": 7 + } + ], + "c": [] + }, + { + "name": "tpcbox_z", + "overloads": [ + { + "args": [ + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 6, + "maxArity": 8 + } + ], + "c": [] + }, + { + "name": "tpcbox_zt", + "overloads": [ + { + "args": [ + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "tpcbox", + "minArity": 7, + "maxArity": 9 + } + ], + "c": [] + }, + { + "name": "tpcpatch", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "pcpatch", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpatchFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpatchFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpatchSeq", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tpcpatchSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch[]", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpatch_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpatch_out", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpatch_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpatch_send", + "overloads": [ + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpatch_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tpcpatch", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpoint", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "pcpoint", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpointFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpointFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpointSeq", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tpcpointSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint[]", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpoint_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpoint_out", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpoint_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpcpoint_send", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpcpoint_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tpcpoint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpose", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tpose_make", + "meos": "tpose_make" + } + ] + }, + { + "name": "tposeFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeFromGeoPose", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpose_from_geopose", + "meos": "tpose_from_geopose" + } + ] + }, + { + "name": "tposeFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeInst", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tposeSeq", + "overloads": [ + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tposeSeqSet", + "overloads": [ + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tposeSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "tpose[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tpose_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tpose_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpose_out", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpose_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "tpose_send", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpose_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tpose_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tprecision", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "timestamptz", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzset", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspan", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tstzspanset", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "trajectory", + "overloads": [ + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpoint_trajectory", + "meos": "tpointseq_linear_trajectory" + }, + { + "pg": "Tpoint_trajectory", + "meos": "tpointseqset_linear_trajectory" + }, + { + "pg": "Tpoint_trajectory", + "meos": "tpoint_trajectory" + }, + { + "pg": "Tnpoint_trajectory", + "meos": "tnpoint_trajectory" + } + ] + }, + { + "name": "transform", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Spatialset_transform", + "meos": "spatialset_transform" + } + ] + }, + { + "name": "transformPipeline", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "cbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "cbufferset", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "poseset", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geomset", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "geogset", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 4 + } + ], + "c": [ + { + "pg": "Spatialset_transform_pipeline", + "meos": "spatialset_transform_pipeline" + } + ] + }, + { + "name": "transform_gk", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "translate", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 4, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "transscale", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeometry", + "minArity": 5, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + }, + { + "type": "float8", + "hasDefault": false + } + ], + "returns": "tgeompoint", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "traversedArea", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "bool", + "hasDefault": true + } + ], + "returns": "geography", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_traversed_area", + "meos": "trgeometry_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferinst_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseq_discstep_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseq_linear_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseq_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseqset_step_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseqset_linear_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbufferseqset_traversed_area" + }, + { + "pg": "Tcbuffer_traversed_area", + "meos": "tcbuffer_traversed_area" + }, + { + "pg": "Tgeo_traversed_area", + "meos": "tgeo_traversed_area" + } + ] + }, + { + "name": "trend", + "overloads": [ + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "tint", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_trend", + "meos": "tnumberseq_trend" + }, + { + "pg": "Tnumber_trend", + "meos": "tnumberseqset_trend" + }, + { + "pg": "Tnumber_trend", + "meos": "tnumber_trend" + } + ] + }, + { + "name": "trgeo_typmod_in", + "overloads": [ + { + "args": [ + { + "type": "cstring[]", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometry", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "pose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "geometry", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "trgeometryFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryFromEWKB", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryFromEWKT", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryFromHexEWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryFromText", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometryInst", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_to_tinstant", + "meos": "trgeometry_to_tinstant" + } + ] + }, + { + "name": "trgeometrySeq", + "overloads": [ + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_to_tsequence", + "meos": "trgeo_to_tsequence" + } + ] + }, + { + "name": "trgeometrySeqSet", + "overloads": [ + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "trgeometrySeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "trgeometry[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "trgeometry_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "trgeometry_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "trgeometry_out", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometry_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometry_send", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "trgeometry_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tsample", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "minusValues(trgeometry", + "hasDefault": false + }, + { + "type": "atValues(trgeometry", + "hasDefault": false + }, + { + "type": "minusValues(trgeometry", + "hasDefault": false + }, + { + "type": "atTime(trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "trgeometry", + "minArity": 7, + "maxArity": 8 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 4 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": true + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tspatial_analyze", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tspatial_extent_transfn", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "stbox", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "stbox", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tspatial_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tspatial_joinsel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "tspatial_sel", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 4, + "maxArity": 4 + } + ], + "c": [] + }, + { + "name": "tspatial_spgist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tspatial_supportfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tspatial_typmod_out", + "overloads": [ + { + "args": [ + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset", + "overloads": [ + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Dateset_to_tstzset", + "meos": "dateset_to_tstzset" + } + ] + }, + { + "name": "tstzsetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzsetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset_out", + "overloads": [ + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset_send", + "overloads": [ + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzset_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tstzset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan", + "overloads": [ + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan_out", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tstzspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan_send", + "overloads": [ + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspan_spgist_config", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "void", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "tstzspan_union_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanset", + "overloads": [ + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Datespanset_to_tstzspanset", + "meos": "datespanset_to_tstzspanset" + } + ] + }, + { + "name": "tstzspansetFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspansetFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanset_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanset_out", + "overloads": [ + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "cstring", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanset_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "tstzspanset_send", + "overloads": [ + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "bytea", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttext", + "overloads": [ + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttextFromBinary", + "overloads": [ + { + "args": [ + { + "type": "bytea", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttextFromHexWKB", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttextFromMFJSON", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttextInst", + "overloads": [ + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttextSeq", + "overloads": [ + { + "args": [ + { + "type": "ttext[]", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 4 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttextSeqSet", + "overloads": [ + { + "args": [ + { + "type": "ttext[]", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttextSeqSetGaps", + "overloads": [ + { + "args": [ + { + "type": "ttext[]", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttext_cat", + "overloads": [ + { + "args": [ + { + "type": "text", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "text", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttext_gist_compress", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttext_gist_consistent", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "smallint", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 5, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "ttext_in", + "overloads": [ + { + "args": [ + { + "type": "cstring", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "ttext_recv", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "oid", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "ttext_tagg_finalfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "ttext_tmax_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttext_tmax_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttext_tmin_combinefn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "internal", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "ttext_tmin_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "twAvg", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_twavg", + "meos": "tnumberseq_twavg" + }, + { + "pg": "Tnumber_twavg", + "meos": "tnumberseqset_twavg" + }, + { + "pg": "Tnumber_twavg", + "meos": "tnumber_twavg" + } + ] + }, + { + "name": "twCentroid", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Trgeometry_twcentroid", + "meos": "trgeometry_twcentroid" + }, + { + "pg": "Tpoint_twcentroid", + "meos": "tpointseq_twcentroid" + }, + { + "pg": "Tpoint_twcentroid", + "meos": "tpointseqset_twcentroid" + }, + { + "pg": "Tpoint_twcentroid", + "meos": "tpoint_twcentroid" + }, + { + "pg": "Tnpoint_twcentroid", + "meos": "tnpoint_twcentroid" + } + ] + }, + { + "name": "unnest", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + } + ], + "returns": "SETOF", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "update", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "trgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tcbuffer", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tpose", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeometry", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeography", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeompoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tgeogpoint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbool", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tbigint", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tfloat", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "ttext", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "tnpoint", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Temporal_update", + "meos": "temporal_update" + } + ] + }, + { + "name": "upper", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + } + ], + "returns": "textset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "ttext", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Textset_upper", + "meos": "textset_upper" + }, + { + "pg": "Span_upper", + "meos": "intspan_upper" + }, + { + "pg": "Span_upper", + "meos": "bigintspan_upper" + }, + { + "pg": "Span_upper", + "meos": "floatspan_upper" + }, + { + "pg": "Span_upper", + "meos": "datespan_upper" + }, + { + "pg": "Span_upper", + "meos": "tstzspan_upper" + }, + { + "pg": "Spanset_upper", + "meos": "intspanset_upper" + }, + { + "pg": "Spanset_upper", + "meos": "bigintspanset_upper" + }, + { + "pg": "Spanset_upper", + "meos": "floatspanset_upper" + }, + { + "pg": "Spanset_upper", + "meos": "tstzspanset_upper" + }, + { + "pg": "Spanset_upper", + "meos": "spanset_upper" + }, + { + "pg": "Ttext_upper", + "meos": "ttext_upper" + } + ] + }, + { + "name": "upperInc", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspan", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "datespanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tstzspanset", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Temporal_upper_inc", + "meos": "temporal_upper_inc" + } + ] + }, + { + "name": "v_clip_poly_point", + "overloads": [ + { + "args": [ + { + "type": "geometry(Polygon)", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "v_clip_poly_poly", + "overloads": [ + { + "args": [ + { + "type": "geometry(Polygon)", + "hasDefault": false + }, + { + "type": "geometry(Polygon)", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, + { + "name": "v_clip_tpoly_point", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry(Point)", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "v_clip_tpoly_poly", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "geometry(Polygon)", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "v_clip_tpoly_tpoint", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "v_clip_tpoly_tpoly", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "valueAtTimestamp", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "boolean", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "timestamptz", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tcbuffer_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tpose_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tgeo_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tbool_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tint_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tfloat_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "ttext_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "temporal_value_at_timestamptz" + }, + { + "pg": "Temporal_value_at_timestamptz", + "meos": "tnpoint_value_at_timestamptz" + } + ] + }, + { + "name": "valueBins", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "intspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + } + ], + "returns": "bigintspan[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "floatspan[]", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "valueBoxes", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "valueN", + "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "cbufferset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "cbuffer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpointset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pcpoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "pcpatchset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pcpatch", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "poseset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "pose", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geomset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geometry", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "geogset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "geography", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "h3indexset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "th3index", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "h3index", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbool", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bool", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "ttext", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "intset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "integer", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "textset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "text", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "dateset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "date", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tstzset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "timestamptz", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + }, + { + "args": [ + { + "type": "npointset", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + } + ], + "returns": "npoint", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Trgeometry_value_n", + "meos": "trgeometry_value_n" + }, + { + "pg": "Set_value_n", + "meos": "cbufferset_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tcbuffer_value_n" + }, + { + "pg": "Set_value_n", + "meos": "pcpointset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "pcpatchset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "poseset_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tpose_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tgeo_value_n" + }, + { + "pg": "Set_value_n", + "meos": "geoset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "intset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "bigintset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "floatset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "textset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "dateset_value_n" + }, + { + "pg": "Set_value_n", + "meos": "tstzset_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tbool_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tint_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tbigint_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tfloat_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "ttext_value_n" + }, + { + "pg": "Set_value_n", + "meos": "npointset_value_n" + }, + { + "pg": "Temporal_value_n", + "meos": "tnpoint_value_n" + } + ] + }, + { + "name": "valueSet", + "overloads": [ + { + "args": [ + { + "type": "tgeometry", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeography", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false + } + ], + "returns": "geogset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "intset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigintset", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "floatset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [] + }, + { + "name": "valueSpan", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + } + ], + "returns": "intspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + } + ], + "returns": "bigintspan", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + } + ], + "returns": "floatspan", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tnumber_to_span", + "meos": "tnumber_to_span" + } + ] + }, + { + "name": "valueSplit", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [ + { + "pg": "Tnumber_value_split", + "meos": "tint_value_split" + }, + { + "pg": "Tnumber_value_split", + "meos": "tfloat_value_split" + } + ] + }, + { + "name": "valueTiles", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 2, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "valueTimeBoxes", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "int", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 3, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 3, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "tbox[]", + "minArity": 3, + "maxArity": 5 + } + ], + "c": [] + }, + { + "name": "valueTimeSplit", + "overloads": [ + { + "args": [ + { + "type": "tint", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "integer", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "bigint", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + }, + { + "args": [ + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + } + ], + "c": [ + { + "pg": "Tnumber_value_time_split", + "meos": "tint_value_time_split" + }, + { + "pg": "Tnumber_value_time_split", + "meos": "tfloat_value_time_split" + } + ] + }, + { + "name": "valueTimeTiles", + "overloads": [ + { + "args": [ + { + "type": "tbox", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + }, + { + "type": "float", + "hasDefault": true + }, + { + "type": "timestamptz", + "hasDefault": true + } + ], + "returns": "SETOF", + "minArity": 3, + "maxArity": 5 + } + ], + "c": [ + { + "pg": "Tbox_value_time_tiles", + "meos": "tintbox_value_time_tiles" + }, + { + "pg": "Tbox_value_time_tiles", + "meos": "tfloatbox_value_time_tiles" + }, + { + "pg": "Tbox_value_tiles", + "meos": "tintbox_value_tiles" + }, + { + "pg": "Tbox_value_tiles", + "meos": "tfloatbox_value_tiles" + }, + { + "pg": "Tbox_time_tiles", + "meos": "tintbox_time_tiles" + }, + { + "pg": "Tbox_time_tiles", + "meos": "tfloatbox_time_tiles" + } + ] + }, + { + "name": "volume", + "overloads": [ + { + "args": [ + { + "type": "stbox", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Stbox_volume", + "meos": "stbox_volume" + } + ] + }, + { + "name": "wavg_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "wcount_transfn", + "overloads": [ + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "trgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tcbuffer", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpcpatch", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tpose", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeompoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeogpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeometry", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tgeography", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tbigint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tfloat", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + }, + { + "args": [ + { + "type": "internal", + "hasDefault": false + }, + { + "type": "tnpoint", + "hasDefault": false + }, + { + "type": "interval", + "hasDefault": false + } + ], + "returns": "internal", + "minArity": 3, + "maxArity": 3 + } + ], + "c": [] + }, + { + "name": "whenTrue", + "overloads": [ + { + "args": [ + { + "type": "tbool", + "hasDefault": false + } + ], + "returns": "tstzspanset", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tbool_when_true", + "meos": "tbool_when_true" + } + ] + }, + { + "name": "width", + "overloads": [ + { + "args": [ + { + "type": "intspan", + "hasDefault": false + } + ], + "returns": "int", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "bigintspan", + "hasDefault": false + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "floatspan", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "intspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "int", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "bigintspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "bigint", + "minArity": 1, + "maxArity": 2 + }, + { + "args": [ + { + "type": "floatspanset", + "hasDefault": false + }, + { + "type": "boolean", + "hasDefault": true + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 2 + } + ], + "c": [ + { + "pg": "Numspan_width", + "meos": "intspan_width" + }, + { + "pg": "Numspan_width", + "meos": "bigintspan_width" + }, + { + "pg": "Numspan_width", + "meos": "floatspan_width" + }, + { + "pg": "Numspanset_width", + "meos": "intspanset_width" + }, + { + "pg": "Numspanset_width", + "meos": "bigintspanset_width" + }, + { + "pg": "Numspanset_width", + "meos": "floatspanset_width" + }, + { + "pg": "Numspanset_width", + "meos": "numspanset_width" + }, + { + "pg": "Numspan_width", + "meos": "numspan_width" + } + ] + }, + { + "name": "xmax", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_xmax", + "meos": "tpcbox_xmax" + } + ] + }, + { + "name": "xmin", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_xmin", + "meos": "tpcbox_xmin" + } + ] + }, + { + "name": "yaw", + "overloads": [ + { + "args": [ + { + "type": "tpose", + "hasDefault": false + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, + { + "args": [ + { + "type": "pose", + "hasDefault": false + } + ], + "returns": "float", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Pose_yaw", + "meos": "pose_yaw" + } + ] + }, + { + "name": "ymax", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_ymax", + "meos": "tpcbox_ymax" + } + ] + }, + { + "name": "ymin", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_ymin", + "meos": "tpcbox_ymin" + } + ] + }, + { + "name": "zmax", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_zmax", + "meos": "tpcbox_zmax" + } + ] + }, + { + "name": "zmin", + "overloads": [ + { + "args": [ + { + "type": "tpcbox", + "hasDefault": false + } + ], + "returns": "float8", + "minArity": 1, + "maxArity": 1 + } + ], + "c": [ + { + "pg": "Tpcbox_zmin", + "meos": "tpcbox_zmin" + } + ] + } + ] +} \ No newline at end of file diff --git a/codegen/tools/NAMED_SURFACE.md b/codegen/tools/NAMED_SURFACE.md new file mode 100644 index 00000000..f8c1669e --- /dev/null +++ b/codegen/tools/NAMED_SURFACE.md @@ -0,0 +1,42 @@ +# Canonical named-operation surface (codegen layer above the C IDL) + +`meos-idl.json` describes MEOS at the **C-FFI level** (`temporal_as_mfjson`, raw C +params). Bindings, however, mirror MobilityDB's **named** surface — `asMFJSON`, +with overloads and per-argument defaults — and need to know which MEOS C function +each named function calls. `extract_named_surface.py` produces that layer, +`meos-named-surface.json`, from two canonical sources already in the tree: + +- **SQL catalog** (`mobilitydb/sql/**/*.in.sql`) — `CREATE FUNCTION` gives every + named function, its overloads, argument types, and which arguments have + `DEFAULT`s (so the valid call arities are known: `asMFJSON` → minArity 1, + maxArity 4). +- **doxygen chain** — `@sqlfn name()` on the PG C wrapper and `@csqlfn #PgFunc()` + on the MEOS C function link `SQL name → PG C function → MEOS C function` + (`asMFJSON → Temporal_as_mfjson → temporal_as_mfjson`). + +Run: `extract_named_surface.py ` → `../input/meos-named-surface.json`. + +## Why (North Star) + +Every binding's named surface — and the Spark Connect registrar that injects it — +is then a deterministic emission from this one spec, never a hand-maintained +function list: the camelCase Spark idiom is a mechanical remap of the canonical +name, the UDF body calls the linked MEOS C function, and the overloads/defaults +fix the call-arity exactly (no runtime null-padding heuristic). A new function in +the SQL catalog flows into every binding with no per-binding edit. + +## A2 — emitters that consume this spec (next) + +- **MobilitySpark UDFs + Connect registrar:** for each function, remap the name to + the Spark idiom, emit a UDF over the linked MEOS C function for each overload + arity, and emit the matching `SparkSessionExtensions.injectFunction` entry. +- Same spec feeds the PG/DuckDB identity dialects, PyMEOS, and the Flink/Kafka + facades. + +## Refinements tracked + +- Group each overload with its specific C function by first-argument type (the `c` + list is currently per-name; type-dispatched families like `speed` carry several). +- Parse `@sqlop` (760 operator tags) for the operator surface. +- Raise C-linkage coverage past the current 434/1284 (alias and multi-`@csqlfn` + resolution). diff --git a/codegen/tools/extract_named_surface.py b/codegen/tools/extract_named_surface.py new file mode 100644 index 00000000..855d8392 --- /dev/null +++ b/codegen/tools/extract_named_surface.py @@ -0,0 +1,101 @@ +#!/usr/bin/env python3 +"""Extract the canonical named-operation surface of MobilityDB. + +The surface that bindings (MobilitySpark UDFs, the Spark Connect registrar, +PyMEOS, ...) must mirror is the MobilityDB SQL function catalog: the named +functions with their overloads and per-argument defaults. The SQL <-> C linkage +is already canonical in the source as a doxygen tag chain: + + SQL name <-(@sqlfn name())- PG C function <-(@csqlfn #PgFunc())- MEOS C function + +This tool reads the MobilityDB tree and emits one spec, meos-named-surface.json, +that the codegen consumes to generate each binding's named surface and its +Spark Connect registrar from a single source -- no hand-maintained function list. + +Usage: + extract_named_surface.py [out.json] +""" +import json, re, sys, os, glob + +# ---- 1. SQL catalog: names, overloads, per-arg type + default --------------- +CREATE_RE = re.compile(r'CREATE\s+(?:OR\s+REPLACE\s+)?FUNCTION\s+(\w+)\s*\((.*?)\)\s*RETURNS\s+([A-Za-z0-9_\[\]]+)', + re.IGNORECASE | re.DOTALL) + +def split_top(args): + """Split an arg list on top-level commas (ignoring commas inside parens).""" + out, depth, cur = [], 0, '' + for ch in args: + if ch == '(': depth += 1; cur += ch + elif ch == ')': depth -= 1; cur += ch + elif ch == ',' and depth == 0: out.append(cur); cur = '' + else: cur += ch + if cur.strip(): out.append(cur) + return [a.strip() for a in out if a.strip()] + +def parse_arg(a): + """One arg -> (type, has_default). Forms: 'type' | 'name type' | '[name] type DEFAULT v'.""" + has_def = bool(re.search(r'\bDEFAULT\b', a, re.IGNORECASE)) + head = re.split(r'\bDEFAULT\b', a, flags=re.IGNORECASE)[0].strip() + toks = head.split() + typ = toks[-1] if toks else head # type is the last token before DEFAULT + return typ, has_def + +def parse_sql(root): + funcs = {} + for f in glob.glob(os.path.join(root, 'mobilitydb', 'sql', '**', '*.in.sql'), recursive=True): + text = open(f, encoding='utf-8', errors='ignore').read() + for m in CREATE_RE.finditer(text): + name, arglist, ret = m.group(1), m.group(2), m.group(3) + args = [dict(zip(('type', 'hasDefault'), parse_arg(a))) for a in split_top(arglist)] + req = sum(1 for a in args if not a['hasDefault']) + funcs.setdefault(name, []).append( + {'args': args, 'returns': ret, 'minArity': req, 'maxArity': len(args)}) + return funcs + +# ---- 2. doxygen chain: SQL name <- PG C func <- MEOS C func ------------------ +SQLFN_RE = re.compile(r'@sqlfn\s+(\w+)\s*\(') # on the PG C wrapper comment +CSQLFN_RE = re.compile(r'@csqlfn\s+#(\w+)\s*\(') # on the MEOS C function comment +PGDEF_RE = re.compile(r'^(\w+)\s*\(PG_FUNCTION_ARGS\)', re.MULTILINE) +CDEF_RE = re.compile(r'^(\w+)\s*\(', re.MULTILINE) # a C function definition name at col 0 + +def _next_name(text, pos, pat): + m = pat.search(text, pos) + return m.group(1) if m else None + +def parse_doxygen(root): + pg2sql, meos2pg = {}, {} + for sub, sqlmap, defpat, tagpat, key in ( + ('mobilitydb', pg2sql, PGDEF_RE, SQLFN_RE, 'sql'), + ('meos', meos2pg, CDEF_RE, CSQLFN_RE, 'csql')): + for f in glob.glob(os.path.join(root, sub, 'src', '**', '*.c'), recursive=True): + text = open(f, encoding='utf-8', errors='ignore').read() + for m in tagpat.finditer(text): + target = m.group(1) # sql name, or referenced PG func + cfunc = _next_name(text, m.end(), defpat) # the C function this comment documents + if cfunc: + sqlmap[cfunc] = target + return pg2sql, meos2pg + +def main(): + root = sys.argv[1] if len(sys.argv) > 1 else '.' + out = sys.argv[2] if len(sys.argv) > 2 else os.path.join( + os.path.dirname(__file__), '..', 'input', 'meos-named-surface.json') + sqlfuncs = parse_sql(root) + pg2sql, meos2pg = parse_doxygen(root) + sql2meos = {} + for meos, pg in meos2pg.items(): + sqlname = pg2sql.get(pg) + if sqlname: + sql2meos.setdefault(sqlname, []).append({'pg': pg, 'meos': meos}) + surface = [] + for name in sorted(sqlfuncs): + surface.append({'name': name, 'overloads': sqlfuncs[name], 'c': sql2meos.get(name, [])}) + spec = {'source': 'MobilityDB SQL catalog + doxygen @sqlfn/@csqlfn chain', + 'functionCount': len(surface), 'functions': surface} + os.makedirs(os.path.dirname(out), exist_ok=True) + json.dump(spec, open(out, 'w'), indent=1) + linked = sum(1 for s in surface if s['c']) + print(f'named functions: {len(surface)} with C linkage: {linked} -> {out}') + +if __name__ == '__main__': + main() From 0b6542dd011a252c64a2e6686918a3bf6b3c8658 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 06:45:05 +0200 Subject: [PATCH 10/14] Derive canonical-function to Spark-impl mapping for the registrar emitter extract_spark_impls.py scans the MobilitySpark UDFs (register name + field + body GeneratedFunctions call) and joins on the named surface's SQL->MEOS C linkage to recover canonical name -> Spark impl mechanically, so the emitter needs no hand-written remap. The join classifies each function for emission: single-impl (identity name over one impl), multi-impl (identity name with a WKB-type-tag dispatch builder), and join gaps to close. --- codegen/input/spark-impls.json | 17983 +++++++++++++++++++++++++ codegen/tools/NAMED_SURFACE.md | 36 +- codegen/tools/extract_spark_impls.py | 78 + 3 files changed, 18091 insertions(+), 6 deletions(-) create mode 100644 codegen/input/spark-impls.json create mode 100644 codegen/tools/extract_spark_impls.py diff --git a/codegen/input/spark-impls.json b/codegen/input/spark-impls.json new file mode 100644 index 00000000..82ffc7e1 --- /dev/null +++ b/codegen/input/spark-impls.json @@ -0,0 +1,17983 @@ +{ + "implCount": 1308, + "impls": { + "trgeometry": { + "field": "trgeometry", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "trgeometryInst": { + "field": "trgeometryInst", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tpose": { + "field": "tpose", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "trgeometryFromMFJSON": { + "field": "trgeometryFromMFJSON", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_as_hexwkb" + ] + }, + "trgeometryFromText": { + "field": "trgeometryFromText", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "trgeometryFromEWKT": { + "field": "trgeometryFromEWKT", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "trgeometryFromHexEWKB": { + "field": "trgeometryFromHexEWKB", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "trgeometryFromBinary": { + "field": "trgeometryFromBinary", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "trgeometryFromEWKB": { + "field": "trgeometryFromEWKB", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "trgeometrySeq": { + "field": "trgeometrySeq", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_as_hexwkb" + ] + }, + "trgeometrySeqSet": { + "field": "trgeometrySeqSet", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequenceset", + "temporal_as_hexwkb" + ] + }, + "trgeometrySeqSetGaps": { + "field": "trgeometrySeqSetGaps", + "class": "RgeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "tsequenceset_make_gaps", + "temporal_as_hexwkb" + ] + }, + "cbuffer": { + "field": "cbuffer", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "geo_from_text" + ] + }, + "point": { + "field": "point", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_as_text" + ] + }, + "radius": { + "field": "radius", + "class": "CbufferUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [] + }, + "cbufferContains": { + "field": "cbufferContains", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferCovers": { + "field": "cbufferCovers", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferDisjoint": { + "field": "cbufferDisjoint", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferIntersects": { + "field": "cbufferIntersects", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferTouches": { + "field": "cbufferTouches", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferDwithin": { + "field": "cbufferDwithin", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferSame": { + "field": "cbufferSame", + "class": "CbufferUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbuffersetFromHexWKB": { + "field": "cbuffersetFromHexWKB", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "cbuffersetFromBinary": { + "field": "cbuffersetFromBinary", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "tcbuffer": { + "field": "tcbuffer", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "tcbufferInst": { + "field": "tcbufferInst", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "tfloatinst_make", + "temporal_as_hexwkb", + "temporal_from_hexwkb" + ] + }, + "tcbufferFromText": { + "field": "tcbufferFromText", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_as_hexwkb" + ] + }, + "tcbufferFromEWKT": { + "field": "tcbufferFromEWKT", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tcbufferFromHexEWKB": { + "field": "tcbufferFromHexEWKB", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tcbufferFromBinary": { + "field": "tcbufferFromBinary", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tcbufferFromEWKB": { + "field": "tcbufferFromEWKB", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tcbufferSeq": { + "field": "tcbufferSeq", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_as_hexwkb" + ] + }, + "tcbufferSeqSet": { + "field": "tcbufferSeqSet", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequenceset", + "temporal_as_hexwkb" + ] + }, + "tcbufferSeqSetGaps": { + "field": "tcbufferSeqSetGaps", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "tsequenceset_make_gaps", + "temporal_as_hexwkb" + ] + }, + "points": { + "field": "points", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_as_hexwkb" + ] + }, + "tcbufferRadius": { + "field": "tcbufferRadius", + "class": "CbufferUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_as_hexwkb" + ] + }, + "pose": { + "field": "pose", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "rotation": { + "field": "rotation", + "class": "PoseUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [] + }, + "poseSame": { + "field": "poseSame", + "class": "PoseUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseFromText": { + "field": "poseFromText", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "poseFromEWKT": { + "field": "poseFromEWKT", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "poseFromHexEWKB": { + "field": "poseFromHexEWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "poseFromBinary": { + "field": "poseFromBinary", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "poseFromEWKB": { + "field": "poseFromEWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "posesetFromHexWKB": { + "field": "posesetFromHexWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "posesetFromText": { + "field": "posesetFromText", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_as_hexwkb" + ] + }, + "posesetFromEWKT": { + "field": "posesetFromEWKT", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "posesetFromBinary": { + "field": "posesetFromBinary", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "posesetFromEWKB": { + "field": "posesetFromEWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tposeInst": { + "field": "tposeInst", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "tfloatinst_make", + "temporal_as_hexwkb", + "temporal_from_hexwkb" + ] + }, + "tposeFromText": { + "field": "tposeFromText", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_as_hexwkb" + ] + }, + "tposeFromEWKT": { + "field": "tposeFromEWKT", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tposeFromMFJSON": { + "field": "tposeFromMFJSON", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_as_hexwkb" + ] + }, + "tposeFromHexEWKB": { + "field": "tposeFromHexEWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tposeFromBinary": { + "field": "tposeFromBinary", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tposeFromEWKB": { + "field": "tposeFromEWKB", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tposeSeq": { + "field": "tposeSeq", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_as_hexwkb" + ] + }, + "tposeSeqSet": { + "field": "tposeSeqSet", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequenceset", + "temporal_as_hexwkb" + ] + }, + "tposeSeqSetGaps": { + "field": "tposeSeqSetGaps", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "tsequenceset_make_gaps", + "temporal_as_hexwkb" + ] + }, + "tposePoints": { + "field": "tposePoints", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_as_hexwkb" + ] + }, + "tposeRotation": { + "field": "tposeRotation", + "class": "PoseUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "geomBuffer": { + "field": "geomBuffer", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_buffer", + "geo_as_text" + ] + }, + "geomConvexHull": { + "field": "geomConvexHull", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_convex_hull", + "geo_as_text" + ] + }, + "geomIntersection": { + "field": "geomIntersection", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_intersection2d", + "geo_as_text" + ] + }, + "setSRID": { + "field": "setSRID", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_set_srid", + "temporal_as_hexwkb" + ] + }, + "transform": { + "field": "transform", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_transform", + "temporal_as_hexwkb" + ] + }, + "asText": { + "field": "asText", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_as_text" + ] + }, + "asEWKT": { + "field": "asEWKT", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_as_ewkt" + ] + }, + "atElevation": { + "field": "atElevation", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "floatspan_make", + "tpoint_at_elevation", + "temporal_as_hexwkb" + ] + }, + "tContains": { + "field": "tContains", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tcontains_geo_tgeo", + "temporal_as_hexwkb" + ] + }, + "tCovers": { + "field": "tCovers", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tcovers_tgeo_tgeo", + "temporal_as_hexwkb" + ] + }, + "tDwithin": { + "field": "tDwithin", + "class": "BerlinMODUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdwithin_tgeo_tgeo", + "temporal_as_hexwkb" + ] + }, + "bearingToPoint": { + "field": "bearingToPoint", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "bearing_tpoint_point", + "temporal_as_hexwkb" + ] + }, + "bearing": { + "field": "bearing", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "bearing_tpoint_tpoint", + "temporal_as_hexwkb" + ] + }, + "twCentroid": { + "field": "twCentroid", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_twcentroid", + "geo_as_text" + ] + }, + "geoSame": { + "field": "geoSame", + "class": "GeoAnalyticsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geo_same" + ] + }, + "tpointConvexHull": { + "field": "tpointConvexHull", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_convex_hull", + "geo_as_text" + ] + }, + "tpointExpandSpace": { + "field": "tpointExpandSpace", + "class": "GeoAnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_expand_space", + "stbox_as_hexwkb", + "tspatial_transform_pipeline", + "temporal_as_hexwkb", + "stbox_from_hexwkb", + "stbox_transform_pipeline", + "geo_from_text" + ] + }, + "eIntersects": { + "field": "eIntersects", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_isgeodetic", + "stbox_srid", + "geo_from_text", + "geom_to_geog", + "eintersects_tgeo_geo" + ] + }, + "eDisjoint": { + "field": "eDisjoint", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "edisjoint_tgeo_geo" + ] + }, + "eTouches": { + "field": "eTouches", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "etouches_tgeo_geo" + ] + }, + "eCovers": { + "field": "eCovers", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "ecovers_tgeo_geo" + ] + }, + "eContains": { + "field": "eContains", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "econtains_geo_tgeo" + ] + }, + "eDisjointTgeoTgeo": { + "field": "eDisjointTgeoTgeo", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "edisjoint_tgeo_tgeo" + ] + }, + "eIntersectsTgeoTgeo": { + "field": "eIntersectsTgeoTgeo", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "eintersects_tgeo_tgeo" + ] + }, + "nearestApproachDistance": { + "field": "nearestApproachDistance", + "class": "GeoUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "nad_tgeo_tgeo" + ] + }, + "eDwithin": { + "field": "eDwithin", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "edwithin_tgeo_tgeo" + ] + }, + "eDwithinGeo": { + "field": "eDwithinGeo", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "edwithin_tgeo_geo" + ] + }, + "aIntersects": { + "field": "aIntersects", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "aintersects_tgeo_geo" + ] + }, + "aDisjoint": { + "field": "aDisjoint", + "class": "BerlinMODUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "adisjoint_tgeo_tgeo" + ] + }, + "aDwithin": { + "field": "aDwithin", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "adwithin_tgeo_tgeo" + ] + }, + "aDwithinGeo": { + "field": "aDwithinGeo", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid", + "geo_from_text", + "adwithin_tgeo_geo" + ] + }, + "tgeompoint": { + "field": "tgeompoint", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tgeompoint_in", + "temporal_as_hexwkb" + ] + }, + "trajectory": { + "field": "trajectory", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_trajectory", + "geo_as_hexewkb" + ] + }, + "geomFromText": { + "field": "geomFromText", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_as_hexewkb" + ] + }, + "getX": { + "field": "getX", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_get_x", + "temporal_as_hexwkb" + ] + }, + "getY": { + "field": "getY", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_get_y", + "temporal_as_hexwkb" + ] + }, + "getZ": { + "field": "getZ", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_hasz", + "tpoint_get_z", + "temporal_as_hexwkb" + ] + }, + "cumulativeLength": { + "field": "cumulativeLength", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_cumulative_length", + "temporal_as_hexwkb" + ] + }, + "stops": { + "field": "stops", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_stops", + "temporal_as_hexwkb" + ] + }, + "isSimple": { + "field": "isSimple", + "class": "GeoUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_is_simple" + ] + }, + "shortestLine": { + "field": "shortestLineTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "geo_as_text" + ] + }, + "tpointTransform": { + "field": "tpointTransform", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_transform", + "temporal_as_hexwkb" + ] + }, + "tpointAsText": { + "field": "tpointAsText", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_as_text" + ] + }, + "tpointAsEWKT": { + "field": "tpointAsEWKT", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_as_ewkt" + ] + }, + "tpointSRID": { + "field": "tpointSRID", + "class": "GeoUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_srid" + ] + }, + "tpointSetSRID": { + "field": "tpointSetSRID", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_set_srid", + "temporal_as_hexwkb" + ] + }, + "tpointRound": { + "field": "tpointRound", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_round", + "temporal_as_hexwkb" + ] + }, + "tpointToStbox": { + "field": "tpointToStbox", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_as_hexwkb" + ] + }, + "expandSpace": { + "field": "expandSpace", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Number" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "temporal_from_hexwkb", + "tspatial_to_stbox", + "stbox_expand_space", + "stbox_as_hexwkb" + ] + }, + "geoAsEwkt": { + "field": "geoAsEwkt", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_as_ewkt" + ] + }, + "geoAsGeojson": { + "field": "geoAsGeojson", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Integer", + "Integer" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_as_geojson" + ] + }, + "geoFromGeojson": { + "field": "geoFromGeojson", + "class": "GeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_geojson", + "geo_as_text" + ] + }, + "geomContains": { + "field": "geomContains", + "class": "BerlinMODUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "pg_timestamptz_in", + "tpointinst_make", + "econtains_geo_tgeo" + ] + }, + "geomCovers": { + "field": "geomCovers", + "class": "StaticGeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geom_covers" + ] + }, + "geomDisjoint": { + "field": "geomDisjoint", + "class": "StaticGeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geom_disjoint2d" + ] + }, + "geomIntersects": { + "field": "geomIntersects", + "class": "StaticGeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geom_intersects2d" + ] + }, + "geomTouches": { + "field": "geomTouches", + "class": "StaticGeoUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geom_touches" + ] + }, + "geomDwithin": { + "field": "geomDwithin", + "class": "StaticGeoUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "Boolean", + "meosFns": [ + "geo_from_text", + "geom_dwithin2d" + ] + }, + "geomDistance": { + "field": "geomDistance", + "class": "StaticGeoUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "geo_from_text", + "geom_distance2d" + ] + }, + "geomLength": { + "field": "geomLength", + "class": "StaticGeoUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "geo_from_text", + "geom_length" + ] + }, + "geomPerimeter": { + "field": "geomPerimeter", + "class": "StaticGeoUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "geo_from_text", + "geom_perimeter" + ] + }, + "geomCentroid": { + "field": "geomCentroid", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_centroid", + "geo_as_text" + ] + }, + "geomBoundary": { + "field": "geomBoundary", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_boundary", + "geo_as_text" + ] + }, + "geomDifference": { + "field": "geomDifference", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_difference2d", + "geo_as_text" + ] + }, + "geomUnaryUnion": { + "field": "geomUnaryUnion", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geom_unary_union", + "geo_as_text" + ] + }, + "geoReverse": { + "field": "geoReverse", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_reverse", + "geo_as_text" + ] + }, + "geoRound": { + "field": "geoRound", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_round", + "geo_as_text" + ] + }, + "lineInterpolatePoint": { + "field": "lineInterpolatePoint", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "line_interpolate_point", + "geo_as_text" + ] + }, + "lineSubstring": { + "field": "lineSubstring", + "class": "StaticGeoUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "line_substring", + "geo_as_text" + ] + }, + "tdistanceTgeoGeo": { + "field": "tdistanceTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tdistance_tgeo_geo", + "temporal_as_hexwkb" + ] + }, + "tdistanceTgeoTgeo": { + "field": "tdistanceTgeoTgeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdistance_tgeo_tgeo", + "temporal_as_hexwkb" + ] + }, + "tdistanceTfloatFloat": { + "field": "tdistanceTfloatFloat", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdistance_tfloat_float", + "temporal_as_hexwkb" + ] + }, + "tdistanceTintInt": { + "field": "tdistanceTintInt", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdistance_tint_int", + "temporal_as_hexwkb" + ] + }, + "tdistanceTnumberTnumber": { + "field": "tdistanceTnumberTnumber", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdistance_tnumber_tnumber", + "temporal_as_hexwkb" + ] + }, + "nadTgeoGeo": { + "field": "nadTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text" + ] + }, + "nadTgeoStbox": { + "field": "nadTgeoStbox", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "stbox_from_hexwkb" + ] + }, + "nadTgeoTgeo": { + "field": "nadTgeoTgeo", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb" + ] + }, + "naiTgeoGeo": { + "field": "naiTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "temporal_as_hexwkb" + ] + }, + "naiTgeoTgeo": { + "field": "naiTgeoTgeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "shortestLineTgeoGeo": { + "field": "shortestLineTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "geo_as_text" + ] + }, + "shortestLineTgeoTgeo": { + "field": "shortestLineTgeoTgeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "shortestline_tgeo_tgeo", + "geo_as_text" + ] + }, + "minDistanceTgeoGeo": { + "field": "minDistanceTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text" + ] + }, + "minDistanceTgeoTgeo": { + "field": "minDistanceTgeoTgeo", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb" + ] + }, + "minDistanceTgeoarrTgeoarr": { + "field": "minDistanceTgeoarrTgeoarr", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "Object", + "Object" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "mindistance_tgeoarr_tgeoarr", + "spanset_as_hexwkb" + ] + }, + "nearestApproachInstant": { + "field": "naiTgeoGeo", + "class": "DistanceUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "temporal_as_hexwkb" + ] + }, + "minDistance": { + "field": "minDistanceTgeoarrTgeoarr", + "class": "DistanceUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "Object", + "Object" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "mindistance_tgeoarr_tgeoarr", + "spanset_as_hexwkb" + ] + }, + "stboxHasx": { + "field": "stboxHasx", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_hasx" + ] + }, + "stboxHast": { + "field": "stboxHast", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_hast" + ] + }, + "stboxHasz": { + "field": "stboxHasz", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_hasz" + ] + }, + "stboxXmin": { + "field": "stboxXmin", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_xmin" + ] + }, + "stboxXmax": { + "field": "stboxXmax", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_xmax" + ] + }, + "stboxYmin": { + "field": "stboxYmin", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_ymin" + ] + }, + "stboxYmax": { + "field": "stboxYmax", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_ymax" + ] + }, + "stboxZmin": { + "field": "stboxZmin", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_zmin" + ] + }, + "stboxZmax": { + "field": "stboxZmax", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_zmax" + ] + }, + "stboxTmin": { + "field": "stboxTmin", + "class": "STBoxUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "stbox_tmin" + ] + }, + "stboxTmax": { + "field": "stboxTmax", + "class": "STBoxUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "stbox_tmax" + ] + }, + "stboxTminInc": { + "field": "stboxTminInc", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_tmin_inc" + ] + }, + "stboxTmaxInc": { + "field": "stboxTmaxInc", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_tmax_inc" + ] + }, + "stboxSrid": { + "field": "stboxSrid", + "class": "STBoxUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "stbox_srid" + ] + }, + "stboxExpandSpace": { + "field": "stboxExpandSpace", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "stbox_expand_space" + ] + }, + "stboxExpandTime": { + "field": "stboxExpandTime", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "stbox_expand_time" + ] + }, + "stboxArea": { + "field": "stboxArea", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_area" + ] + }, + "stboxPerimeter": { + "field": "stboxPerimeter", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_perimeter" + ] + }, + "stboxVolume": { + "field": "stboxVolume", + "class": "STBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "stbox_volume" + ] + }, + "stboxIsGeodetic": { + "field": "stboxIsGeodetic", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_isgeodetic" + ] + }, + "stboxToGeo": { + "field": "stboxToGeo", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_to_geo", + "geo_as_text" + ] + }, + "stboxToTstzspan": { + "field": "stboxToTstzspan", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_to_tstzspan", + "span_as_hexwkb" + ] + }, + "stboxRound": { + "field": "stboxRound", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "stbox_round" + ] + }, + "stboxSetSrid": { + "field": "stboxSetSrid", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "stbox_set_srid" + ] + }, + "stboxShiftScaleTime": { + "field": "stboxShiftScaleTime", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "stbox_shift_scale_time" + ] + }, + "stboxGetSpace": { + "field": "stboxGetSpace", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_get_space" + ] + }, + "geoToStbox": { + "field": "geoToStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_to_stbox" + ] + }, + "tstzspanToStbox": { + "field": "tstzspanToStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "tstzspan_to_stbox" + ] + }, + "timestamptzToStbox": { + "field": "timestamptzToStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "timestamptz_to_stbox" + ] + }, + "intersectionStboxStbox": { + "field": "intersectionStboxStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "unionStboxStbox": { + "field": "unionStboxStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_stbox_stbox" + ] + }, + "stboxIntersection": { + "field": "intersectionStboxStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "stboxUnion": { + "field": "unionStboxStbox", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_stbox_stbox" + ] + }, + "stboxX": { + "field": "stboxX", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "Double", + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "stboxT": { + "field": "stboxT", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "stboxXT": { + "field": "stboxXT", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 5, + "argTypes": [ + "Double", + "Double", + "Double", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "stboxZ": { + "field": "stboxZ", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 6, + "argTypes": [ + "Double", + "Double", + "Double", + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "stboxZT": { + "field": "stboxZT", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 7, + "argTypes": [ + "Double", + "Double", + "Double", + "Double", + "Double", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geodstboxZ": { + "field": "geodstboxZ", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 6, + "argTypes": [ + "Double", + "Double", + "Double", + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "geodstboxT": { + "field": "geodstboxT", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geodstboxZT": { + "field": "geodstboxZT", + "class": "STBoxUDFs", + "retDataType": "StringType", + "arity": 7, + "argTypes": [ + "Double", + "Double", + "Double", + "Double", + "Double", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "stboxContains": { + "field": "stboxContains", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxContained": { + "field": "stboxContained", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverlaps": { + "field": "stboxOverlaps", + "class": "BerlinMODUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "stbox_from_hexwkb", + "overlaps_stbox_stbox" + ] + }, + "stboxLeft": { + "field": "stboxLeft", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverleft": { + "field": "stboxOverleft", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxRight": { + "field": "stboxRight", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverright": { + "field": "stboxOverright", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxBelow": { + "field": "stboxBelow", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverbelow": { + "field": "stboxOverbelow", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAbove": { + "field": "stboxAbove", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverabove": { + "field": "stboxOverabove", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxBefore": { + "field": "stboxBefore", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverbefore": { + "field": "stboxOverbefore", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAfter": { + "field": "stboxAfter", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverafter": { + "field": "stboxOverafter", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAdjacent": { + "field": "stboxAdjacent", + "class": "STBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "span_from_hexwkb", + "stbox_make", + "stbox_as_hexwkb" + ] + }, + "translate": { + "field": "translate2", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "translate3": { + "field": "translate3", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String", + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "rotate": { + "field": "rotate", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "rotateX": { + "field": "rotateX", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "rotateY": { + "field": "rotateY", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "rotateZ": { + "field": "rotateZ", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "transscale": { + "field": "transscale", + "class": "GeoAffineUDFs", + "retDataType": "StringType", + "arity": 5, + "argTypes": [ + "String", + "Double", + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tDisjoint": { + "field": "tDisjoint", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tdisjoint_tgeo_geo" + ] + }, + "tIntersects": { + "field": "tIntersects", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tintersects_tgeo_geo" + ] + }, + "tTouches": { + "field": "tTouches", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "ttouches_tgeo_geo" + ] + }, + "tDisjointTgeoTgeo": { + "field": "tDisjointTgeoTgeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tdisjoint_tgeo_tgeo" + ] + }, + "tIntersectsTgeoTgeo": { + "field": "tIntersectsTgeoTgeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tintersects_tgeo_tgeo" + ] + }, + "tTouchesTogeoTgeo": { + "field": "tTouchesTogeoTgeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttouches_tgeo_tgeo" + ] + }, + "tContainsTgeoGeo": { + "field": "tContainsTgeoGeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tcontains_tgeo_geo" + ] + }, + "tContainsTgeoTgeo": { + "field": "tContainsTgeoTgeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tcontains_tgeo_tgeo" + ] + }, + "tCoversTgeoGeo": { + "field": "tCoversTgeoGeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tcovers_tgeo_geo" + ] + }, + "tDwithinTgeoGeo": { + "field": "tDwithinTgeoGeo", + "class": "TempSpatialRelsUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Number" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tdwithin_tgeo_geo" + ] + }, + "aDisjointTgeoGeo": { + "field": "aDisjointTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aDisjointTgeoTgeo": { + "field": "aDisjointTgeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aIntersectsTgeoGeo": { + "field": "aIntersectsTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aIntersectsTgeoTgeo": { + "field": "aIntersectsTgeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aTouchesTgeoGeo": { + "field": "aTouchesTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aTouchesTgeoTgeo": { + "field": "aTouchesTgeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aContainsTgeoGeo": { + "field": "aContainsTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aContainsTgeoTgeo": { + "field": "aContainsTgeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aContainsGeoTgeo": { + "field": "aContainsGeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aCoversTgeoGeo": { + "field": "aCoversTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aDwithinTgeoGeo": { + "field": "aDwithinTgeoGeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [] + }, + "aDwithinTgeoTgeo": { + "field": "aDwithinTgeoTgeo", + "class": "AlwaysSpatialRelsUDFs", + "retDataType": "BooleanType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxLeftTpoint": { + "field": "stboxLeftTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverleftTpoint": { + "field": "stboxOverleftTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxRightTpoint": { + "field": "stboxRightTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverrightTpoint": { + "field": "stboxOverrightTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxBelowTpoint": { + "field": "stboxBelowTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverbelowTpoint": { + "field": "stboxOverbelowTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAboveTpoint": { + "field": "stboxAboveTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOveraboveTpoint": { + "field": "stboxOveraboveTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxFrontTpoint": { + "field": "stboxFrontTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverfrontTpoint": { + "field": "stboxOverfrontTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxBackTpoint": { + "field": "stboxBackTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverbackTpoint": { + "field": "stboxOverbackTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxBeforeTpoint": { + "field": "stboxBeforeTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverbeforeTpoint": { + "field": "stboxOverbeforeTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAfterTpoint": { + "field": "stboxAfterTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverafterTpoint": { + "field": "stboxOverafterTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxAdjacentTpoint": { + "field": "stboxAdjacentTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxContainsTpoint": { + "field": "stboxContainsTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxContainedTpoint": { + "field": "stboxContainedTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxOverlapsTpoint": { + "field": "stboxOverlapsTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxSameTpoint": { + "field": "stboxSameTpoint", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointLeftStbox": { + "field": "tpointLeftStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverleftStbox": { + "field": "tpointOverleftStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointRightStbox": { + "field": "tpointRightStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverrightStbox": { + "field": "tpointOverrightStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointBelowStbox": { + "field": "tpointBelowStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverbelowStbox": { + "field": "tpointOverbelowStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointAboveStbox": { + "field": "tpointAboveStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOveraboveStbox": { + "field": "tpointOveraboveStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointFrontStbox": { + "field": "tpointFrontStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverfrontStbox": { + "field": "tpointOverfrontStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointBackStbox": { + "field": "tpointBackStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverbackStbox": { + "field": "tpointOverbackStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointBeforeStbox": { + "field": "tpointBeforeStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverbeforeStbox": { + "field": "tpointOverbeforeStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointAfterStbox": { + "field": "tpointAfterStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverafterStbox": { + "field": "tpointOverafterStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointAdjacentStbox": { + "field": "tpointAdjacentStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointContainsStbox": { + "field": "tpointContainsStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointContainedStbox": { + "field": "tpointContainedStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointOverlapsStbox": { + "field": "tpointOverlapsStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointSameStbox": { + "field": "tpointSameStbox", + "class": "TPointSTBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "h3IndexFromText": { + "field": "h3IndexFromText", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "h3index_parse" + ] + }, + "h3IndexAsText": { + "field": "h3IndexAsText", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "String", + "meosFns": [ + "h3index_to_string" + ] + }, + "h3IndexParse": { + "field": "h3IndexParse", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "h3index_parse" + ] + }, + "h3IndexToString": { + "field": "h3IndexToString", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "String", + "meosFns": [ + "h3index_to_string" + ] + }, + "h3IndexEq": { + "field": "h3IndexEq", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_eq" + ] + }, + "h3IndexNe": { + "field": "h3IndexNe", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_ne" + ] + }, + "h3IndexLt": { + "field": "h3IndexLt", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_lt" + ] + }, + "h3IndexLe": { + "field": "h3IndexLe", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_le" + ] + }, + "h3IndexGt": { + "field": "h3IndexGt", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_gt" + ] + }, + "h3IndexGe": { + "field": "h3IndexGe", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "h3index_ge" + ] + }, + "h3IndexCmp": { + "field": "h3IndexCmp", + "class": "Th3IndexUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "Integer", + "meosFns": [ + "h3index_cmp" + ] + }, + "h3IndexHash": { + "field": "h3IndexHash", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "Long", + "meosFns": [ + "h3index_hash" + ] + }, + "h3GridDisk": { + "field": "h3GridDisk", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Integer" + ], + "retType": "String", + "meosFns": [ + "h3_grid_disk" + ] + }, + "h3GridRing": { + "field": "h3GridRing", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Integer" + ], + "retType": "String", + "meosFns": [ + "h3_grid_ring" + ] + }, + "h3GridPathCells": { + "field": "h3GridPathCells", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Long" + ], + "retType": "String", + "meosFns": [ + "h3_grid_path_cells" + ] + }, + "h3CellToChildren": { + "field": "h3CellToChildren", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Integer" + ], + "retType": "String", + "meosFns": [ + "h3_cell_to_children" + ] + }, + "h3CompactCells": { + "field": "h3CompactCells", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "h3_compact_cells" + ] + }, + "h3UncompactCells": { + "field": "h3UncompactCells", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "h3_uncompact_cells" + ] + }, + "h3OriginToDirectedEdges": { + "field": "h3OriginToDirectedEdges", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "String", + "meosFns": [ + "h3_origin_to_directed_edges" + ] + }, + "h3CellToVertexes": { + "field": "h3CellToVertexes", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "String", + "meosFns": [ + "h3_cell_to_vertexes" + ] + }, + "h3GetIcosahedronFaces": { + "field": "h3GetIcosahedronFaces", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Long" + ], + "retType": "String", + "meosFns": [ + "h3_get_icosahedron_faces" + ] + }, + "th3IndexFromText": { + "field": "th3IndexFromText", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "th3index_in" + ] + }, + "th3IndexInstFromText": { + "field": "th3IndexInstFromText", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "th3indexinst_in", + "temporal_as_hexwkb" + ] + }, + "th3IndexSeqFromText": { + "field": "th3IndexSeqFromText", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "th3indexseq_in", + "temporal_as_hexwkb" + ] + }, + "th3IndexSeqSetFromText": { + "field": "th3IndexSeqSetFromText", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "th3indexseqset_in", + "temporal_as_hexwkb" + ] + }, + "th3IndexMake": { + "field": "th3IndexMake", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Object" + ], + "retType": "String", + "meosFns": [ + "th3index_make" + ] + }, + "th3IndexInstMake": { + "field": "th3IndexInstMake", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Object" + ], + "retType": "String", + "meosFns": [ + "th3indexinst_make", + "temporal_as_hexwkb" + ] + }, + "th3IndexSeqMake": { + "field": "th3IndexSeqMake", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 5, + "argTypes": [ + "long[]", + "Object[]", + "Boolean", + "Boolean", + "Object" + ], + "retType": "String", + "meosFns": [ + "th3indexseq_make", + "temporal_as_hexwkb" + ] + }, + "th3IndexSeqSetMake": { + "field": "th3IndexSeqSetMake", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String[]" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3indexseqset_make", + "temporal_as_hexwkb" + ] + }, + "th3IndexStartValue": { + "field": "th3IndexStartValue", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_start_value" + ] + }, + "th3IndexEndValue": { + "field": "th3IndexEndValue", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_end_value" + ] + }, + "th3IndexValueN": { + "field": "th3IndexValueN", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Long", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_value_n" + ] + }, + "th3IndexValueAtTimestamp": { + "field": "th3IndexValueAtTimestamp", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 3, + "argTypes": [ + "String", + "Object", + "Boolean" + ], + "retType": "Long", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_value_at_timestamptz" + ] + }, + "tbigintToTh3Index": { + "field": "tbigintToTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbigint_to_th3index" + ] + }, + "th3IndexToTbigint": { + "field": "th3IndexToTbigint", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_to_tbigint" + ] + }, + "everEqH3IndexTh3Index": { + "field": "everEqH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everEqTh3IndexH3Index": { + "field": "everEqTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everNeH3IndexTh3Index": { + "field": "everNeH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everNeTh3IndexH3Index": { + "field": "everNeTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysEqH3IndexTh3Index": { + "field": "alwaysEqH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysEqTh3IndexH3Index": { + "field": "alwaysEqTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysNeH3IndexTh3Index": { + "field": "alwaysNeH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysNeTh3IndexH3Index": { + "field": "alwaysNeTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "ever_eq_h3index_th3index", + "ever_eq_th3index_h3index", + "ever_ne_h3index_th3index", + "ever_ne_th3index_h3index", + "always_eq_h3index_th3index", + "always_eq_th3index_h3index", + "always_ne_h3index_th3index", + "always_ne_th3index_h3index" + ] + }, + "everEqTh3IndexTh3Index": { + "field": "everEqTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everNeTh3IndexTh3Index": { + "field": "everNeTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysEqTh3IndexTh3Index": { + "field": "alwaysEqTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysNeTh3IndexTh3Index": { + "field": "alwaysNeTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "ever_eq_th3index_th3index", + "ever_ne_th3index_th3index", + "always_eq_th3index_th3index", + "always_ne_th3index_th3index" + ] + }, + "teqH3IndexTh3Index": { + "field": "teqH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "teq_h3index_th3index" + ] + }, + "teqTh3IndexH3Index": { + "field": "teqTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "teq_th3index_h3index" + ] + }, + "teqTh3IndexTh3Index": { + "field": "teqTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "teq_th3index_th3index" + ] + }, + "tneH3IndexTh3Index": { + "field": "tneH3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tne_h3index_th3index" + ] + }, + "tneTh3IndexH3Index": { + "field": "tneTh3IndexH3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tne_th3index_h3index" + ] + }, + "tneTh3IndexTh3Index": { + "field": "tneTh3IndexTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tne_th3index_th3index" + ] + }, + "th3IndexGetResolution": { + "field": "th3IndexGetResolution", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexGetBaseCellNumber": { + "field": "th3IndexGetBaseCellNumber", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexIsValidCell": { + "field": "th3IndexIsValidCell", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexIsResClassIii": { + "field": "th3IndexIsResClassIii", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexIsPentagon": { + "field": "th3IndexIsPentagon", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_get_resolution", + "th3index_get_base_cell_number", + "th3index_is_valid_cell", + "th3index_is_res_class_iii", + "th3index_is_pentagon", + "th3index_cell_to_parent_next", + "th3index_cell_to_center_child_next", + "th3index_is_valid_directed_edge", + "th3index_get_directed_edge_origin", + "th3index_get_directed_edge_destination", + "th3index_directed_edge_to_boundary", + "th3index_vertex_to_latlng", + "th3index_is_valid_vertex", + "th3index_to_tgeogpoint", + "th3index_to_tgeompoint", + "th3index_cell_to_boundary" + ] + }, + "th3IndexCellToParent": { + "field": "th3IndexCellToParent", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_to_parent" + ] + }, + "th3IndexCellToParentNext": { + "field": "th3IndexCellToParentNext", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexCellToCenterChild": { + "field": "th3IndexCellToCenterChild", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_to_center_child" + ] + }, + "th3IndexCellToCenterChildNext": { + "field": "th3IndexCellToCenterChildNext", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexCellToChildPos": { + "field": "th3IndexCellToChildPos", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_to_child_pos" + ] + }, + "th3IndexChildPosToCell": { + "field": "th3IndexChildPosToCell", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_child_pos_to_cell" + ] + }, + "tgeogpointToTh3Index": { + "field": "tgeogpointToTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeogpoint_to_th3index" + ] + }, + "tgeompointToTh3Index": { + "field": "tgeompointToTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeompoint_to_th3index" + ] + }, + "th3IndexToTgeogpoint": { + "field": "th3IndexToTgeogpoint", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexToTgeompoint": { + "field": "th3IndexToTgeompoint", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexCellToBoundary": { + "field": "th3IndexCellToBoundary", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geomToH3Cell": { + "field": "geomToH3Cell", + "class": "Th3IndexUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Long", + "meosFns": [ + "geo_from_text", + "tpointinst_make", + "tgeompoint_to_th3index", + "th3index_start_value" + ] + }, + "geoToH3IndexSet": { + "field": "geoToH3IndexSet", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_to_h3index_set" + ] + }, + "everIntersectsH3IndexSetTh3Index": { + "field": "everIntersectsH3IndexSetTh3Index", + "class": "Th3IndexUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "set_from_hexwkb", + "temporal_from_hexwkb", + "ever_eq_h3indexset_th3index" + ] + }, + "th3IndexAreNeighborCells": { + "field": "th3IndexAreNeighborCells", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_are_neighbor_cells" + ] + }, + "th3IndexCellsToDirectedEdge": { + "field": "th3IndexCellsToDirectedEdge", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cells_to_directed_edge" + ] + }, + "th3IndexIsValidDirectedEdge": { + "field": "th3IndexIsValidDirectedEdge", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexGetDirectedEdgeOrigin": { + "field": "th3IndexGetDirectedEdgeOrigin", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexGetDirectedEdgeDestination": { + "field": "th3IndexGetDirectedEdgeDestination", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexDirectedEdgeToBoundary": { + "field": "th3IndexDirectedEdgeToBoundary", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexCellToVertex": { + "field": "th3IndexCellToVertex", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_to_vertex" + ] + }, + "th3IndexVertexToLatlng": { + "field": "th3IndexVertexToLatlng", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexIsValidVertex": { + "field": "th3IndexIsValidVertex", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "th3IndexGridDistance": { + "field": "th3IndexGridDistance", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_grid_distance" + ] + }, + "th3IndexCellToLocalIj": { + "field": "th3IndexCellToLocalIj", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_to_local_ij" + ] + }, + "th3IndexLocalIjToCell": { + "field": "th3IndexLocalIjToCell", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_local_ij_to_cell" + ] + }, + "th3IndexCellArea": { + "field": "th3IndexCellArea", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_cell_area" + ] + }, + "th3IndexEdgeLength": { + "field": "th3IndexEdgeLength", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "th3index_edge_length" + ] + }, + "tgeogpointGreatCircleDistance": { + "field": "tgeogpointGreatCircleDistance", + "class": "Th3IndexUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeogpoint_great_circle_distance" + ] + }, + "abs": { + "field": "abs", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_abs" + ] + }, + "ceil": { + "field": "ceil", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_ceil" + ] + }, + "floor": { + "field": "floor", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_floor" + ] + }, + "exp": { + "field": "exp", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_exp" + ] + }, + "ln": { + "field": "ln", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_ln" + ] + }, + "log10": { + "field": "log10", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_log10" + ] + }, + "radians": { + "field": "radians", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_radians" + ] + }, + "derivative": { + "field": "derivative", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_derivative" + ] + }, + "deltavalue": { + "field": "deltavalue", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_delta_value" + ] + }, + "trend": { + "field": "trend", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_trend" + ] + }, + "degrees": { + "field": "degrees", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_degrees" + ] + }, + "integral": { + "field": "integral", + "class": "MathGapUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_integral" + ] + }, + "twavg": { + "field": "twavg", + "class": "MathGapUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_twavg" + ] + }, + "tnumber_add": { + "field": "tnumber_add", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "add_tnumber_tnumber" + ] + }, + "tnumber_sub": { + "field": "tnumber_sub", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "sub_tnumber_tnumber" + ] + }, + "tnumber_mul": { + "field": "tnumber_mul", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "mul_tnumber_tnumber" + ] + }, + "tnumber_div": { + "field": "tnumber_div", + "class": "MathGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "div_tnumber_tnumber" + ] + }, + "tfloatDerivative": { + "field": "tfloatDerivative", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_derivative", + "temporal_as_hexwkb" + ] + }, + "tfloatRound": { + "field": "tfloatRound", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_round", + "temporal_as_hexwkb" + ] + }, + "tfloatFloor": { + "field": "tfloatFloor", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_floor", + "temporal_as_hexwkb" + ] + }, + "tfloatCeil": { + "field": "tfloatCeil", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_ceil", + "temporal_as_hexwkb" + ] + }, + "tfloatDegrees": { + "field": "tfloatDegrees", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_degrees", + "temporal_as_hexwkb" + ] + }, + "tfloatRadians": { + "field": "tfloatRadians", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_radians", + "temporal_as_hexwkb" + ] + }, + "tnumberIntegral": { + "field": "tnumberIntegral", + "class": "AnalyticsUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_integral" + ] + }, + "tnumberTwavg": { + "field": "tnumberTwavg", + "class": "AnalyticsUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_twavg" + ] + }, + "tnumberTrend": { + "field": "tnumberTrend", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_trend", + "temporal_as_hexwkb" + ] + }, + "tpointLength": { + "field": "tpointLength", + "class": "AnalyticsUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_length" + ] + }, + "tpointSpeed": { + "field": "tpointSpeed", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_speed", + "temporal_as_hexwkb" + ] + }, + "tpointAzimuth": { + "field": "tpointAzimuth", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_azimuth", + "temporal_as_hexwkb" + ] + }, + "tpointDirection": { + "field": "tpointDirection", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_direction", + "temporal_as_hexwkb" + ] + }, + "tpointCumulativeLength": { + "field": "tpointCumulativeLength", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_cumulative_length", + "temporal_as_hexwkb" + ] + }, + "tgeoTraversedArea": { + "field": "tgeoTraversedArea", + "class": "AnalyticsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_traversed_area", + "geo_as_text" + ] + }, + "span_union": { + "field": "spanUnion", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "super_union_span_span" + ] + }, + "span_minus": { + "field": "spanMinus", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "minus_span_span" + ] + }, + "span_intersection": { + "field": "spanIntersection", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "intersection_span_span" + ] + }, + "spanset_union": { + "field": "spansetUnion", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "union_spanset_spanset" + ] + }, + "spanset_minus": { + "field": "spansetMinus", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "minus_spanset_spanset" + ] + }, + "spanset_intersection": { + "field": "spansetIntersection", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "intersection_spanset_spanset" + ] + }, + "spann": { + "field": "spann", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_span_n" + ] + }, + "startSpan": { + "field": "startSpan", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_start_span" + ] + }, + "endSpan": { + "field": "endSpan", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_end_span" + ] + }, + "numSpans": { + "field": "numSpans", + "class": "SetSpanGapUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_num_spans" + ] + }, + "setUnion": { + "field": "setUnion", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_set_set", + "set_as_hexwkb" + ] + }, + "setMinus": { + "field": "setMinus", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "minus_set_set", + "set_as_hexwkb" + ] + }, + "setIntersection": { + "field": "setIntersection", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "intersection_set_set", + "set_as_hexwkb" + ] + }, + "tbox_union": { + "field": "tboxUnion", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_from_hexwkb", + "union_tbox_tbox" + ] + }, + "tbox_intersection": { + "field": "tboxIntersection", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_from_hexwkb", + "intersection_tbox_tbox" + ] + }, + "stbox_union": { + "field": "stboxUnion", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "union_stbox_stbox" + ] + }, + "stbox_intersection": { + "field": "stboxIntersection", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "intersection_stbox_stbox" + ] + }, + "bigintSpan": { + "field": "bigintSpan", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_from_hexwkb", + "tbox_to_bigintspan" + ] + }, + "atTbox": { + "field": "atTbox", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbox_from_hexwkb", + "tnumber_at_tbox", + "temporal_as_hexwkb" + ] + }, + "minusTbox": { + "field": "minusTbox", + "class": "SetSpanGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbox_from_hexwkb", + "tnumber_minus_tbox", + "temporal_as_hexwkb" + ] + }, + "span_distance": { + "field": "spanDistance", + "class": "SetSpanGapUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "distance_floatspan_floatspan" + ] + }, + "spanset_distance": { + "field": "spansetDistance", + "class": "SetSpanGapUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "spanset_from_hexwkb", + "distance_floatspanset_floatspanset" + ] + }, + "set_distance": { + "field": "setDistance", + "class": "SetSpanGapUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "distance_floatset_floatset" + ] + }, + "time_distance": { + "field": "timeDistanceSpan", + "class": "SetSpanGapUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "distance_tstzspan_tstzspan" + ] + }, + "time_distance_spanset": { + "field": "timeDistanceSpanset", + "class": "SetSpanGapUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "spanset_from_hexwkb", + "distance_tstzspanset_tstzspanset" + ] + }, + "startValue": { + "field": "startValue", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "trgeometry_start_value", + "geo_as_text" + ] + }, + "endValue": { + "field": "endValue", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "trgeometry_end_value", + "geo_as_text" + ] + }, + "valueN": { + "field": "valueN", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "trgeometry_value_n", + "geo_as_text" + ] + }, + "minusValue": { + "field": "minusValue", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "cbuffer_from_hexwkb", + "tcbuffer_minus_cbuffer", + "temporal_as_hexwkb" + ] + }, + "minusValues": { + "field": "minusValues", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_minus_values", + "temporal_as_hexwkb" + ] + }, + "atValue": { + "field": "atValue", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "cbuffer_from_hexwkb", + "tcbuffer_at_cbuffer", + "temporal_as_hexwkb", + "temporal_timestamps" + ] + }, + "traversedArea": { + "field": "traversedArea", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_traversed_area", + "geo_as_text" + ] + }, + "getSpace": { + "field": "getSpace", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "stbox_get_space", + "stbox_as_hexwkb" + ] + }, + "tprecision": { + "field": "tprecision", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_tprecision", + "temporal_as_hexwkb" + ] + }, + "tsample": { + "field": "tsample", + "class": "AccessorGapUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_tsample", + "temporal_as_hexwkb" + ] + }, + "tboolInst": { + "field": "tboolInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Boolean", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "tboolinst_make", + "temporal_as_hexwkb" + ] + }, + "tintInst": { + "field": "tintInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Integer", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "tintinst_make", + "temporal_as_hexwkb" + ] + }, + "tfloatInst": { + "field": "tfloatInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Double", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "tfloatinst_make", + "temporal_as_hexwkb" + ] + }, + "ttextInst": { + "field": "ttextInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "cstring2text", + "ttextinst_make", + "temporal_as_hexwkb", + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_to_tsequenceset" + ] + }, + "tgeompointInst": { + "field": "tgeompointInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "tpointinst_make", + "temporal_as_hexwkb" + ] + }, + "tgeogpointInst": { + "field": "tgeogpointInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryInst": { + "field": "tgeometryInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "temporal_as_hexwkb" + ] + }, + "tgeographyInst": { + "field": "tgeographyInst", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [] + }, + "tboolSeq": { + "field": "tboolSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tintSeq": { + "field": "tintSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatSeq": { + "field": "tfloatSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextSeq": { + "field": "ttextSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointSeq": { + "field": "tgeompointSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointSeq": { + "field": "tgeogpointSeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometrySeq": { + "field": "tgeometrySeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographySeq": { + "field": "tgeographySeq", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tboolSeqSet": { + "field": "tboolSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tintSeqSet": { + "field": "tintSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatSeqSet": { + "field": "tfloatSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextSeqSet": { + "field": "ttextSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointSeqSet": { + "field": "tgeompointSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointSeqSet": { + "field": "tgeogpointSeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometrySeqSet": { + "field": "tgeometrySeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographySeqSet": { + "field": "tgeographySeqSet", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tempSubtype": { + "field": "tempSubtype", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_subtype" + ] + }, + "memSize": { + "field": "memSize", + "class": "SubtypeConstructorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb" + ] + }, + "getTime": { + "field": "getTime", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_time", + "spanset_as_hexwkb" + ] + }, + "deleteTime": { + "field": "deleteTime", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_delete_timestamptz", + "temporal_as_hexwkb" + ] + }, + "beforeTimestamp": { + "field": "beforeTimestamp", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "afterTimestamp": { + "field": "afterTimestamp", + "class": "SubtypeConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "temporalToTInstant": { + "field": "temporalToTInstant", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tinstant", + "temporal_as_hexwkb" + ] + }, + "temporalToTSequence": { + "field": "temporalToTSequence", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_as_hexwkb" + ] + }, + "temporalToTSequenceSet": { + "field": "temporalToTSequenceSet", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequenceset", + "temporal_as_hexwkb" + ] + }, + "temporalSetInterp": { + "field": "temporalSetInterp", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_set_interp", + "temporal_as_hexwkb" + ] + }, + "tfloatToTint": { + "field": "tfloatToTint", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_to_tint", + "temporal_as_hexwkb" + ] + }, + "tintToTfloat": { + "field": "tintToTfloat", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_to_tfloat", + "temporal_as_hexwkb" + ] + }, + "tintShiftValue": { + "field": "tintShiftValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_shift_value", + "temporal_as_hexwkb" + ] + }, + "tintScaleValue": { + "field": "tintScaleValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_scale_value", + "temporal_as_hexwkb" + ] + }, + "tintShiftScaleValue": { + "field": "tintShiftScaleValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Integer", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_shift_scale_value", + "temporal_as_hexwkb" + ] + }, + "tfloatShiftValue": { + "field": "tfloatShiftValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_shift_value", + "temporal_as_hexwkb" + ] + }, + "tfloatScaleValue": { + "field": "tfloatScaleValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_scale_value", + "temporal_as_hexwkb" + ] + }, + "tfloatShiftScaleValue": { + "field": "tfloatShiftScaleValue", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_shift_scale_value", + "temporal_as_hexwkb" + ] + }, + "temporalShiftTime": { + "field": "temporalShiftTime", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_shift_time", + "temporal_as_hexwkb" + ] + }, + "temporalScaleTime": { + "field": "temporalScaleTime", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_scale_time", + "temporal_as_hexwkb" + ] + }, + "temporalShiftScaleTime": { + "field": "temporalShiftScaleTime", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_shift_scale_time", + "temporal_as_hexwkb" + ] + }, + "tpointSetSrid": { + "field": "tpointSetSrid", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_set_srid", + "temporal_as_hexwkb" + ] + }, + "temporalSimplifyDp": { + "field": "temporalSimplifyDp", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_dp", + "temporal_as_hexwkb" + ] + }, + "temporalSimplifyMaxDist": { + "field": "temporalSimplifyMaxDist", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_max_dist", + "temporal_as_hexwkb" + ] + }, + "temporalSimplifyMinDist": { + "field": "temporalSimplifyMinDist", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_min_dist", + "temporal_as_hexwkb" + ] + }, + "temporalSimplifyMinTdelta": { + "field": "temporalSimplifyMinTdelta", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_simplify_min_tdelta", + "temporal_as_hexwkb" + ] + }, + "temporalTPrecision": { + "field": "temporalTPrecision", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_tprecision", + "temporal_as_hexwkb" + ] + }, + "temporalTSample": { + "field": "temporalTSample", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_tsample", + "temporal_as_hexwkb" + ] + }, + "tpointTrajectory": { + "field": "tpointTrajectory", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_trajectory", + "geo_as_text" + ] + }, + "floatsetCeil": { + "field": "floatsetCeil", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "floatset_ceil", + "set_as_hexwkb" + ] + }, + "floatsetFloor": { + "field": "floatsetFloor", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "floatset_floor", + "set_as_hexwkb" + ] + }, + "floatsetDegrees": { + "field": "floatsetDegrees", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "floatset_degrees", + "set_as_hexwkb" + ] + }, + "floatsetRadians": { + "field": "floatsetRadians", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "floatset_radians", + "set_as_hexwkb" + ] + }, + "textsetLower": { + "field": "textsetLower", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "textset_lower", + "set_as_hexwkb" + ] + }, + "textsetUpper": { + "field": "textsetUpper", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "textset_upper", + "set_as_hexwkb" + ] + }, + "textsetInitcap": { + "field": "textsetInitcap", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "textset_initcap", + "set_as_hexwkb" + ] + }, + "intspanShiftScale": { + "field": "intspanShiftScale", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Integer", + "Integer" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "intspan_shift_scale", + "span_as_hexwkb" + ] + }, + "floatspanShiftScale": { + "field": "floatspanShiftScale", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "floatspan_shift_scale", + "span_as_hexwkb" + ] + }, + "intspansetShiftScale": { + "field": "intspansetShiftScale", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Integer", + "Integer" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_shift_scale", + "spanset_as_hexwkb" + ] + }, + "floatspansetShiftScale": { + "field": "floatspansetShiftScale", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_shift_scale", + "spanset_as_hexwkb" + ] + }, + "floatspansetCeil": { + "field": "floatspansetCeil", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_ceil", + "spanset_as_hexwkb" + ] + }, + "floatspansetFloor": { + "field": "floatspansetFloor", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_floor", + "spanset_as_hexwkb" + ] + }, + "floatspansetRound": { + "field": "floatspansetRound", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_round", + "spanset_as_hexwkb" + ] + }, + "intspansetToFloat": { + "field": "intspansetToFloat", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_to_floatspanset", + "spanset_as_hexwkb" + ] + }, + "floatspansetToInt": { + "field": "floatspansetToInt", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_to_intspanset", + "spanset_as_hexwkb" + ] + }, + "douglasPeuckerSimplify": { + "field": "temporalSimplifyDp", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_dp", + "temporal_as_hexwkb" + ] + }, + "maxDistSimplify": { + "field": "temporalSimplifyMaxDist", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_max_dist", + "temporal_as_hexwkb" + ] + }, + "minDistSimplify": { + "field": "temporalSimplifyMinDist", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_simplify_min_dist", + "temporal_as_hexwkb" + ] + }, + "minTimeDeltaSimplify": { + "field": "temporalSimplifyMinTdelta", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_simplify_min_tdelta", + "temporal_as_hexwkb" + ] + }, + "intspanset": { + "field": "floatspansetToInt", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_to_intspanset", + "spanset_as_hexwkb" + ] + }, + "floatspanset": { + "field": "intspansetToFloat", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_to_floatspanset", + "spanset_as_hexwkb" + ] + }, + "shiftScale": { + "field": "floatspanShiftScale", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "floatspan_shift_scale", + "span_as_hexwkb" + ] + }, + "dateset": { + "field": "tstzsetToDateset", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "tstzset_to_dateset", + "set_as_hexwkb" + ] + }, + "tstzset": { + "field": "tstzset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tstzset_in", + "set_as_hexwkb" + ] + }, + "span": { + "field": "temporalToTstzspan", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tstzspan", + "span_as_hexwkb" + ] + }, + "spanset": { + "field": "spanToSpanset", + "class": "TransformUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "span_to_spanset", + "spanset_as_hexwkb" + ] + }, + "getTimeTile": { + "field": "getTimeTile", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Timestamp", + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "stbox_as_hexwkb" + ] + }, + "getSpaceTile": { + "field": "getSpaceTile", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 5, + "argTypes": [ + "String", + "Double", + "Double", + "Double", + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "stbox_as_hexwkb" + ] + }, + "getSpaceTimeTile": { + "field": "getSpaceTimeTile", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 8, + "argTypes": [ + "String", + "Timestamp", + "Double", + "Double", + "Double", + "String", + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "pg_interval_in", + "stbox_as_hexwkb" + ] + }, + "getStboxTimeTile": { + "field": "getTimeTile", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Timestamp", + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "stbox_as_hexwkb" + ] + }, + "getValueTile": { + "field": "getValueTileFloat", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Double", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [ + "tbox_as_hexwkb" + ] + }, + "getTBoxTimeTile": { + "field": "getTBoxTimeTile", + "class": "TileUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Timestamp", + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "tbox_as_hexwkb", + "temporal_from_hexwkb", + "geo_as_hexewkb", + "stbox_from_hexwkb", + "geo_as_text" + ] + }, + "tnumberAdjacentTnumber": { + "field": "tnumberAdjacentTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainsTnumber": { + "field": "tnumberContainsTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainedTnumber": { + "field": "tnumberContainedTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverlapsTnumber": { + "field": "tnumberOverlapsTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberSameTnumber": { + "field": "tnumberSameTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "numspanAdjacentTnumber": { + "field": "numspanAdjacentTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "numspanContainsTnumber": { + "field": "numspanContainsTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "numspanContainedTnumber": { + "field": "numspanContainedTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "numspanOverlapsTnumber": { + "field": "numspanOverlapsTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "numspanSameTnumber": { + "field": "numspanSameTnumber", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberAdjacentNumspan": { + "field": "tnumberAdjacentNumspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainsNumspan": { + "field": "tnumberContainsNumspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainedNumspan": { + "field": "tnumberContainedNumspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverlapsNumspan": { + "field": "tnumberOverlapsNumspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberSameNumspan": { + "field": "tnumberSameNumspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tstzspanAdjacentTemporal": { + "field": "tstzspanAdjacentTemporal", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tstzspanContainsTemporal": { + "field": "tstzspanContainsTemporal", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tstzspanContainedTemporal": { + "field": "tstzspanContainedTemporal", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tstzspanOverlapsTemporal": { + "field": "tstzspanOverlapsTemporal", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tstzspanSameTemporal": { + "field": "tstzspanSameTemporal", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalAdjacentTstzspan": { + "field": "temporalAdjacentTstzspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalContainsTstzspan": { + "field": "temporalContainsTstzspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalContainedTstzspan": { + "field": "temporalContainedTstzspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalOverlapsTstzspan": { + "field": "temporalOverlapsTstzspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalSameTstzspan": { + "field": "temporalSameTstzspan", + "class": "TemporalBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "floatBucket": { + "field": "floatBucket", + "class": "BucketUDFs", + "retDataType": "DoubleType", + "arity": 3, + "argTypes": [ + "Double", + "Double", + "Double" + ], + "retType": "Double", + "meosFns": [] + }, + "intBucket": { + "field": "intBucket", + "class": "BucketUDFs", + "retDataType": "IntegerType", + "arity": 3, + "argTypes": [ + "Integer", + "Integer", + "Integer" + ], + "retType": "Integer", + "meosFns": [] + }, + "temporalAtTstzspan": { + "field": "temporalAtTstzspan", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "temporal_at_tstzspan", + "temporal_as_hexwkb" + ] + }, + "temporalAtTstzspanset": { + "field": "temporalAtTstzspanset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "temporal_at_tstzspanset", + "temporal_as_hexwkb" + ] + }, + "temporalAtTstzset": { + "field": "temporalAtTstzset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_at_tstzset", + "temporal_as_hexwkb" + ] + }, + "temporalMinusTstzset": { + "field": "temporalMinusTstzset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_minus_tstzset", + "temporal_as_hexwkb" + ] + }, + "temporalMinusTstzspan": { + "field": "temporalMinusTstzspan", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "temporal_minus_tstzspan", + "temporal_as_hexwkb" + ] + }, + "temporalMinusTstzspanset": { + "field": "temporalMinusTstzspanset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "temporal_minus_tstzspanset", + "temporal_as_hexwkb" + ] + }, + "temporalAtTimestamptz": { + "field": "temporalAtTimestamptz", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_timestamptz", + "temporal_as_hexwkb" + ] + }, + "temporalMinusTimestamptz": { + "field": "temporalMinusTimestamptz", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_minus_timestamptz", + "temporal_as_hexwkb" + ] + }, + "temporalDeleteTstzspan": { + "field": "temporalDeleteTstzspan", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "temporal_delete_tstzspan", + "temporal_as_hexwkb" + ] + }, + "temporalDeleteTstzspanset": { + "field": "temporalDeleteTstzspanset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "temporal_delete_tstzspanset", + "temporal_as_hexwkb" + ] + }, + "temporalDeleteTstzset": { + "field": "temporalDeleteTstzset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_delete_tstzset", + "temporal_as_hexwkb" + ] + }, + "temporalDeleteTimestamptz": { + "field": "temporalDeleteTimestamptz", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_delete_timestamptz", + "temporal_as_hexwkb" + ] + }, + "tfloatAtValue": { + "field": "tfloatAtValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_at_value", + "temporal_as_hexwkb" + ] + }, + "tfloatMinusValue": { + "field": "tfloatMinusValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_minus_value", + "temporal_as_hexwkb" + ] + }, + "tintAtValue": { + "field": "tintAtValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_at_value", + "temporal_as_hexwkb" + ] + }, + "tintMinusValue": { + "field": "tintMinusValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_minus_value", + "temporal_as_hexwkb" + ] + }, + "tnumberAtSpan": { + "field": "tnumberAtSpan", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "tnumber_at_span", + "temporal_as_hexwkb" + ] + }, + "tnumberMinusSpan": { + "field": "tnumberMinusSpan", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "tnumber_minus_span", + "temporal_as_hexwkb" + ] + }, + "tnumberAtSpanset": { + "field": "tnumberAtSpanset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "tnumber_at_spanset", + "temporal_as_hexwkb" + ] + }, + "tnumberMinusSpanset": { + "field": "tnumberMinusSpanset", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "tnumber_minus_spanset", + "temporal_as_hexwkb" + ] + }, + "tboolAtValue": { + "field": "tboolAtValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_at_value", + "temporal_as_hexwkb" + ] + }, + "tboolMinusValue": { + "field": "tboolMinusValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_minus_value", + "temporal_as_hexwkb" + ] + }, + "ttextAtValue": { + "field": "ttextAtValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "cstring2text", + "ttext_at_value", + "temporal_as_hexwkb" + ] + }, + "ttextMinusValue": { + "field": "ttextMinusValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "cstring2text", + "ttext_minus_value", + "temporal_as_hexwkb" + ] + }, + "tpointAtValue": { + "field": "tpointAtValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tpoint_at_value", + "temporal_as_hexwkb" + ] + }, + "tpointMinusValue": { + "field": "tpointMinusValue", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tpoint_minus_value", + "temporal_as_hexwkb" + ] + }, + "tgeoAtStbox": { + "field": "tgeoAtStbox", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "stbox_from_hexwkb", + "tgeo_at_stbox", + "temporal_as_hexwkb" + ] + }, + "tgeoMinusStbox": { + "field": "tgeoMinusStbox", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "stbox_from_hexwkb", + "tgeo_minus_stbox", + "temporal_as_hexwkb" + ] + }, + "tpointAtElevation": { + "field": "tpointAtElevation", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "tpoint_at_elevation", + "temporal_as_hexwkb" + ] + }, + "tpointMinusElevation": { + "field": "tpointMinusElevation", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "tpoint_minus_elevation", + "temporal_as_hexwkb" + ] + }, + "temporalAtMax": { + "field": "temporalAtMax", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_max", + "temporal_as_hexwkb" + ] + }, + "temporalAtMin": { + "field": "temporalAtMin", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_min", + "temporal_as_hexwkb" + ] + }, + "temporalAtValues": { + "field": "temporalAtValues", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_at_values", + "temporal_as_hexwkb" + ] + }, + "temporalMinusValues": { + "field": "temporalMinusValues", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_minus_values", + "temporal_as_hexwkb" + ] + }, + "tgeoAtGeom": { + "field": "tgeoAtGeom", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tgeo_at_geom", + "temporal_as_hexwkb" + ] + }, + "tgeoMinusGeom": { + "field": "tgeoMinusGeom", + "class": "RestrictionUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tgeo_minus_geom", + "temporal_as_hexwkb" + ] + }, + "temporalEq": { + "field": "temporalEq", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_eq" + ] + }, + "temporalNe": { + "field": "temporalNe", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_ne" + ] + }, + "temporalLt": { + "field": "temporalLt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_lt" + ] + }, + "temporalLe": { + "field": "temporalLe", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_le" + ] + }, + "temporalGt": { + "field": "temporalGt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_gt" + ] + }, + "temporalGe": { + "field": "temporalGe", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_ge" + ] + }, + "everEqTintInt": { + "field": "everEqTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_tint_int" + ] + }, + "everEqTfloatFloat": { + "field": "everEqTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_tfloat_float" + ] + }, + "everEqTemporal": { + "field": "everEqTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_temporal_temporal" + ] + }, + "everLtTintInt": { + "field": "everLtTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_lt_tint_int" + ] + }, + "everLtTfloatFloat": { + "field": "everLtTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_lt_tfloat_float" + ] + }, + "everLtTemporal": { + "field": "everLtTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_lt_temporal_temporal" + ] + }, + "everLeTintInt": { + "field": "everLeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_le_tint_int" + ] + }, + "everLeTfloatFloat": { + "field": "everLeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_le_tfloat_float" + ] + }, + "everLeTemporal": { + "field": "everLeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_le_temporal_temporal" + ] + }, + "everGtTintInt": { + "field": "everGtTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_gt_tint_int" + ] + }, + "everGtTfloatFloat": { + "field": "everGtTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_gt_tfloat_float" + ] + }, + "everGtTemporal": { + "field": "everGtTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_gt_temporal_temporal" + ] + }, + "everGeTintInt": { + "field": "everGeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ge_tint_int" + ] + }, + "everGeTfloatFloat": { + "field": "everGeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ge_tfloat_float" + ] + }, + "everGeTemporal": { + "field": "everGeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ge_temporal_temporal" + ] + }, + "everNeTintInt": { + "field": "everNeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_tint_int" + ] + }, + "everNeTfloatFloat": { + "field": "everNeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_tfloat_float" + ] + }, + "everNeTemporal": { + "field": "everNeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_temporal_temporal" + ] + }, + "alwaysEqTintInt": { + "field": "alwaysEqTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_tint_int" + ] + }, + "alwaysEqTfloatFloat": { + "field": "alwaysEqTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_tfloat_float" + ] + }, + "alwaysEqTemporal": { + "field": "alwaysEqTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_temporal_temporal" + ] + }, + "alwaysLtTintInt": { + "field": "alwaysLtTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_lt_tint_int" + ] + }, + "alwaysLtTfloatFloat": { + "field": "alwaysLtTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_lt_tfloat_float" + ] + }, + "alwaysLtTemporal": { + "field": "alwaysLtTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_lt_temporal_temporal" + ] + }, + "alwaysLeTintInt": { + "field": "alwaysLeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_le_tint_int" + ] + }, + "alwaysLeTfloatFloat": { + "field": "alwaysLeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_le_tfloat_float" + ] + }, + "alwaysLeTemporal": { + "field": "alwaysLeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_le_temporal_temporal" + ] + }, + "alwaysGtTintInt": { + "field": "alwaysGtTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_gt_tint_int" + ] + }, + "alwaysGtTfloatFloat": { + "field": "alwaysGtTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_gt_tfloat_float" + ] + }, + "alwaysGtTemporal": { + "field": "alwaysGtTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_gt_temporal_temporal" + ] + }, + "alwaysGeTintInt": { + "field": "alwaysGeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_ge_tint_int" + ] + }, + "alwaysGeTfloatFloat": { + "field": "alwaysGeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_ge_tfloat_float" + ] + }, + "alwaysGeTemporal": { + "field": "alwaysGeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ge_temporal_temporal" + ] + }, + "alwaysNeTintInt": { + "field": "alwaysNeTintInt", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_tint_int" + ] + }, + "alwaysNeTfloatFloat": { + "field": "alwaysNeTfloatFloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_tfloat_float" + ] + }, + "alwaysNeTemporal": { + "field": "alwaysNeTemporal", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_temporal_temporal" + ] + }, + "alwaysEqIntTint": { + "field": "alwaysEqIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_int_tint" + ] + }, + "alwaysNeIntTint": { + "field": "alwaysNeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_int_tint" + ] + }, + "alwaysLtIntTint": { + "field": "alwaysLtIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_lt_int_tint" + ] + }, + "alwaysLeIntTint": { + "field": "alwaysLeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_le_int_tint" + ] + }, + "alwaysGtIntTint": { + "field": "alwaysGtIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_gt_int_tint" + ] + }, + "alwaysGeIntTint": { + "field": "alwaysGeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ge_int_tint" + ] + }, + "alwaysEqFloatTfloat": { + "field": "alwaysEqFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_float_tfloat" + ] + }, + "alwaysNeFloatTfloat": { + "field": "alwaysNeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_float_tfloat" + ] + }, + "alwaysLtFloatTfloat": { + "field": "alwaysLtFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_lt_float_tfloat" + ] + }, + "alwaysLeFloatTfloat": { + "field": "alwaysLeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_le_float_tfloat" + ] + }, + "alwaysGtFloatTfloat": { + "field": "alwaysGtFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_gt_float_tfloat" + ] + }, + "alwaysGeFloatTfloat": { + "field": "alwaysGeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ge_float_tfloat" + ] + }, + "everEqIntTint": { + "field": "everEqIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_int_tint" + ] + }, + "everNeIntTint": { + "field": "everNeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_int_tint" + ] + }, + "everLtIntTint": { + "field": "everLtIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_lt_int_tint" + ] + }, + "everLeIntTint": { + "field": "everLeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_le_int_tint" + ] + }, + "everGtIntTint": { + "field": "everGtIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_gt_int_tint" + ] + }, + "everGeIntTint": { + "field": "everGeIntTint", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ge_int_tint" + ] + }, + "everEqFloatTfloat": { + "field": "everEqFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_float_tfloat" + ] + }, + "everNeFloatTfloat": { + "field": "everNeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_float_tfloat" + ] + }, + "everLtFloatTfloat": { + "field": "everLtFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_lt_float_tfloat" + ] + }, + "everLeFloatTfloat": { + "field": "everLeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_le_float_tfloat" + ] + }, + "everGtFloatTfloat": { + "field": "everGtFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_gt_float_tfloat" + ] + }, + "everGeFloatTfloat": { + "field": "everGeFloatTfloat", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ge_float_tfloat" + ] + }, + "alwaysEqTboolBool": { + "field": "alwaysEqTboolBool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_tbool_bool" + ] + }, + "alwaysNeTboolBool": { + "field": "alwaysNeTboolBool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_tbool_bool" + ] + }, + "alwaysEqBoolTbool": { + "field": "alwaysEqBoolTbool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_eq_bool_tbool" + ] + }, + "alwaysNeBoolTbool": { + "field": "alwaysNeBoolTbool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "always_ne_bool_tbool" + ] + }, + "everEqTboolBool": { + "field": "everEqTboolBool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_tbool_bool" + ] + }, + "everNeTboolBool": { + "field": "everNeTboolBool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_tbool_bool" + ] + }, + "everEqBoolTbool": { + "field": "everEqBoolTbool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_eq_bool_tbool" + ] + }, + "everNeBoolTbool": { + "field": "everNeBoolTbool", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "ever_ne_bool_tbool", + "ttext_in", + "ttext_value_n", + "temporal_from_hexwkb" + ] + }, + "alwaysEqTextTtext": { + "field": "alwaysEqTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysNeTextTtext": { + "field": "alwaysNeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysLtTextTtext": { + "field": "alwaysLtTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysLeTextTtext": { + "field": "alwaysLeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysGtTextTtext": { + "field": "alwaysGtTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysGeTextTtext": { + "field": "alwaysGeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysEqTtextText": { + "field": "alwaysEqTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysNeTtextText": { + "field": "alwaysNeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysLtTtextText": { + "field": "alwaysLtTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysLeTtextText": { + "field": "alwaysLeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysGtTtextText": { + "field": "alwaysGtTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "alwaysGeTtextText": { + "field": "alwaysGeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everEqTextTtext": { + "field": "everEqTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everNeTextTtext": { + "field": "everNeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everLtTextTtext": { + "field": "everLtTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everLeTextTtext": { + "field": "everLeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everGtTextTtext": { + "field": "everGtTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everGeTextTtext": { + "field": "everGeTextTtext", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everEqTtextText": { + "field": "everEqTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everNeTtextText": { + "field": "everNeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everLtTtextText": { + "field": "everLtTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everLeTtextText": { + "field": "everLeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everGtTtextText": { + "field": "everGtTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "everGeTtextText": { + "field": "everGeTtextText", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tpointIsSimple": { + "field": "tpointIsSimple", + "class": "PredicateUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_is_simple" + ] + }, + "tboxLeftTbox": { + "field": "tboxLeftTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverleftTbox": { + "field": "tboxOverleftTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxRightTbox": { + "field": "tboxRightTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverrightTbox": { + "field": "tboxOverrightTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxBeforeTbox": { + "field": "tboxBeforeTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverbeforeTbox": { + "field": "tboxOverbeforeTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAfterTbox": { + "field": "tboxAfterTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverafterTbox": { + "field": "tboxOverafterTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAdjacentTbox": { + "field": "tboxAdjacentTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxContainsTbox": { + "field": "tboxContainsTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxContainedTbox": { + "field": "tboxContainedTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverlapsTbox": { + "field": "tboxOverlapsTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxSameTbox": { + "field": "tboxSameTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxLeftTnumber": { + "field": "tboxLeftTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverleftTnumber": { + "field": "tboxOverleftTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxRightTnumber": { + "field": "tboxRightTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverrightTnumber": { + "field": "tboxOverrightTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxBeforeTnumber": { + "field": "tboxBeforeTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverbeforeTnumber": { + "field": "tboxOverbeforeTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAfterTnumber": { + "field": "tboxAfterTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverafterTnumber": { + "field": "tboxOverafterTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAdjacentTnumber": { + "field": "tboxAdjacentTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxContainsTnumber": { + "field": "tboxContainsTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxContainedTnumber": { + "field": "tboxContainedTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverlapsTnumber": { + "field": "tboxOverlapsTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxSameTnumber": { + "field": "tboxSameTnumber", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberLeftTbox": { + "field": "tnumberLeftTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverleftTbox": { + "field": "tnumberOverleftTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberRightTbox": { + "field": "tnumberRightTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverrightTbox": { + "field": "tnumberOverrightTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberBeforeTbox": { + "field": "tnumberBeforeTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverbeforeTbox": { + "field": "tnumberOverbeforeTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberAfterTbox": { + "field": "tnumberAfterTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverafterTbox": { + "field": "tnumberOverafterTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberAdjacentTbox": { + "field": "tnumberAdjacentTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainsTbox": { + "field": "tnumberContainsTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberContainedTbox": { + "field": "tnumberContainedTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberOverlapsTbox": { + "field": "tnumberOverlapsTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tnumberSameTbox": { + "field": "tnumberSameTbox", + "class": "TBoxOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "intspanLower": { + "field": "intspanLower", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "span_from_hexwkb", + "intspan_lower" + ] + }, + "intspanUpper": { + "field": "intspanUpper", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "span_from_hexwkb", + "intspan_upper" + ] + }, + "intspanWidth": { + "field": "intspanWidth", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "span_from_hexwkb", + "intspan_width" + ] + }, + "floatspanLower": { + "field": "floatspanLower", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "floatspan_lower" + ] + }, + "floatspanUpper": { + "field": "floatspanUpper", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "floatspan_upper" + ] + }, + "floatspanWidth": { + "field": "floatspanWidth", + "class": "AccessorAliasUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "floatspan_width" + ] + }, + "bigintspanLower": { + "field": "bigintspanLower", + "class": "SpanAccessorUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "span_from_hexwkb", + "bigintspan_lower" + ] + }, + "bigintspanUpper": { + "field": "bigintspanUpper", + "class": "SpanAccessorUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "span_from_hexwkb", + "bigintspan_upper" + ] + }, + "datespanLower": { + "field": "datespanLower", + "class": "SpanAccessorUDFs", + "retDataType": "DateType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Date", + "meosFns": [ + "span_from_hexwkb", + "datespan_lower" + ] + }, + "datespanUpper": { + "field": "datespanUpper", + "class": "SpanAccessorUDFs", + "retDataType": "DateType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Date", + "meosFns": [ + "span_from_hexwkb", + "datespan_upper" + ] + }, + "tstzspanLower": { + "field": "tstzspanLower", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "span_from_hexwkb", + "tstzspan_lower" + ] + }, + "tstzspanUpper": { + "field": "tstzspanUpper", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "span_from_hexwkb", + "tstzspan_upper" + ] + }, + "spanLowerInc": { + "field": "spanLowerInc", + "class": "SpanAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "span_from_hexwkb", + "span_lower_inc" + ] + }, + "spanUpperInc": { + "field": "spanUpperInc", + "class": "SpanAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "span_from_hexwkb", + "span_upper_inc" + ] + }, + "spansetNumSpans": { + "field": "spansetNumSpans", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_num_spans" + ] + }, + "spansetStartSpan": { + "field": "spansetStartSpan", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_start_span", + "span_as_hexwkb" + ] + }, + "spansetEndSpan": { + "field": "spansetEndSpan", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_end_span", + "span_as_hexwkb" + ] + }, + "spansetLowerInc": { + "field": "spansetLowerInc", + "class": "SpanAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_lower_inc" + ] + }, + "spansetUpperInc": { + "field": "spansetUpperInc", + "class": "SpanAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_upper_inc" + ] + }, + "spanToSpanset": { + "field": "spanToSpanset", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "span_to_spanset", + "spanset_as_hexwkb" + ] + }, + "setNumValues": { + "field": "setNumValues", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "set_from_hexwkb", + "set_num_values" + ] + }, + "intsetStartValue": { + "field": "intsetStartValue", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "set_from_hexwkb", + "intset_start_value" + ] + }, + "intsetEndValue": { + "field": "intsetEndValue", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "set_from_hexwkb", + "intset_end_value", + "set_num_values", + "intset_values" + ] + }, + "floatsetStartValue": { + "field": "floatsetStartValue", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "floatset_start_value" + ] + }, + "floatsetEndValue": { + "field": "floatsetEndValue", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "floatset_end_value", + "set_num_values", + "floatset_values" + ] + }, + "datesetStartValue": { + "field": "datesetStartValue", + "class": "SpanAccessorUDFs", + "retDataType": "DateType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Date", + "meosFns": [ + "set_from_hexwkb", + "dateset_start_value" + ] + }, + "datesetEndValue": { + "field": "datesetEndValue", + "class": "SpanAccessorUDFs", + "retDataType": "DateType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Date", + "meosFns": [ + "set_from_hexwkb", + "dateset_end_value", + "set_num_values", + "dateset_values" + ] + }, + "tstzsetStartValue": { + "field": "tstzsetStartValue", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "set_from_hexwkb", + "tstzset_start_value" + ] + }, + "tstzsetEndValue": { + "field": "tstzsetEndValue", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "set_from_hexwkb", + "tstzset_end_value", + "set_num_values", + "tstzset_values" + ] + }, + "textsetStartValue": { + "field": "textsetStartValue", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "textset_start_value", + "text_out" + ] + }, + "textsetEndValue": { + "field": "textsetEndValue", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "textset_end_value", + "text_out", + "set_num_values", + "textset_values" + ] + }, + "tstzspansetLower": { + "field": "tstzspansetLower", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_lower" + ] + }, + "tstzspansetUpper": { + "field": "tstzspansetUpper", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_upper" + ] + }, + "tstzspansetStartTimestamptz": { + "field": "tstzspansetStartTimestamptz", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_start_timestamptz" + ] + }, + "tstzspansetEndTimestamptz": { + "field": "tstzspansetEndTimestamptz", + "class": "SpanAccessorUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_end_timestamptz" + ] + }, + "spansetSpanN": { + "field": "spansetSpanN", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_span_n", + "span_as_hexwkb" + ] + }, + "intspansetLower": { + "field": "intspansetLower", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_lower" + ] + }, + "intspansetUpper": { + "field": "intspansetUpper", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_upper" + ] + }, + "intspansetWidth": { + "field": "intspansetWidth", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "intspanset_width" + ] + }, + "floatspansetLower": { + "field": "floatspansetLower", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_start_span", + "floatspan_lower" + ] + }, + "floatspansetUpper": { + "field": "floatspansetUpper", + "class": "SpanAccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_end_span", + "floatspan_upper" + ] + }, + "floatspansetWidth": { + "field": "floatspansetWidth", + "class": "AccessorAliasUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Double", + "meosFns": [ + "spanset_from_hexwkb", + "floatspanset_width" + ] + }, + "tstzspansetNumTimestamps": { + "field": "tstzspansetNumTimestamps", + "class": "SpanAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_num_timestamps", + "tstzspanset_timestamps" + ] + }, + "tstzspansetDuration": { + "field": "tstzspansetDuration", + "class": "SpanAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "tstzspanset_duration", + "pg_interval_out" + ] + }, + "intsetFromHexWKB": { + "field": "intsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "bigintsetFromHexWKB": { + "field": "bigintsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "floatsetFromHexWKB": { + "field": "floatsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "textsetFromHexWKB": { + "field": "textsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tstzsetFromHexWKB": { + "field": "tstzsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "datesetFromHexWKB": { + "field": "datesetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "intspanFromHexWKB": { + "field": "intspanFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "bigintspanFromHexWKB": { + "field": "bigintspanFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "floatspanFromHexWKB": { + "field": "floatspanFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tstzspanFromHexWKB": { + "field": "tstzspanFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "datespanFromHexWKB": { + "field": "datespanFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "intspansetFromHexWKB": { + "field": "intspansetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "bigintspansetFromHexWKB": { + "field": "bigintspansetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "floatspansetFromHexWKB": { + "field": "floatspansetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tstzspansetFromHexWKB": { + "field": "tstzspansetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "datespansetFromHexWKB": { + "field": "datespansetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tboolFromHexWKB": { + "field": "tboolFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tintFromHexWKB": { + "field": "tintFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatFromHexWKB": { + "field": "tfloatFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextFromHexWKB": { + "field": "ttextFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromHexEWKB": { + "field": "tgeometryFromHexEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromHexEWKB": { + "field": "tgeographyFromHexEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromHexEWKB": { + "field": "tgeompointFromHexEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromHexEWKB": { + "field": "tgeogpointFromHexEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromMFJSON": { + "field": "tgeometryFromMFJSON", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromMFJSON": { + "field": "tgeographyFromMFJSON", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromMFJSON": { + "field": "tgeompointFromMFJSON", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromMFJSON": { + "field": "tgeogpointFromMFJSON", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tboolFromText": { + "field": "tboolFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tintFromText": { + "field": "tintFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatFromText": { + "field": "tfloatFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextFromText": { + "field": "ttextFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromText": { + "field": "tgeompointFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromText": { + "field": "tgeogpointFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromEWKT": { + "field": "tgeompointFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromEWKT": { + "field": "tgeogpointFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromText": { + "field": "tgeometryFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromText": { + "field": "tgeographyFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromEWKT": { + "field": "tgeometryFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromEWKT": { + "field": "tgeographyFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "tboolFromBinary": { + "field": "tboolFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tintFromBinary": { + "field": "tintFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatFromBinary": { + "field": "tfloatFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "ttextFromBinary": { + "field": "ttextFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromBinary": { + "field": "tgeompointFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromBinary": { + "field": "tgeogpointFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromBinary": { + "field": "tgeometryFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromBinary": { + "field": "tgeographyFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointFromEWKB": { + "field": "tgeompointFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointFromEWKB": { + "field": "tgeogpointFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometryFromEWKB": { + "field": "tgeometryFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographyFromEWKB": { + "field": "tgeographyFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "asBinary": { + "field": "asBinary", + "class": "IOAliasUDFs", + "retDataType": "BinaryType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "byte[]", + "meosFns": [] + }, + "asEWKB": { + "field": "asEWKB", + "class": "IOAliasUDFs", + "retDataType": "BinaryType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "byte[]", + "meosFns": [] + }, + "asHexEWKB": { + "field": "asHexEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb", + "geomset_in", + "set_as_hexwkb", + "geogset_in", + "set_from_hexwkb" + ] + }, + "geomsetFromText": { + "field": "geomsetFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geogsetFromText": { + "field": "geogsetFromText", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geomsetFromEWKT": { + "field": "geomsetFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geogsetFromEWKT": { + "field": "geogsetFromEWKT", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geomsetFromHexWKB": { + "field": "geomsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geogsetFromHexWKB": { + "field": "geogsetFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "geomsetFromBinary": { + "field": "geomsetFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "geogsetFromBinary": { + "field": "geogsetFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "geomsetFromEWKB": { + "field": "geomsetFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "geogsetFromEWKB": { + "field": "geogsetFromEWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tboxFromHexWKB": { + "field": "tboxFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_from_hexwkb", + "tbox_as_hexwkb" + ] + }, + "tboxFromBinary": { + "field": "tboxFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [ + "tbox_from_hexwkb", + "tbox_as_hexwkb" + ] + }, + "stboxFromHexWKB": { + "field": "stboxFromHexWKB", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "stbox_as_hexwkb" + ] + }, + "stboxFromBinary": { + "field": "stboxFromBinary", + "class": "IOAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb", + "stbox_as_hexwkb" + ] + }, + "ttextUpper": { + "field": "ttextUpper", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_upper", + "temporal_as_hexwkb" + ] + }, + "ttextLower": { + "field": "ttextLower", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_lower", + "temporal_as_hexwkb" + ] + }, + "ttextInitcap": { + "field": "ttextInitcap", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_initcap", + "temporal_as_hexwkb", + "ttext_in", + "ttext_value_n" + ] + }, + "teqTextTtext": { + "field": "teqTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tneTextTtext": { + "field": "tneTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tltTextTtext": { + "field": "tltTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tleTextTtext": { + "field": "tleTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgtTextTtext": { + "field": "tgtTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeTextTtext": { + "field": "tgeTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "teqTtextText": { + "field": "teqTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tneTtextText": { + "field": "tneTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tltTtextText": { + "field": "tltTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tleTtextText": { + "field": "tleTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgtTtextText": { + "field": "tgtTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeTtextText": { + "field": "tgeTtextText", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextCatTtextText": { + "field": "ttextCatTtextText", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "cstring2text", + "temporal_as_hexwkb" + ] + }, + "ttextCatTextTtext": { + "field": "ttextCatTextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "cstring2text", + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "ttextCatTtextTtext": { + "field": "ttextCatTtextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "ttextCat": { + "field": "ttextCatTtextTtext", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "textsetCatTextsetText": { + "field": "textsetCatTextsetText", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "cstring2text", + "textcat_textset_text", + "set_as_hexwkb" + ] + }, + "textsetCatTextTextset": { + "field": "textsetCatTextTextset", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "cstring2text", + "set_from_hexwkb", + "textcat_text_textset", + "set_as_hexwkb" + ] + }, + "textsetCat": { + "field": "textsetCatTextsetText", + "class": "TTextUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "cstring2text", + "textcat_textset_text", + "set_as_hexwkb" + ] + }, + "tint": { + "field": "tint", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tint_in", + "temporal_as_hexwkb" + ] + }, + "tfloat": { + "field": "tfloat", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tfloat_in", + "temporal_as_hexwkb" + ] + }, + "tbool": { + "field": "tbool", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbool_in", + "temporal_as_hexwkb" + ] + }, + "ttext": { + "field": "ttext", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "ttext_in", + "temporal_as_hexwkb" + ] + }, + "tgeogpoint": { + "field": "tgeogpoint", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tgeogpoint_in", + "temporal_as_hexwkb" + ] + }, + "tstzspan": { + "field": "tstzspan", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tstzspan_in", + "span_as_hexwkb" + ] + }, + "tstzspanset": { + "field": "tstzspanset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tstzspanset_in", + "spanset_as_hexwkb" + ] + }, + "intspan": { + "field": "intspan", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "intspan_in", + "span_as_hexwkb" + ] + }, + "floatspan": { + "field": "floatspan", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "floatspan_in", + "span_as_hexwkb" + ] + }, + "datespan": { + "field": "datespan", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "datespan_in", + "span_as_hexwkb" + ] + }, + "datespanset": { + "field": "datespanset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "datespanset_in", + "spanset_as_hexwkb" + ] + }, + "intset": { + "field": "intset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "intset_in", + "set_as_hexwkb" + ] + }, + "floatset": { + "field": "floatset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "floatset_in", + "set_as_hexwkb" + ] + }, + "textset": { + "field": "textset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "textset_in", + "set_as_hexwkb" + ] + }, + "bigintset": { + "field": "bigintset", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "bigintset_in", + "set_as_hexwkb" + ] + }, + "stbox": { + "field": "stbox", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_in", + "stbox_as_hexwkb" + ] + }, + "tbox": { + "field": "tbox", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_in", + "tbox_as_hexwkb" + ] + }, + "tboolFromMfjson": { + "field": "tboolFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbool_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "tintFromMfjson": { + "field": "tintFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tint_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "tfloatFromMfjson": { + "field": "tfloatFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tfloat_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "ttextFromMfjson": { + "field": "ttextFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "ttext_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "tgeompointFromMfjson": { + "field": "tgeompointFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tgeompoint_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "tgeogpointFromMfjson": { + "field": "tgeogpointFromMfjson", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tgeogpoint_from_mfjson", + "temporal_as_hexwkb" + ] + }, + "tboolFromBaseTemp": { + "field": "tboolFromBaseTemp", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_from_base_temp", + "temporal_as_hexwkb" + ] + }, + "tintFromBaseTemp": { + "field": "tintFromBaseTemp", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Integer", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_from_base_temp", + "temporal_as_hexwkb" + ] + }, + "tfloatFromBaseTemp": { + "field": "tfloatFromBaseTemp", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Double", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_from_base_temp", + "temporal_as_hexwkb" + ] + }, + "ttextFromBaseTemp": { + "field": "ttextFromBaseTemp", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "ttext_in", + "ttext_value_n", + "temporal_from_hexwkb", + "ttext_from_base_temp", + "temporal_as_hexwkb" + ] + }, + "tpointFromBaseTemp": { + "field": "tpointFromBaseTemp", + "class": "ConstructorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "temporal_from_hexwkb", + "tpoint_from_base_temp", + "temporal_as_hexwkb" + ] + }, + "tnumberAbs": { + "field": "tnumberAbs", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_abs" + ] + }, + "tnumberDeltaValue": { + "field": "tnumberDeltaValue", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_delta_value" + ] + }, + "tnumberAngularDifference": { + "field": "tnumberAngularDifference", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_angular_difference" + ] + }, + "tpointAngularDifference": { + "field": "tpointAngularDifference", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_angular_difference" + ] + }, + "tfloatExp": { + "field": "tfloatExp", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_exp" + ] + }, + "tfloatLn": { + "field": "tfloatLn", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_ln" + ] + }, + "tfloatLog10": { + "field": "tfloatLog10", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_log10" + ] + }, + "addTintInt": { + "field": "addTintInt", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "add_tint_int" + ] + }, + "subTintInt": { + "field": "subTintInt", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "sub_tint_int" + ] + }, + "multTintInt": { + "field": "multTintInt", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "mul_tint_int" + ] + }, + "divTintInt": { + "field": "divTintInt", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "div_tint_int" + ] + }, + "addTfloatFloat": { + "field": "addTfloatFloat", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "add_tfloat_float" + ] + }, + "subTfloatFloat": { + "field": "subTfloatFloat", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "sub_tfloat_float" + ] + }, + "multTfloatFloat": { + "field": "multTfloatFloat", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "mul_tfloat_float" + ] + }, + "divTfloatFloat": { + "field": "divTfloatFloat", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "div_tfloat_float" + ] + }, + "addTnumberTnumber": { + "field": "addTnumberTnumber", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "add_tnumber_tnumber" + ] + }, + "subTnumberTnumber": { + "field": "subTnumberTnumber", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "sub_tnumber_tnumber" + ] + }, + "multTnumberTnumber": { + "field": "multTnumberTnumber", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "mul_tnumber_tnumber" + ] + }, + "divTnumberTnumber": { + "field": "divTnumberTnumber", + "class": "MathUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "div_tnumber_tnumber" + ] + }, + "cbufferEq": { + "field": "cbufferEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferNe": { + "field": "cbufferNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferLt": { + "field": "cbufferLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferLe": { + "field": "cbufferLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferGt": { + "field": "cbufferGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferGe": { + "field": "cbufferGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "cbufferCmp": { + "field": "cbufferCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "npointEq": { + "field": "npointEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointNe": { + "field": "npointNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointLt": { + "field": "npointLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointLe": { + "field": "npointLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointGt": { + "field": "npointGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointGe": { + "field": "npointGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "npointCmp": { + "field": "npointCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "npointHash": { + "field": "npointHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "npointHashExtended": { + "field": "npointHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "poseEq": { + "field": "poseEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseNe": { + "field": "poseNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseLt": { + "field": "poseLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseLe": { + "field": "poseLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseGt": { + "field": "poseGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseGe": { + "field": "poseGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "poseCmp": { + "field": "poseCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "poseHash": { + "field": "poseHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "poseHashExtended": { + "field": "poseHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "nsegmentEq": { + "field": "nsegmentEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentNe": { + "field": "nsegmentNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentLt": { + "field": "nsegmentLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentLe": { + "field": "nsegmentLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentGt": { + "field": "nsegmentGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentGe": { + "field": "nsegmentGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "nsegmentCmp": { + "field": "nsegmentCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "setEq": { + "field": "setEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setNe": { + "field": "setNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setLt": { + "field": "setLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setLe": { + "field": "setLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setGt": { + "field": "setGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setGe": { + "field": "setGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setCmp": { + "field": "setCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "setHash": { + "field": "setHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "setHashExtended": { + "field": "setHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "spanEq": { + "field": "spanEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanNe": { + "field": "spanNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanLt": { + "field": "spanLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanLe": { + "field": "spanLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanGt": { + "field": "spanGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanGe": { + "field": "spanGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanCmp": { + "field": "spanCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "spanHash": { + "field": "spanHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "spanHashExtended": { + "field": "spanHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "spansetEq": { + "field": "spansetEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetNe": { + "field": "spansetNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetLt": { + "field": "spansetLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetLe": { + "field": "spansetLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetGt": { + "field": "spansetGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetGe": { + "field": "spansetGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetCmp": { + "field": "spansetCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "spansetHash": { + "field": "spansetHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "spansetHashExtended": { + "field": "spansetHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "tboxEq": { + "field": "tboxEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxNe": { + "field": "tboxNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxLt": { + "field": "tboxLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxLe": { + "field": "tboxLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxGt": { + "field": "tboxGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxGe": { + "field": "tboxGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxCmp": { + "field": "tboxCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "tboxHash": { + "field": "tboxHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "tboxHashExtended": { + "field": "tboxHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "stboxEq": { + "field": "stboxEq", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxNe": { + "field": "stboxNe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxLt": { + "field": "stboxLt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxLe": { + "field": "stboxLe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxGt": { + "field": "stboxGt", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxGe": { + "field": "stboxGe", + "class": "ComparisonUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "stboxCmp": { + "field": "stboxCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "stboxHash": { + "field": "stboxHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "stboxHashExtended": { + "field": "stboxHashExtended", + "class": "ComparisonUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "Long", + "meosFns": [] + }, + "temporalCmp": { + "field": "temporalCmp", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "temporalHash": { + "field": "temporalHash", + "class": "ComparisonUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [] + }, + "atTime": { + "field": "atTime", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Object" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_timestamptz", + "tstzspan_in", + "temporal_at_tstzspan", + "pg_timestamptz_in", + "temporal_as_hexwkb" + ] + }, + "startTimestamp": { + "field": "startTimestamp", + "class": "TemporalUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Timestamp", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_start_timestamptz" + ] + }, + "endTimestamp": { + "field": "endTimestamp", + "class": "TemporalUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Timestamp", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_end_timestamptz" + ] + }, + "numInstants": { + "field": "numInstants", + "class": "TemporalUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_num_instants" + ] + }, + "speed": { + "field": "speed", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_speed", + "temporal_as_hexwkb" + ] + }, + "atGeometry": { + "field": "atGeometry", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "geo_from_text", + "tgeo_at_geom", + "temporal_as_hexwkb" + ] + }, + "asHexWKB": { + "field": "asHexWKB", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "temporalAsMfjson": { + "field": "temporalAsMfjson", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_mfjson" + ] + }, + "tboolOut": { + "field": "tboolOut", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_out" + ] + }, + "tintOut": { + "field": "tintOut", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tint_out" + ] + }, + "tfloatOut": { + "field": "tfloatOut", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_out" + ] + }, + "ttextOut": { + "field": "ttextOut", + "class": "TemporalUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_out" + ] + }, + "getTimestamp": { + "field": "startTimestamp", + "class": "TemporalUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Timestamp", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_start_timestamptz" + ] + }, + "teqTintInt": { + "field": "teqTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "teqTfloatFloat": { + "field": "teqTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "teqTboolBool": { + "field": "teqTboolBool", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [] + }, + "tneTintInt": { + "field": "tneTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "tneTfloatFloat": { + "field": "tneTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tneTboolBool": { + "field": "tneTboolBool", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [] + }, + "tltTintInt": { + "field": "tltTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "tltTfloatFloat": { + "field": "tltTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tleTintInt": { + "field": "tleTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "tleTfloatFloat": { + "field": "tleTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tgtTintInt": { + "field": "tgtTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "tgtTfloatFloat": { + "field": "tgtTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tgeTintInt": { + "field": "tgeTintInt", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [] + }, + "tgeTfloatFloat": { + "field": "tgeTfloatFloat", + "class": "TemporalCompUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "bigintspanWidth": { + "field": "bigintspanWidth", + "class": "AccessorAliasUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "span_from_hexwkb", + "bigintspan_width" + ] + }, + "bigintspansetWidth": { + "field": "bigintspansetWidth", + "class": "AccessorAliasUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "Long", + "meosFns": [ + "spanset_from_hexwkb", + "bigintspanset_width" + ] + }, + "width": { + "field": "floatspanWidth", + "class": "AccessorAliasUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "span_from_hexwkb", + "floatspan_width" + ] + }, + "startDate": { + "field": "startDate", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "datespanset_start_date" + ] + }, + "endDate": { + "field": "endDate", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "datespanset_end_date" + ] + }, + "numDates": { + "field": "numDates", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "datespanset_num_dates" + ] + }, + "dateN": { + "field": "dateN", + "class": "AccessorAliasUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Integer", + "meosFns": [ + "spanset_from_hexwkb", + "datespanset_date_n" + ] + }, + "dates": { + "field": "dates", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "datespanset_dates", + "set_as_hexwkb" + ] + }, + "valueSpan": { + "field": "valueSpan", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_to_span", + "span_as_hexwkb" + ] + }, + "intsetFromBinary": { + "field": "intsetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "bigintsetFromBinary": { + "field": "bigintsetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "floatsetFromBinary": { + "field": "floatsetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "textsetFromBinary": { + "field": "textsetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tstzsetFromBinary": { + "field": "tstzsetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "datesetFromBinary": { + "field": "datesetFromBinary", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometry": { + "field": "tgeometry", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "tgeography": { + "field": "tgeography", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "geometry": { + "field": "tgeometry", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "geography": { + "field": "tgeography", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "valueSet": { + "field": "valueSet", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_as_hexwkb", + "pg_interval_in", + "temporal_as_hexwkb" + ] + }, + "box2d": { + "field": "box2d", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb" + ] + }, + "box3d": { + "field": "box3d", + "class": "AccessorAliasUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "stbox_from_hexwkb" + ] + }, + "avgValue": { + "field": "avgValue", + "class": "AccessorAliasUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb" + ] + }, + "frechetDistance": { + "field": "frechetDistance", + "class": "SimilarityUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_frechet_distance" + ] + }, + "dynamicTimeWarp": { + "field": "dynamicTimeWarp", + "class": "SimilarityUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_dyntimewarp_distance" + ] + }, + "hausdorffDistance": { + "field": "hausdorffDistance", + "class": "SimilarityUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_hausdorff_distance" + ] + }, + "dynTimeWarpDistance": { + "field": "dynamicTimeWarp", + "class": "SimilarityUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_dyntimewarp_distance" + ] + }, + "tboolSeqSetGaps": { + "field": "tboolSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "ttextSeqSetGaps": { + "field": "ttextSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tintSeqSetGaps": { + "field": "tintSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String[]", + "String", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "tfloatSeqSetGaps": { + "field": "tfloatSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String[]", + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeompointSeqSetGaps": { + "field": "tgeompointSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String[]", + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeogpointSeqSetGaps": { + "field": "tgeogpointSeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String[]", + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeometrySeqSetGaps": { + "field": "tgeometrySeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String[]", + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tgeographySeqSetGaps": { + "field": "tgeographySeqSetGaps", + "class": "SeqSetGapsUDFs", + "retDataType": "StringType", + "arity": 4, + "argTypes": [ + "String[]", + "String", + "Double", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tnotTbool": { + "field": "tnotTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnot_tbool" + ] + }, + "tandBool": { + "field": "tandBool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tand_tbool_bool" + ] + }, + "tandBoolTbool": { + "field": "tandBoolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tand_bool_tbool" + ] + }, + "tandTboolTbool": { + "field": "tandTboolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tand_tbool_tbool" + ] + }, + "torBool": { + "field": "torBool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Boolean" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tor_tbool_bool" + ] + }, + "torBoolTbool": { + "field": "torBoolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Boolean", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tor_bool_tbool" + ] + }, + "torTboolTbool": { + "field": "torTboolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tor_tbool_tbool" + ] + }, + "tboolWhenTrue": { + "field": "tboolWhenTrue", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_when_true", + "spanset_as_hexwkb" + ] + }, + "teqTemporalTemporal": { + "field": "teqTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "teq_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tneTemporalTemporal": { + "field": "tneTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tne_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tltTemporalTemporal": { + "field": "tltTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tlt_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tleTemporalTemporal": { + "field": "tleTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tle_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tgtTemporalTemporal": { + "field": "tgtTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgt_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tgeTemporalTemporal": { + "field": "tgeTemporalTemporal", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tge_temporal_temporal", + "temporal_as_hexwkb" + ] + }, + "tboolNot": { + "field": "tnotTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnot_tbool" + ] + }, + "tboolAnd": { + "field": "tandTboolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tand_tbool_tbool" + ] + }, + "tboolOr": { + "field": "torTboolTbool", + "class": "BoolOpsUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tor_tbool_tbool" + ] + }, + "numSequences": { + "field": "numSequences", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_num_sequences" + ] + }, + "interp": { + "field": "interp", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_interp" + ] + }, + "time": { + "field": "time", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_time", + "spanset_as_hexwkb" + ] + }, + "timespan": { + "field": "timespan", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tstzspan", + "span_as_hexwkb" + ] + }, + "merge": { + "field": "merge", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_merge", + "temporal_as_hexwkb" + ] + }, + "shift": { + "field": "shift", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_shift_time", + "temporal_as_hexwkb" + ] + }, + "scale": { + "field": "scale", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "temporal_scale_time", + "temporal_as_hexwkb" + ] + }, + "atSpan": { + "field": "atSpan", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "temporal_at_tstzspan", + "temporal_as_hexwkb" + ] + }, + "atSpanset": { + "field": "atSpanset", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "spanset_from_hexwkb", + "temporal_at_tstzspanset", + "temporal_as_hexwkb" + ] + }, + "insert": { + "field": "insert", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_insert", + "temporal_as_hexwkb" + ] + }, + "update": { + "field": "update", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_update", + "temporal_as_hexwkb" + ] + }, + "tfloatStartValue": { + "field": "tfloatStartValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_start_value" + ] + }, + "tfloatEndValue": { + "field": "tfloatEndValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_end_value" + ] + }, + "tfloatMinValue": { + "field": "tfloatMinValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_min_value" + ] + }, + "tfloatMaxValue": { + "field": "tfloatMaxValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_max_value" + ] + }, + "tintStartValue": { + "field": "tintStartValue", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_start_value" + ] + }, + "tintEndValue": { + "field": "tintEndValue", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_end_value" + ] + }, + "tintMinValue": { + "field": "tintMinValue", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_min_value" + ] + }, + "tintMaxValue": { + "field": "tintMaxValue", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_max_value" + ] + }, + "tboolStartValue": { + "field": "tboolStartValue", + "class": "AccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_start_value" + ] + }, + "tboolEndValue": { + "field": "tboolEndValue", + "class": "AccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_end_value" + ] + }, + "tpointStartValue": { + "field": "tpointStartValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_start_value", + "geo_as_text" + ] + }, + "tpointEndValue": { + "field": "tpointEndValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_end_value", + "geo_as_text" + ] + }, + "ttextStartValue": { + "field": "ttextStartValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_start_value", + "text_out" + ] + }, + "ttextEndValue": { + "field": "ttextEndValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_end_value", + "text_out" + ] + }, + "tintGetValue": { + "field": "tintStartValue", + "class": "AccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_start_value" + ] + }, + "tfloatGetValue": { + "field": "tfloatStartValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_start_value" + ] + }, + "tboolGetValue": { + "field": "tboolStartValue", + "class": "AccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_start_value" + ] + }, + "ttextGetValue": { + "field": "ttextStartValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_start_value", + "text_out" + ] + }, + "tpointGetValue": { + "field": "tpointStartValue", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_start_value", + "geo_as_text" + ] + }, + "getValue": { + "field": "tfloatStartValue", + "class": "AccessorUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_start_value" + ] + }, + "atMin": { + "field": "atMin", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_min", + "temporal_as_hexwkb" + ] + }, + "atMax": { + "field": "atMax", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_at_max", + "temporal_as_hexwkb" + ] + }, + "atValues": { + "field": "atValues", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "set_from_hexwkb", + "temporal_at_values", + "temporal_as_hexwkb" + ] + }, + "minusTime": { + "field": "minusTime", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "span_from_hexwkb", + "temporal_minus_tstzspan", + "temporal_as_hexwkb" + ] + }, + "minusMin": { + "field": "minusMin", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_minus_min", + "temporal_as_hexwkb" + ] + }, + "minusMax": { + "field": "minusMax", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_minus_max", + "temporal_as_hexwkb" + ] + }, + "atStbox": { + "field": "atStbox", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "stbox_from_hexwkb", + "tgeo_at_stbox", + "temporal_as_hexwkb" + ] + }, + "minusStbox": { + "field": "minusStbox", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "stbox_from_hexwkb", + "tgeo_minus_stbox", + "temporal_as_hexwkb" + ] + }, + "tnumberAtTbox": { + "field": "tnumberAtTbox", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbox_from_hexwkb", + "tnumber_at_tbox", + "temporal_as_hexwkb" + ] + }, + "tnumberMinusTbox": { + "field": "tnumberMinusTbox", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbox_from_hexwkb", + "tnumber_minus_tbox", + "temporal_as_hexwkb" + ] + }, + "appendInstant": { + "field": "appendInstant", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_append_tinstant", + "temporal_as_hexwkb" + ] + }, + "appendSequence": { + "field": "appendSequence", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_append_tsequence", + "temporal_as_hexwkb" + ] + }, + "tnumberValuespans": { + "field": "tnumberValuespans", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_valuespans", + "spanset_as_hexwkb" + ] + }, + "tnumberToSpan": { + "field": "tnumberToSpan", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_to_span", + "span_as_hexwkb" + ] + }, + "tnumberToTbox": { + "field": "tnumberToTbox", + "class": "AccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tnumber_to_tbox", + "tbox_as_hexwkb" + ] + }, + "setLeft": { + "field": "setLeft", + "class": "SetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setRight": { + "field": "setRight", + "class": "SetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setOverleft": { + "field": "setOverleft", + "class": "SetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setOverright": { + "field": "setOverright", + "class": "SetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setContains": { + "field": "setContains", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "contains_set_set" + ] + }, + "setContained": { + "field": "setContained", + "class": "SetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "setOverlaps": { + "field": "setOverlaps", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overlaps_set_set" + ] + }, + "distanceIntsetIntset": { + "field": "distanceIntsetIntset", + "class": "SetOpsUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [ + "set_from_hexwkb", + "distance_intset_intset" + ] + }, + "distanceBigintsetBigintset": { + "field": "distanceBigintsetBigintset", + "class": "SetOpsUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Long", + "meosFns": [ + "set_from_hexwkb", + "distance_bigintset_bigintset" + ] + }, + "distanceFloatsetFloatset": { + "field": "distanceFloatsetFloatset", + "class": "SetOpsUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "distance_floatset_floatset" + ] + }, + "distanceTstzsetTstzset": { + "field": "distanceTstzsetTstzset", + "class": "SetOpsUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "distance_tstzset_tstzset" + ] + }, + "setDistance": { + "field": "distanceFloatsetFloatset", + "class": "SetOpsUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "set_from_hexwkb", + "distance_floatset_floatset" + ] + }, + "spanContains": { + "field": "spanContains", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "contains_span_span" + ] + }, + "spanContainedIn": { + "field": "spanContainedIn", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "contained_span_span" + ] + }, + "spanOverlaps": { + "field": "spanOverlaps", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overlaps_span_span" + ] + }, + "spanAdjacent": { + "field": "spanAdjacent", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "adjacent_span_span" + ] + }, + "spanLeft": { + "field": "spanLeft", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "left_span_span" + ] + }, + "spanRight": { + "field": "spanRight", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "right_span_span" + ] + }, + "spanOverleft": { + "field": "spanOverleft", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overleft_span_span" + ] + }, + "spanOverright": { + "field": "spanOverright", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overright_span_span" + ] + }, + "spanUnion": { + "field": "spanUnion", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_span_span", + "spanset_as_hexwkb" + ] + }, + "spanIntersection": { + "field": "spanIntersection", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "intersection_span_span", + "span_as_hexwkb" + ] + }, + "spanMinus": { + "field": "spanMinus", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "minus_span_span", + "spanset_as_hexwkb" + ] + }, + "tstzspanDistance": { + "field": "tstzspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "distance_tstzspan_tstzspan" + ] + }, + "intspanDistance": { + "field": "intspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [ + "distance_intspan_intspan" + ] + }, + "bigintspanDistance": { + "field": "bigintspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "LongType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Long", + "meosFns": [ + "distance_bigintspan_bigintspan" + ] + }, + "floatspanDistance": { + "field": "floatspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "distance_floatspan_floatspan" + ] + }, + "datespanDistance": { + "field": "datespanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Integer", + "meosFns": [ + "distance_datespan_datespan" + ] + }, + "spanDistance": { + "field": "floatspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "distance_floatspan_floatspan" + ] + }, + "timeDistance": { + "field": "tstzspanDistance", + "class": "SpanAlgebraUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Double", + "meosFns": [ + "distance_tstzspan_tstzspan" + ] + }, + "intspanExpand": { + "field": "intspanExpand", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "span_as_hexwkb" + ] + }, + "bigintspanExpand": { + "field": "bigintspanExpand", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Long" + ], + "retType": "String", + "meosFns": [ + "span_as_hexwkb" + ] + }, + "floatspanExpand": { + "field": "floatspanExpand", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "span_as_hexwkb" + ] + }, + "expand": { + "field": "floatspanExpand", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "span_as_hexwkb" + ] + }, + "spansetContainsSpan": { + "field": "spansetContainsSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "contains_spanset_span" + ] + }, + "spanContainedInSpanset": { + "field": "spanContainedInSpanset", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "contained_span_spanset" + ] + }, + "spansetOverlaps": { + "field": "spansetOverlaps", + "class": "SpanAlgebraUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overlaps_spanset_spanset" + ] + }, + "spansetUnion": { + "field": "spansetUnion", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_spanset_spanset", + "spanset_as_hexwkb" + ] + }, + "spansetIntersection": { + "field": "spansetIntersection", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "intersection_spanset_spanset", + "spanset_as_hexwkb" + ] + }, + "spansetMinus": { + "field": "spansetMinus", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "minus_spanset_spanset", + "spanset_as_hexwkb" + ] + }, + "intspanToFloatspan": { + "field": "intspanToFloatspan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "intspan_to_floatspan", + "span_as_hexwkb" + ] + }, + "floatspanToIntspan": { + "field": "floatspanToIntspan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "floatspan_to_intspan", + "span_as_hexwkb" + ] + }, + "datespanToTstzspan": { + "field": "datespanToTstzspan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "datespan_to_tstzspan", + "span_as_hexwkb" + ] + }, + "tstzspanToDatespan": { + "field": "tstzspanToDatespan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tstzspan_to_datespan", + "span_as_hexwkb" + ] + }, + "intsetToFloatset": { + "field": "intsetToFloatset", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "intset_to_floatset", + "set_as_hexwkb" + ] + }, + "floatsetToIntset": { + "field": "floatsetToIntset", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "floatset_to_intset", + "set_as_hexwkb" + ] + }, + "setToSpan": { + "field": "setToSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_to_span", + "span_as_hexwkb" + ] + }, + "setToSpanset": { + "field": "setToSpanset", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_to_spanset", + "spanset_as_hexwkb" + ] + }, + "tstzspanDuration": { + "field": "tstzspanDuration", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tstzspan_duration", + "pg_interval_out" + ] + }, + "datespanDuration": { + "field": "datespanDuration", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "datespan_duration", + "pg_interval_out" + ] + }, + "tstzspanShiftScale": { + "field": "tstzspanShiftScale", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "tstzspan_shift_scale", + "span_as_hexwkb" + ] + }, + "tstzspansetShiftScale": { + "field": "tstzspansetShiftScale", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "tstzspanset_shift_scale", + "spanset_as_hexwkb" + ] + }, + "timestamptzToSpan": { + "field": "timestamptzToSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "timestamptz_to_span", + "span_as_hexwkb" + ] + }, + "timestamptzToSet": { + "field": "timestamptzToSet", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "timestamptz_to_set", + "set_as_hexwkb" + ] + }, + "spansetIntersectionSpan": { + "field": "spansetIntersectionSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "intersection_spanset_span", + "spanset_as_hexwkb" + ] + }, + "spansetUnionSpan": { + "field": "spansetUnionSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_spanset_span", + "spanset_as_hexwkb" + ] + }, + "spansetMinusSpan": { + "field": "spansetMinusSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "minus_spanset_span", + "spanset_as_hexwkb" + ] + }, + "intToSpan": { + "field": "intToSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Integer" + ], + "retType": "String", + "meosFns": [ + "int_to_span", + "span_as_hexwkb" + ] + }, + "intToSet": { + "field": "intToSet", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Integer" + ], + "retType": "String", + "meosFns": [ + "int_to_set", + "set_as_hexwkb" + ] + }, + "intToSpanset": { + "field": "intToSpanset", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Integer" + ], + "retType": "String", + "meosFns": [ + "int_to_spanset", + "spanset_as_hexwkb" + ] + }, + "floatToSpan": { + "field": "floatToSpan", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Double" + ], + "retType": "String", + "meosFns": [ + "float_to_span", + "span_as_hexwkb" + ] + }, + "floatToSet": { + "field": "floatToSet", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Double" + ], + "retType": "String", + "meosFns": [ + "float_to_set", + "set_as_hexwkb" + ] + }, + "floatToSpanset": { + "field": "floatToSpanset", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Double" + ], + "retType": "String", + "meosFns": [ + "float_to_spanset", + "spanset_as_hexwkb" + ] + }, + "intToTbox": { + "field": "intToTbox", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Integer" + ], + "retType": "String", + "meosFns": [ + "int_to_tbox", + "tbox_as_hexwkb" + ] + }, + "floatToTbox": { + "field": "floatToTbox", + "class": "SpanAlgebraUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "Double" + ], + "retType": "String", + "meosFns": [ + "float_to_tbox", + "tbox_as_hexwkb" + ] + }, + "tboxHasx": { + "field": "tboxHasx", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_hasx" + ] + }, + "tboxHast": { + "field": "tboxHast", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_hast" + ] + }, + "tboxXmin": { + "field": "tboxXmin", + "class": "TBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "tbox_xmin" + ] + }, + "tboxXmax": { + "field": "tboxXmax", + "class": "TBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "tbox_xmax" + ] + }, + "tboxXminInc": { + "field": "tboxXminInc", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_xmin_inc" + ] + }, + "tboxXmaxInc": { + "field": "tboxXmaxInc", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_xmax_inc" + ] + }, + "tboxTmin": { + "field": "tboxTmin", + "class": "TBoxUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "tbox_tmin" + ] + }, + "tboxTmax": { + "field": "tboxTmax", + "class": "TBoxUDFs", + "retDataType": "TimestampType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "java.sql.Timestamp", + "meosFns": [ + "tbox_tmax" + ] + }, + "tboxTminInc": { + "field": "tboxTminInc", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_tmin_inc" + ] + }, + "tboxTmaxInc": { + "field": "tboxTmaxInc", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "tbox_tmax_inc" + ] + }, + "tboxToIntspan": { + "field": "tboxToIntspan", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_to_intspan", + "span_as_hexwkb" + ] + }, + "tboxToFloatspan": { + "field": "tboxToFloatspan", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_to_floatspan", + "span_as_hexwkb" + ] + }, + "tboxToTstzspan": { + "field": "tboxToTstzspan", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "tbox_to_tstzspan", + "span_as_hexwkb" + ] + }, + "tboxRound": { + "field": "tboxRound", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "tbox_round", + "tbox_as_hexwkb" + ] + }, + "spanToTbox": { + "field": "spanToTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "span_to_tbox", + "tbox_as_hexwkb" + ] + }, + "spansetToTbox": { + "field": "spansetToTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "spanset_from_hexwkb", + "spanset_to_tbox", + "tbox_as_hexwkb" + ] + }, + "setToTbox": { + "field": "setToTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_to_tbox", + "tbox_as_hexwkb" + ] + }, + "tboxfloatXmin": { + "field": "tboxfloatXmin", + "class": "TBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "tboxfloat_xmin" + ] + }, + "tboxfloatXmax": { + "field": "tboxfloatXmax", + "class": "TBoxUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "tboxfloat_xmax" + ] + }, + "tboxintXmin": { + "field": "tboxintXmin", + "class": "TBoxUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "tboxint_xmin" + ] + }, + "tboxintXmax": { + "field": "tboxintXmax", + "class": "TBoxUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "tboxint_xmax" + ] + }, + "tboxMake": { + "field": "tboxMake", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "tbox_make", + "tbox_as_hexwkb" + ] + }, + "timestamptzToTbox": { + "field": "timestamptzToTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "timestamptz_to_tbox", + "tbox_as_hexwkb" + ] + }, + "numspanTimestamptzToTbox": { + "field": "numspanTimestamptzToTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "java.sql.Timestamp" + ], + "retType": "String", + "meosFns": [ + "span_from_hexwkb", + "numspan_timestamptz_to_tbox", + "tbox_as_hexwkb" + ] + }, + "tboxExpandTime": { + "field": "tboxExpandTime", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "tbox_expand_time", + "tbox_as_hexwkb" + ] + }, + "tboxExpandFloat": { + "field": "tboxExpandFloat", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "tbox_as_hexwkb" + ] + }, + "tboxExpandInt": { + "field": "tboxExpandInt", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "tbox_as_hexwkb" + ] + }, + "tboxShiftScaleTime": { + "field": "tboxShiftScaleTime", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "String", + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "pg_interval_in", + "tbox_shift_scale_time", + "tbox_as_hexwkb" + ] + }, + "intersectionTboxTbox": { + "field": "intersectionTboxTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "unionTboxTbox": { + "field": "unionTboxTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_tbox_tbox" + ] + }, + "tboxIntersection": { + "field": "intersectionTboxTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tboxUnion": { + "field": "unionTboxTbox", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "String", + "meosFns": [ + "union_tbox_tbox" + ] + }, + "expandValue": { + "field": "tboxExpandFloat", + "class": "TBoxUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Double" + ], + "retType": "String", + "meosFns": [ + "tbox_as_hexwkb" + ] + }, + "tboxContains": { + "field": "tboxContains", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxContained": { + "field": "tboxContained", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverlaps": { + "field": "tboxOverlaps", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxLeft": { + "field": "tboxLeft", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverleft": { + "field": "tboxOverleft", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxRight": { + "field": "tboxRight", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverright": { + "field": "tboxOverright", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxBefore": { + "field": "tboxBefore", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverbefore": { + "field": "tboxOverbefore", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAfter": { + "field": "tboxAfter", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxOverafter": { + "field": "tboxOverafter", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "tboxAdjacent": { + "field": "tboxAdjacent", + "class": "TBoxUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "temporalSubtype": { + "field": "temporalSubtype", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_subtype" + ] + }, + "startInstant": { + "field": "startInstant", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_start_instant", + "temporal_as_hexwkb" + ] + }, + "endInstant": { + "field": "endInstant", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_end_instant", + "temporal_as_hexwkb" + ] + }, + "instantN": { + "field": "instantN", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_instant_n", + "temporal_as_hexwkb" + ] + }, + "startSequence": { + "field": "startSequence", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_start_sequence", + "temporal_as_hexwkb" + ] + }, + "endSequence": { + "field": "endSequence", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_end_sequence", + "temporal_as_hexwkb" + ] + }, + "sequenceN": { + "field": "sequenceN", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_sequence_n", + "temporal_as_hexwkb" + ] + }, + "minInstant": { + "field": "minInstant", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_min_instant", + "temporal_as_hexwkb" + ] + }, + "maxInstant": { + "field": "maxInstant", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_max_instant", + "temporal_as_hexwkb" + ] + }, + "numTimestamps": { + "field": "numTimestamps", + "class": "MoreAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_num_timestamps" + ] + }, + "timestampN": { + "field": "timestampN", + "class": "MoreAccessorUDFs", + "retDataType": "TimestampType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Timestamp", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_timestamptz_n" + ] + }, + "lowerInc": { + "field": "lowerInc", + "class": "MoreAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_lower_inc" + ] + }, + "upperInc": { + "field": "upperInc", + "class": "MoreAccessorUDFs", + "retDataType": "BooleanType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_upper_inc" + ] + }, + "duration": { + "field": "duration", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_duration", + "pg_interval_out" + ] + }, + "tboolValueN": { + "field": "tboolValueN", + "class": "MoreAccessorUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_value_n" + ] + }, + "tfloatValueN": { + "field": "tfloatValueN", + "class": "MoreAccessorUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_value_n" + ] + }, + "ttextMinValue": { + "field": "ttextMinValue", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_min_value", + "text_out" + ] + }, + "ttextMaxValue": { + "field": "ttextMaxValue", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_max_value", + "text_out" + ] + }, + "ttextValueN": { + "field": "ttextValueN", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_value_n", + "text_out" + ] + }, + "tpointSrid": { + "field": "tpointSrid", + "class": "MoreAccessorUDFs", + "retDataType": "IntegerType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tspatial_srid" + ] + }, + "tpointValueN": { + "field": "tpointValueN", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_value_n", + "geo_as_text" + ] + }, + "tintValueN": { + "field": "tintValueN", + "class": "MoreAccessorUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "Integer" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_value_n" + ] + }, + "tboolValueAtTimestamptz": { + "field": "tboolValueAtTimestamptz", + "class": "MoreAccessorUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_value_at_timestamptz" + ] + }, + "tintValueAtTimestamptz": { + "field": "tintValueAtTimestamptz", + "class": "MoreAccessorUDFs", + "retDataType": "IntegerType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "Integer", + "meosFns": [ + "temporal_from_hexwkb", + "tint_value_at_timestamptz" + ] + }, + "tfloatValueAtTimestamptz": { + "field": "tfloatValueAtTimestamptz", + "class": "MoreAccessorUDFs", + "retDataType": "DoubleType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tfloat_value_at_timestamptz" + ] + }, + "ttextValueAtTimestamptz": { + "field": "ttextValueAtTimestamptz", + "class": "MoreAccessorUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "ttext_value_at_timestamptz", + "text_out", + "temporal_timestamps", + "tbool_values", + "tint_values", + "tfloat_values", + "temporal_as_hexwkb", + "ttext_values" + ] + }, + "temporalBeforeSpan": { + "field": "temporalBeforeSpan", + "class": "PosOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "before_temporal_tstzspan" + ] + }, + "temporalAfterSpan": { + "field": "temporalAfterSpan", + "class": "PosOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "after_temporal_tstzspan" + ] + }, + "temporalOverbeforeSpan": { + "field": "temporalOverbeforeSpan", + "class": "PosOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overbefore_temporal_tstzspan" + ] + }, + "temporalOverafterSpan": { + "field": "temporalOverafterSpan", + "class": "PosOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "overafter_temporal_tstzspan" + ] + }, + "tstzspanFromBinary": { + "field": "tstzspanFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "intspanFromBinary": { + "field": "intspanFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "floatspanFromBinary": { + "field": "floatspanFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "bigintspanFromBinary": { + "field": "bigintspanFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "datespanFromBinary": { + "field": "datespanFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tstzspansetFromBinary": { + "field": "tstzspansetFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "intspansetFromBinary": { + "field": "intspansetFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "floatspansetFromBinary": { + "field": "floatspansetFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "bigintspansetFromBinary": { + "field": "bigintspansetFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "datespansetFromBinary": { + "field": "datespansetFromBinary", + "class": "SpanUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "spanLeftSpanset": { + "field": "spanLeftSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanOverleftSpanset": { + "field": "spanOverleftSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanRightSpanset": { + "field": "spanRightSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanOverrightSpanset": { + "field": "spanOverrightSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanAdjacentSpanset": { + "field": "spanAdjacentSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanContainsSpanset": { + "field": "spanContainsSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanContainedSpanset": { + "field": "spanContainedSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spanOverlapsSpanset": { + "field": "spanOverlapsSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetLeftSpan": { + "field": "spansetLeftSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetOverleftSpan": { + "field": "spansetOverleftSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetRightSpan": { + "field": "spansetRightSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetOverrightSpan": { + "field": "spansetOverrightSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetAdjacentSpan": { + "field": "spansetAdjacentSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetContainedSpan": { + "field": "spansetContainedSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetOverlapsSpan": { + "field": "spansetOverlapsSpan", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetLeftSpanset": { + "field": "spansetLeftSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetOverleftSpanset": { + "field": "spansetOverleftSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetRightSpanset": { + "field": "spansetRightSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetOverrightSpanset": { + "field": "spansetOverrightSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetAdjacentSpanset": { + "field": "spansetAdjacentSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetContainsSpanset": { + "field": "spansetContainsSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "spansetContainedSpanset": { + "field": "spansetContainedSpanset", + "class": "SpansetOpsUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "length": { + "field": "length", + "class": "BerlinMODUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [ + "temporal_from_hexwkb", + "tpoint_length" + ] + }, + "bboxOverlaps": { + "field": "bboxOverlaps", + "class": "BerlinMODUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [ + "temporal_from_hexwkb", + "tstzspan_in", + "overlaps_temporal_tstzspan", + "stbox_from_hexwkb", + "overlaps_tspatial_stbox" + ] + }, + "valueAtTimestamp": { + "field": "valueAtTimestamp", + "class": "BerlinMODUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Object" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tgeo_value_at_timestamptz", + "geo_as_text" + ] + }, + "geoTimeStbox": { + "field": "geoTimeStbox", + "class": "BerlinMODUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Object" + ], + "retType": "String", + "meosFns": [ + "geo_from_text", + "geo_timestamptz_to_stbox", + "tstzspan_in", + "geo_tstzspan_to_stbox", + "pg_timestamptz_in", + "stbox_as_hexwkb" + ] + }, + "whenTrue": { + "field": "whenTrue", + "class": "BerlinMODUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "tbool_when_true", + "tstzspanset_out" + ] + }, + "npoint": { + "field": "npoint", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "Long", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "nsegment": { + "field": "nsegment", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 3, + "argTypes": [ + "Long", + "Double", + "Double" + ], + "retType": "String", + "meosFns": [] + }, + "route": { + "field": "route", + "class": "NpointUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [] + }, + "getPosition": { + "field": "getPosition", + "class": "NpointUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [] + }, + "startPosition": { + "field": "startPosition", + "class": "NpointUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [] + }, + "endPosition": { + "field": "endPosition", + "class": "NpointUDFs", + "retDataType": "DoubleType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Double", + "meosFns": [] + }, + "npointFromText": { + "field": "npointFromText", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "npointFromEWKT": { + "field": "npointFromEWKT", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "npointFromHexEWKB": { + "field": "npointFromHexEWKB", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "npointFromBinary": { + "field": "npointFromBinary", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "npointFromEWKB": { + "field": "npointFromEWKB", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "npointsetFromHexWKB": { + "field": "npointsetFromHexWKB", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "npointsetFromText": { + "field": "npointsetFromText", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_as_hexwkb" + ] + }, + "npointsetFromEWKT": { + "field": "npointsetFromEWKT", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "npointsetFromBinary": { + "field": "npointsetFromBinary", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb" + ] + }, + "npointsetFromEWKB": { + "field": "npointsetFromEWKB", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "routes": { + "field": "routes", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "set_from_hexwkb", + "set_as_hexwkb", + "temporal_from_hexwkb" + ] + }, + "tnpoint": { + "field": "tnpoint", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [ + "temporal_as_hexwkb" + ] + }, + "tnpointInst": { + "field": "tnpointInst", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String", + "Timestamp" + ], + "retType": "String", + "meosFns": [] + }, + "tnpointRoute": { + "field": "tnpointRoute", + "class": "NpointUDFs", + "retDataType": "LongType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "Long", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_as_hexwkb" + ] + }, + "tnpointFromHexWKB": { + "field": "tnpointFromHexWKB", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [] + }, + "tnpointFromBinary": { + "field": "tnpointFromBinary", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "byte[]" + ], + "retType": "String", + "meosFns": [] + }, + "tnpointSeq": { + "field": "tnpointSeq", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequence", + "temporal_as_hexwkb" + ] + }, + "tnpointSeqSet": { + "field": "tnpointSeqSet", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 1, + "argTypes": [ + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "temporal_to_tsequenceset", + "temporal_as_hexwkb" + ] + }, + "tnpointSeqSetGaps": { + "field": "tnpointSeqSetGaps", + "class": "NpointUDFs", + "retDataType": "StringType", + "arity": 2, + "argTypes": [ + "String[]", + "String" + ], + "retType": "String", + "meosFns": [ + "temporal_from_hexwkb", + "pg_interval_in", + "tsequenceset_make_gaps", + "temporal_as_hexwkb", + "set_from_hexwkb" + ] + }, + "containsRid": { + "field": "containsRid", + "class": "NpointUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "containedRid": { + "field": "containedRid", + "class": "NpointUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "sameRid": { + "field": "sameRid", + "class": "NpointUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + }, + "overlapsRid": { + "field": "overlapsRid", + "class": "NpointUDFs", + "retDataType": "BooleanType", + "arity": 2, + "argTypes": [ + "String", + "String" + ], + "retType": "Boolean", + "meosFns": [] + } + } +} \ No newline at end of file diff --git a/codegen/tools/NAMED_SURFACE.md b/codegen/tools/NAMED_SURFACE.md index f8c1669e..0b573b7a 100644 --- a/codegen/tools/NAMED_SURFACE.md +++ b/codegen/tools/NAMED_SURFACE.md @@ -25,13 +25,37 @@ name, the UDF body calls the linked MEOS C function, and the overloads/defaults fix the call-arity exactly (no runtime null-padding heuristic). A new function in the SQL catalog flows into every binding with no per-binding edit. -## A2 — emitters that consume this spec (next) +## Canonical name -> Spark impl (derived, not hand-mapped) -- **MobilitySpark UDFs + Connect registrar:** for each function, remap the name to - the Spark idiom, emit a UDF over the linked MEOS C function for each overload - arity, and emit the matching `SparkSessionExtensions.injectFunction` entry. -- Same spec feeds the PG/DuckDB identity dialects, PyMEOS, and the Flink/Kafka - facades. +`extract_spark_impls.py ` scans the MobilitySpark `*UDFs` +classes for each `register("sparkName", field, DataTypes.RET)` and the field's +body `GeneratedFunctions.` calls, then joins on the named surface's +`SQL -> MEOS C` linkage to recover **canonical name -> Spark impl** mechanically. +This is what proves the camelCase remap (`asMFJSON->temporalAsMfjson`, +`Xmin->stboxXmin`, ...) is derivable and need not be a hand-written dialect table. + +The join (1308 Spark impls) classifies each canonical function for the emitter: + +- **single impl** (`asMFJSON->temporalAsMfjson`, `azimuth->tpointAzimuth`, + `sequenceN`, `numSequences`): emit the **canonical (identity) name** bound to + the one impl; arity adapts by null-padding the impl's optional args. +- **multi impl** (`Xmin->{stboxXmin,tboxXmin,tboxfloatXmin,tboxintXmin}`, + `Tmin->{stboxTmin,tboxTmin}`, `atTime->{atTime,temporalAtTstzspan,...}`): the + receiver/arg type is opaque (every MEOS value is a hex String in Spark), so the + identity-named builder must **dispatch on the WKB type tag** (`meos_typeof_hexwkb` + of the relevant arg) to the impl whose MEOS function matches that type. This is + the reason the type-prefixed names exist; the registrar removes the need for them. +- **join gaps** (`speed->[]`): the SQL function's `@csqlfn` chain resolved to a + type variant (`trgeometry_speed`) different from the MEOS function the Spark UDF + calls; close by capturing all per-type C variants per SQL name. + +## A2 — the emitter (consumes the two derived specs) + +- **MobilitySpark Connect registrar:** for each canonical function, emit an + `injectFunction` under the **identity** name; single-impl -> direct ScalaUDF over + the impl; multi-impl -> a WKB-type-tag dispatch builder selecting the impl. + Retires both the hand-written registrar and `dialect_spark.go`'s `sparkNameMap`. +- Same two specs feed the PG/DuckDB identity dialects, PyMEOS, and Flink/Kafka. ## Refinements tracked diff --git a/codegen/tools/extract_spark_impls.py b/codegen/tools/extract_spark_impls.py new file mode 100644 index 00000000..fdd0a69d --- /dev/null +++ b/codegen/tools/extract_spark_impls.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Derive the canonical-function -> MobilitySpark-impl mapping (no hand list). + +The MobilitySpark UDFs are the Spark implementations. Each is registered as +`register("", , DataTypes.)` and its lambda body calls one +or more `GeneratedFunctions.` (the MEOS C function it implements). This +tool scans the MobilitySpark sources to produce, per registered UDF: + sparkName, holderClass, field, retType, arity, argTypes, meosFns[] + +Joined against meos-named-surface.json (canonical SQL name -> MEOS C function, via +the doxygen chain), it yields canonical SQL name -> Spark impl — the mapping the +Connect-registrar emitter needs, derived rather than hand-maintained. It also +shows that the camelCase remaps (asMFJSON->temporalAsMfjson, Xmin->stboxXmin, ...) +are mechanically recoverable, so they need not be a hand-written dialect table. + +Usage: + extract_spark_impls.py [named-surface.json] +""" +import json, re, sys, os, glob + +REG_RE = re.compile(r'register\(\s*"([^"]+)"\s*,\s*(\w+)\s*,\s*DataTypes\.(\w+)\s*\)') +# a public static UDFn field declaration: capture name + generic type args +FIELD_RE = re.compile(r'public\s+static\s+final\s+UDF(\d)<([^>]*)>\s+(\w+)\s*=', re.MULTILINE) +GENFN_RE = re.compile(r'GeneratedFunctions\.(\w+)\s*\(') + +def scan_impls(root): + impls = {} # sparkName -> dict + fields = {} # field -> (arity, argTypes, bodyMeosFns) + for f in glob.glob(os.path.join(root, 'src', 'main', 'java', '**', '*UDFs.java'), recursive=True): + text = open(f, encoding='utf-8', errors='ignore').read() + cls = os.path.basename(f)[:-5] + # field declarations + the body that follows (until the next "public static" or EOF) + decls = list(FIELD_RE.finditer(text)) + for i, m in enumerate(decls): + arity = int(m.group(1)) + targs = [t.strip() for t in m.group(2).split(',')] + field = m.group(3) + body = text[m.end(): decls[i + 1].start() if i + 1 < len(decls) else len(text)] + meos = list(dict.fromkeys(GENFN_RE.findall(body))) # ordered-unique + fields[field] = {'class': cls, 'arity': arity, + 'argTypes': targs[:-1], 'retType': targs[-1], 'meosFns': meos} + for m in REG_RE.finditer(text): + sparkName, field, ret = m.group(1), m.group(2), m.group(3) + fd = fields.get(field) + if fd: + impls[sparkName] = {'field': field, 'class': fd['class'], 'retDataType': ret, + 'arity': fd['arity'], 'argTypes': fd['argTypes'], + 'retType': fd['retType'], 'meosFns': fd['meosFns']} + return impls + +def main(): + root = sys.argv[1] if len(sys.argv) > 1 else '.' + spec_path = sys.argv[2] if len(sys.argv) > 2 else os.path.join( + os.path.dirname(__file__), '..', 'input', 'meos-named-surface.json') + impls = scan_impls(root) + out = os.path.join(os.path.dirname(__file__), '..', 'input', 'spark-impls.json') + json.dump({'implCount': len(impls), 'impls': impls}, open(out, 'w'), indent=1) + + # join with the canonical named surface to recover canonical -> spark impl + surface = json.load(open(spec_path))['functions'] + # MEOS C fn -> spark impl(s) + meos2spark = {} + for sn, d in impls.items(): + for mf in d['meosFns']: + meos2spark.setdefault(mf, []).append(sn) + derived = {} + for fn in surface: + for c in fn['c']: + for sn in meos2spark.get(c['meos'], []): + derived.setdefault(fn['name'], set()).add(sn) + print(f"spark impls: {len(impls)} -> {out}") + print("derived canonical -> spark impl (the remap, recovered mechanically):") + for canon in ('asMFJSON', 'Xmin', 'Tmin', 'azimuth', 'speed', 'atTime', 'sequenceN', 'numSequences'): + got = sorted(derived.get(canon, [])) + print(f" {canon:14} -> {got}") + +if __name__ == '__main__': + main() From b1d8b2e0324f70b215777343757f0761b00e6e39 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 06:58:45 +0200 Subject: [PATCH 11/14] Generate the Spark Connect registrar with identity names from the surface generate_spark_registrar.py joins the canonical named surface with the Spark impl scan and emits MobilitySparkConnectExtensionsGen.scala: a SparkSessionExtensions that injects each canonical function under its identity name (asMFJSON, not temporalAsMfjson), no hand-written remap. Shipped ScalaUDF closures live in a companion object so they capture only the serializable UDF; the builder null-pads the impl's optional args to the call-site arity. The 81 single-impl functions are generated, compiled, and serve live over Spark Connect under their identity names; the 139 multi-impl names are listed for the per-row meos_typeof_hexwkb dispatch. --- codegen/input/spark-impls.json | 1308 +++++++++++++++++ .../MobilitySparkConnectExtensionsGen.scala | 280 ++++ codegen/tools/NAMED_SURFACE.md | 22 +- codegen/tools/extract_spark_impls.py | 8 +- codegen/tools/generate_spark_registrar.py | 122 ++ 5 files changed, 1732 insertions(+), 8 deletions(-) create mode 100644 codegen/output/MobilitySparkConnectExtensionsGen.scala create mode 100644 codegen/tools/generate_spark_registrar.py diff --git a/codegen/input/spark-impls.json b/codegen/input/spark-impls.json index 82ffc7e1..6d33728f 100644 --- a/codegen/input/spark-impls.json +++ b/codegen/input/spark-impls.json @@ -4,6 +4,7 @@ "trgeometry": { "field": "trgeometry", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -20,6 +21,7 @@ "trgeometryInst": { "field": "trgeometryInst", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -32,6 +34,7 @@ "tpose": { "field": "tpose", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -47,6 +50,7 @@ "trgeometryFromMFJSON": { "field": "trgeometryFromMFJSON", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -60,6 +64,7 @@ "trgeometryFromText": { "field": "trgeometryFromText", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -71,6 +76,7 @@ "trgeometryFromEWKT": { "field": "trgeometryFromEWKT", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -82,6 +88,7 @@ "trgeometryFromHexEWKB": { "field": "trgeometryFromHexEWKB", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -93,6 +100,7 @@ "trgeometryFromBinary": { "field": "trgeometryFromBinary", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -104,6 +112,7 @@ "trgeometryFromEWKB": { "field": "trgeometryFromEWKB", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -115,6 +124,7 @@ "trgeometrySeq": { "field": "trgeometrySeq", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -130,6 +140,7 @@ "trgeometrySeqSet": { "field": "trgeometrySeqSet", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -145,6 +156,7 @@ "trgeometrySeqSetGaps": { "field": "trgeometrySeqSetGaps", "class": "RgeoUDFs", + "pkg": "org.mobilitydb.spark.rgeo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -162,6 +174,7 @@ "cbuffer": { "field": "cbuffer", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -176,6 +189,7 @@ "point": { "field": "point", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -189,6 +203,7 @@ "radius": { "field": "radius", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -200,6 +215,7 @@ "cbufferContains": { "field": "cbufferContains", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -212,6 +228,7 @@ "cbufferCovers": { "field": "cbufferCovers", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -224,6 +241,7 @@ "cbufferDisjoint": { "field": "cbufferDisjoint", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -236,6 +254,7 @@ "cbufferIntersects": { "field": "cbufferIntersects", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -248,6 +267,7 @@ "cbufferTouches": { "field": "cbufferTouches", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -260,6 +280,7 @@ "cbufferDwithin": { "field": "cbufferDwithin", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -273,6 +294,7 @@ "cbufferSame": { "field": "cbufferSame", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -285,6 +307,7 @@ "cbuffersetFromHexWKB": { "field": "cbuffersetFromHexWKB", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -299,6 +322,7 @@ "cbuffersetFromBinary": { "field": "cbuffersetFromBinary", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -313,6 +337,7 @@ "tcbuffer": { "field": "tcbuffer", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -328,6 +353,7 @@ "tcbufferInst": { "field": "tcbufferInst", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -344,6 +370,7 @@ "tcbufferFromText": { "field": "tcbufferFromText", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -357,6 +384,7 @@ "tcbufferFromEWKT": { "field": "tcbufferFromEWKT", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -368,6 +396,7 @@ "tcbufferFromHexEWKB": { "field": "tcbufferFromHexEWKB", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -379,6 +408,7 @@ "tcbufferFromBinary": { "field": "tcbufferFromBinary", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -390,6 +420,7 @@ "tcbufferFromEWKB": { "field": "tcbufferFromEWKB", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -401,6 +432,7 @@ "tcbufferSeq": { "field": "tcbufferSeq", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -416,6 +448,7 @@ "tcbufferSeqSet": { "field": "tcbufferSeqSet", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -431,6 +464,7 @@ "tcbufferSeqSetGaps": { "field": "tcbufferSeqSetGaps", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -448,6 +482,7 @@ "points": { "field": "points", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -462,6 +497,7 @@ "tcbufferRadius": { "field": "tcbufferRadius", "class": "CbufferUDFs", + "pkg": "org.mobilitydb.spark.cbuffer", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -476,6 +512,7 @@ "pose": { "field": "pose", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -489,6 +526,7 @@ "rotation": { "field": "rotation", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -500,6 +538,7 @@ "poseSame": { "field": "poseSame", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -512,6 +551,7 @@ "poseFromText": { "field": "poseFromText", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -523,6 +563,7 @@ "poseFromEWKT": { "field": "poseFromEWKT", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -534,6 +575,7 @@ "poseFromHexEWKB": { "field": "poseFromHexEWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -545,6 +587,7 @@ "poseFromBinary": { "field": "poseFromBinary", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -556,6 +599,7 @@ "poseFromEWKB": { "field": "poseFromEWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -567,6 +611,7 @@ "posesetFromHexWKB": { "field": "posesetFromHexWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -581,6 +626,7 @@ "posesetFromText": { "field": "posesetFromText", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -594,6 +640,7 @@ "posesetFromEWKT": { "field": "posesetFromEWKT", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -605,6 +652,7 @@ "posesetFromBinary": { "field": "posesetFromBinary", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -619,6 +667,7 @@ "posesetFromEWKB": { "field": "posesetFromEWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -630,6 +679,7 @@ "tposeInst": { "field": "tposeInst", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -646,6 +696,7 @@ "tposeFromText": { "field": "tposeFromText", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -659,6 +710,7 @@ "tposeFromEWKT": { "field": "tposeFromEWKT", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -670,6 +722,7 @@ "tposeFromMFJSON": { "field": "tposeFromMFJSON", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -683,6 +736,7 @@ "tposeFromHexEWKB": { "field": "tposeFromHexEWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -694,6 +748,7 @@ "tposeFromBinary": { "field": "tposeFromBinary", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -705,6 +760,7 @@ "tposeFromEWKB": { "field": "tposeFromEWKB", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -716,6 +772,7 @@ "tposeSeq": { "field": "tposeSeq", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -731,6 +788,7 @@ "tposeSeqSet": { "field": "tposeSeqSet", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -746,6 +804,7 @@ "tposeSeqSetGaps": { "field": "tposeSeqSetGaps", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -763,6 +822,7 @@ "tposePoints": { "field": "tposePoints", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -777,6 +837,7 @@ "tposeRotation": { "field": "tposeRotation", "class": "PoseUDFs", + "pkg": "org.mobilitydb.spark.pose", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -791,6 +852,7 @@ "geomBuffer": { "field": "geomBuffer", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -807,6 +869,7 @@ "geomConvexHull": { "field": "geomConvexHull", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -822,6 +885,7 @@ "geomIntersection": { "field": "geomIntersection", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -838,6 +902,7 @@ "setSRID": { "field": "setSRID", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -854,6 +919,7 @@ "transform": { "field": "transform", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -870,6 +936,7 @@ "asText": { "field": "asText", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -885,6 +952,7 @@ "asEWKT": { "field": "asEWKT", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -900,6 +968,7 @@ "atElevation": { "field": "atElevation", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -918,6 +987,7 @@ "tContains": { "field": "tContains", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -935,6 +1005,7 @@ "tCovers": { "field": "tCovers", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -951,6 +1022,7 @@ "tDwithin": { "field": "tDwithin", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -968,6 +1040,7 @@ "bearingToPoint": { "field": "bearingToPoint", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -985,6 +1058,7 @@ "bearing": { "field": "bearing", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1001,6 +1075,7 @@ "twCentroid": { "field": "twCentroid", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1016,6 +1091,7 @@ "geoSame": { "field": "geoSame", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1031,6 +1107,7 @@ "tpointConvexHull": { "field": "tpointConvexHull", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1046,6 +1123,7 @@ "tpointExpandSpace": { "field": "tpointExpandSpace", "class": "GeoAnalyticsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1068,6 +1146,7 @@ "eIntersects": { "field": "eIntersects", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1088,6 +1167,7 @@ "eDisjoint": { "field": "eDisjoint", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1106,6 +1186,7 @@ "eTouches": { "field": "eTouches", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1124,6 +1205,7 @@ "eCovers": { "field": "eCovers", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1142,6 +1224,7 @@ "eContains": { "field": "eContains", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1160,6 +1243,7 @@ "eDisjointTgeoTgeo": { "field": "eDisjointTgeoTgeo", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1175,6 +1259,7 @@ "eIntersectsTgeoTgeo": { "field": "eIntersectsTgeoTgeo", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1190,6 +1275,7 @@ "nearestApproachDistance": { "field": "nearestApproachDistance", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -1205,6 +1291,7 @@ "eDwithin": { "field": "eDwithin", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -1221,6 +1308,7 @@ "eDwithinGeo": { "field": "eDwithinGeo", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -1240,6 +1328,7 @@ "aIntersects": { "field": "aIntersects", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1258,6 +1347,7 @@ "aDisjoint": { "field": "aDisjoint", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1273,6 +1363,7 @@ "aDwithin": { "field": "aDwithin", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -1289,6 +1380,7 @@ "aDwithinGeo": { "field": "aDwithinGeo", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -1308,6 +1400,7 @@ "tgeompoint": { "field": "tgeompoint", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1322,6 +1415,7 @@ "trajectory": { "field": "trajectory", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1337,6 +1431,7 @@ "geomFromText": { "field": "geomFromText", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1351,6 +1446,7 @@ "getX": { "field": "getX", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1366,6 +1462,7 @@ "getY": { "field": "getY", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1381,6 +1478,7 @@ "getZ": { "field": "getZ", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1398,6 +1496,7 @@ "cumulativeLength": { "field": "cumulativeLength", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1413,6 +1512,7 @@ "stops": { "field": "stops", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -1431,6 +1531,7 @@ "isSimple": { "field": "isSimple", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -1445,6 +1546,7 @@ "shortestLine": { "field": "shortestLineTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1461,6 +1563,7 @@ "tpointTransform": { "field": "tpointTransform", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1477,6 +1580,7 @@ "tpointAsText": { "field": "tpointAsText", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1492,6 +1596,7 @@ "tpointAsEWKT": { "field": "tpointAsEWKT", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1507,6 +1612,7 @@ "tpointSRID": { "field": "tpointSRID", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -1522,6 +1628,7 @@ "tpointSetSRID": { "field": "tpointSetSRID", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1538,6 +1645,7 @@ "tpointRound": { "field": "tpointRound", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1554,6 +1662,7 @@ "tpointToStbox": { "field": "tpointToStbox", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1569,6 +1678,7 @@ "expandSpace": { "field": "expandSpace", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1587,6 +1697,7 @@ "geoAsEwkt": { "field": "geoAsEwkt", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1602,6 +1713,7 @@ "geoAsGeojson": { "field": "geoAsGeojson", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -1618,6 +1730,7 @@ "geoFromGeojson": { "field": "geoFromGeojson", "class": "GeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1632,6 +1745,7 @@ "geomContains": { "field": "geomContains", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1649,6 +1763,7 @@ "geomCovers": { "field": "geomCovers", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1664,6 +1779,7 @@ "geomDisjoint": { "field": "geomDisjoint", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1679,6 +1795,7 @@ "geomIntersects": { "field": "geomIntersects", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1694,6 +1811,7 @@ "geomTouches": { "field": "geomTouches", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -1709,6 +1827,7 @@ "geomDwithin": { "field": "geomDwithin", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -1725,6 +1844,7 @@ "geomDistance": { "field": "geomDistance", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -1740,6 +1860,7 @@ "geomLength": { "field": "geomLength", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -1754,6 +1875,7 @@ "geomPerimeter": { "field": "geomPerimeter", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -1768,6 +1890,7 @@ "geomCentroid": { "field": "geomCentroid", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1783,6 +1906,7 @@ "geomBoundary": { "field": "geomBoundary", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1798,6 +1922,7 @@ "geomDifference": { "field": "geomDifference", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1814,6 +1939,7 @@ "geomUnaryUnion": { "field": "geomUnaryUnion", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1830,6 +1956,7 @@ "geoReverse": { "field": "geoReverse", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -1845,6 +1972,7 @@ "geoRound": { "field": "geoRound", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1861,6 +1989,7 @@ "lineInterpolatePoint": { "field": "lineInterpolatePoint", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1877,6 +2006,7 @@ "lineSubstring": { "field": "lineSubstring", "class": "StaticGeoUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -1894,6 +2024,7 @@ "tdistanceTgeoGeo": { "field": "tdistanceTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1911,6 +2042,7 @@ "tdistanceTgeoTgeo": { "field": "tdistanceTgeoTgeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1927,6 +2059,7 @@ "tdistanceTfloatFloat": { "field": "tdistanceTfloatFloat", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1943,6 +2076,7 @@ "tdistanceTintInt": { "field": "tdistanceTintInt", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1959,6 +2093,7 @@ "tdistanceTnumberTnumber": { "field": "tdistanceTnumberTnumber", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -1975,6 +2110,7 @@ "nadTgeoGeo": { "field": "nadTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -1990,6 +2126,7 @@ "nadTgeoStbox": { "field": "nadTgeoStbox", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2005,6 +2142,7 @@ "nadTgeoTgeo": { "field": "nadTgeoTgeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2019,6 +2157,7 @@ "naiTgeoGeo": { "field": "naiTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2035,6 +2174,7 @@ "naiTgeoTgeo": { "field": "naiTgeoTgeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2050,6 +2190,7 @@ "shortestLineTgeoGeo": { "field": "shortestLineTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2066,6 +2207,7 @@ "shortestLineTgeoTgeo": { "field": "shortestLineTgeoTgeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2082,6 +2224,7 @@ "minDistanceTgeoGeo": { "field": "minDistanceTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2097,6 +2240,7 @@ "minDistanceTgeoTgeo": { "field": "minDistanceTgeoTgeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2111,6 +2255,7 @@ "minDistanceTgeoarrTgeoarr": { "field": "minDistanceTgeoarrTgeoarr", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2127,6 +2272,7 @@ "nearestApproachInstant": { "field": "naiTgeoGeo", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2143,6 +2289,7 @@ "minDistance": { "field": "minDistanceTgeoarrTgeoarr", "class": "DistanceUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -2159,6 +2306,7 @@ "stboxHasx": { "field": "stboxHasx", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2172,6 +2320,7 @@ "stboxHast": { "field": "stboxHast", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2185,6 +2334,7 @@ "stboxHasz": { "field": "stboxHasz", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2198,6 +2348,7 @@ "stboxXmin": { "field": "stboxXmin", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2211,6 +2362,7 @@ "stboxXmax": { "field": "stboxXmax", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2224,6 +2376,7 @@ "stboxYmin": { "field": "stboxYmin", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2237,6 +2390,7 @@ "stboxYmax": { "field": "stboxYmax", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2250,6 +2404,7 @@ "stboxZmin": { "field": "stboxZmin", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2263,6 +2418,7 @@ "stboxZmax": { "field": "stboxZmax", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2276,6 +2432,7 @@ "stboxTmin": { "field": "stboxTmin", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -2289,6 +2446,7 @@ "stboxTmax": { "field": "stboxTmax", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -2302,6 +2460,7 @@ "stboxTminInc": { "field": "stboxTminInc", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2315,6 +2474,7 @@ "stboxTmaxInc": { "field": "stboxTmaxInc", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2328,6 +2488,7 @@ "stboxSrid": { "field": "stboxSrid", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -2341,6 +2502,7 @@ "stboxExpandSpace": { "field": "stboxExpandSpace", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2355,6 +2517,7 @@ "stboxExpandTime": { "field": "stboxExpandTime", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2370,6 +2533,7 @@ "stboxArea": { "field": "stboxArea", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2383,6 +2547,7 @@ "stboxPerimeter": { "field": "stboxPerimeter", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2396,6 +2561,7 @@ "stboxVolume": { "field": "stboxVolume", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -2409,6 +2575,7 @@ "stboxIsGeodetic": { "field": "stboxIsGeodetic", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -2422,6 +2589,7 @@ "stboxToGeo": { "field": "stboxToGeo", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2436,6 +2604,7 @@ "stboxToTstzspan": { "field": "stboxToTstzspan", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2450,6 +2619,7 @@ "stboxRound": { "field": "stboxRound", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2464,6 +2634,7 @@ "stboxSetSrid": { "field": "stboxSetSrid", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2478,6 +2649,7 @@ "stboxShiftScaleTime": { "field": "stboxShiftScaleTime", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -2494,6 +2666,7 @@ "stboxGetSpace": { "field": "stboxGetSpace", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2507,6 +2680,7 @@ "geoToStbox": { "field": "geoToStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2521,6 +2695,7 @@ "tstzspanToStbox": { "field": "tstzspanToStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2535,6 +2710,7 @@ "timestamptzToStbox": { "field": "timestamptzToStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2548,6 +2724,7 @@ "intersectionStboxStbox": { "field": "intersectionStboxStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2560,6 +2737,7 @@ "unionStboxStbox": { "field": "unionStboxStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2574,6 +2752,7 @@ "stboxIntersection": { "field": "intersectionStboxStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2586,6 +2765,7 @@ "stboxUnion": { "field": "unionStboxStbox", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2600,6 +2780,7 @@ "stboxX": { "field": "stboxX", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -2614,6 +2795,7 @@ "stboxT": { "field": "stboxT", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2625,6 +2807,7 @@ "stboxXT": { "field": "stboxXT", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 5, "argTypes": [ @@ -2640,6 +2823,7 @@ "stboxZ": { "field": "stboxZ", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 6, "argTypes": [ @@ -2656,6 +2840,7 @@ "stboxZT": { "field": "stboxZT", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 7, "argTypes": [ @@ -2673,6 +2858,7 @@ "geodstboxZ": { "field": "geodstboxZ", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 6, "argTypes": [ @@ -2689,6 +2875,7 @@ "geodstboxT": { "field": "geodstboxT", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -2700,6 +2887,7 @@ "geodstboxZT": { "field": "geodstboxZT", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 7, "argTypes": [ @@ -2717,6 +2905,7 @@ "stboxContains": { "field": "stboxContains", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2729,6 +2918,7 @@ "stboxContained": { "field": "stboxContained", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2741,6 +2931,7 @@ "stboxOverlaps": { "field": "stboxOverlaps", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2756,6 +2947,7 @@ "stboxLeft": { "field": "stboxLeft", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2768,6 +2960,7 @@ "stboxOverleft": { "field": "stboxOverleft", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2780,6 +2973,7 @@ "stboxRight": { "field": "stboxRight", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2792,6 +2986,7 @@ "stboxOverright": { "field": "stboxOverright", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2804,6 +2999,7 @@ "stboxBelow": { "field": "stboxBelow", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2816,6 +3012,7 @@ "stboxOverbelow": { "field": "stboxOverbelow", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2828,6 +3025,7 @@ "stboxAbove": { "field": "stboxAbove", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2840,6 +3038,7 @@ "stboxOverabove": { "field": "stboxOverabove", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2852,6 +3051,7 @@ "stboxBefore": { "field": "stboxBefore", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2864,6 +3064,7 @@ "stboxOverbefore": { "field": "stboxOverbefore", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2876,6 +3077,7 @@ "stboxAfter": { "field": "stboxAfter", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2888,6 +3090,7 @@ "stboxOverafter": { "field": "stboxOverafter", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2900,6 +3103,7 @@ "stboxAdjacent": { "field": "stboxAdjacent", "class": "STBoxUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -2916,6 +3120,7 @@ "translate": { "field": "translate2", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -2929,6 +3134,7 @@ "translate3": { "field": "translate3", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -2943,6 +3149,7 @@ "rotate": { "field": "rotate", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2955,6 +3162,7 @@ "rotateX": { "field": "rotateX", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2967,6 +3175,7 @@ "rotateY": { "field": "rotateY", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2979,6 +3188,7 @@ "rotateZ": { "field": "rotateZ", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -2991,6 +3201,7 @@ "transscale": { "field": "transscale", "class": "GeoAffineUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 5, "argTypes": [ @@ -3006,6 +3217,7 @@ "tDisjoint": { "field": "tDisjoint", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3022,6 +3234,7 @@ "tIntersects": { "field": "tIntersects", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3038,6 +3251,7 @@ "tTouches": { "field": "tTouches", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3054,6 +3268,7 @@ "tDisjointTgeoTgeo": { "field": "tDisjointTgeoTgeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3069,6 +3284,7 @@ "tIntersectsTgeoTgeo": { "field": "tIntersectsTgeoTgeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3084,6 +3300,7 @@ "tTouchesTogeoTgeo": { "field": "tTouchesTogeoTgeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3099,6 +3316,7 @@ "tContainsTgeoGeo": { "field": "tContainsTgeoGeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3115,6 +3333,7 @@ "tContainsTgeoTgeo": { "field": "tContainsTgeoTgeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3130,6 +3349,7 @@ "tCoversTgeoGeo": { "field": "tCoversTgeoGeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3146,6 +3366,7 @@ "tDwithinTgeoGeo": { "field": "tDwithinTgeoGeo", "class": "TempSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -3163,6 +3384,7 @@ "aDisjointTgeoGeo": { "field": "aDisjointTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3175,6 +3397,7 @@ "aDisjointTgeoTgeo": { "field": "aDisjointTgeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3187,6 +3410,7 @@ "aIntersectsTgeoGeo": { "field": "aIntersectsTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3199,6 +3423,7 @@ "aIntersectsTgeoTgeo": { "field": "aIntersectsTgeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3211,6 +3436,7 @@ "aTouchesTgeoGeo": { "field": "aTouchesTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3223,6 +3449,7 @@ "aTouchesTgeoTgeo": { "field": "aTouchesTgeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3235,6 +3462,7 @@ "aContainsTgeoGeo": { "field": "aContainsTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3247,6 +3475,7 @@ "aContainsTgeoTgeo": { "field": "aContainsTgeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3259,6 +3488,7 @@ "aContainsGeoTgeo": { "field": "aContainsGeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3271,6 +3501,7 @@ "aCoversTgeoGeo": { "field": "aCoversTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3283,6 +3514,7 @@ "aDwithinTgeoGeo": { "field": "aDwithinTgeoGeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -3296,6 +3528,7 @@ "aDwithinTgeoTgeo": { "field": "aDwithinTgeoTgeo", "class": "AlwaysSpatialRelsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 3, "argTypes": [ @@ -3309,6 +3542,7 @@ "stboxLeftTpoint": { "field": "stboxLeftTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3321,6 +3555,7 @@ "stboxOverleftTpoint": { "field": "stboxOverleftTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3333,6 +3568,7 @@ "stboxRightTpoint": { "field": "stboxRightTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3345,6 +3581,7 @@ "stboxOverrightTpoint": { "field": "stboxOverrightTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3357,6 +3594,7 @@ "stboxBelowTpoint": { "field": "stboxBelowTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3369,6 +3607,7 @@ "stboxOverbelowTpoint": { "field": "stboxOverbelowTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3381,6 +3620,7 @@ "stboxAboveTpoint": { "field": "stboxAboveTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3393,6 +3633,7 @@ "stboxOveraboveTpoint": { "field": "stboxOveraboveTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3405,6 +3646,7 @@ "stboxFrontTpoint": { "field": "stboxFrontTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3417,6 +3659,7 @@ "stboxOverfrontTpoint": { "field": "stboxOverfrontTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3429,6 +3672,7 @@ "stboxBackTpoint": { "field": "stboxBackTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3441,6 +3685,7 @@ "stboxOverbackTpoint": { "field": "stboxOverbackTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3453,6 +3698,7 @@ "stboxBeforeTpoint": { "field": "stboxBeforeTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3465,6 +3711,7 @@ "stboxOverbeforeTpoint": { "field": "stboxOverbeforeTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3477,6 +3724,7 @@ "stboxAfterTpoint": { "field": "stboxAfterTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3489,6 +3737,7 @@ "stboxOverafterTpoint": { "field": "stboxOverafterTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3501,6 +3750,7 @@ "stboxAdjacentTpoint": { "field": "stboxAdjacentTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3513,6 +3763,7 @@ "stboxContainsTpoint": { "field": "stboxContainsTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3525,6 +3776,7 @@ "stboxContainedTpoint": { "field": "stboxContainedTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3537,6 +3789,7 @@ "stboxOverlapsTpoint": { "field": "stboxOverlapsTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3549,6 +3802,7 @@ "stboxSameTpoint": { "field": "stboxSameTpoint", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3561,6 +3815,7 @@ "tpointLeftStbox": { "field": "tpointLeftStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3573,6 +3828,7 @@ "tpointOverleftStbox": { "field": "tpointOverleftStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3585,6 +3841,7 @@ "tpointRightStbox": { "field": "tpointRightStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3597,6 +3854,7 @@ "tpointOverrightStbox": { "field": "tpointOverrightStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3609,6 +3867,7 @@ "tpointBelowStbox": { "field": "tpointBelowStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3621,6 +3880,7 @@ "tpointOverbelowStbox": { "field": "tpointOverbelowStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3633,6 +3893,7 @@ "tpointAboveStbox": { "field": "tpointAboveStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3645,6 +3906,7 @@ "tpointOveraboveStbox": { "field": "tpointOveraboveStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3657,6 +3919,7 @@ "tpointFrontStbox": { "field": "tpointFrontStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3669,6 +3932,7 @@ "tpointOverfrontStbox": { "field": "tpointOverfrontStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3681,6 +3945,7 @@ "tpointBackStbox": { "field": "tpointBackStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3693,6 +3958,7 @@ "tpointOverbackStbox": { "field": "tpointOverbackStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3705,6 +3971,7 @@ "tpointBeforeStbox": { "field": "tpointBeforeStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3717,6 +3984,7 @@ "tpointOverbeforeStbox": { "field": "tpointOverbeforeStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3729,6 +3997,7 @@ "tpointAfterStbox": { "field": "tpointAfterStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3741,6 +4010,7 @@ "tpointOverafterStbox": { "field": "tpointOverafterStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3753,6 +4023,7 @@ "tpointAdjacentStbox": { "field": "tpointAdjacentStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3765,6 +4036,7 @@ "tpointContainsStbox": { "field": "tpointContainsStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3777,6 +4049,7 @@ "tpointContainedStbox": { "field": "tpointContainedStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3789,6 +4062,7 @@ "tpointOverlapsStbox": { "field": "tpointOverlapsStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3801,6 +4075,7 @@ "tpointSameStbox": { "field": "tpointSameStbox", "class": "TPointSTBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.geo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3813,6 +4088,7 @@ "h3IndexFromText": { "field": "h3IndexFromText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -3826,6 +4102,7 @@ "h3IndexAsText": { "field": "h3IndexAsText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -3839,6 +4116,7 @@ "h3IndexParse": { "field": "h3IndexParse", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -3852,6 +4130,7 @@ "h3IndexToString": { "field": "h3IndexToString", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -3865,6 +4144,7 @@ "h3IndexEq": { "field": "h3IndexEq", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3879,6 +4159,7 @@ "h3IndexNe": { "field": "h3IndexNe", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3893,6 +4174,7 @@ "h3IndexLt": { "field": "h3IndexLt", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3907,6 +4189,7 @@ "h3IndexLe": { "field": "h3IndexLe", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3921,6 +4204,7 @@ "h3IndexGt": { "field": "h3IndexGt", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3935,6 +4219,7 @@ "h3IndexGe": { "field": "h3IndexGe", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -3949,6 +4234,7 @@ "h3IndexCmp": { "field": "h3IndexCmp", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -3963,6 +4249,7 @@ "h3IndexHash": { "field": "h3IndexHash", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -3976,6 +4263,7 @@ "h3GridDisk": { "field": "h3GridDisk", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -3990,6 +4278,7 @@ "h3GridRing": { "field": "h3GridRing", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4004,6 +4293,7 @@ "h3GridPathCells": { "field": "h3GridPathCells", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4018,6 +4308,7 @@ "h3CellToChildren": { "field": "h3CellToChildren", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4032,6 +4323,7 @@ "h3CompactCells": { "field": "h3CompactCells", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4046,6 +4338,7 @@ "h3UncompactCells": { "field": "h3UncompactCells", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4061,6 +4354,7 @@ "h3OriginToDirectedEdges": { "field": "h3OriginToDirectedEdges", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4074,6 +4368,7 @@ "h3CellToVertexes": { "field": "h3CellToVertexes", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4087,6 +4382,7 @@ "h3GetIcosahedronFaces": { "field": "h3GetIcosahedronFaces", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4100,6 +4396,7 @@ "th3IndexFromText": { "field": "th3IndexFromText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4113,6 +4410,7 @@ "th3IndexInstFromText": { "field": "th3IndexInstFromText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4127,6 +4425,7 @@ "th3IndexSeqFromText": { "field": "th3IndexSeqFromText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4142,6 +4441,7 @@ "th3IndexSeqSetFromText": { "field": "th3IndexSeqSetFromText", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4156,6 +4456,7 @@ "th3IndexMake": { "field": "th3IndexMake", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4170,6 +4471,7 @@ "th3IndexInstMake": { "field": "th3IndexInstMake", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4185,6 +4487,7 @@ "th3IndexSeqMake": { "field": "th3IndexSeqMake", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 5, "argTypes": [ @@ -4203,6 +4506,7 @@ "th3IndexSeqSetMake": { "field": "th3IndexSeqSetMake", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4218,6 +4522,7 @@ "th3IndexStartValue": { "field": "th3IndexStartValue", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -4232,6 +4537,7 @@ "th3IndexEndValue": { "field": "th3IndexEndValue", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -4246,6 +4552,7 @@ "th3IndexValueN": { "field": "th3IndexValueN", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -4261,6 +4568,7 @@ "th3IndexValueAtTimestamp": { "field": "th3IndexValueAtTimestamp", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 3, "argTypes": [ @@ -4277,6 +4585,7 @@ "tbigintToTh3Index": { "field": "tbigintToTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4291,6 +4600,7 @@ "th3IndexToTbigint": { "field": "th3IndexToTbigint", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4305,6 +4615,7 @@ "everEqH3IndexTh3Index": { "field": "everEqH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4317,6 +4628,7 @@ "everEqTh3IndexH3Index": { "field": "everEqTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4329,6 +4641,7 @@ "everNeH3IndexTh3Index": { "field": "everNeH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4341,6 +4654,7 @@ "everNeTh3IndexH3Index": { "field": "everNeTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4353,6 +4667,7 @@ "alwaysEqH3IndexTh3Index": { "field": "alwaysEqH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4365,6 +4680,7 @@ "alwaysEqTh3IndexH3Index": { "field": "alwaysEqTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4377,6 +4693,7 @@ "alwaysNeH3IndexTh3Index": { "field": "alwaysNeH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4389,6 +4706,7 @@ "alwaysNeTh3IndexH3Index": { "field": "alwaysNeTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4411,6 +4729,7 @@ "everEqTh3IndexTh3Index": { "field": "everEqTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4423,6 +4742,7 @@ "everNeTh3IndexTh3Index": { "field": "everNeTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4435,6 +4755,7 @@ "alwaysEqTh3IndexTh3Index": { "field": "alwaysEqTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4447,6 +4768,7 @@ "alwaysNeTh3IndexTh3Index": { "field": "alwaysNeTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4465,6 +4787,7 @@ "teqH3IndexTh3Index": { "field": "teqH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4480,6 +4803,7 @@ "teqTh3IndexH3Index": { "field": "teqTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4495,6 +4819,7 @@ "teqTh3IndexTh3Index": { "field": "teqTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4510,6 +4835,7 @@ "tneH3IndexTh3Index": { "field": "tneH3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4525,6 +4851,7 @@ "tneTh3IndexH3Index": { "field": "tneTh3IndexH3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4540,6 +4867,7 @@ "tneTh3IndexTh3Index": { "field": "tneTh3IndexTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4555,6 +4883,7 @@ "th3IndexGetResolution": { "field": "th3IndexGetResolution", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4566,6 +4895,7 @@ "th3IndexGetBaseCellNumber": { "field": "th3IndexGetBaseCellNumber", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4577,6 +4907,7 @@ "th3IndexIsValidCell": { "field": "th3IndexIsValidCell", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4588,6 +4919,7 @@ "th3IndexIsResClassIii": { "field": "th3IndexIsResClassIii", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4599,6 +4931,7 @@ "th3IndexIsPentagon": { "field": "th3IndexIsPentagon", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4628,6 +4961,7 @@ "th3IndexCellToParent": { "field": "th3IndexCellToParent", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4643,6 +4977,7 @@ "th3IndexCellToParentNext": { "field": "th3IndexCellToParentNext", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4654,6 +4989,7 @@ "th3IndexCellToCenterChild": { "field": "th3IndexCellToCenterChild", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4669,6 +5005,7 @@ "th3IndexCellToCenterChildNext": { "field": "th3IndexCellToCenterChildNext", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4680,6 +5017,7 @@ "th3IndexCellToChildPos": { "field": "th3IndexCellToChildPos", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4695,6 +5033,7 @@ "th3IndexChildPosToCell": { "field": "th3IndexChildPosToCell", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -4711,6 +5050,7 @@ "tgeogpointToTh3Index": { "field": "tgeogpointToTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4726,6 +5066,7 @@ "tgeompointToTh3Index": { "field": "tgeompointToTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4741,6 +5082,7 @@ "th3IndexToTgeogpoint": { "field": "th3IndexToTgeogpoint", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4752,6 +5094,7 @@ "th3IndexToTgeompoint": { "field": "th3IndexToTgeompoint", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4763,6 +5106,7 @@ "th3IndexCellToBoundary": { "field": "th3IndexCellToBoundary", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4774,6 +5118,7 @@ "geomToH3Cell": { "field": "geomToH3Cell", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -4791,6 +5136,7 @@ "geoToH3IndexSet": { "field": "geoToH3IndexSet", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4806,6 +5152,7 @@ "everIntersectsH3IndexSetTh3Index": { "field": "everIntersectsH3IndexSetTh3Index", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -4822,6 +5169,7 @@ "th3IndexAreNeighborCells": { "field": "th3IndexAreNeighborCells", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4837,6 +5185,7 @@ "th3IndexCellsToDirectedEdge": { "field": "th3IndexCellsToDirectedEdge", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4852,6 +5201,7 @@ "th3IndexIsValidDirectedEdge": { "field": "th3IndexIsValidDirectedEdge", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4863,6 +5213,7 @@ "th3IndexGetDirectedEdgeOrigin": { "field": "th3IndexGetDirectedEdgeOrigin", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4874,6 +5225,7 @@ "th3IndexGetDirectedEdgeDestination": { "field": "th3IndexGetDirectedEdgeDestination", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4885,6 +5237,7 @@ "th3IndexDirectedEdgeToBoundary": { "field": "th3IndexDirectedEdgeToBoundary", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4896,6 +5249,7 @@ "th3IndexCellToVertex": { "field": "th3IndexCellToVertex", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4911,6 +5265,7 @@ "th3IndexVertexToLatlng": { "field": "th3IndexVertexToLatlng", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4922,6 +5277,7 @@ "th3IndexIsValidVertex": { "field": "th3IndexIsValidVertex", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -4933,6 +5289,7 @@ "th3IndexGridDistance": { "field": "th3IndexGridDistance", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4948,6 +5305,7 @@ "th3IndexCellToLocalIj": { "field": "th3IndexCellToLocalIj", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4963,6 +5321,7 @@ "th3IndexLocalIjToCell": { "field": "th3IndexLocalIjToCell", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4978,6 +5337,7 @@ "th3IndexCellArea": { "field": "th3IndexCellArea", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -4993,6 +5353,7 @@ "th3IndexEdgeLength": { "field": "th3IndexEdgeLength", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5008,6 +5369,7 @@ "tgeogpointGreatCircleDistance": { "field": "tgeogpointGreatCircleDistance", "class": "Th3IndexUDFs", + "pkg": "org.mobilitydb.spark.h3", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -5024,6 +5386,7 @@ "abs": { "field": "abs", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5038,6 +5401,7 @@ "ceil": { "field": "ceil", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5052,6 +5416,7 @@ "floor": { "field": "floor", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5066,6 +5431,7 @@ "exp": { "field": "exp", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5080,6 +5446,7 @@ "ln": { "field": "ln", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5094,6 +5461,7 @@ "log10": { "field": "log10", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5108,6 +5476,7 @@ "radians": { "field": "radians", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5122,6 +5491,7 @@ "derivative": { "field": "derivative", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5136,6 +5506,7 @@ "deltavalue": { "field": "deltavalue", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5150,6 +5521,7 @@ "trend": { "field": "trend", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5164,6 +5536,7 @@ "degrees": { "field": "degrees", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5179,6 +5552,7 @@ "integral": { "field": "integral", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -5193,6 +5567,7 @@ "twavg": { "field": "twavg", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -5207,6 +5582,7 @@ "tnumber_add": { "field": "tnumber_add", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5222,6 +5598,7 @@ "tnumber_sub": { "field": "tnumber_sub", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5237,6 +5614,7 @@ "tnumber_mul": { "field": "tnumber_mul", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5252,6 +5630,7 @@ "tnumber_div": { "field": "tnumber_div", "class": "MathGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5267,6 +5646,7 @@ "tfloatDerivative": { "field": "tfloatDerivative", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5282,6 +5662,7 @@ "tfloatRound": { "field": "tfloatRound", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5298,6 +5679,7 @@ "tfloatFloor": { "field": "tfloatFloor", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5313,6 +5695,7 @@ "tfloatCeil": { "field": "tfloatCeil", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5328,6 +5711,7 @@ "tfloatDegrees": { "field": "tfloatDegrees", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5344,6 +5728,7 @@ "tfloatRadians": { "field": "tfloatRadians", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5359,6 +5744,7 @@ "tnumberIntegral": { "field": "tnumberIntegral", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -5373,6 +5759,7 @@ "tnumberTwavg": { "field": "tnumberTwavg", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -5387,6 +5774,7 @@ "tnumberTrend": { "field": "tnumberTrend", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5402,6 +5790,7 @@ "tpointLength": { "field": "tpointLength", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -5416,6 +5805,7 @@ "tpointSpeed": { "field": "tpointSpeed", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5431,6 +5821,7 @@ "tpointAzimuth": { "field": "tpointAzimuth", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5446,6 +5837,7 @@ "tpointDirection": { "field": "tpointDirection", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5461,6 +5853,7 @@ "tpointCumulativeLength": { "field": "tpointCumulativeLength", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5476,6 +5869,7 @@ "tgeoTraversedArea": { "field": "tgeoTraversedArea", "class": "AnalyticsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5491,6 +5885,7 @@ "span_union": { "field": "spanUnion", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5506,6 +5901,7 @@ "span_minus": { "field": "spanMinus", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5521,6 +5917,7 @@ "span_intersection": { "field": "spanIntersection", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5536,6 +5933,7 @@ "spanset_union": { "field": "spansetUnion", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5551,6 +5949,7 @@ "spanset_minus": { "field": "spansetMinus", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5566,6 +5965,7 @@ "spanset_intersection": { "field": "spansetIntersection", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5581,6 +5981,7 @@ "spann": { "field": "spann", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5596,6 +5997,7 @@ "startSpan": { "field": "startSpan", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5610,6 +6012,7 @@ "endSpan": { "field": "endSpan", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5624,6 +6027,7 @@ "numSpans": { "field": "numSpans", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -5638,6 +6042,7 @@ "setUnion": { "field": "setUnion", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5653,6 +6058,7 @@ "setMinus": { "field": "setMinus", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5668,6 +6074,7 @@ "setIntersection": { "field": "setIntersection", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5683,6 +6090,7 @@ "tbox_union": { "field": "tboxUnion", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5698,6 +6106,7 @@ "tbox_intersection": { "field": "tboxIntersection", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5713,6 +6122,7 @@ "stbox_union": { "field": "stboxUnion", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5728,6 +6138,7 @@ "stbox_intersection": { "field": "stboxIntersection", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5743,6 +6154,7 @@ "bigintSpan": { "field": "bigintSpan", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5757,6 +6169,7 @@ "atTbox": { "field": "atTbox", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5774,6 +6187,7 @@ "minusTbox": { "field": "minusTbox", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5791,6 +6205,7 @@ "span_distance": { "field": "spanDistance", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -5806,6 +6221,7 @@ "spanset_distance": { "field": "spansetDistance", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -5821,6 +6237,7 @@ "set_distance": { "field": "setDistance", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -5836,6 +6253,7 @@ "time_distance": { "field": "timeDistanceSpan", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -5851,6 +6269,7 @@ "time_distance_spanset": { "field": "timeDistanceSpanset", "class": "SetSpanGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -5866,6 +6285,7 @@ "startValue": { "field": "startValue", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5881,6 +6301,7 @@ "endValue": { "field": "endValue", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5896,6 +6317,7 @@ "valueN": { "field": "valueN", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5912,6 +6334,7 @@ "minusValue": { "field": "minusValue", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5929,6 +6352,7 @@ "minusValues": { "field": "minusValues", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5946,6 +6370,7 @@ "atValue": { "field": "atValue", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5964,6 +6389,7 @@ "traversedArea": { "field": "traversedArea", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -5980,6 +6406,7 @@ "getSpace": { "field": "getSpace", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -5995,6 +6422,7 @@ "tprecision": { "field": "tprecision", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6012,6 +6440,7 @@ "tsample": { "field": "tsample", "class": "AccessorGapUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6030,6 +6459,7 @@ "tboolInst": { "field": "tboolInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6045,6 +6475,7 @@ "tintInst": { "field": "tintInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6060,6 +6491,7 @@ "tfloatInst": { "field": "tfloatInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6075,6 +6507,7 @@ "ttextInst": { "field": "ttextInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6094,6 +6527,7 @@ "tgeompointInst": { "field": "tgeompointInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6110,6 +6544,7 @@ "tgeogpointInst": { "field": "tgeogpointInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6122,6 +6557,7 @@ "tgeometryInst": { "field": "tgeometryInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6137,6 +6573,7 @@ "tgeographyInst": { "field": "tgeographyInst", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6149,6 +6586,7 @@ "tboolSeq": { "field": "tboolSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6160,6 +6598,7 @@ "tintSeq": { "field": "tintSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6171,6 +6610,7 @@ "tfloatSeq": { "field": "tfloatSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6182,6 +6622,7 @@ "ttextSeq": { "field": "ttextSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6193,6 +6634,7 @@ "tgeompointSeq": { "field": "tgeompointSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6204,6 +6646,7 @@ "tgeogpointSeq": { "field": "tgeogpointSeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6215,6 +6658,7 @@ "tgeometrySeq": { "field": "tgeometrySeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6226,6 +6670,7 @@ "tgeographySeq": { "field": "tgeographySeq", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6237,6 +6682,7 @@ "tboolSeqSet": { "field": "tboolSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6248,6 +6694,7 @@ "tintSeqSet": { "field": "tintSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6259,6 +6706,7 @@ "tfloatSeqSet": { "field": "tfloatSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6270,6 +6718,7 @@ "ttextSeqSet": { "field": "ttextSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6281,6 +6730,7 @@ "tgeompointSeqSet": { "field": "tgeompointSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6292,6 +6742,7 @@ "tgeogpointSeqSet": { "field": "tgeogpointSeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6303,6 +6754,7 @@ "tgeometrySeqSet": { "field": "tgeometrySeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6314,6 +6766,7 @@ "tgeographySeqSet": { "field": "tgeographySeqSet", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6325,6 +6778,7 @@ "tempSubtype": { "field": "tempSubtype", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6339,6 +6793,7 @@ "memSize": { "field": "memSize", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -6352,6 +6807,7 @@ "getTime": { "field": "getTime", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6367,6 +6823,7 @@ "deleteTime": { "field": "deleteTime", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6383,6 +6840,7 @@ "beforeTimestamp": { "field": "beforeTimestamp", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6398,6 +6856,7 @@ "afterTimestamp": { "field": "afterTimestamp", "class": "SubtypeConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6413,6 +6872,7 @@ "temporalToTInstant": { "field": "temporalToTInstant", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6428,6 +6888,7 @@ "temporalToTSequence": { "field": "temporalToTSequence", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6444,6 +6905,7 @@ "temporalToTSequenceSet": { "field": "temporalToTSequenceSet", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6460,6 +6922,7 @@ "temporalSetInterp": { "field": "temporalSetInterp", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6476,6 +6939,7 @@ "tfloatToTint": { "field": "tfloatToTint", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6491,6 +6955,7 @@ "tintToTfloat": { "field": "tintToTfloat", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6506,6 +6971,7 @@ "tintShiftValue": { "field": "tintShiftValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6522,6 +6988,7 @@ "tintScaleValue": { "field": "tintScaleValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6538,6 +7005,7 @@ "tintShiftScaleValue": { "field": "tintShiftScaleValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6555,6 +7023,7 @@ "tfloatShiftValue": { "field": "tfloatShiftValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6571,6 +7040,7 @@ "tfloatScaleValue": { "field": "tfloatScaleValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6587,6 +7057,7 @@ "tfloatShiftScaleValue": { "field": "tfloatShiftScaleValue", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6604,6 +7075,7 @@ "temporalShiftTime": { "field": "temporalShiftTime", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6621,6 +7093,7 @@ "temporalScaleTime": { "field": "temporalScaleTime", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6638,6 +7111,7 @@ "temporalShiftScaleTime": { "field": "temporalShiftScaleTime", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6656,6 +7130,7 @@ "tpointSetSrid": { "field": "tpointSetSrid", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6672,6 +7147,7 @@ "temporalSimplifyDp": { "field": "temporalSimplifyDp", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6688,6 +7164,7 @@ "temporalSimplifyMaxDist": { "field": "temporalSimplifyMaxDist", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6704,6 +7181,7 @@ "temporalSimplifyMinDist": { "field": "temporalSimplifyMinDist", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6720,6 +7198,7 @@ "temporalSimplifyMinTdelta": { "field": "temporalSimplifyMinTdelta", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6737,6 +7216,7 @@ "temporalTPrecision": { "field": "temporalTPrecision", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -6754,6 +7234,7 @@ "temporalTSample": { "field": "temporalTSample", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6772,6 +7253,7 @@ "tpointTrajectory": { "field": "tpointTrajectory", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6787,6 +7269,7 @@ "floatsetCeil": { "field": "floatsetCeil", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6802,6 +7285,7 @@ "floatsetFloor": { "field": "floatsetFloor", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6817,6 +7301,7 @@ "floatsetDegrees": { "field": "floatsetDegrees", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6832,6 +7317,7 @@ "floatsetRadians": { "field": "floatsetRadians", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6847,6 +7333,7 @@ "textsetLower": { "field": "textsetLower", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6862,6 +7349,7 @@ "textsetUpper": { "field": "textsetUpper", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6877,6 +7365,7 @@ "textsetInitcap": { "field": "textsetInitcap", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6892,6 +7381,7 @@ "intspanShiftScale": { "field": "intspanShiftScale", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6909,6 +7399,7 @@ "floatspanShiftScale": { "field": "floatspanShiftScale", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6926,6 +7417,7 @@ "intspansetShiftScale": { "field": "intspansetShiftScale", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6943,6 +7435,7 @@ "floatspansetShiftScale": { "field": "floatspansetShiftScale", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -6960,6 +7453,7 @@ "floatspansetCeil": { "field": "floatspansetCeil", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6975,6 +7469,7 @@ "floatspansetFloor": { "field": "floatspansetFloor", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -6990,6 +7485,7 @@ "floatspansetRound": { "field": "floatspansetRound", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7006,6 +7502,7 @@ "intspansetToFloat": { "field": "intspansetToFloat", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7021,6 +7518,7 @@ "floatspansetToInt": { "field": "floatspansetToInt", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7036,6 +7534,7 @@ "douglasPeuckerSimplify": { "field": "temporalSimplifyDp", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7052,6 +7551,7 @@ "maxDistSimplify": { "field": "temporalSimplifyMaxDist", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7068,6 +7568,7 @@ "minDistSimplify": { "field": "temporalSimplifyMinDist", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7084,6 +7585,7 @@ "minTimeDeltaSimplify": { "field": "temporalSimplifyMinTdelta", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7101,6 +7603,7 @@ "intspanset": { "field": "floatspansetToInt", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7116,6 +7619,7 @@ "floatspanset": { "field": "intspansetToFloat", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7131,6 +7635,7 @@ "shiftScale": { "field": "floatspanShiftScale", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -7148,6 +7653,7 @@ "dateset": { "field": "tstzsetToDateset", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7163,6 +7669,7 @@ "tstzset": { "field": "tstzset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7177,6 +7684,7 @@ "span": { "field": "temporalToTstzspan", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7192,6 +7700,7 @@ "spanset": { "field": "spanToSpanset", "class": "TransformUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -7207,6 +7716,7 @@ "getTimeTile": { "field": "getTimeTile", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -7223,6 +7733,7 @@ "getSpaceTile": { "field": "getSpaceTile", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 5, "argTypes": [ @@ -7241,6 +7752,7 @@ "getSpaceTimeTile": { "field": "getSpaceTimeTile", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 8, "argTypes": [ @@ -7263,6 +7775,7 @@ "getStboxTimeTile": { "field": "getTimeTile", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -7279,6 +7792,7 @@ "getValueTile": { "field": "getValueTileFloat", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -7294,6 +7808,7 @@ "getTBoxTimeTile": { "field": "getTBoxTimeTile", "class": "TileUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -7314,6 +7829,7 @@ "tnumberAdjacentTnumber": { "field": "tnumberAdjacentTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7326,6 +7842,7 @@ "tnumberContainsTnumber": { "field": "tnumberContainsTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7338,6 +7855,7 @@ "tnumberContainedTnumber": { "field": "tnumberContainedTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7350,6 +7868,7 @@ "tnumberOverlapsTnumber": { "field": "tnumberOverlapsTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7362,6 +7881,7 @@ "tnumberSameTnumber": { "field": "tnumberSameTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7374,6 +7894,7 @@ "numspanAdjacentTnumber": { "field": "numspanAdjacentTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7386,6 +7907,7 @@ "numspanContainsTnumber": { "field": "numspanContainsTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7398,6 +7920,7 @@ "numspanContainedTnumber": { "field": "numspanContainedTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7410,6 +7933,7 @@ "numspanOverlapsTnumber": { "field": "numspanOverlapsTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7422,6 +7946,7 @@ "numspanSameTnumber": { "field": "numspanSameTnumber", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7434,6 +7959,7 @@ "tnumberAdjacentNumspan": { "field": "tnumberAdjacentNumspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7446,6 +7972,7 @@ "tnumberContainsNumspan": { "field": "tnumberContainsNumspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7458,6 +7985,7 @@ "tnumberContainedNumspan": { "field": "tnumberContainedNumspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7470,6 +7998,7 @@ "tnumberOverlapsNumspan": { "field": "tnumberOverlapsNumspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7482,6 +8011,7 @@ "tnumberSameNumspan": { "field": "tnumberSameNumspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7494,6 +8024,7 @@ "tstzspanAdjacentTemporal": { "field": "tstzspanAdjacentTemporal", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7506,6 +8037,7 @@ "tstzspanContainsTemporal": { "field": "tstzspanContainsTemporal", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7518,6 +8050,7 @@ "tstzspanContainedTemporal": { "field": "tstzspanContainedTemporal", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7530,6 +8063,7 @@ "tstzspanOverlapsTemporal": { "field": "tstzspanOverlapsTemporal", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7542,6 +8076,7 @@ "tstzspanSameTemporal": { "field": "tstzspanSameTemporal", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7554,6 +8089,7 @@ "temporalAdjacentTstzspan": { "field": "temporalAdjacentTstzspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7566,6 +8102,7 @@ "temporalContainsTstzspan": { "field": "temporalContainsTstzspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7578,6 +8115,7 @@ "temporalContainedTstzspan": { "field": "temporalContainedTstzspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7590,6 +8128,7 @@ "temporalOverlapsTstzspan": { "field": "temporalOverlapsTstzspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7602,6 +8141,7 @@ "temporalSameTstzspan": { "field": "temporalSameTstzspan", "class": "TemporalBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -7614,6 +8154,7 @@ "floatBucket": { "field": "floatBucket", "class": "BucketUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 3, "argTypes": [ @@ -7627,6 +8168,7 @@ "intBucket": { "field": "intBucket", "class": "BucketUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 3, "argTypes": [ @@ -7640,6 +8182,7 @@ "temporalAtTstzspan": { "field": "temporalAtTstzspan", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7657,6 +8200,7 @@ "temporalAtTstzspanset": { "field": "temporalAtTstzspanset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7674,6 +8218,7 @@ "temporalAtTstzset": { "field": "temporalAtTstzset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7691,6 +8236,7 @@ "temporalMinusTstzset": { "field": "temporalMinusTstzset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7708,6 +8254,7 @@ "temporalMinusTstzspan": { "field": "temporalMinusTstzspan", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7725,6 +8272,7 @@ "temporalMinusTstzspanset": { "field": "temporalMinusTstzspanset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7742,6 +8290,7 @@ "temporalAtTimestamptz": { "field": "temporalAtTimestamptz", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7758,6 +8307,7 @@ "temporalMinusTimestamptz": { "field": "temporalMinusTimestamptz", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7774,6 +8324,7 @@ "temporalDeleteTstzspan": { "field": "temporalDeleteTstzspan", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7791,6 +8342,7 @@ "temporalDeleteTstzspanset": { "field": "temporalDeleteTstzspanset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7808,6 +8360,7 @@ "temporalDeleteTstzset": { "field": "temporalDeleteTstzset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7825,6 +8378,7 @@ "temporalDeleteTimestamptz": { "field": "temporalDeleteTimestamptz", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7841,6 +8395,7 @@ "tfloatAtValue": { "field": "tfloatAtValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7857,6 +8412,7 @@ "tfloatMinusValue": { "field": "tfloatMinusValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7873,6 +8429,7 @@ "tintAtValue": { "field": "tintAtValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7889,6 +8446,7 @@ "tintMinusValue": { "field": "tintMinusValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7905,6 +8463,7 @@ "tnumberAtSpan": { "field": "tnumberAtSpan", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7922,6 +8481,7 @@ "tnumberMinusSpan": { "field": "tnumberMinusSpan", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7939,6 +8499,7 @@ "tnumberAtSpanset": { "field": "tnumberAtSpanset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7956,6 +8517,7 @@ "tnumberMinusSpanset": { "field": "tnumberMinusSpanset", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7973,6 +8535,7 @@ "tboolAtValue": { "field": "tboolAtValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -7989,6 +8552,7 @@ "tboolMinusValue": { "field": "tboolMinusValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8005,6 +8569,7 @@ "ttextAtValue": { "field": "ttextAtValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8022,6 +8587,7 @@ "ttextMinusValue": { "field": "ttextMinusValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8039,6 +8605,7 @@ "tpointAtValue": { "field": "tpointAtValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8056,6 +8623,7 @@ "tpointMinusValue": { "field": "tpointMinusValue", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8073,6 +8641,7 @@ "tgeoAtStbox": { "field": "tgeoAtStbox", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8090,6 +8659,7 @@ "tgeoMinusStbox": { "field": "tgeoMinusStbox", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8107,6 +8677,7 @@ "tpointAtElevation": { "field": "tpointAtElevation", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8124,6 +8695,7 @@ "tpointMinusElevation": { "field": "tpointMinusElevation", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8141,6 +8713,7 @@ "temporalAtMax": { "field": "temporalAtMax", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -8156,6 +8729,7 @@ "temporalAtMin": { "field": "temporalAtMin", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -8171,6 +8745,7 @@ "temporalAtValues": { "field": "temporalAtValues", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8188,6 +8763,7 @@ "temporalMinusValues": { "field": "temporalMinusValues", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8205,6 +8781,7 @@ "tgeoAtGeom": { "field": "tgeoAtGeom", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8222,6 +8799,7 @@ "tgeoMinusGeom": { "field": "tgeoMinusGeom", "class": "RestrictionUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -8239,6 +8817,7 @@ "temporalEq": { "field": "temporalEq", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8253,6 +8832,7 @@ "temporalNe": { "field": "temporalNe", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8267,6 +8847,7 @@ "temporalLt": { "field": "temporalLt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8281,6 +8862,7 @@ "temporalLe": { "field": "temporalLe", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8295,6 +8877,7 @@ "temporalGt": { "field": "temporalGt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8309,6 +8892,7 @@ "temporalGe": { "field": "temporalGe", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8323,6 +8907,7 @@ "everEqTintInt": { "field": "everEqTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8337,6 +8922,7 @@ "everEqTfloatFloat": { "field": "everEqTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8351,6 +8937,7 @@ "everEqTemporal": { "field": "everEqTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8365,6 +8952,7 @@ "everLtTintInt": { "field": "everLtTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8379,6 +8967,7 @@ "everLtTfloatFloat": { "field": "everLtTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8393,6 +8982,7 @@ "everLtTemporal": { "field": "everLtTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8407,6 +8997,7 @@ "everLeTintInt": { "field": "everLeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8421,6 +9012,7 @@ "everLeTfloatFloat": { "field": "everLeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8435,6 +9027,7 @@ "everLeTemporal": { "field": "everLeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8449,6 +9042,7 @@ "everGtTintInt": { "field": "everGtTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8463,6 +9057,7 @@ "everGtTfloatFloat": { "field": "everGtTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8477,6 +9072,7 @@ "everGtTemporal": { "field": "everGtTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8491,6 +9087,7 @@ "everGeTintInt": { "field": "everGeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8505,6 +9102,7 @@ "everGeTfloatFloat": { "field": "everGeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8519,6 +9117,7 @@ "everGeTemporal": { "field": "everGeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8533,6 +9132,7 @@ "everNeTintInt": { "field": "everNeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8547,6 +9147,7 @@ "everNeTfloatFloat": { "field": "everNeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8561,6 +9162,7 @@ "everNeTemporal": { "field": "everNeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8575,6 +9177,7 @@ "alwaysEqTintInt": { "field": "alwaysEqTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8589,6 +9192,7 @@ "alwaysEqTfloatFloat": { "field": "alwaysEqTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8603,6 +9207,7 @@ "alwaysEqTemporal": { "field": "alwaysEqTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8617,6 +9222,7 @@ "alwaysLtTintInt": { "field": "alwaysLtTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8631,6 +9237,7 @@ "alwaysLtTfloatFloat": { "field": "alwaysLtTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8645,6 +9252,7 @@ "alwaysLtTemporal": { "field": "alwaysLtTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8659,6 +9267,7 @@ "alwaysLeTintInt": { "field": "alwaysLeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8673,6 +9282,7 @@ "alwaysLeTfloatFloat": { "field": "alwaysLeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8687,6 +9297,7 @@ "alwaysLeTemporal": { "field": "alwaysLeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8701,6 +9312,7 @@ "alwaysGtTintInt": { "field": "alwaysGtTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8715,6 +9327,7 @@ "alwaysGtTfloatFloat": { "field": "alwaysGtTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8729,6 +9342,7 @@ "alwaysGtTemporal": { "field": "alwaysGtTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8743,6 +9357,7 @@ "alwaysGeTintInt": { "field": "alwaysGeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8757,6 +9372,7 @@ "alwaysGeTfloatFloat": { "field": "alwaysGeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8771,6 +9387,7 @@ "alwaysGeTemporal": { "field": "alwaysGeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8785,6 +9402,7 @@ "alwaysNeTintInt": { "field": "alwaysNeTintInt", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8799,6 +9417,7 @@ "alwaysNeTfloatFloat": { "field": "alwaysNeTfloatFloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8813,6 +9432,7 @@ "alwaysNeTemporal": { "field": "alwaysNeTemporal", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8827,6 +9447,7 @@ "alwaysEqIntTint": { "field": "alwaysEqIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8841,6 +9462,7 @@ "alwaysNeIntTint": { "field": "alwaysNeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8855,6 +9477,7 @@ "alwaysLtIntTint": { "field": "alwaysLtIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8869,6 +9492,7 @@ "alwaysLeIntTint": { "field": "alwaysLeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8883,6 +9507,7 @@ "alwaysGtIntTint": { "field": "alwaysGtIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8897,6 +9522,7 @@ "alwaysGeIntTint": { "field": "alwaysGeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8911,6 +9537,7 @@ "alwaysEqFloatTfloat": { "field": "alwaysEqFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8925,6 +9552,7 @@ "alwaysNeFloatTfloat": { "field": "alwaysNeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8939,6 +9567,7 @@ "alwaysLtFloatTfloat": { "field": "alwaysLtFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8953,6 +9582,7 @@ "alwaysLeFloatTfloat": { "field": "alwaysLeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8967,6 +9597,7 @@ "alwaysGtFloatTfloat": { "field": "alwaysGtFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8981,6 +9612,7 @@ "alwaysGeFloatTfloat": { "field": "alwaysGeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -8995,6 +9627,7 @@ "everEqIntTint": { "field": "everEqIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9009,6 +9642,7 @@ "everNeIntTint": { "field": "everNeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9023,6 +9657,7 @@ "everLtIntTint": { "field": "everLtIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9037,6 +9672,7 @@ "everLeIntTint": { "field": "everLeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9051,6 +9687,7 @@ "everGtIntTint": { "field": "everGtIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9065,6 +9702,7 @@ "everGeIntTint": { "field": "everGeIntTint", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9079,6 +9717,7 @@ "everEqFloatTfloat": { "field": "everEqFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9093,6 +9732,7 @@ "everNeFloatTfloat": { "field": "everNeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9107,6 +9747,7 @@ "everLtFloatTfloat": { "field": "everLtFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9121,6 +9762,7 @@ "everLeFloatTfloat": { "field": "everLeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9135,6 +9777,7 @@ "everGtFloatTfloat": { "field": "everGtFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9149,6 +9792,7 @@ "everGeFloatTfloat": { "field": "everGeFloatTfloat", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9163,6 +9807,7 @@ "alwaysEqTboolBool": { "field": "alwaysEqTboolBool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9177,6 +9822,7 @@ "alwaysNeTboolBool": { "field": "alwaysNeTboolBool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9191,6 +9837,7 @@ "alwaysEqBoolTbool": { "field": "alwaysEqBoolTbool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9205,6 +9852,7 @@ "alwaysNeBoolTbool": { "field": "alwaysNeBoolTbool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9219,6 +9867,7 @@ "everEqTboolBool": { "field": "everEqTboolBool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9233,6 +9882,7 @@ "everNeTboolBool": { "field": "everNeTboolBool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9247,6 +9897,7 @@ "everEqBoolTbool": { "field": "everEqBoolTbool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9261,6 +9912,7 @@ "everNeBoolTbool": { "field": "everNeBoolTbool", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9278,6 +9930,7 @@ "alwaysEqTextTtext": { "field": "alwaysEqTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9290,6 +9943,7 @@ "alwaysNeTextTtext": { "field": "alwaysNeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9302,6 +9956,7 @@ "alwaysLtTextTtext": { "field": "alwaysLtTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9314,6 +9969,7 @@ "alwaysLeTextTtext": { "field": "alwaysLeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9326,6 +9982,7 @@ "alwaysGtTextTtext": { "field": "alwaysGtTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9338,6 +9995,7 @@ "alwaysGeTextTtext": { "field": "alwaysGeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9350,6 +10008,7 @@ "alwaysEqTtextText": { "field": "alwaysEqTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9362,6 +10021,7 @@ "alwaysNeTtextText": { "field": "alwaysNeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9374,6 +10034,7 @@ "alwaysLtTtextText": { "field": "alwaysLtTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9386,6 +10047,7 @@ "alwaysLeTtextText": { "field": "alwaysLeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9398,6 +10060,7 @@ "alwaysGtTtextText": { "field": "alwaysGtTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9410,6 +10073,7 @@ "alwaysGeTtextText": { "field": "alwaysGeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9422,6 +10086,7 @@ "everEqTextTtext": { "field": "everEqTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9434,6 +10099,7 @@ "everNeTextTtext": { "field": "everNeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9446,6 +10112,7 @@ "everLtTextTtext": { "field": "everLtTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9458,6 +10125,7 @@ "everLeTextTtext": { "field": "everLeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9470,6 +10138,7 @@ "everGtTextTtext": { "field": "everGtTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9482,6 +10151,7 @@ "everGeTextTtext": { "field": "everGeTextTtext", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9494,6 +10164,7 @@ "everEqTtextText": { "field": "everEqTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9506,6 +10177,7 @@ "everNeTtextText": { "field": "everNeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9518,6 +10190,7 @@ "everLtTtextText": { "field": "everLtTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9530,6 +10203,7 @@ "everLeTtextText": { "field": "everLeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9542,6 +10216,7 @@ "everGtTtextText": { "field": "everGtTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9554,6 +10229,7 @@ "everGeTtextText": { "field": "everGeTtextText", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9566,6 +10242,7 @@ "tpointIsSimple": { "field": "tpointIsSimple", "class": "PredicateUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -9580,6 +10257,7 @@ "tboxLeftTbox": { "field": "tboxLeftTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9592,6 +10270,7 @@ "tboxOverleftTbox": { "field": "tboxOverleftTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9604,6 +10283,7 @@ "tboxRightTbox": { "field": "tboxRightTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9616,6 +10296,7 @@ "tboxOverrightTbox": { "field": "tboxOverrightTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9628,6 +10309,7 @@ "tboxBeforeTbox": { "field": "tboxBeforeTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9640,6 +10322,7 @@ "tboxOverbeforeTbox": { "field": "tboxOverbeforeTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9652,6 +10335,7 @@ "tboxAfterTbox": { "field": "tboxAfterTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9664,6 +10348,7 @@ "tboxOverafterTbox": { "field": "tboxOverafterTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9676,6 +10361,7 @@ "tboxAdjacentTbox": { "field": "tboxAdjacentTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9688,6 +10374,7 @@ "tboxContainsTbox": { "field": "tboxContainsTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9700,6 +10387,7 @@ "tboxContainedTbox": { "field": "tboxContainedTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9712,6 +10400,7 @@ "tboxOverlapsTbox": { "field": "tboxOverlapsTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9724,6 +10413,7 @@ "tboxSameTbox": { "field": "tboxSameTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9736,6 +10426,7 @@ "tboxLeftTnumber": { "field": "tboxLeftTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9748,6 +10439,7 @@ "tboxOverleftTnumber": { "field": "tboxOverleftTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9760,6 +10452,7 @@ "tboxRightTnumber": { "field": "tboxRightTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9772,6 +10465,7 @@ "tboxOverrightTnumber": { "field": "tboxOverrightTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9784,6 +10478,7 @@ "tboxBeforeTnumber": { "field": "tboxBeforeTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9796,6 +10491,7 @@ "tboxOverbeforeTnumber": { "field": "tboxOverbeforeTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9808,6 +10504,7 @@ "tboxAfterTnumber": { "field": "tboxAfterTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9820,6 +10517,7 @@ "tboxOverafterTnumber": { "field": "tboxOverafterTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9832,6 +10530,7 @@ "tboxAdjacentTnumber": { "field": "tboxAdjacentTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9844,6 +10543,7 @@ "tboxContainsTnumber": { "field": "tboxContainsTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9856,6 +10556,7 @@ "tboxContainedTnumber": { "field": "tboxContainedTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9868,6 +10569,7 @@ "tboxOverlapsTnumber": { "field": "tboxOverlapsTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9880,6 +10582,7 @@ "tboxSameTnumber": { "field": "tboxSameTnumber", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9892,6 +10595,7 @@ "tnumberLeftTbox": { "field": "tnumberLeftTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9904,6 +10608,7 @@ "tnumberOverleftTbox": { "field": "tnumberOverleftTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9916,6 +10621,7 @@ "tnumberRightTbox": { "field": "tnumberRightTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9928,6 +10634,7 @@ "tnumberOverrightTbox": { "field": "tnumberOverrightTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9940,6 +10647,7 @@ "tnumberBeforeTbox": { "field": "tnumberBeforeTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9952,6 +10660,7 @@ "tnumberOverbeforeTbox": { "field": "tnumberOverbeforeTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9964,6 +10673,7 @@ "tnumberAfterTbox": { "field": "tnumberAfterTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9976,6 +10686,7 @@ "tnumberOverafterTbox": { "field": "tnumberOverafterTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -9988,6 +10699,7 @@ "tnumberAdjacentTbox": { "field": "tnumberAdjacentTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -10000,6 +10712,7 @@ "tnumberContainsTbox": { "field": "tnumberContainsTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -10012,6 +10725,7 @@ "tnumberContainedTbox": { "field": "tnumberContainedTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -10024,6 +10738,7 @@ "tnumberOverlapsTbox": { "field": "tnumberOverlapsTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -10036,6 +10751,7 @@ "tnumberSameTbox": { "field": "tnumberSameTbox", "class": "TBoxOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -10048,6 +10764,7 @@ "intspanLower": { "field": "intspanLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10062,6 +10779,7 @@ "intspanUpper": { "field": "intspanUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10076,6 +10794,7 @@ "intspanWidth": { "field": "intspanWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10090,6 +10809,7 @@ "floatspanLower": { "field": "floatspanLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10104,6 +10824,7 @@ "floatspanUpper": { "field": "floatspanUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10118,6 +10839,7 @@ "floatspanWidth": { "field": "floatspanWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10132,6 +10854,7 @@ "bigintspanLower": { "field": "bigintspanLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -10146,6 +10869,7 @@ "bigintspanUpper": { "field": "bigintspanUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -10160,6 +10884,7 @@ "datespanLower": { "field": "datespanLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DateType", "arity": 1, "argTypes": [ @@ -10174,6 +10899,7 @@ "datespanUpper": { "field": "datespanUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DateType", "arity": 1, "argTypes": [ @@ -10188,6 +10914,7 @@ "tstzspanLower": { "field": "tstzspanLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10202,6 +10929,7 @@ "tstzspanUpper": { "field": "tstzspanUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10216,6 +10944,7 @@ "spanLowerInc": { "field": "spanLowerInc", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -10230,6 +10959,7 @@ "spanUpperInc": { "field": "spanUpperInc", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -10244,6 +10974,7 @@ "spansetNumSpans": { "field": "spansetNumSpans", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10258,6 +10989,7 @@ "spansetStartSpan": { "field": "spansetStartSpan", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10273,6 +11005,7 @@ "spansetEndSpan": { "field": "spansetEndSpan", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10288,6 +11021,7 @@ "spansetLowerInc": { "field": "spansetLowerInc", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -10302,6 +11036,7 @@ "spansetUpperInc": { "field": "spansetUpperInc", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -10316,6 +11051,7 @@ "spanToSpanset": { "field": "spanToSpanset", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10331,6 +11067,7 @@ "setNumValues": { "field": "setNumValues", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10345,6 +11082,7 @@ "intsetStartValue": { "field": "intsetStartValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10359,6 +11097,7 @@ "intsetEndValue": { "field": "intsetEndValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10375,6 +11114,7 @@ "floatsetStartValue": { "field": "floatsetStartValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10389,6 +11129,7 @@ "floatsetEndValue": { "field": "floatsetEndValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10405,6 +11146,7 @@ "datesetStartValue": { "field": "datesetStartValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DateType", "arity": 1, "argTypes": [ @@ -10419,6 +11161,7 @@ "datesetEndValue": { "field": "datesetEndValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DateType", "arity": 1, "argTypes": [ @@ -10435,6 +11178,7 @@ "tstzsetStartValue": { "field": "tstzsetStartValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10449,6 +11193,7 @@ "tstzsetEndValue": { "field": "tstzsetEndValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10465,6 +11210,7 @@ "textsetStartValue": { "field": "textsetStartValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10480,6 +11226,7 @@ "textsetEndValue": { "field": "textsetEndValue", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10497,6 +11244,7 @@ "tstzspansetLower": { "field": "tstzspansetLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10511,6 +11259,7 @@ "tstzspansetUpper": { "field": "tstzspansetUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10525,6 +11274,7 @@ "tstzspansetStartTimestamptz": { "field": "tstzspansetStartTimestamptz", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10539,6 +11289,7 @@ "tstzspansetEndTimestamptz": { "field": "tstzspansetEndTimestamptz", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -10553,6 +11304,7 @@ "spansetSpanN": { "field": "spansetSpanN", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -10569,6 +11321,7 @@ "intspansetLower": { "field": "intspansetLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10583,6 +11336,7 @@ "intspansetUpper": { "field": "intspansetUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10597,6 +11351,7 @@ "intspansetWidth": { "field": "intspansetWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -10612,6 +11367,7 @@ "floatspansetLower": { "field": "floatspansetLower", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10627,6 +11383,7 @@ "floatspansetUpper": { "field": "floatspansetUpper", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -10642,6 +11399,7 @@ "floatspansetWidth": { "field": "floatspansetWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -10657,6 +11415,7 @@ "tstzspansetNumTimestamps": { "field": "tstzspansetNumTimestamps", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -10672,6 +11431,7 @@ "tstzspansetDuration": { "field": "tstzspansetDuration", "class": "SpanAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -10688,6 +11448,7 @@ "intsetFromHexWKB": { "field": "intsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10699,6 +11460,7 @@ "bigintsetFromHexWKB": { "field": "bigintsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10710,6 +11472,7 @@ "floatsetFromHexWKB": { "field": "floatsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10721,6 +11484,7 @@ "textsetFromHexWKB": { "field": "textsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10732,6 +11496,7 @@ "tstzsetFromHexWKB": { "field": "tstzsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10743,6 +11508,7 @@ "datesetFromHexWKB": { "field": "datesetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10754,6 +11520,7 @@ "intspanFromHexWKB": { "field": "intspanFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10765,6 +11532,7 @@ "bigintspanFromHexWKB": { "field": "bigintspanFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10776,6 +11544,7 @@ "floatspanFromHexWKB": { "field": "floatspanFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10787,6 +11556,7 @@ "tstzspanFromHexWKB": { "field": "tstzspanFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10798,6 +11568,7 @@ "datespanFromHexWKB": { "field": "datespanFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10809,6 +11580,7 @@ "intspansetFromHexWKB": { "field": "intspansetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10820,6 +11592,7 @@ "bigintspansetFromHexWKB": { "field": "bigintspansetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10831,6 +11604,7 @@ "floatspansetFromHexWKB": { "field": "floatspansetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10842,6 +11616,7 @@ "tstzspansetFromHexWKB": { "field": "tstzspansetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10853,6 +11628,7 @@ "datespansetFromHexWKB": { "field": "datespansetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10864,6 +11640,7 @@ "tboolFromHexWKB": { "field": "tboolFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10875,6 +11652,7 @@ "tintFromHexWKB": { "field": "tintFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10886,6 +11664,7 @@ "tfloatFromHexWKB": { "field": "tfloatFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10897,6 +11676,7 @@ "ttextFromHexWKB": { "field": "ttextFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10908,6 +11688,7 @@ "tgeometryFromHexEWKB": { "field": "tgeometryFromHexEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10919,6 +11700,7 @@ "tgeographyFromHexEWKB": { "field": "tgeographyFromHexEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10930,6 +11712,7 @@ "tgeompointFromHexEWKB": { "field": "tgeompointFromHexEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10941,6 +11724,7 @@ "tgeogpointFromHexEWKB": { "field": "tgeogpointFromHexEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10952,6 +11736,7 @@ "tgeometryFromMFJSON": { "field": "tgeometryFromMFJSON", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10963,6 +11748,7 @@ "tgeographyFromMFJSON": { "field": "tgeographyFromMFJSON", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10974,6 +11760,7 @@ "tgeompointFromMFJSON": { "field": "tgeompointFromMFJSON", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10985,6 +11772,7 @@ "tgeogpointFromMFJSON": { "field": "tgeogpointFromMFJSON", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -10996,6 +11784,7 @@ "tboolFromText": { "field": "tboolFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11007,6 +11796,7 @@ "tintFromText": { "field": "tintFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11018,6 +11808,7 @@ "tfloatFromText": { "field": "tfloatFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11029,6 +11820,7 @@ "ttextFromText": { "field": "ttextFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11040,6 +11832,7 @@ "tgeompointFromText": { "field": "tgeompointFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11051,6 +11844,7 @@ "tgeogpointFromText": { "field": "tgeogpointFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11062,6 +11856,7 @@ "tgeompointFromEWKT": { "field": "tgeompointFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11073,6 +11868,7 @@ "tgeogpointFromEWKT": { "field": "tgeogpointFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11084,6 +11880,7 @@ "tgeometryFromText": { "field": "tgeometryFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11095,6 +11892,7 @@ "tgeographyFromText": { "field": "tgeographyFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11106,6 +11904,7 @@ "tgeometryFromEWKT": { "field": "tgeometryFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11117,6 +11916,7 @@ "tgeographyFromEWKT": { "field": "tgeographyFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11131,6 +11931,7 @@ "tboolFromBinary": { "field": "tboolFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11142,6 +11943,7 @@ "tintFromBinary": { "field": "tintFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11153,6 +11955,7 @@ "tfloatFromBinary": { "field": "tfloatFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11164,6 +11967,7 @@ "ttextFromBinary": { "field": "ttextFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11175,6 +11979,7 @@ "tgeompointFromBinary": { "field": "tgeompointFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11186,6 +11991,7 @@ "tgeogpointFromBinary": { "field": "tgeogpointFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11197,6 +12003,7 @@ "tgeometryFromBinary": { "field": "tgeometryFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11208,6 +12015,7 @@ "tgeographyFromBinary": { "field": "tgeographyFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11219,6 +12027,7 @@ "tgeompointFromEWKB": { "field": "tgeompointFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11230,6 +12039,7 @@ "tgeogpointFromEWKB": { "field": "tgeogpointFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11241,6 +12051,7 @@ "tgeometryFromEWKB": { "field": "tgeometryFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11252,6 +12063,7 @@ "tgeographyFromEWKB": { "field": "tgeographyFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11263,6 +12075,7 @@ "asBinary": { "field": "asBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BinaryType", "arity": 1, "argTypes": [ @@ -11274,6 +12087,7 @@ "asEWKB": { "field": "asEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BinaryType", "arity": 1, "argTypes": [ @@ -11285,6 +12099,7 @@ "asHexEWKB": { "field": "asHexEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11303,6 +12118,7 @@ "geomsetFromText": { "field": "geomsetFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11314,6 +12130,7 @@ "geogsetFromText": { "field": "geogsetFromText", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11325,6 +12142,7 @@ "geomsetFromEWKT": { "field": "geomsetFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11336,6 +12154,7 @@ "geogsetFromEWKT": { "field": "geogsetFromEWKT", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11347,6 +12166,7 @@ "geomsetFromHexWKB": { "field": "geomsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11358,6 +12178,7 @@ "geogsetFromHexWKB": { "field": "geogsetFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11369,6 +12190,7 @@ "geomsetFromBinary": { "field": "geomsetFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11380,6 +12202,7 @@ "geogsetFromBinary": { "field": "geogsetFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11391,6 +12214,7 @@ "geomsetFromEWKB": { "field": "geomsetFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11402,6 +12226,7 @@ "geogsetFromEWKB": { "field": "geogsetFromEWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11413,6 +12238,7 @@ "tboxFromHexWKB": { "field": "tboxFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11427,6 +12253,7 @@ "tboxFromBinary": { "field": "tboxFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11441,6 +12268,7 @@ "stboxFromHexWKB": { "field": "stboxFromHexWKB", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11455,6 +12283,7 @@ "stboxFromBinary": { "field": "stboxFromBinary", "class": "IOAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11469,6 +12298,7 @@ "ttextUpper": { "field": "ttextUpper", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11484,6 +12314,7 @@ "ttextLower": { "field": "ttextLower", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11499,6 +12330,7 @@ "ttextInitcap": { "field": "ttextInitcap", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11516,6 +12348,7 @@ "teqTextTtext": { "field": "teqTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11528,6 +12361,7 @@ "tneTextTtext": { "field": "tneTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11540,6 +12374,7 @@ "tltTextTtext": { "field": "tltTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11552,6 +12387,7 @@ "tleTextTtext": { "field": "tleTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11564,6 +12400,7 @@ "tgtTextTtext": { "field": "tgtTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11576,6 +12413,7 @@ "tgeTextTtext": { "field": "tgeTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11588,6 +12426,7 @@ "teqTtextText": { "field": "teqTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11600,6 +12439,7 @@ "tneTtextText": { "field": "tneTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11612,6 +12452,7 @@ "tltTtextText": { "field": "tltTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11624,6 +12465,7 @@ "tleTtextText": { "field": "tleTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11636,6 +12478,7 @@ "tgtTtextText": { "field": "tgtTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11648,6 +12491,7 @@ "tgeTtextText": { "field": "tgeTtextText", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11660,6 +12504,7 @@ "ttextCatTtextText": { "field": "ttextCatTtextText", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11676,6 +12521,7 @@ "ttextCatTextTtext": { "field": "ttextCatTextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11692,6 +12538,7 @@ "ttextCatTtextTtext": { "field": "ttextCatTtextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11707,6 +12554,7 @@ "ttextCat": { "field": "ttextCatTtextTtext", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11722,6 +12570,7 @@ "textsetCatTextsetText": { "field": "textsetCatTextsetText", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11739,6 +12588,7 @@ "textsetCatTextTextset": { "field": "textsetCatTextTextset", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11756,6 +12606,7 @@ "textsetCat": { "field": "textsetCatTextsetText", "class": "TTextUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -11773,6 +12624,7 @@ "tint": { "field": "tint", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11787,6 +12639,7 @@ "tfloat": { "field": "tfloat", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11801,6 +12654,7 @@ "tbool": { "field": "tbool", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11815,6 +12669,7 @@ "ttext": { "field": "ttext", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11829,6 +12684,7 @@ "tgeogpoint": { "field": "tgeogpoint", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11843,6 +12699,7 @@ "tstzspan": { "field": "tstzspan", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11857,6 +12714,7 @@ "tstzspanset": { "field": "tstzspanset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11871,6 +12729,7 @@ "intspan": { "field": "intspan", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11885,6 +12744,7 @@ "floatspan": { "field": "floatspan", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11899,6 +12759,7 @@ "datespan": { "field": "datespan", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11913,6 +12774,7 @@ "datespanset": { "field": "datespanset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11927,6 +12789,7 @@ "intset": { "field": "intset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11941,6 +12804,7 @@ "floatset": { "field": "floatset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11955,6 +12819,7 @@ "textset": { "field": "textset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11969,6 +12834,7 @@ "bigintset": { "field": "bigintset", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11983,6 +12849,7 @@ "stbox": { "field": "stbox", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -11997,6 +12864,7 @@ "tbox": { "field": "tbox", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12011,6 +12879,7 @@ "tboolFromMfjson": { "field": "tboolFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12025,6 +12894,7 @@ "tintFromMfjson": { "field": "tintFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12039,6 +12909,7 @@ "tfloatFromMfjson": { "field": "tfloatFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12053,6 +12924,7 @@ "ttextFromMfjson": { "field": "ttextFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12067,6 +12939,7 @@ "tgeompointFromMfjson": { "field": "tgeompointFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12081,6 +12954,7 @@ "tgeogpointFromMfjson": { "field": "tgeogpointFromMfjson", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12095,6 +12969,7 @@ "tboolFromBaseTemp": { "field": "tboolFromBaseTemp", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12111,6 +12986,7 @@ "tintFromBaseTemp": { "field": "tintFromBaseTemp", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12127,6 +13003,7 @@ "tfloatFromBaseTemp": { "field": "tfloatFromBaseTemp", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12143,6 +13020,7 @@ "ttextFromBaseTemp": { "field": "ttextFromBaseTemp", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12161,6 +13039,7 @@ "tpointFromBaseTemp": { "field": "tpointFromBaseTemp", "class": "ConstructorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12178,6 +13057,7 @@ "tnumberAbs": { "field": "tnumberAbs", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12192,6 +13072,7 @@ "tnumberDeltaValue": { "field": "tnumberDeltaValue", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12206,6 +13087,7 @@ "tnumberAngularDifference": { "field": "tnumberAngularDifference", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12220,6 +13102,7 @@ "tpointAngularDifference": { "field": "tpointAngularDifference", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12234,6 +13117,7 @@ "tfloatExp": { "field": "tfloatExp", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12248,6 +13132,7 @@ "tfloatLn": { "field": "tfloatLn", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12262,6 +13147,7 @@ "tfloatLog10": { "field": "tfloatLog10", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -12276,6 +13162,7 @@ "addTintInt": { "field": "addTintInt", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12291,6 +13178,7 @@ "subTintInt": { "field": "subTintInt", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12306,6 +13194,7 @@ "multTintInt": { "field": "multTintInt", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12321,6 +13210,7 @@ "divTintInt": { "field": "divTintInt", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12336,6 +13226,7 @@ "addTfloatFloat": { "field": "addTfloatFloat", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12351,6 +13242,7 @@ "subTfloatFloat": { "field": "subTfloatFloat", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12366,6 +13258,7 @@ "multTfloatFloat": { "field": "multTfloatFloat", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12381,6 +13274,7 @@ "divTfloatFloat": { "field": "divTfloatFloat", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12396,6 +13290,7 @@ "addTnumberTnumber": { "field": "addTnumberTnumber", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12411,6 +13306,7 @@ "subTnumberTnumber": { "field": "subTnumberTnumber", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12426,6 +13322,7 @@ "multTnumberTnumber": { "field": "multTnumberTnumber", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12441,6 +13338,7 @@ "divTnumberTnumber": { "field": "divTnumberTnumber", "class": "MathUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -12456,6 +13354,7 @@ "cbufferEq": { "field": "cbufferEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12468,6 +13367,7 @@ "cbufferNe": { "field": "cbufferNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12480,6 +13380,7 @@ "cbufferLt": { "field": "cbufferLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12492,6 +13393,7 @@ "cbufferLe": { "field": "cbufferLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12504,6 +13406,7 @@ "cbufferGt": { "field": "cbufferGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12516,6 +13419,7 @@ "cbufferGe": { "field": "cbufferGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12528,6 +13432,7 @@ "cbufferCmp": { "field": "cbufferCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -12540,6 +13445,7 @@ "npointEq": { "field": "npointEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12552,6 +13458,7 @@ "npointNe": { "field": "npointNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12564,6 +13471,7 @@ "npointLt": { "field": "npointLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12576,6 +13484,7 @@ "npointLe": { "field": "npointLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12588,6 +13497,7 @@ "npointGt": { "field": "npointGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12600,6 +13510,7 @@ "npointGe": { "field": "npointGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12612,6 +13523,7 @@ "npointCmp": { "field": "npointCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -12624,6 +13536,7 @@ "npointHash": { "field": "npointHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -12635,6 +13548,7 @@ "npointHashExtended": { "field": "npointHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -12647,6 +13561,7 @@ "poseEq": { "field": "poseEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12659,6 +13574,7 @@ "poseNe": { "field": "poseNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12671,6 +13587,7 @@ "poseLt": { "field": "poseLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12683,6 +13600,7 @@ "poseLe": { "field": "poseLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12695,6 +13613,7 @@ "poseGt": { "field": "poseGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12707,6 +13626,7 @@ "poseGe": { "field": "poseGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12719,6 +13639,7 @@ "poseCmp": { "field": "poseCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -12731,6 +13652,7 @@ "poseHash": { "field": "poseHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -12742,6 +13664,7 @@ "poseHashExtended": { "field": "poseHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -12754,6 +13677,7 @@ "nsegmentEq": { "field": "nsegmentEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12766,6 +13690,7 @@ "nsegmentNe": { "field": "nsegmentNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12778,6 +13703,7 @@ "nsegmentLt": { "field": "nsegmentLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12790,6 +13716,7 @@ "nsegmentLe": { "field": "nsegmentLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12802,6 +13729,7 @@ "nsegmentGt": { "field": "nsegmentGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12814,6 +13742,7 @@ "nsegmentGe": { "field": "nsegmentGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12826,6 +13755,7 @@ "nsegmentCmp": { "field": "nsegmentCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -12838,6 +13768,7 @@ "setEq": { "field": "setEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12850,6 +13781,7 @@ "setNe": { "field": "setNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12862,6 +13794,7 @@ "setLt": { "field": "setLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12874,6 +13807,7 @@ "setLe": { "field": "setLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12886,6 +13820,7 @@ "setGt": { "field": "setGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12898,6 +13833,7 @@ "setGe": { "field": "setGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12910,6 +13846,7 @@ "setCmp": { "field": "setCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -12922,6 +13859,7 @@ "setHash": { "field": "setHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -12933,6 +13871,7 @@ "setHashExtended": { "field": "setHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -12945,6 +13884,7 @@ "spanEq": { "field": "spanEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12957,6 +13897,7 @@ "spanNe": { "field": "spanNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12969,6 +13910,7 @@ "spanLt": { "field": "spanLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12981,6 +13923,7 @@ "spanLe": { "field": "spanLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -12993,6 +13936,7 @@ "spanGt": { "field": "spanGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13005,6 +13949,7 @@ "spanGe": { "field": "spanGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13017,6 +13962,7 @@ "spanCmp": { "field": "spanCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13029,6 +13975,7 @@ "spanHash": { "field": "spanHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13040,6 +13987,7 @@ "spanHashExtended": { "field": "spanHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -13052,6 +14000,7 @@ "spansetEq": { "field": "spansetEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13064,6 +14013,7 @@ "spansetNe": { "field": "spansetNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13076,6 +14026,7 @@ "spansetLt": { "field": "spansetLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13088,6 +14039,7 @@ "spansetLe": { "field": "spansetLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13100,6 +14052,7 @@ "spansetGt": { "field": "spansetGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13112,6 +14065,7 @@ "spansetGe": { "field": "spansetGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13124,6 +14078,7 @@ "spansetCmp": { "field": "spansetCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13136,6 +14091,7 @@ "spansetHash": { "field": "spansetHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13147,6 +14103,7 @@ "spansetHashExtended": { "field": "spansetHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -13159,6 +14116,7 @@ "tboxEq": { "field": "tboxEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13171,6 +14129,7 @@ "tboxNe": { "field": "tboxNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13183,6 +14142,7 @@ "tboxLt": { "field": "tboxLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13195,6 +14155,7 @@ "tboxLe": { "field": "tboxLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13207,6 +14168,7 @@ "tboxGt": { "field": "tboxGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13219,6 +14181,7 @@ "tboxGe": { "field": "tboxGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13231,6 +14194,7 @@ "tboxCmp": { "field": "tboxCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13243,6 +14207,7 @@ "tboxHash": { "field": "tboxHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13254,6 +14219,7 @@ "tboxHashExtended": { "field": "tboxHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -13266,6 +14232,7 @@ "stboxEq": { "field": "stboxEq", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13278,6 +14245,7 @@ "stboxNe": { "field": "stboxNe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13290,6 +14258,7 @@ "stboxLt": { "field": "stboxLt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13302,6 +14271,7 @@ "stboxLe": { "field": "stboxLe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13314,6 +14284,7 @@ "stboxGt": { "field": "stboxGt", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13326,6 +14297,7 @@ "stboxGe": { "field": "stboxGe", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -13338,6 +14310,7 @@ "stboxCmp": { "field": "stboxCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13350,6 +14323,7 @@ "stboxHash": { "field": "stboxHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13361,6 +14335,7 @@ "stboxHashExtended": { "field": "stboxHashExtended", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -13373,6 +14348,7 @@ "temporalCmp": { "field": "temporalCmp", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13385,6 +14361,7 @@ "temporalHash": { "field": "temporalHash", "class": "ComparisonUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13396,6 +14373,7 @@ "atTime": { "field": "atTime", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13415,6 +14393,7 @@ "startTimestamp": { "field": "startTimestamp", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -13429,6 +14408,7 @@ "endTimestamp": { "field": "endTimestamp", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -13443,6 +14423,7 @@ "numInstants": { "field": "numInstants", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13457,6 +14438,7 @@ "speed": { "field": "speed", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13472,6 +14454,7 @@ "atGeometry": { "field": "atGeometry", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13489,6 +14472,7 @@ "asHexWKB": { "field": "asHexWKB", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13503,6 +14487,7 @@ "temporalAsMfjson": { "field": "temporalAsMfjson", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13518,6 +14503,7 @@ "tboolOut": { "field": "tboolOut", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13532,6 +14518,7 @@ "tintOut": { "field": "tintOut", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13546,6 +14533,7 @@ "tfloatOut": { "field": "tfloatOut", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13561,6 +14549,7 @@ "ttextOut": { "field": "ttextOut", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13575,6 +14564,7 @@ "getTimestamp": { "field": "startTimestamp", "class": "TemporalUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -13589,6 +14579,7 @@ "teqTintInt": { "field": "teqTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13601,6 +14592,7 @@ "teqTfloatFloat": { "field": "teqTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13613,6 +14605,7 @@ "teqTboolBool": { "field": "teqTboolBool", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13625,6 +14618,7 @@ "tneTintInt": { "field": "tneTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13637,6 +14631,7 @@ "tneTfloatFloat": { "field": "tneTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13649,6 +14644,7 @@ "tneTboolBool": { "field": "tneTboolBool", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13661,6 +14657,7 @@ "tltTintInt": { "field": "tltTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13673,6 +14670,7 @@ "tltTfloatFloat": { "field": "tltTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13685,6 +14683,7 @@ "tleTintInt": { "field": "tleTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13697,6 +14696,7 @@ "tleTfloatFloat": { "field": "tleTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13709,6 +14709,7 @@ "tgtTintInt": { "field": "tgtTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13721,6 +14722,7 @@ "tgtTfloatFloat": { "field": "tgtTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13733,6 +14735,7 @@ "tgeTintInt": { "field": "tgeTintInt", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13745,6 +14748,7 @@ "tgeTfloatFloat": { "field": "tgeTfloatFloat", "class": "TemporalCompUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -13757,6 +14761,7 @@ "bigintspanWidth": { "field": "bigintspanWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -13771,6 +14776,7 @@ "bigintspansetWidth": { "field": "bigintspansetWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -13786,6 +14792,7 @@ "width": { "field": "floatspanWidth", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -13800,6 +14807,7 @@ "startDate": { "field": "startDate", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13814,6 +14822,7 @@ "endDate": { "field": "endDate", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13828,6 +14837,7 @@ "numDates": { "field": "numDates", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -13842,6 +14852,7 @@ "dateN": { "field": "dateN", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -13857,6 +14868,7 @@ "dates": { "field": "dates", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13872,6 +14884,7 @@ "valueSpan": { "field": "valueSpan", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13887,6 +14900,7 @@ "intsetFromBinary": { "field": "intsetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13898,6 +14912,7 @@ "bigintsetFromBinary": { "field": "bigintsetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13909,6 +14924,7 @@ "floatsetFromBinary": { "field": "floatsetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13920,6 +14936,7 @@ "textsetFromBinary": { "field": "textsetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13931,6 +14948,7 @@ "tstzsetFromBinary": { "field": "tstzsetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13942,6 +14960,7 @@ "datesetFromBinary": { "field": "datesetFromBinary", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13953,6 +14972,7 @@ "tgeometry": { "field": "tgeometry", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13967,6 +14987,7 @@ "tgeography": { "field": "tgeography", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13981,6 +15002,7 @@ "geometry": { "field": "tgeometry", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -13995,6 +15017,7 @@ "geography": { "field": "tgeography", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14009,6 +15032,7 @@ "valueSet": { "field": "valueSet", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14025,6 +15049,7 @@ "box2d": { "field": "box2d", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14038,6 +15063,7 @@ "box3d": { "field": "box3d", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14051,6 +15077,7 @@ "avgValue": { "field": "avgValue", "class": "AccessorAliasUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14064,6 +15091,7 @@ "frechetDistance": { "field": "frechetDistance", "class": "SimilarityUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -14079,6 +15107,7 @@ "dynamicTimeWarp": { "field": "dynamicTimeWarp", "class": "SimilarityUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -14094,6 +15123,7 @@ "hausdorffDistance": { "field": "hausdorffDistance", "class": "SimilarityUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -14109,6 +15139,7 @@ "dynTimeWarpDistance": { "field": "dynamicTimeWarp", "class": "SimilarityUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -14124,6 +15155,7 @@ "tboolSeqSetGaps": { "field": "tboolSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14136,6 +15168,7 @@ "ttextSeqSetGaps": { "field": "ttextSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14148,6 +15181,7 @@ "tintSeqSetGaps": { "field": "tintSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -14161,6 +15195,7 @@ "tfloatSeqSetGaps": { "field": "tfloatSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -14175,6 +15210,7 @@ "tgeompointSeqSetGaps": { "field": "tgeompointSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -14189,6 +15225,7 @@ "tgeogpointSeqSetGaps": { "field": "tgeogpointSeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -14203,6 +15240,7 @@ "tgeometrySeqSetGaps": { "field": "tgeometrySeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -14217,6 +15255,7 @@ "tgeographySeqSetGaps": { "field": "tgeographySeqSetGaps", "class": "SeqSetGapsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 4, "argTypes": [ @@ -14231,6 +15270,7 @@ "tnotTbool": { "field": "tnotTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14245,6 +15285,7 @@ "tandBool": { "field": "tandBool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14260,6 +15301,7 @@ "tandBoolTbool": { "field": "tandBoolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14275,6 +15317,7 @@ "tandTboolTbool": { "field": "tandTboolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14290,6 +15333,7 @@ "torBool": { "field": "torBool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14305,6 +15349,7 @@ "torBoolTbool": { "field": "torBoolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14320,6 +15365,7 @@ "torTboolTbool": { "field": "torTboolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14335,6 +15381,7 @@ "tboolWhenTrue": { "field": "tboolWhenTrue", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14350,6 +15397,7 @@ "teqTemporalTemporal": { "field": "teqTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14366,6 +15414,7 @@ "tneTemporalTemporal": { "field": "tneTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14382,6 +15431,7 @@ "tltTemporalTemporal": { "field": "tltTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14398,6 +15448,7 @@ "tleTemporalTemporal": { "field": "tleTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14414,6 +15465,7 @@ "tgtTemporalTemporal": { "field": "tgtTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14430,6 +15482,7 @@ "tgeTemporalTemporal": { "field": "tgeTemporalTemporal", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14446,6 +15499,7 @@ "tboolNot": { "field": "tnotTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14460,6 +15514,7 @@ "tboolAnd": { "field": "tandTboolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14475,6 +15530,7 @@ "tboolOr": { "field": "torTboolTbool", "class": "BoolOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14490,6 +15546,7 @@ "numSequences": { "field": "numSequences", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14504,6 +15561,7 @@ "interp": { "field": "interp", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14518,6 +15576,7 @@ "time": { "field": "time", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14533,6 +15592,7 @@ "timespan": { "field": "timespan", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14548,6 +15608,7 @@ "merge": { "field": "merge", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14564,6 +15625,7 @@ "shift": { "field": "shift", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14581,6 +15643,7 @@ "scale": { "field": "scale", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14598,6 +15661,7 @@ "atSpan": { "field": "atSpan", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14615,6 +15679,7 @@ "atSpanset": { "field": "atSpanset", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14632,6 +15697,7 @@ "insert": { "field": "insert", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14648,6 +15714,7 @@ "update": { "field": "update", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14664,6 +15731,7 @@ "tfloatStartValue": { "field": "tfloatStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14678,6 +15746,7 @@ "tfloatEndValue": { "field": "tfloatEndValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14692,6 +15761,7 @@ "tfloatMinValue": { "field": "tfloatMinValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14706,6 +15776,7 @@ "tfloatMaxValue": { "field": "tfloatMaxValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14720,6 +15791,7 @@ "tintStartValue": { "field": "tintStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14734,6 +15806,7 @@ "tintEndValue": { "field": "tintEndValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14748,6 +15821,7 @@ "tintMinValue": { "field": "tintMinValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14762,6 +15836,7 @@ "tintMaxValue": { "field": "tintMaxValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14776,6 +15851,7 @@ "tboolStartValue": { "field": "tboolStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -14790,6 +15866,7 @@ "tboolEndValue": { "field": "tboolEndValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -14804,6 +15881,7 @@ "tpointStartValue": { "field": "tpointStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14819,6 +15897,7 @@ "tpointEndValue": { "field": "tpointEndValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14834,6 +15913,7 @@ "ttextStartValue": { "field": "ttextStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14849,6 +15929,7 @@ "ttextEndValue": { "field": "ttextEndValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14864,6 +15945,7 @@ "tintGetValue": { "field": "tintStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -14878,6 +15960,7 @@ "tfloatGetValue": { "field": "tfloatStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14892,6 +15975,7 @@ "tboolGetValue": { "field": "tboolStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -14906,6 +15990,7 @@ "ttextGetValue": { "field": "ttextStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14921,6 +16006,7 @@ "tpointGetValue": { "field": "tpointStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14936,6 +16022,7 @@ "getValue": { "field": "tfloatStartValue", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -14950,6 +16037,7 @@ "atMin": { "field": "atMin", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14965,6 +16053,7 @@ "atMax": { "field": "atMax", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -14980,6 +16069,7 @@ "atValues": { "field": "atValues", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -14997,6 +16087,7 @@ "minusTime": { "field": "minusTime", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15014,6 +16105,7 @@ "minusMin": { "field": "minusMin", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15029,6 +16121,7 @@ "minusMax": { "field": "minusMax", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15044,6 +16137,7 @@ "atStbox": { "field": "atStbox", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15061,6 +16155,7 @@ "minusStbox": { "field": "minusStbox", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15078,6 +16173,7 @@ "tnumberAtTbox": { "field": "tnumberAtTbox", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15095,6 +16191,7 @@ "tnumberMinusTbox": { "field": "tnumberMinusTbox", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15112,6 +16209,7 @@ "appendInstant": { "field": "appendInstant", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15128,6 +16226,7 @@ "appendSequence": { "field": "appendSequence", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15144,6 +16243,7 @@ "tnumberValuespans": { "field": "tnumberValuespans", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15159,6 +16259,7 @@ "tnumberToSpan": { "field": "tnumberToSpan", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15174,6 +16275,7 @@ "tnumberToTbox": { "field": "tnumberToTbox", "class": "AccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15189,6 +16291,7 @@ "setLeft": { "field": "setLeft", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15201,6 +16304,7 @@ "setRight": { "field": "setRight", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15213,6 +16317,7 @@ "setOverleft": { "field": "setOverleft", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15225,6 +16330,7 @@ "setOverright": { "field": "setOverright", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15237,6 +16343,7 @@ "setContains": { "field": "setContains", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15251,6 +16358,7 @@ "setContained": { "field": "setContained", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15263,6 +16371,7 @@ "setOverlaps": { "field": "setOverlaps", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15277,6 +16386,7 @@ "distanceIntsetIntset": { "field": "distanceIntsetIntset", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -15292,6 +16402,7 @@ "distanceBigintsetBigintset": { "field": "distanceBigintsetBigintset", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -15307,6 +16418,7 @@ "distanceFloatsetFloatset": { "field": "distanceFloatsetFloatset", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15322,6 +16434,7 @@ "distanceTstzsetTstzset": { "field": "distanceTstzsetTstzset", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15337,6 +16450,7 @@ "setDistance": { "field": "distanceFloatsetFloatset", "class": "SetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15352,6 +16466,7 @@ "spanContains": { "field": "spanContains", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15366,6 +16481,7 @@ "spanContainedIn": { "field": "spanContainedIn", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15380,6 +16496,7 @@ "spanOverlaps": { "field": "spanOverlaps", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15394,6 +16511,7 @@ "spanAdjacent": { "field": "spanAdjacent", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15408,6 +16526,7 @@ "spanLeft": { "field": "spanLeft", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15422,6 +16541,7 @@ "spanRight": { "field": "spanRight", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15436,6 +16556,7 @@ "spanOverleft": { "field": "spanOverleft", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15450,6 +16571,7 @@ "spanOverright": { "field": "spanOverright", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15464,6 +16586,7 @@ "spanUnion": { "field": "spanUnion", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15479,6 +16602,7 @@ "spanIntersection": { "field": "spanIntersection", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15494,6 +16618,7 @@ "spanMinus": { "field": "spanMinus", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15509,6 +16634,7 @@ "tstzspanDistance": { "field": "tstzspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15523,6 +16649,7 @@ "intspanDistance": { "field": "intspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -15537,6 +16664,7 @@ "bigintspanDistance": { "field": "bigintspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "LongType", "arity": 2, "argTypes": [ @@ -15551,6 +16679,7 @@ "floatspanDistance": { "field": "floatspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15565,6 +16694,7 @@ "datespanDistance": { "field": "datespanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -15579,6 +16709,7 @@ "spanDistance": { "field": "floatspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15593,6 +16724,7 @@ "timeDistance": { "field": "tstzspanDistance", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -15607,6 +16739,7 @@ "intspanExpand": { "field": "intspanExpand", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15621,6 +16754,7 @@ "bigintspanExpand": { "field": "bigintspanExpand", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15635,6 +16769,7 @@ "floatspanExpand": { "field": "floatspanExpand", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15649,6 +16784,7 @@ "expand": { "field": "floatspanExpand", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15663,6 +16799,7 @@ "spansetContainsSpan": { "field": "spansetContainsSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15677,6 +16814,7 @@ "spanContainedInSpanset": { "field": "spanContainedInSpanset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15691,6 +16829,7 @@ "spansetOverlaps": { "field": "spansetOverlaps", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -15705,6 +16844,7 @@ "spansetUnion": { "field": "spansetUnion", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15720,6 +16860,7 @@ "spansetIntersection": { "field": "spansetIntersection", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15735,6 +16876,7 @@ "spansetMinus": { "field": "spansetMinus", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15750,6 +16892,7 @@ "intspanToFloatspan": { "field": "intspanToFloatspan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15764,6 +16907,7 @@ "floatspanToIntspan": { "field": "floatspanToIntspan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15778,6 +16922,7 @@ "datespanToTstzspan": { "field": "datespanToTstzspan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15792,6 +16937,7 @@ "tstzspanToDatespan": { "field": "tstzspanToDatespan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15806,6 +16952,7 @@ "intsetToFloatset": { "field": "intsetToFloatset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15821,6 +16968,7 @@ "floatsetToIntset": { "field": "floatsetToIntset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15836,6 +16984,7 @@ "setToSpan": { "field": "setToSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15851,6 +17000,7 @@ "setToSpanset": { "field": "setToSpanset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15866,6 +17016,7 @@ "tstzspanDuration": { "field": "tstzspanDuration", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15880,6 +17031,7 @@ "datespanDuration": { "field": "datespanDuration", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15894,6 +17046,7 @@ "tstzspanShiftScale": { "field": "tstzspanShiftScale", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -15911,6 +17064,7 @@ "tstzspansetShiftScale": { "field": "tstzspansetShiftScale", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -15928,6 +17082,7 @@ "timestamptzToSpan": { "field": "timestamptzToSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15942,6 +17097,7 @@ "timestamptzToSet": { "field": "timestamptzToSet", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -15956,6 +17112,7 @@ "spansetIntersectionSpan": { "field": "spansetIntersectionSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15971,6 +17128,7 @@ "spansetUnionSpan": { "field": "spansetUnionSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -15986,6 +17144,7 @@ "spansetMinusSpan": { "field": "spansetMinusSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16001,6 +17160,7 @@ "intToSpan": { "field": "intToSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16015,6 +17175,7 @@ "intToSet": { "field": "intToSet", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16029,6 +17190,7 @@ "intToSpanset": { "field": "intToSpanset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16043,6 +17205,7 @@ "floatToSpan": { "field": "floatToSpan", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16057,6 +17220,7 @@ "floatToSet": { "field": "floatToSet", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16071,6 +17235,7 @@ "floatToSpanset": { "field": "floatToSpanset", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16085,6 +17250,7 @@ "intToTbox": { "field": "intToTbox", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16099,6 +17265,7 @@ "floatToTbox": { "field": "floatToTbox", "class": "SpanAlgebraUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16113,6 +17280,7 @@ "tboxHasx": { "field": "tboxHasx", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16126,6 +17294,7 @@ "tboxHast": { "field": "tboxHast", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16139,6 +17308,7 @@ "tboxXmin": { "field": "tboxXmin", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -16152,6 +17322,7 @@ "tboxXmax": { "field": "tboxXmax", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -16165,6 +17336,7 @@ "tboxXminInc": { "field": "tboxXminInc", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16178,6 +17350,7 @@ "tboxXmaxInc": { "field": "tboxXmaxInc", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16191,6 +17364,7 @@ "tboxTmin": { "field": "tboxTmin", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -16204,6 +17378,7 @@ "tboxTmax": { "field": "tboxTmax", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 1, "argTypes": [ @@ -16217,6 +17392,7 @@ "tboxTminInc": { "field": "tboxTminInc", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16230,6 +17406,7 @@ "tboxTmaxInc": { "field": "tboxTmaxInc", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16243,6 +17420,7 @@ "tboxToIntspan": { "field": "tboxToIntspan", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16257,6 +17435,7 @@ "tboxToFloatspan": { "field": "tboxToFloatspan", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16271,6 +17450,7 @@ "tboxToTstzspan": { "field": "tboxToTstzspan", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16285,6 +17465,7 @@ "tboxRound": { "field": "tboxRound", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16300,6 +17481,7 @@ "spanToTbox": { "field": "spanToTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16315,6 +17497,7 @@ "spansetToTbox": { "field": "spansetToTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16330,6 +17513,7 @@ "setToTbox": { "field": "setToTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16345,6 +17529,7 @@ "tboxfloatXmin": { "field": "tboxfloatXmin", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -16358,6 +17543,7 @@ "tboxfloatXmax": { "field": "tboxfloatXmax", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -16371,6 +17557,7 @@ "tboxintXmin": { "field": "tboxintXmin", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -16384,6 +17571,7 @@ "tboxintXmax": { "field": "tboxintXmax", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -16397,6 +17585,7 @@ "tboxMake": { "field": "tboxMake", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16413,6 +17602,7 @@ "timestamptzToTbox": { "field": "timestamptzToTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16427,6 +17617,7 @@ "numspanTimestamptzToTbox": { "field": "numspanTimestamptzToTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16443,6 +17634,7 @@ "tboxExpandTime": { "field": "tboxExpandTime", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16459,6 +17651,7 @@ "tboxExpandFloat": { "field": "tboxExpandFloat", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16473,6 +17666,7 @@ "tboxExpandInt": { "field": "tboxExpandInt", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16487,6 +17681,7 @@ "tboxShiftScaleTime": { "field": "tboxShiftScaleTime", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -16504,6 +17699,7 @@ "intersectionTboxTbox": { "field": "intersectionTboxTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16516,6 +17712,7 @@ "unionTboxTbox": { "field": "unionTboxTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16530,6 +17727,7 @@ "tboxIntersection": { "field": "intersectionTboxTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16542,6 +17740,7 @@ "tboxUnion": { "field": "unionTboxTbox", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16556,6 +17755,7 @@ "expandValue": { "field": "tboxExpandFloat", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16570,6 +17770,7 @@ "tboxContains": { "field": "tboxContains", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16582,6 +17783,7 @@ "tboxContained": { "field": "tboxContained", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16594,6 +17796,7 @@ "tboxOverlaps": { "field": "tboxOverlaps", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16606,6 +17809,7 @@ "tboxLeft": { "field": "tboxLeft", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16618,6 +17822,7 @@ "tboxOverleft": { "field": "tboxOverleft", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16630,6 +17835,7 @@ "tboxRight": { "field": "tboxRight", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16642,6 +17848,7 @@ "tboxOverright": { "field": "tboxOverright", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16654,6 +17861,7 @@ "tboxBefore": { "field": "tboxBefore", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16666,6 +17874,7 @@ "tboxOverbefore": { "field": "tboxOverbefore", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16678,6 +17887,7 @@ "tboxAfter": { "field": "tboxAfter", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16690,6 +17900,7 @@ "tboxOverafter": { "field": "tboxOverafter", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16702,6 +17913,7 @@ "tboxAdjacent": { "field": "tboxAdjacent", "class": "TBoxUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16714,6 +17926,7 @@ "temporalSubtype": { "field": "temporalSubtype", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16728,6 +17941,7 @@ "startInstant": { "field": "startInstant", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16743,6 +17957,7 @@ "endInstant": { "field": "endInstant", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16758,6 +17973,7 @@ "instantN": { "field": "instantN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16774,6 +17990,7 @@ "startSequence": { "field": "startSequence", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16789,6 +18006,7 @@ "endSequence": { "field": "endSequence", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16804,6 +18022,7 @@ "sequenceN": { "field": "sequenceN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16820,6 +18039,7 @@ "minInstant": { "field": "minInstant", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16835,6 +18055,7 @@ "maxInstant": { "field": "maxInstant", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16850,6 +18071,7 @@ "numTimestamps": { "field": "numTimestamps", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -16864,6 +18086,7 @@ "timestampN": { "field": "timestampN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "TimestampType", "arity": 2, "argTypes": [ @@ -16879,6 +18102,7 @@ "lowerInc": { "field": "lowerInc", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16893,6 +18117,7 @@ "upperInc": { "field": "upperInc", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 1, "argTypes": [ @@ -16907,6 +18132,7 @@ "duration": { "field": "duration", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16922,6 +18148,7 @@ "tboolValueN": { "field": "tboolValueN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -16937,6 +18164,7 @@ "tfloatValueN": { "field": "tfloatValueN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -16952,6 +18180,7 @@ "ttextMinValue": { "field": "ttextMinValue", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16967,6 +18196,7 @@ "ttextMaxValue": { "field": "ttextMaxValue", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -16982,6 +18212,7 @@ "ttextValueN": { "field": "ttextValueN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -16998,6 +18229,7 @@ "tpointSrid": { "field": "tpointSrid", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 1, "argTypes": [ @@ -17012,6 +18244,7 @@ "tpointValueN": { "field": "tpointValueN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17028,6 +18261,7 @@ "tintValueN": { "field": "tintValueN", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -17043,6 +18277,7 @@ "tboolValueAtTimestamptz": { "field": "tboolValueAtTimestamptz", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17058,6 +18293,7 @@ "tintValueAtTimestamptz": { "field": "tintValueAtTimestamptz", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "IntegerType", "arity": 2, "argTypes": [ @@ -17073,6 +18309,7 @@ "tfloatValueAtTimestamptz": { "field": "tfloatValueAtTimestamptz", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "DoubleType", "arity": 2, "argTypes": [ @@ -17088,6 +18325,7 @@ "ttextValueAtTimestamptz": { "field": "ttextValueAtTimestamptz", "class": "MoreAccessorUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17110,6 +18348,7 @@ "temporalBeforeSpan": { "field": "temporalBeforeSpan", "class": "PosOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17124,6 +18363,7 @@ "temporalAfterSpan": { "field": "temporalAfterSpan", "class": "PosOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17138,6 +18378,7 @@ "temporalOverbeforeSpan": { "field": "temporalOverbeforeSpan", "class": "PosOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17152,6 +18393,7 @@ "temporalOverafterSpan": { "field": "temporalOverafterSpan", "class": "PosOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17166,6 +18408,7 @@ "tstzspanFromBinary": { "field": "tstzspanFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17177,6 +18420,7 @@ "intspanFromBinary": { "field": "intspanFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17188,6 +18432,7 @@ "floatspanFromBinary": { "field": "floatspanFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17199,6 +18444,7 @@ "bigintspanFromBinary": { "field": "bigintspanFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17210,6 +18456,7 @@ "datespanFromBinary": { "field": "datespanFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17221,6 +18468,7 @@ "tstzspansetFromBinary": { "field": "tstzspansetFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17232,6 +18480,7 @@ "intspansetFromBinary": { "field": "intspansetFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17243,6 +18492,7 @@ "floatspansetFromBinary": { "field": "floatspansetFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17254,6 +18504,7 @@ "bigintspansetFromBinary": { "field": "bigintspansetFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17265,6 +18516,7 @@ "datespansetFromBinary": { "field": "datespansetFromBinary", "class": "SpanUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17276,6 +18528,7 @@ "spanLeftSpanset": { "field": "spanLeftSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17288,6 +18541,7 @@ "spanOverleftSpanset": { "field": "spanOverleftSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17300,6 +18554,7 @@ "spanRightSpanset": { "field": "spanRightSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17312,6 +18567,7 @@ "spanOverrightSpanset": { "field": "spanOverrightSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17324,6 +18580,7 @@ "spanAdjacentSpanset": { "field": "spanAdjacentSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17336,6 +18593,7 @@ "spanContainsSpanset": { "field": "spanContainsSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17348,6 +18606,7 @@ "spanContainedSpanset": { "field": "spanContainedSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17360,6 +18619,7 @@ "spanOverlapsSpanset": { "field": "spanOverlapsSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17372,6 +18632,7 @@ "spansetLeftSpan": { "field": "spansetLeftSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17384,6 +18645,7 @@ "spansetOverleftSpan": { "field": "spansetOverleftSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17396,6 +18658,7 @@ "spansetRightSpan": { "field": "spansetRightSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17408,6 +18671,7 @@ "spansetOverrightSpan": { "field": "spansetOverrightSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17420,6 +18684,7 @@ "spansetAdjacentSpan": { "field": "spansetAdjacentSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17432,6 +18697,7 @@ "spansetContainedSpan": { "field": "spansetContainedSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17444,6 +18710,7 @@ "spansetOverlapsSpan": { "field": "spansetOverlapsSpan", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17456,6 +18723,7 @@ "spansetLeftSpanset": { "field": "spansetLeftSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17468,6 +18736,7 @@ "spansetOverleftSpanset": { "field": "spansetOverleftSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17480,6 +18749,7 @@ "spansetRightSpanset": { "field": "spansetRightSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17492,6 +18762,7 @@ "spansetOverrightSpanset": { "field": "spansetOverrightSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17504,6 +18775,7 @@ "spansetAdjacentSpanset": { "field": "spansetAdjacentSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17516,6 +18788,7 @@ "spansetContainsSpanset": { "field": "spansetContainsSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17528,6 +18801,7 @@ "spansetContainedSpanset": { "field": "spansetContainedSpanset", "class": "SpansetOpsUDFs", + "pkg": "org.mobilitydb.spark.temporal", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17540,6 +18814,7 @@ "length": { "field": "length", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -17554,6 +18829,7 @@ "bboxOverlaps": { "field": "bboxOverlaps", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17572,6 +18848,7 @@ "valueAtTimestamp": { "field": "valueAtTimestamp", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17588,6 +18865,7 @@ "geoTimeStbox": { "field": "geoTimeStbox", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17607,6 +18885,7 @@ "whenTrue": { "field": "whenTrue", "class": "BerlinMODUDFs", + "pkg": "org.mobilitydb.spark.demo", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17622,6 +18901,7 @@ "npoint": { "field": "npoint", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17634,6 +18914,7 @@ "nsegment": { "field": "nsegment", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 3, "argTypes": [ @@ -17647,6 +18928,7 @@ "route": { "field": "route", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -17658,6 +18940,7 @@ "getPosition": { "field": "getPosition", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -17669,6 +18952,7 @@ "startPosition": { "field": "startPosition", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -17680,6 +18964,7 @@ "endPosition": { "field": "endPosition", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "DoubleType", "arity": 1, "argTypes": [ @@ -17691,6 +18976,7 @@ "npointFromText": { "field": "npointFromText", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17702,6 +18988,7 @@ "npointFromEWKT": { "field": "npointFromEWKT", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17713,6 +19000,7 @@ "npointFromHexEWKB": { "field": "npointFromHexEWKB", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17724,6 +19012,7 @@ "npointFromBinary": { "field": "npointFromBinary", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17735,6 +19024,7 @@ "npointFromEWKB": { "field": "npointFromEWKB", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17746,6 +19036,7 @@ "npointsetFromHexWKB": { "field": "npointsetFromHexWKB", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17760,6 +19051,7 @@ "npointsetFromText": { "field": "npointsetFromText", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17773,6 +19065,7 @@ "npointsetFromEWKT": { "field": "npointsetFromEWKT", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17784,6 +19077,7 @@ "npointsetFromBinary": { "field": "npointsetFromBinary", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17798,6 +19092,7 @@ "npointsetFromEWKB": { "field": "npointsetFromEWKB", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17809,6 +19104,7 @@ "routes": { "field": "routes", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17824,6 +19120,7 @@ "tnpoint": { "field": "tnpoint", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17838,6 +19135,7 @@ "tnpointInst": { "field": "tnpointInst", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17850,6 +19148,7 @@ "tnpointRoute": { "field": "tnpointRoute", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "LongType", "arity": 1, "argTypes": [ @@ -17864,6 +19163,7 @@ "tnpointFromHexWKB": { "field": "tnpointFromHexWKB", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17875,6 +19175,7 @@ "tnpointFromBinary": { "field": "tnpointFromBinary", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17886,6 +19187,7 @@ "tnpointSeq": { "field": "tnpointSeq", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17901,6 +19203,7 @@ "tnpointSeqSet": { "field": "tnpointSeqSet", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 1, "argTypes": [ @@ -17916,6 +19219,7 @@ "tnpointSeqSetGaps": { "field": "tnpointSeqSetGaps", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "StringType", "arity": 2, "argTypes": [ @@ -17934,6 +19238,7 @@ "containsRid": { "field": "containsRid", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17946,6 +19251,7 @@ "containedRid": { "field": "containedRid", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17958,6 +19264,7 @@ "sameRid": { "field": "sameRid", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "BooleanType", "arity": 2, "argTypes": [ @@ -17970,6 +19277,7 @@ "overlapsRid": { "field": "overlapsRid", "class": "NpointUDFs", + "pkg": "org.mobilitydb.spark.npoint", "retDataType": "BooleanType", "arity": 2, "argTypes": [ diff --git a/codegen/output/MobilitySparkConnectExtensionsGen.scala b/codegen/output/MobilitySparkConnectExtensionsGen.scala new file mode 100644 index 00000000..94979aed --- /dev/null +++ b/codegen/output/MobilitySparkConnectExtensionsGen.scala @@ -0,0 +1,280 @@ +/* GENERATED by codegen/tools/generate_spark_registrar.py from the canonical + * named-operation surface (meos-named-surface.json) joined with the MobilitySpark + * impl scan (spark-impls.json). Do not edit by hand. Each canonical function is + * injected under its identity name; the camelCase remap and the hand-written + * registrar are retired. Single-impl functions only; multi-impl functions need + * the per-row WKB-type-tag dispatch (see the trailing comment). */ +package org.mobilitydb.spark.connect + +import org.apache.spark.sql.SparkSessionExtensions +import org.apache.spark.sql.catalyst.FunctionIdentifier +import org.apache.spark.sql.catalyst.expressions.{Expression, ExpressionInfo, ScalaUDF} +import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder +import org.apache.spark.sql.types._ +import org.apache.spark.sql.api.java.{UDF1, UDF2, UDF3, UDF4} + +class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) { + private lazy val encs: Map[String, ExpressionEncoder[_]] = Map( + "String" -> ExpressionEncoder[String](), "Integer" -> ExpressionEncoder[java.lang.Integer](), + "Long" -> ExpressionEncoder[java.lang.Long](), "Double" -> ExpressionEncoder[java.lang.Double](), + "Number" -> ExpressionEncoder[java.lang.Double](), "Float" -> ExpressionEncoder[java.lang.Float](), + "Boolean" -> ExpressionEncoder[java.lang.Boolean](), "Timestamp" -> ExpressionEncoder[java.sql.Timestamp]()) + private def enc(t: String) = encs.getOrElse(t, encs("String")) + private def dt(t: String): DataType = t match { + case "Integer" => IntegerType; case "Long" => LongType; case "Double" | "Number" => DoubleType + case "Float" => FloatType; case "Boolean" => BooleanType; case "Timestamp" => TimestampType + case _ => StringType + } + private def inj(ext: SparkSessionExtensions, name: String, arity: Int, + argTs: Array[String], retT: String, udf: AnyRef): Unit = { + val builder = (children: Seq[Expression]) => { + val n = math.min(children.size, arity) + ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity), dt(retT), children, + argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + } + try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) + catch { case _: Throwable => } + } + + def apply(ext: SparkSessionExtensions): Unit = { + inj(ext, "Ymax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmax) + inj(ext, "Ymin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmin) + inj(ext, "Zmax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmax) + inj(ext, "Zmin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmin) + inj(ext, "aDisjoint", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.aDisjoint) + inj(ext, "appendInstant", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendInstant) + inj(ext, "appendSequence", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendSequence) + inj(ext, "asMFJSON", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.TemporalUDFs.temporalAsMfjson) + inj(ext, "azimuth", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointAzimuth) + inj(ext, "bigintspan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.bigintSpan) + inj(ext, "convexHull", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointConvexHull) + inj(ext, "dateN", 2, Array[String]("String", "Integer"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dateN) + inj(ext, "dates", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dates) + inj(ext, "dateset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tstzsetToDateset) + inj(ext, "direction", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointDirection) + inj(ext, "eCovers", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eCovers) + inj(ext, "eIntersects", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eIntersectsTgeoTgeo) + inj(ext, "eTouches", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eTouches) + inj(ext, "endDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.endDate) + inj(ext, "endInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endInstant) + inj(ext, "endSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endSequence) + inj(ext, "expandTime", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandTime) + inj(ext, "floatset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.intsetToFloatset) + inj(ext, "frechetDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.temporal.SimilarityUDFs.frechetDistance) + inj(ext, "geometry", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.STBoxUDFs.stboxToGeo) + inj(ext, "getX", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getX) + inj(ext, "getY", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getY) + inj(ext, "getZ", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getZ) + inj(ext, "initcap", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.textsetInitcap) + inj(ext, "insert", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.insert) + inj(ext, "instantN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.instantN) + inj(ext, "interp", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.interp) + inj(ext, "intset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatsetToIntset) + inj(ext, "intspan", 3, Array[String]("String", "Double", "Double"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.atElevation) + inj(ext, "lowerInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.lowerInc) + inj(ext, "maxInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.maxInstant) + inj(ext, "merge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.merge) + inj(ext, "minInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.minInstant) + inj(ext, "minusMax", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMax) + inj(ext, "minusMin", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMin) + inj(ext, "nearestApproachDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.geo.GeoUDFs.nearestApproachDistance) + inj(ext, "numDates", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.numDates) + inj(ext, "numInstants", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.TemporalUDFs.numInstants) + inj(ext, "numSequences", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorUDFs.numSequences) + inj(ext, "sequenceN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.sequenceN) + inj(ext, "setInterp", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSetInterp) + inj(ext, "set_contains", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setContains) + inj(ext, "set_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setIntersection) + inj(ext, "set_minus", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setMinus) + inj(ext, "set_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setOverlaps) + inj(ext, "set_union", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setUnion) + inj(ext, "shortestLine", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.DistanceUDFs.shortestLineTgeoTgeo) + inj(ext, "span_adjacent", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanAdjacent) + inj(ext, "span_left", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanLeft) + inj(ext, "span_overleft", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverleft) + inj(ext, "span_overright", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverright) + inj(ext, "span_right", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanRight) + inj(ext, "startDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.startDate) + inj(ext, "startInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startInstant) + inj(ext, "startSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startSequence) + inj(ext, "stbox_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.stboxIntersection) + inj(ext, "stbox_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.stboxOverlaps) + inj(ext, "tCovers", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.TempSpatialRelsUDFs.tCoversTgeoGeo) + inj(ext, "tbox_in", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.ConstructorUDFs.tbox) + inj(ext, "temporal_after", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalAfterSpan) + inj(ext, "temporal_before", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalBeforeSpan) + inj(ext, "temporal_overafter", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverafterSpan) + inj(ext, "temporal_overbefore", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverbeforeSpan) + inj(ext, "temporal_teq", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.teqTemporalTemporal) + inj(ext, "temporal_tge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgeTemporalTemporal) + inj(ext, "temporal_tgt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgtTemporalTemporal) + inj(ext, "temporal_tle", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tleTemporalTemporal) + inj(ext, "temporal_tlt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tltTemporalTemporal) + inj(ext, "temporal_tne", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tneTemporalTemporal) + inj(ext, "tfloat", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tintToTfloat) + inj(ext, "timestampN", 2, Array[String]("String", "Integer"), "Timestamp", org.mobilitydb.spark.temporal.MoreAccessorUDFs.timestampN) + inj(ext, "tintInst", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalToTInstant) + inj(ext, "twCentroid", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.twCentroid) + inj(ext, "update", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.update) + inj(ext, "upperInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.upperInc) + inj(ext, "volume", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxVolume) + } + // multi-impl (need per-row meos_typeof_hexwkb dispatch, v2): + // SRID -> ['aDwithinGeo', 'aIntersects', 'eContains', 'eCovers', 'eDisjoint', 'eDwithinGeo', 'eIntersects', 'eTouches', 'stboxSrid', 'tpointSRID', 'tpointSrid'] + // Tmax -> ['stboxTmax', 'tboxTmax'] + // Tmin -> ['stboxTmin', 'tboxTmin'] + // Xmax -> ['stboxXmax', 'tboxXmax', 'tboxfloatXmax', 'tboxintXmax'] + // Xmin -> ['stboxXmin', 'tboxXmin', 'tboxfloatXmin', 'tboxintXmin'] + // aDwithin -> ['aDwithin', 'aDwithinGeo'] + // aIntersects -> ['aIntersects', 'eIntersects'] + // abs -> ['abs', 'tnumberAbs'] + // always_eq -> ['alwaysEqBoolTbool', 'alwaysEqFloatTfloat', 'alwaysEqIntTint', 'alwaysEqTboolBool', 'alwaysEqTemporal', 'alwaysEqTfloatFloat', 'alwaysEqTintInt'] + // always_ge -> ['alwaysGeFloatTfloat', 'alwaysGeIntTint', 'alwaysGeTemporal', 'alwaysGeTfloatFloat', 'alwaysGeTintInt'] + // always_gt -> ['alwaysGtFloatTfloat', 'alwaysGtIntTint', 'alwaysGtTemporal', 'alwaysGtTfloatFloat', 'alwaysGtTintInt'] + // always_le -> ['alwaysLeFloatTfloat', 'alwaysLeIntTint', 'alwaysLeTemporal', 'alwaysLeTfloatFloat', 'alwaysLeTintInt'] + // always_lt -> ['alwaysLtFloatTfloat', 'alwaysLtIntTint', 'alwaysLtTemporal', 'alwaysLtTfloatFloat', 'alwaysLtTintInt'] + // always_ne -> ['alwaysNeBoolTbool', 'alwaysNeFloatTfloat', 'alwaysNeIntTint', 'alwaysNeTboolBool', 'alwaysNeTemporal', 'alwaysNeTfloatFloat', 'alwaysNeTintInt'] + // angularDifference -> ['tnumberAngularDifference', 'tpointAngularDifference'] + // area -> ['stboxArea', 'stboxPerimeter'] + // asEWKT -> ['asEWKT', 'tpointAsEWKT'] + // asHexWKB -> ['afterTimestamp', 'appendInstant', 'appendSequence', 'asHexEWKB', 'asHexWKB', 'atElevation', 'atGeometry', 'atMax', 'atMin', 'atSpan', 'atSpanset', 'atStbox', 'atTbox', 'atTime', 'atValue', 'atValues', 'bearing', 'bearingToPoint', 'beforeTimestamp', 'bigintset', 'bigintspanExpand', 'cbuffersetFromBinary', 'cbuffersetFromHexWKB', 'cumulativeLength', 'dates', 'dateset', 'datespan', 'datespanToTstzspan', 'datespanset', 'deleteTime', 'douglasPeuckerSimplify', 'endInstant', 'endSequence', 'expand', 'expandSpace', 'expandValue', 'floatToSet', 'floatToSpan', 'floatToSpanset', 'floatToTbox', 'floatset', 'floatsetCeil', 'floatsetDegrees', 'floatsetFloor', 'floatsetRadians', 'floatsetToIntset', 'floatspan', 'floatspanExpand', 'floatspanShiftScale', 'floatspanToIntspan', 'floatspanset', 'floatspansetCeil', 'floatspansetFloor', 'floatspansetRound', 'floatspansetShiftScale', 'floatspansetToInt', 'geoTimeStbox', 'geography', 'geometry', 'getSpace', 'getSpaceTile', 'getSpaceTimeTile', 'getStboxTimeTile', 'getTBoxTimeTile', 'getTime', 'getTimeTile', 'getValueTile', 'getX', 'getY', 'getZ', 'insert', 'instantN', 'intToSet', 'intToSpan', 'intToSpanset', 'intToTbox', 'intset', 'intsetToFloatset', 'intspan', 'intspanExpand', 'intspanShiftScale', 'intspanToFloatspan', 'intspanset', 'intspansetShiftScale', 'intspansetToFloat', 'maxDistSimplify', 'maxInstant', 'merge', 'minDistSimplify', 'minDistance', 'minDistanceTgeoarrTgeoarr', 'minInstant', 'minTimeDeltaSimplify', 'minusMax', 'minusMin', 'minusStbox', 'minusTbox', 'minusTime', 'minusValue', 'minusValues', 'naiTgeoGeo', 'naiTgeoTgeo', 'nearestApproachInstant', 'npointsetFromBinary', 'npointsetFromHexWKB', 'npointsetFromText', 'numspanTimestamptzToTbox', 'points', 'posesetFromBinary', 'posesetFromHexWKB', 'posesetFromText', 'routes', 'scale', 'sequenceN', 'setIntersection', 'setMinus', 'setSRID', 'setToSpan', 'setToSpanset', 'setToTbox', 'setUnion', 'shift', 'shiftScale', 'span', 'spanIntersection', 'spanMinus', 'spanToSpanset', 'spanToTbox', 'spanUnion', 'spanset', 'spansetEndSpan', 'spansetIntersection', 'spansetIntersectionSpan', 'spansetMinus', 'spansetMinusSpan', 'spansetSpanN', 'spansetStartSpan', 'spansetToTbox', 'spansetUnion', 'spansetUnionSpan', 'speed', 'startInstant', 'startSequence', 'stbox', 'stboxAdjacent', 'stboxFromBinary', 'stboxFromHexWKB', 'stboxToTstzspan', 'stops', 'tContains', 'tCovers', 'tDwithin', 'tbool', 'tboolAtValue', 'tboolFromBaseTemp', 'tboolFromMfjson', 'tboolInst', 'tboolMinusValue', 'tboolWhenTrue', 'tbox', 'tboxExpandFloat', 'tboxExpandInt', 'tboxExpandTime', 'tboxFromBinary', 'tboxFromHexWKB', 'tboxMake', 'tboxRound', 'tboxShiftScaleTime', 'tboxToFloatspan', 'tboxToIntspan', 'tboxToTstzspan', 'tcbuffer', 'tcbufferFromText', 'tcbufferInst', 'tcbufferRadius', 'tcbufferSeq', 'tcbufferSeqSet', 'tcbufferSeqSetGaps', 'tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber', 'temporalAtMax', 'temporalAtMin', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset', 'temporalAtValues', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset', 'temporalMinusValues', 'temporalScaleTime', 'temporalSetInterp', 'temporalShiftScaleTime', 'temporalShiftTime', 'temporalSimplifyDp', 'temporalSimplifyMaxDist', 'temporalSimplifyMinDist', 'temporalSimplifyMinTdelta', 'temporalTPrecision', 'temporalTSample', 'temporalToTInstant', 'temporalToTSequence', 'temporalToTSequenceSet', 'teqTemporalTemporal', 'textset', 'textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText', 'textsetInitcap', 'textsetLower', 'textsetUpper', 'tfloat', 'tfloatAtValue', 'tfloatCeil', 'tfloatDegrees', 'tfloatDerivative', 'tfloatFloor', 'tfloatFromBaseTemp', 'tfloatFromMfjson', 'tfloatInst', 'tfloatMinusValue', 'tfloatRadians', 'tfloatRound', 'tfloatScaleValue', 'tfloatShiftScaleValue', 'tfloatShiftValue', 'tfloatToTint', 'tgeTemporalTemporal', 'tgeoAtGeom', 'tgeoAtStbox', 'tgeoMinusGeom', 'tgeoMinusStbox', 'tgeogpoint', 'tgeogpointFromMfjson', 'tgeography', 'tgeographyFromEWKT', 'tgeometry', 'tgeometryInst', 'tgeompoint', 'tgeompointFromMfjson', 'tgeompointInst', 'tgtTemporalTemporal', 'th3IndexInstFromText', 'th3IndexInstMake', 'th3IndexSeqFromText', 'th3IndexSeqMake', 'th3IndexSeqSetFromText', 'th3IndexSeqSetMake', 'time', 'timespan', 'timestamptzToSet', 'timestamptzToSpan', 'timestamptzToTbox', 'tint', 'tintAtValue', 'tintFromBaseTemp', 'tintFromMfjson', 'tintInst', 'tintMinusValue', 'tintScaleValue', 'tintShiftScaleValue', 'tintShiftValue', 'tintToTfloat', 'tleTemporalTemporal', 'tltTemporalTemporal', 'tneTemporalTemporal', 'tnpoint', 'tnpointRoute', 'tnpointSeq', 'tnpointSeqSet', 'tnpointSeqSetGaps', 'tnumberAtSpan', 'tnumberAtSpanset', 'tnumberAtTbox', 'tnumberMinusSpan', 'tnumberMinusSpanset', 'tnumberMinusTbox', 'tnumberToSpan', 'tnumberToTbox', 'tnumberTrend', 'tnumberValuespans', 'tpointAtElevation', 'tpointAtValue', 'tpointAzimuth', 'tpointCumulativeLength', 'tpointDirection', 'tpointExpandSpace', 'tpointFromBaseTemp', 'tpointMinusElevation', 'tpointMinusValue', 'tpointRound', 'tpointSetSRID', 'tpointSetSrid', 'tpointSpeed', 'tpointToStbox', 'tpointTransform', 'tpose', 'tposeFromMFJSON', 'tposeFromText', 'tposeInst', 'tposePoints', 'tposeRotation', 'tposeSeq', 'tposeSeqSet', 'tposeSeqSetGaps', 'tprecision', 'transform', 'trgeometry', 'trgeometryFromMFJSON', 'trgeometrySeq', 'trgeometrySeqSet', 'trgeometrySeqSetGaps', 'tsample', 'tstzset', 'tstzspan', 'tstzspanShiftScale', 'tstzspanToDatespan', 'tstzspanset', 'tstzspansetShiftScale', 'ttext', 'ttextAtValue', 'ttextCat', 'ttextCatTextTtext', 'ttextCatTtextText', 'ttextCatTtextTtext', 'ttextFromBaseTemp', 'ttextFromMfjson', 'ttextInitcap', 'ttextInst', 'ttextLower', 'ttextMinusValue', 'ttextUpper', 'ttextValueAtTimestamptz', 'update', 'valueSet', 'valueSpan'] + // asText -> ['asText', 'tpointAsText'] + // atGeometry -> ['atElevation', 'atGeometry', 'tgeoAtGeom', 'tpointAtElevation'] + // atMax -> ['atMax', 'temporalAtMax'] + // atMin -> ['atMin', 'temporalAtMin'] + // atStbox -> ['atStbox', 'tgeoAtStbox'] + // atTbox -> ['atTbox', 'tnumberAtTbox'] + // atTime -> ['atSpan', 'atSpanset', 'atTime', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset'] + // atValue -> ['atValue', 'tboolAtValue', 'tfloatAtValue', 'tintAtValue', 'tpointAtValue', 'ttextAtValue'] + // atValues -> ['atValues', 'temporalAtValues'] + // bearing -> ['bearing', 'bearingToPoint'] + // ceil -> ['ceil', 'floatsetCeil', 'floatspansetCeil', 'tfloatCeil'] + // cumulativeLength -> ['cumulativeLength', 'tpointCumulativeLength'] + // degrees -> ['degrees', 'floatsetDegrees', 'tfloatDegrees'] + // deleteTime -> ['deleteTime', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset'] + // deltaValue -> ['deltavalue', 'tnumberDeltaValue'] + // derivative -> ['derivative', 'tfloatDerivative'] + // douglasPeuckerSimplify -> ['douglasPeuckerSimplify', 'temporalSimplifyDp'] + // duration -> ['datespanDuration', 'duration', 'tstzspanDuration', 'tstzspansetDuration'] + // dynTimeWarpDistance -> ['dynTimeWarpDistance', 'dynamicTimeWarp'] + // eContains -> ['eContains', 'geomContains'] + // eDisjoint -> ['eDisjoint', 'eDisjointTgeoTgeo'] + // eDwithin -> ['eDwithin', 'eDwithinGeo'] + // endSpan -> ['endSpan', 'floatspansetUpper', 'spansetEndSpan'] + // endTimestamp -> ['endTimestamp', 'tstzspansetEndTimestamptz'] + // endValue -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'tboolEndValue', 'textsetEndValue', 'tfloatEndValue', 'tintEndValue', 'tpointEndValue', 'tstzsetEndValue', 'ttextEndValue'] + // ever_eq -> ['everEqBoolTbool', 'everEqFloatTfloat', 'everEqIntTint', 'everEqTboolBool', 'everEqTemporal', 'everEqTfloatFloat', 'everEqTintInt'] + // ever_ge -> ['everGeFloatTfloat', 'everGeIntTint', 'everGeTemporal', 'everGeTfloatFloat', 'everGeTintInt'] + // ever_gt -> ['everGtFloatTfloat', 'everGtIntTint', 'everGtTemporal', 'everGtTfloatFloat', 'everGtTintInt'] + // ever_le -> ['everLeFloatTfloat', 'everLeIntTint', 'everLeTemporal', 'everLeTfloatFloat', 'everLeTintInt'] + // ever_lt -> ['everLtFloatTfloat', 'everLtIntTint', 'everLtTemporal', 'everLtTfloatFloat', 'everLtTintInt'] + // ever_ne -> ['everNeBoolTbool', 'everNeFloatTfloat', 'everNeIntTint', 'everNeTboolBool', 'everNeTemporal', 'everNeTfloatFloat', 'everNeTintInt'] + // expandSpace -> ['expandSpace', 'stboxExpandSpace', 'tpointExpandSpace'] + // floatspan -> ['tboxToFloatspan', 'tboxToIntspan'] + // floatspanset -> ['floatspanset', 'intspansetToFloat'] + // floor -> ['floatsetFloor', 'floatspansetFloor', 'floor', 'tfloatFloor'] + // getSpace -> ['getSpace', 'stboxGetSpace'] + // getTime -> ['getTime', 'time'] + // getValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'textsetEndValue', 'tnumberValuespans', 'tstzsetEndValue', 'ttextValueAtTimestamptz'] + // hasT -> ['stboxHast', 'tboxHast'] + // hasX -> ['stboxHasx', 'tboxHasx'] + // hasZ -> ['getZ', 'stboxHasz'] + // intsetFromHexWKB -> ['asHexEWKB', 'atValues', 'cbuffersetFromBinary', 'cbuffersetFromHexWKB', 'dateset', 'datesetEndValue', 'datesetStartValue', 'distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'everIntersectsH3IndexSetTh3Index', 'floatsetCeil', 'floatsetDegrees', 'floatsetEndValue', 'floatsetFloor', 'floatsetRadians', 'floatsetStartValue', 'floatsetToIntset', 'h3CompactCells', 'h3UncompactCells', 'intsetEndValue', 'intsetStartValue', 'intsetToFloatset', 'minusValues', 'npointsetFromBinary', 'npointsetFromHexWKB', 'posesetFromBinary', 'posesetFromHexWKB', 'routes', 'setDistance', 'setNumValues', 'setToSpan', 'setToSpanset', 'setToTbox', 'set_distance', 'temporalAtTstzset', 'temporalAtValues', 'temporalDeleteTstzset', 'temporalMinusTstzset', 'temporalMinusValues', 'textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText', 'textsetEndValue', 'textsetInitcap', 'textsetLower', 'textsetStartValue', 'textsetUpper', 'tnpointSeqSetGaps', 'tstzsetEndValue', 'tstzsetStartValue'] + // intset_in -> ['asHexEWKB', 'bigintset', 'floatset', 'intset', 'textset', 'tstzset'] + // intspanFromHexWKB -> ['atSpan', 'bigintspanLower', 'bigintspanUpper', 'bigintspanWidth', 'datespanLower', 'datespanUpper', 'floatspanLower', 'floatspanShiftScale', 'floatspanUpper', 'floatspanWidth', 'intspanLower', 'intspanShiftScale', 'intspanUpper', 'intspanWidth', 'minusTime', 'numspanTimestamptzToTbox', 'shiftScale', 'spanLowerInc', 'spanToSpanset', 'spanToTbox', 'spanUpperInc', 'span_distance', 'span_intersection', 'span_minus', 'span_union', 'spanset', 'stboxAdjacent', 'tboxMake', 'temporalAtTstzspan', 'temporalDeleteTstzspan', 'temporalMinusTstzspan', 'time_distance', 'tnumberAtSpan', 'tnumberMinusSpan', 'tpointAtElevation', 'tpointMinusElevation', 'tstzspanLower', 'tstzspanToStbox', 'tstzspanUpper', 'width'] + // intspanset -> ['floatToSpanset', 'floatspansetToInt', 'intToSpanset', 'intspanset', 'setToSpanset'] + // intspansetFromHexWKB -> ['atSpanset', 'bigintspansetWidth', 'dateN', 'dates', 'endDate', 'endSpan', 'floatspanset', 'floatspansetCeil', 'floatspansetFloor', 'floatspansetLower', 'floatspansetRound', 'floatspansetShiftScale', 'floatspansetToInt', 'floatspansetUpper', 'floatspansetWidth', 'intspanset', 'intspansetLower', 'intspansetShiftScale', 'intspansetToFloat', 'intspansetUpper', 'intspansetWidth', 'numDates', 'numSpans', 'spann', 'spansetEndSpan', 'spansetLowerInc', 'spansetNumSpans', 'spansetSpanN', 'spansetStartSpan', 'spansetToTbox', 'spansetUpperInc', 'spanset_distance', 'spanset_intersection', 'spanset_minus', 'spanset_union', 'startDate', 'startSpan', 'temporalAtTstzspanset', 'temporalDeleteTstzspanset', 'temporalMinusTstzspanset', 'time_distance_spanset', 'tnumberAtSpanset', 'tnumberMinusSpanset', 'tstzspansetDuration', 'tstzspansetEndTimestamptz', 'tstzspansetLower', 'tstzspansetNumTimestamps', 'tstzspansetStartTimestamptz', 'tstzspansetUpper'] + // isGeodetic -> ['eIntersects', 'stboxIsGeodetic'] + // length -> ['length', 'speed', 'tpointLength', 'tpointSpeed'] + // ln -> ['exp', 'ln', 'log10', 'tfloatExp', 'tfloatLn', 'tfloatLog10'] + // lower -> ['bigintspanLower', 'datespanLower', 'floatspanLower', 'floatspansetLower', 'intspanLower', 'intspansetLower', 'textsetLower', 'tstzspanLower', 'tstzspansetLower', 'ttextInitcap', 'ttextLower'] + // maxValue -> ['tfloatMaxValue', 'tintMaxValue', 'ttextMaxValue'] + // minDistSimplify -> ['minDistSimplify', 'temporalSimplifyMinDist'] + // minDistance -> ['minDistance', 'minDistanceTgeoarrTgeoarr'] + // minTimeDeltaSimplify -> ['minTimeDeltaSimplify', 'temporalSimplifyMinTdelta'] + // minValue -> ['tfloatMinValue', 'tintMinValue', 'ttextMinValue'] + // minusGeometry -> ['tgeoMinusGeom', 'tpointMinusElevation'] + // minusStbox -> ['minusStbox', 'tgeoMinusStbox'] + // minusTbox -> ['minusTbox', 'tnumberMinusTbox'] + // minusTime -> ['minusTime', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset'] + // minusValue -> ['minusValue', 'tboolMinusValue', 'tfloatMinusValue', 'tintMinusValue', 'tpointMinusValue', 'ttextMinusValue'] + // minusValues -> ['minusValues', 'temporalMinusValues'] + // numSpans -> ['numSpans', 'spansetNumSpans'] + // numTimestamps -> ['numTimestamps', 'tstzspansetNumTimestamps'] + // numValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'setNumValues', 'textsetEndValue', 'tstzsetEndValue'] + // radians -> ['floatsetRadians', 'radians', 'tfloatRadians'] + // round -> ['floatspansetRound', 'stboxRound', 'tboxRound'] + // scaleTime -> ['scale', 'temporalScaleTime'] + // scaleValue -> ['tfloatScaleValue', 'tintScaleValue'] + // set -> ['floatToSet', 'intToSet', 'timestamptzToSet'] + // setSRID -> ['setSRID', 'stboxSetSrid', 'tpointSetSRID', 'tpointSetSrid'] + // set_distance -> ['distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'setDistance', 'set_distance'] + // shift -> ['floatspanShiftScale', 'floatspansetShiftScale', 'intspanShiftScale', 'intspansetShiftScale', 'shiftScale', 'tstzspanShiftScale', 'tstzspansetShiftScale'] + // shiftScaleValue -> ['tfloatShiftScaleValue', 'tintShiftScaleValue'] + // shiftTime -> ['shift', 'stboxShiftScaleTime', 'tboxShiftScaleTime', 'temporalShiftScaleTime', 'temporalShiftTime'] + // shiftValue -> ['tfloatShiftValue', 'tintShiftValue'] + // span -> ['floatToSpan', 'intToSpan', 'setToSpan', 'spanToSpanset', 'spanset', 'timestamptzToSpan'] + // spanN -> ['spann', 'spansetSpanN'] + // span_contained -> ['spanContainedIn', 'spanContainedInSpanset'] + // span_contains -> ['spanContains', 'spansetContainsSpan'] + // span_distance -> ['bigintspanDistance', 'datespanDistance', 'floatspanDistance', 'intspanDistance', 'spanDistance', 'span_distance', 'spanset_distance', 'timeDistance', 'time_distance', 'time_distance_spanset', 'tstzspanDistance'] + // span_intersection -> ['spanIntersection', 'span_intersection', 'spansetIntersection', 'spansetIntersectionSpan', 'spanset_intersection'] + // span_minus -> ['spansetMinus', 'spansetMinusSpan', 'spanset_minus'] + // span_overlaps -> ['spanOverlaps', 'spansetOverlaps'] + // span_union -> ['spansetUnion', 'spansetUnionSpan', 'spanset_union'] + // startSpan -> ['floatspansetLower', 'spansetStartSpan', 'startSpan'] + // startTimestamp -> ['getTimestamp', 'startTimestamp', 'tstzspansetStartTimestamptz'] + // startValue -> ['datesetStartValue', 'floatsetStartValue', 'getValue', 'intsetStartValue', 'startValue', 'tboolGetValue', 'tboolStartValue', 'textsetStartValue', 'tfloatGetValue', 'tfloatStartValue', 'tintGetValue', 'tintStartValue', 'tpointGetValue', 'tpointStartValue', 'tstzsetStartValue', 'ttextGetValue', 'ttextStartValue'] + // stbox -> ['aDwithinGeo', 'aIntersects', 'eContains', 'eCovers', 'eDisjoint', 'eDwithinGeo', 'eIntersects', 'eTouches', 'expandSpace', 'geoToStbox', 'getZ', 'timestamptzToStbox', 'tpointExpandSpace', 'tpointSRID', 'tpointToStbox', 'tstzspanToStbox'] + // stboxFromHexWKB -> ['atStbox', 'bboxOverlaps', 'box2d', 'box3d', 'expandSpace', 'getSpace', 'getTBoxTimeTile', 'minusStbox', 'nadTgeoStbox', 'stboxFromBinary', 'stboxFromHexWKB', 'stboxOverlaps', 'stbox_intersection', 'stbox_union', 'tgeoAtStbox', 'tgeoMinusStbox', 'tpointExpandSpace'] + // stbox_union -> ['stboxUnion', 'stbox_union', 'unionStboxStbox'] + // tContains -> ['tContains', 'tContainsTgeoGeo'] + // tDisjoint -> ['tDisjoint', 'tDisjointTgeoTgeo'] + // tDistance -> ['tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber'] + // tDwithin -> ['tDwithin', 'tDwithinTgeoGeo'] + // tIntersects -> ['tIntersects', 'tIntersectsTgeoTgeo'] + // tTouches -> ['tTouches', 'tTouchesTogeoTgeo'] + // tbox -> ['floatToTbox', 'intToTbox', 'numspanTimestamptzToTbox', 'setToTbox', 'spanToTbox', 'spansetToTbox', 'timestamptzToTbox', 'tnumberToTbox'] + // tboxFromHexWKB -> ['atTbox', 'bigintSpan', 'minusTbox', 'tboxFromBinary', 'tboxFromHexWKB', 'tbox_intersection', 'tbox_union', 'tnumberAtTbox', 'tnumberMinusTbox'] + // tempSubtype -> ['tempSubtype', 'temporalSubtype'] + // textset_cat -> ['textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText'] + // timeSpan -> ['span', 'stboxToTstzspan', 'tboxToTstzspan', 'timespan'] + // timestamps -> ['atValue', 'tstzspansetNumTimestamps', 'ttextValueAtTimestamptz'] + // tint -> ['geomContains', 'geomToH3Cell', 'tboolInst', 'tcbufferInst', 'tfloatInst', 'tfloatToTint', 'tgeompointInst', 'tintInst', 'tposeInst', 'ttextInst'] + // tintFromHexWKB -> ['aDisjoint', 'aDwithin', 'aDwithinGeo', 'aIntersects', 'abs', 'addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'afterTimestamp', 'alwaysNeTh3IndexH3Index', 'alwaysNeTh3IndexTh3Index', 'appendInstant', 'appendSequence', 'asEWKT', 'asHexEWKB', 'asHexWKB', 'asText', 'atElevation', 'atGeometry', 'atMax', 'atMin', 'atSpan', 'atSpanset', 'atStbox', 'atTbox', 'atTime', 'atValue', 'atValues', 'avgValue', 'bboxOverlaps', 'bearing', 'bearingToPoint', 'beforeTimestamp', 'ceil', 'cumulativeLength', 'degrees', 'deleteTime', 'deltavalue', 'derivative', 'divTfloatFloat', 'divTintInt', 'divTnumberTnumber', 'douglasPeuckerSimplify', 'duration', 'dynTimeWarpDistance', 'dynamicTimeWarp', 'eContains', 'eCovers', 'eDisjoint', 'eDisjointTgeoTgeo', 'eDwithin', 'eDwithinGeo', 'eIntersects', 'eIntersectsTgeoTgeo', 'eTouches', 'endInstant', 'endSequence', 'endTimestamp', 'endValue', 'everIntersectsH3IndexSetTh3Index', 'everNeBoolTbool', 'exp', 'expandSpace', 'floor', 'frechetDistance', 'geography', 'geometry', 'getTBoxTimeTile', 'getTime', 'getTimestamp', 'getValue', 'getX', 'getY', 'getZ', 'hausdorffDistance', 'insert', 'instantN', 'integral', 'interp', 'isSimple', 'length', 'ln', 'log10', 'lowerInc', 'maxDistSimplify', 'maxInstant', 'memSize', 'merge', 'minDistSimplify', 'minDistance', 'minDistanceTgeoGeo', 'minDistanceTgeoTgeo', 'minDistanceTgeoarrTgeoarr', 'minInstant', 'minTimeDeltaSimplify', 'minusMax', 'minusMin', 'minusStbox', 'minusTbox', 'minusTime', 'minusValue', 'minusValues', 'multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'nadTgeoGeo', 'nadTgeoStbox', 'nadTgeoTgeo', 'naiTgeoGeo', 'naiTgeoTgeo', 'nearestApproachDistance', 'nearestApproachInstant', 'numInstants', 'numSequences', 'numTimestamps', 'points', 'radians', 'routes', 'scale', 'sequenceN', 'setSRID', 'shift', 'shortestLine', 'shortestLineTgeoGeo', 'shortestLineTgeoTgeo', 'span', 'speed', 'startInstant', 'startSequence', 'startTimestamp', 'startValue', 'stops', 'subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tContains', 'tContainsTgeoGeo', 'tContainsTgeoTgeo', 'tCovers', 'tCoversTgeoGeo', 'tDisjoint', 'tDisjointTgeoTgeo', 'tDwithin', 'tDwithinTgeoGeo', 'tIntersects', 'tIntersectsTgeoTgeo', 'tTouches', 'tTouchesTogeoTgeo', 'tandBool', 'tandBoolTbool', 'tandTboolTbool', 'tbigintToTh3Index', 'tboolAnd', 'tboolAtValue', 'tboolEndValue', 'tboolFromBaseTemp', 'tboolGetValue', 'tboolMinusValue', 'tboolNot', 'tboolOr', 'tboolOut', 'tboolStartValue', 'tboolValueAtTimestamptz', 'tboolValueN', 'tboolWhenTrue', 'tcbuffer', 'tcbufferInst', 'tcbufferRadius', 'tcbufferSeq', 'tcbufferSeqSet', 'tcbufferSeqSetGaps', 'tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber', 'tempSubtype', 'temporalAsMfjson', 'temporalAtMax', 'temporalAtMin', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset', 'temporalAtValues', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset', 'temporalMinusValues', 'temporalScaleTime', 'temporalSetInterp', 'temporalShiftScaleTime', 'temporalShiftTime', 'temporalSimplifyDp', 'temporalSimplifyMaxDist', 'temporalSimplifyMinDist', 'temporalSimplifyMinTdelta', 'temporalSubtype', 'temporalTPrecision', 'temporalTSample', 'temporalToTInstant', 'temporalToTSequence', 'temporalToTSequenceSet', 'teqH3IndexTh3Index', 'teqTemporalTemporal', 'teqTh3IndexH3Index', 'teqTh3IndexTh3Index', 'tfloatAtValue', 'tfloatCeil', 'tfloatDegrees', 'tfloatDerivative', 'tfloatEndValue', 'tfloatExp', 'tfloatFloor', 'tfloatFromBaseTemp', 'tfloatGetValue', 'tfloatLn', 'tfloatLog10', 'tfloatMaxValue', 'tfloatMinValue', 'tfloatMinusValue', 'tfloatOut', 'tfloatRadians', 'tfloatRound', 'tfloatScaleValue', 'tfloatShiftScaleValue', 'tfloatShiftValue', 'tfloatStartValue', 'tfloatToTint', 'tfloatValueAtTimestamptz', 'tfloatValueN', 'tgeTemporalTemporal', 'tgeoAtGeom', 'tgeoAtStbox', 'tgeoMinusGeom', 'tgeoMinusStbox', 'tgeoTraversedArea', 'tgeogpointGreatCircleDistance', 'tgeogpointToTh3Index', 'tgeography', 'tgeographyFromEWKT', 'tgeometry', 'tgeompointToTh3Index', 'tgtTemporalTemporal', 'th3IndexAreNeighborCells', 'th3IndexCellArea', 'th3IndexCellToCenterChild', 'th3IndexCellToChildPos', 'th3IndexCellToLocalIj', 'th3IndexCellToParent', 'th3IndexCellToVertex', 'th3IndexCellsToDirectedEdge', 'th3IndexChildPosToCell', 'th3IndexEdgeLength', 'th3IndexEndValue', 'th3IndexGridDistance', 'th3IndexIsPentagon', 'th3IndexLocalIjToCell', 'th3IndexSeqSetMake', 'th3IndexStartValue', 'th3IndexToTbigint', 'th3IndexValueAtTimestamp', 'th3IndexValueN', 'time', 'timespan', 'timestampN', 'tintAtValue', 'tintEndValue', 'tintFromBaseTemp', 'tintGetValue', 'tintMaxValue', 'tintMinValue', 'tintMinusValue', 'tintOut', 'tintScaleValue', 'tintShiftScaleValue', 'tintShiftValue', 'tintStartValue', 'tintToTfloat', 'tintValueAtTimestamptz', 'tintValueN', 'tleTemporalTemporal', 'tltTemporalTemporal', 'tneH3IndexTh3Index', 'tneTemporalTemporal', 'tneTh3IndexH3Index', 'tneTh3IndexTh3Index', 'tnotTbool', 'tnpointRoute', 'tnpointSeq', 'tnpointSeqSet', 'tnpointSeqSetGaps', 'tnumberAbs', 'tnumberAngularDifference', 'tnumberAtSpan', 'tnumberAtSpanset', 'tnumberAtTbox', 'tnumberDeltaValue', 'tnumberIntegral', 'tnumberMinusSpan', 'tnumberMinusSpanset', 'tnumberMinusTbox', 'tnumberToSpan', 'tnumberToTbox', 'tnumberTrend', 'tnumberTwavg', 'tnumberValuespans', 'tnumber_add', 'tnumber_div', 'tnumber_mul', 'tnumber_sub', 'torBool', 'torBoolTbool', 'torTboolTbool', 'tpointAngularDifference', 'tpointAsEWKT', 'tpointAsText', 'tpointAtElevation', 'tpointAtValue', 'tpointAzimuth', 'tpointConvexHull', 'tpointCumulativeLength', 'tpointDirection', 'tpointEndValue', 'tpointExpandSpace', 'tpointFromBaseTemp', 'tpointGetValue', 'tpointIsSimple', 'tpointLength', 'tpointMinusElevation', 'tpointMinusValue', 'tpointRound', 'tpointSRID', 'tpointSetSRID', 'tpointSetSrid', 'tpointSpeed', 'tpointSrid', 'tpointStartValue', 'tpointToStbox', 'tpointTrajectory', 'tpointTransform', 'tpointValueN', 'tpose', 'tposeInst', 'tposePoints', 'tposeRotation', 'tposeSeq', 'tposeSeqSet', 'tposeSeqSetGaps', 'tprecision', 'trajectory', 'transform', 'traversedArea', 'trend', 'trgeometry', 'trgeometrySeq', 'trgeometrySeqSet', 'trgeometrySeqSetGaps', 'tsample', 'ttextAtValue', 'ttextCat', 'ttextCatTextTtext', 'ttextCatTtextText', 'ttextCatTtextTtext', 'ttextEndValue', 'ttextFromBaseTemp', 'ttextGetValue', 'ttextInitcap', 'ttextInst', 'ttextLower', 'ttextMaxValue', 'ttextMinValue', 'ttextMinusValue', 'ttextOut', 'ttextStartValue', 'ttextUpper', 'ttextValueAtTimestamptz', 'ttextValueN', 'twCentroid', 'twavg', 'update', 'upperInc', 'valueAtTimestamp', 'valueN', 'valueSet', 'valueSpan', 'whenTrue'] + // tintSeq -> ['tcbufferSeq', 'temporalToTSequence', 'tnpointSeq', 'tposeSeq', 'trgeometrySeq', 'ttextInst'] + // tintSeqSet -> ['tcbufferSeqSet', 'temporalToTSequenceSet', 'tnpointSeqSet', 'tposeSeqSet', 'trgeometrySeqSet', 'ttextInst'] + // tintSeqSetGaps -> ['tcbufferSeqSetGaps', 'tnpointSeqSetGaps', 'tposeSeqSetGaps', 'trgeometrySeqSetGaps'] + // tnumber_add -> ['addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'tnumber_add'] + // tnumber_div -> ['divTfloatFloat', 'divTnumberTnumber', 'tnumber_div'] + // tnumber_mul -> ['multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'tnumber_mul'] + // tnumber_sub -> ['subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tnumber_sub'] + // trajectory -> ['tpointTrajectory', 'trajectory'] + // traversedArea -> ['tgeoTraversedArea', 'traversedArea'] + // trend -> ['tnumberTrend', 'trend'] + // twAvg -> ['tnumberTwavg', 'twavg'] + // upper -> ['bigintspanUpper', 'datespanUpper', 'floatspanUpper', 'floatspansetUpper', 'intspanUpper', 'intspansetUpper', 'textsetUpper', 'tstzspanUpper', 'tstzspansetUpper', 'ttextUpper'] + // valueAtTimestamp -> ['tboolValueAtTimestamptz', 'tfloatValueAtTimestamptz', 'tintValueAtTimestamptz', 'ttextValueAtTimestamptz', 'valueAtTimestamp'] + // valueN -> ['everNeBoolTbool', 'tboolValueN', 'tfloatValueN', 'tintValueN', 'tpointValueN', 'ttextFromBaseTemp', 'ttextInitcap', 'ttextValueN', 'valueN'] + // valueSpan -> ['tnumberToSpan', 'valueSpan'] + // whenTrue -> ['tboolWhenTrue', 'whenTrue'] + // width -> ['bigintspanWidth', 'bigintspansetWidth', 'floatspanWidth', 'floatspansetWidth', 'intspanWidth', 'intspansetWidth', 'width'] +} + +object MobilitySparkConnectExtensionsGen { + private def call(u: AnyRef, m: Int, a: Seq[Any]): Any = { + def g(i: Int): AnyRef = if (i < a.length) a(i).asInstanceOf[AnyRef] else null + m match { + case 1 => u.asInstanceOf[UDF1[Any, Any]].call(g(0)) + case 2 => u.asInstanceOf[UDF2[Any, Any, Any]].call(g(0), g(1)) + case 3 => u.asInstanceOf[UDF3[Any, Any, Any, Any]].call(g(0), g(1), g(2)) + case _ => u.asInstanceOf[UDF4[Any, Any, Any, Any, Any]].call(g(0), g(1), g(2), g(3)) + } + } + def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { + case 1 => (a: Any) => call(u, m, Seq(a)) + case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b)) + case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) + case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) + } +} diff --git a/codegen/tools/NAMED_SURFACE.md b/codegen/tools/NAMED_SURFACE.md index 0b573b7a..aabf7021 100644 --- a/codegen/tools/NAMED_SURFACE.md +++ b/codegen/tools/NAMED_SURFACE.md @@ -51,11 +51,23 @@ The join (1308 Spark impls) classifies each canonical function for the emitter: ## A2 — the emitter (consumes the two derived specs) -- **MobilitySpark Connect registrar:** for each canonical function, emit an - `injectFunction` under the **identity** name; single-impl -> direct ScalaUDF over - the impl; multi-impl -> a WKB-type-tag dispatch builder selecting the impl. - Retires both the hand-written registrar and `dialect_spark.go`'s `sparkNameMap`. -- Same two specs feed the PG/DuckDB identity dialects, PyMEOS, and Flink/Kafka. +`generate_spark_registrar.py` joins the two specs and emits +`output/MobilitySparkConnectExtensionsGen.scala`, a `SparkSessionExtensions` that +injects each canonical function under its **identity** name (no camelCase remap, +no hand-written table). The shipped `ScalaUDF` closures live in a companion object +so they capture only the serializable UDF, not the extension. The builder adapts +to the call-site arity by null-padding the impl's optional args (so `asMFJSON(g)` +reaches the impl's default precision). + +- **single impl** (81 functions): direct ScalaUDF over the one impl. Generated, + compiled, and served live over Spark Connect under the identity names + (`asMFJSON(trip)`, `numSequences(trip)`, …) — retiring the camelCase remap and + `dialect_spark.go`'s `sparkNameMap` for this set. +- **multi impl** (139 functions, one SQL name over several type-specific impls): + listed in the generated file for the **v2** per-row `meos_typeof_hexwkb` + dispatch (the FFI peek is present in `GeneratedFunctions`). + +The same two specs feed the PG/DuckDB identity dialects, PyMEOS, and Flink/Kafka. ## Refinements tracked diff --git a/codegen/tools/extract_spark_impls.py b/codegen/tools/extract_spark_impls.py index fdd0a69d..69110935 100644 --- a/codegen/tools/extract_spark_impls.py +++ b/codegen/tools/extract_spark_impls.py @@ -29,6 +29,8 @@ def scan_impls(root): for f in glob.glob(os.path.join(root, 'src', 'main', 'java', '**', '*UDFs.java'), recursive=True): text = open(f, encoding='utf-8', errors='ignore').read() cls = os.path.basename(f)[:-5] + pkgm = re.search(r'^\s*package\s+([\w.]+)\s*;', text, re.MULTILINE) + pkg = pkgm.group(1) if pkgm else '' # field declarations + the body that follows (until the next "public static" or EOF) decls = list(FIELD_RE.finditer(text)) for i, m in enumerate(decls): @@ -37,14 +39,14 @@ def scan_impls(root): field = m.group(3) body = text[m.end(): decls[i + 1].start() if i + 1 < len(decls) else len(text)] meos = list(dict.fromkeys(GENFN_RE.findall(body))) # ordered-unique - fields[field] = {'class': cls, 'arity': arity, + fields[field] = {'class': cls, 'pkg': pkg, 'arity': arity, 'argTypes': targs[:-1], 'retType': targs[-1], 'meosFns': meos} for m in REG_RE.finditer(text): sparkName, field, ret = m.group(1), m.group(2), m.group(3) fd = fields.get(field) if fd: - impls[sparkName] = {'field': field, 'class': fd['class'], 'retDataType': ret, - 'arity': fd['arity'], 'argTypes': fd['argTypes'], + impls[sparkName] = {'field': field, 'class': fd['class'], 'pkg': fd['pkg'], + 'retDataType': ret, 'arity': fd['arity'], 'argTypes': fd['argTypes'], 'retType': fd['retType'], 'meosFns': fd['meosFns']} return impls diff --git a/codegen/tools/generate_spark_registrar.py b/codegen/tools/generate_spark_registrar.py new file mode 100644 index 00000000..8f92a811 --- /dev/null +++ b/codegen/tools/generate_spark_registrar.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 +"""Generate the MobilitySpark Spark Connect registrar from the canonical specs. + +Inputs (both produced by the sibling extractors, derived from canonical sources): + - meos-named-surface.json canonical SQL names + overloads (defaults -> arities) + - spark-impls.json each Spark UDF: holder pkg/class/field, arity, types, + and the MEOS C functions its body calls + +Joining them on the SQL->MEOS C doxygen chain yields canonical name -> Spark impl. +This tool emits MobilitySparkConnectExtensionsGen.scala: a SparkSessionExtensions +that injects each canonical function under its IDENTITY name (no camelCase remap, +no hand-written table). Single-impl functions bind directly to the one impl; +the builder adapts to the call-site arity by null-padding the impl's optional +args (so e.g. asMFJSON(g) reaches the impl's default precision). Multi-impl +functions (one SQL name over several type-specific impls) are listed for the +v2 per-row WKB-type-tag dispatch (meos_typeof_hexwkb) and not emitted here. + +Usage: generate_spark_registrar.py [named-surface.json] [spark-impls.json] [out.scala] +""" +import json, os, sys + +HERE = os.path.dirname(__file__) +named = json.load(open(sys.argv[1] if len(sys.argv) > 1 else os.path.join(HERE, '..', 'input', 'meos-named-surface.json'))) +impls = json.load(open(sys.argv[2] if len(sys.argv) > 2 else os.path.join(HERE, '..', 'input', 'spark-impls.json')))['impls'] +out = sys.argv[3] if len(sys.argv) > 3 else os.path.join(HERE, '..', 'output', 'MobilitySparkConnectExtensionsGen.scala') + +meos2spark = {} +for sn, d in impls.items(): + for mf in d['meosFns']: + meos2spark.setdefault(mf, []).append(sn) + +single, multi = [], [] +for fn in named['functions']: + names = sorted({sn for c in fn['c'] for sn in meos2spark.get(c['meos'], [])}) + if len(names) == 1: + single.append((fn['name'], names[0])) + elif len(names) > 1: + multi.append((fn['name'], names)) + +lines = [] +seen = set() +for canon, spark in single: + if canon in seen: + continue + d = impls[spark] + seen.add(canon) + fqn = f"{d['pkg']}.{d['class']}.{d['field']}" + argts = ', '.join(f'"{t}"' for t in d['argTypes']) + lines.append(f' inj(ext, "{canon}", {d["arity"]}, Array[String]({argts}), ' + f'"{d["retType"]}", {fqn})') + +HEADER = '''/* GENERATED by codegen/tools/generate_spark_registrar.py from the canonical + * named-operation surface (meos-named-surface.json) joined with the MobilitySpark + * impl scan (spark-impls.json). Do not edit by hand. Each canonical function is + * injected under its identity name; the camelCase remap and the hand-written + * registrar are retired. Single-impl functions only; multi-impl functions need + * the per-row WKB-type-tag dispatch (see the trailing comment). */ +package org.mobilitydb.spark.connect + +import org.apache.spark.sql.SparkSessionExtensions +import org.apache.spark.sql.catalyst.FunctionIdentifier +import org.apache.spark.sql.catalyst.expressions.{Expression, ExpressionInfo, ScalaUDF} +import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder +import org.apache.spark.sql.types._ +import org.apache.spark.sql.api.java.{UDF1, UDF2, UDF3, UDF4} + +class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) { + private lazy val encs: Map[String, ExpressionEncoder[_]] = Map( + "String" -> ExpressionEncoder[String](), "Integer" -> ExpressionEncoder[java.lang.Integer](), + "Long" -> ExpressionEncoder[java.lang.Long](), "Double" -> ExpressionEncoder[java.lang.Double](), + "Number" -> ExpressionEncoder[java.lang.Double](), "Float" -> ExpressionEncoder[java.lang.Float](), + "Boolean" -> ExpressionEncoder[java.lang.Boolean](), "Timestamp" -> ExpressionEncoder[java.sql.Timestamp]()) + private def enc(t: String) = encs.getOrElse(t, encs("String")) + private def dt(t: String): DataType = t match { + case "Integer" => IntegerType; case "Long" => LongType; case "Double" | "Number" => DoubleType + case "Float" => FloatType; case "Boolean" => BooleanType; case "Timestamp" => TimestampType + case _ => StringType + } + private def inj(ext: SparkSessionExtensions, name: String, arity: Int, + argTs: Array[String], retT: String, udf: AnyRef): Unit = { + val builder = (children: Seq[Expression]) => { + val n = math.min(children.size, arity) + ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity), dt(retT), children, + argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + } + try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) + catch { case _: Throwable => } + } + + def apply(ext: SparkSessionExtensions): Unit = { +''' + +os.makedirs(os.path.dirname(out), exist_ok=True) +with open(out, 'w') as f: + f.write(HEADER) + f.write('\n'.join(lines)) + f.write('\n }\n') + f.write(' // multi-impl (need per-row meos_typeof_hexwkb dispatch, v2):\n') + for canon, names in multi: + f.write(f' // {canon} -> {names}\n') + f.write('}\n\n') + # Companion object: the shipped ScalaUDF closures live here so they capture + # only the serializable UDF object, never the (non-serializable) extension. + f.write('''object MobilitySparkConnectExtensionsGen { + private def call(u: AnyRef, m: Int, a: Seq[Any]): Any = { + def g(i: Int): AnyRef = if (i < a.length) a(i).asInstanceOf[AnyRef] else null + m match { + case 1 => u.asInstanceOf[UDF1[Any, Any]].call(g(0)) + case 2 => u.asInstanceOf[UDF2[Any, Any, Any]].call(g(0), g(1)) + case 3 => u.asInstanceOf[UDF3[Any, Any, Any, Any]].call(g(0), g(1), g(2)) + case _ => u.asInstanceOf[UDF4[Any, Any, Any, Any, Any]].call(g(0), g(1), g(2), g(3)) + } + } + def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { + case 1 => (a: Any) => call(u, m, Seq(a)) + case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b)) + case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) + case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) + } +} +''') +print(f"single-impl injected: {len(lines)} multi-impl (v2 dispatch): {len(multi)} -> {out}") From cbab351c167bd01b7017ea4dada864bc8606a203 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 07:17:34 +0200 Subject: [PATCH 12/14] Emit the multi-impl arg0 type-tag dispatch in the Spark Connect registrar A multi-impl canonical name (one SQL name over several type-specific Spark impls) whose first argument differs in MEOS type is emitted as a single ScalaUDF that peeks meostype_name(meos_typeof_hexwkb(arg0)) per row and routes to the impl whose receiver type matches, with the Temporal-receiver impl as the catch-all default. The receiver category is read from the impl's primary MEOS function (the last non-marshaling GeneratedFunctions call in the UDF body) first C-parameter type. The registrar serves the /items-collection OGC function set under identity names: asMFJSON, stbox, the Xmin/Ymin/Xmax/Ymax/Tmin/Tmax accessors, numSequences, sequenceN, trajectory. Functions that differ only on a later argument (atTime on its time argument) are listed for the arg-N dispatch extension. --- .gitignore | 2 +- codegen/input/spark-impls.json | 3924 +++++++++++------ .../MobilitySparkConnectExtensionsGen.scala | 118 +- codegen/tools/NAMED_SURFACE.md | 26 +- codegen/tools/extract_spark_impls.py | 22 +- codegen/tools/generate_spark_registrar.py | 132 +- 6 files changed, 2845 insertions(+), 1379 deletions(-) diff --git a/.gitignore b/.gitignore index 2c409481..8aa6d22e 100644 --- a/.gitignore +++ b/.gitignore @@ -60,4 +60,4 @@ dependency-reduced-pom.xml *.mov # CMake -cmake-build-*/ \ No newline at end of file +cmake-build-*/jar/ diff --git a/codegen/input/spark-impls.json b/codegen/input/spark-impls.json index 6d33728f..804b500e 100644 --- a/codegen/input/spark-impls.json +++ b/codegen/input/spark-impls.json @@ -16,7 +16,8 @@ "geo_from_text", "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "trgeometryInst": { "field": "trgeometryInst", @@ -29,7 +30,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpose": { "field": "tpose", @@ -45,7 +47,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "trgeometryFromMFJSON": { "field": "trgeometryFromMFJSON", @@ -59,7 +62,8 @@ "retType": "String", "meosFns": [ "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "trgeometryFromText": { "field": "trgeometryFromText", @@ -71,7 +75,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "trgeometryFromEWKT": { "field": "trgeometryFromEWKT", @@ -83,7 +88,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "trgeometryFromHexEWKB": { "field": "trgeometryFromHexEWKB", @@ -95,7 +101,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "trgeometryFromBinary": { "field": "trgeometryFromBinary", @@ -107,7 +114,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "trgeometryFromEWKB": { "field": "trgeometryFromEWKB", @@ -119,7 +127,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "trgeometrySeq": { "field": "trgeometrySeq", @@ -135,7 +144,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequence" }, "trgeometrySeqSet": { "field": "trgeometrySeqSet", @@ -151,7 +161,8 @@ "temporal_from_hexwkb", "temporal_to_tsequenceset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "trgeometrySeqSetGaps": { "field": "trgeometrySeqSetGaps", @@ -169,7 +180,8 @@ "pg_interval_in", "tsequenceset_make_gaps", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tsequenceset_make_gaps" }, "cbuffer": { "field": "cbuffer", @@ -184,7 +196,8 @@ "retType": "String", "meosFns": [ "geo_from_text" - ] + ], + "primaryMeos": "geo_from_text" }, "point": { "field": "point", @@ -198,7 +211,8 @@ "retType": "String", "meosFns": [ "geo_as_text" - ] + ], + "primaryMeos": "geo_as_text" }, "radius": { "field": "radius", @@ -210,7 +224,8 @@ "String" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferContains": { "field": "cbufferContains", @@ -223,7 +238,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferCovers": { "field": "cbufferCovers", @@ -236,7 +252,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferDisjoint": { "field": "cbufferDisjoint", @@ -249,7 +266,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferIntersects": { "field": "cbufferIntersects", @@ -262,7 +280,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferTouches": { "field": "cbufferTouches", @@ -275,7 +294,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferDwithin": { "field": "cbufferDwithin", @@ -289,7 +309,8 @@ "Double" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferSame": { "field": "cbufferSame", @@ -302,7 +323,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbuffersetFromHexWKB": { "field": "cbuffersetFromHexWKB", @@ -317,7 +339,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "cbuffersetFromBinary": { "field": "cbuffersetFromBinary", @@ -332,7 +355,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "tcbuffer": { "field": "tcbuffer", @@ -348,7 +372,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tcbufferInst": { "field": "tcbufferInst", @@ -365,7 +390,8 @@ "tfloatinst_make", "temporal_as_hexwkb", "temporal_from_hexwkb" - ] + ], + "primaryMeos": "tfloatinst_make" }, "tcbufferFromText": { "field": "tcbufferFromText", @@ -379,7 +405,8 @@ "retType": "String", "meosFns": [ "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tcbufferFromEWKT": { "field": "tcbufferFromEWKT", @@ -391,7 +418,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tcbufferFromHexEWKB": { "field": "tcbufferFromHexEWKB", @@ -403,7 +431,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tcbufferFromBinary": { "field": "tcbufferFromBinary", @@ -415,7 +444,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tcbufferFromEWKB": { "field": "tcbufferFromEWKB", @@ -427,7 +457,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tcbufferSeq": { "field": "tcbufferSeq", @@ -443,7 +474,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequence" }, "tcbufferSeqSet": { "field": "tcbufferSeqSet", @@ -459,7 +491,8 @@ "temporal_from_hexwkb", "temporal_to_tsequenceset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "tcbufferSeqSetGaps": { "field": "tcbufferSeqSetGaps", @@ -477,7 +510,8 @@ "pg_interval_in", "tsequenceset_make_gaps", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tsequenceset_make_gaps" }, "points": { "field": "points", @@ -492,7 +526,8 @@ "meosFns": [ "temporal_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "tcbufferRadius": { "field": "tcbufferRadius", @@ -507,7 +542,8 @@ "meosFns": [ "temporal_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "pose": { "field": "pose", @@ -521,7 +557,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "rotation": { "field": "rotation", @@ -533,7 +570,8 @@ "String" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseSame": { "field": "poseSame", @@ -546,7 +584,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseFromText": { "field": "poseFromText", @@ -558,7 +597,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseFromEWKT": { "field": "poseFromEWKT", @@ -570,7 +610,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseFromHexEWKB": { "field": "poseFromHexEWKB", @@ -582,7 +623,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseFromBinary": { "field": "poseFromBinary", @@ -594,7 +636,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseFromEWKB": { "field": "poseFromEWKB", @@ -606,7 +649,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "posesetFromHexWKB": { "field": "posesetFromHexWKB", @@ -621,7 +665,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "posesetFromText": { "field": "posesetFromText", @@ -635,7 +680,8 @@ "retType": "String", "meosFns": [ "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "posesetFromEWKT": { "field": "posesetFromEWKT", @@ -647,7 +693,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "posesetFromBinary": { "field": "posesetFromBinary", @@ -662,7 +709,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "posesetFromEWKB": { "field": "posesetFromEWKB", @@ -674,7 +722,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tposeInst": { "field": "tposeInst", @@ -691,7 +740,8 @@ "tfloatinst_make", "temporal_as_hexwkb", "temporal_from_hexwkb" - ] + ], + "primaryMeos": "tfloatinst_make" }, "tposeFromText": { "field": "tposeFromText", @@ -705,7 +755,8 @@ "retType": "String", "meosFns": [ "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tposeFromEWKT": { "field": "tposeFromEWKT", @@ -717,7 +768,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tposeFromMFJSON": { "field": "tposeFromMFJSON", @@ -731,7 +783,8 @@ "retType": "String", "meosFns": [ "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tposeFromHexEWKB": { "field": "tposeFromHexEWKB", @@ -743,7 +796,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tposeFromBinary": { "field": "tposeFromBinary", @@ -755,7 +809,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tposeFromEWKB": { "field": "tposeFromEWKB", @@ -767,7 +822,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tposeSeq": { "field": "tposeSeq", @@ -783,7 +839,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequence" }, "tposeSeqSet": { "field": "tposeSeqSet", @@ -799,7 +856,8 @@ "temporal_from_hexwkb", "temporal_to_tsequenceset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "tposeSeqSetGaps": { "field": "tposeSeqSetGaps", @@ -817,7 +875,8 @@ "pg_interval_in", "tsequenceset_make_gaps", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tsequenceset_make_gaps" }, "tposePoints": { "field": "tposePoints", @@ -832,7 +891,8 @@ "meosFns": [ "temporal_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "tposeRotation": { "field": "tposeRotation", @@ -847,7 +907,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "geomBuffer": { "field": "geomBuffer", @@ -864,7 +925,8 @@ "geo_from_text", "geom_buffer", "geo_as_text" - ] + ], + "primaryMeos": "geom_buffer" }, "geomConvexHull": { "field": "geomConvexHull", @@ -880,7 +942,8 @@ "geo_from_text", "geom_convex_hull", "geo_as_text" - ] + ], + "primaryMeos": "geom_convex_hull" }, "geomIntersection": { "field": "geomIntersection", @@ -897,7 +960,8 @@ "geo_from_text", "geom_intersection2d", "geo_as_text" - ] + ], + "primaryMeos": "geom_intersection2d" }, "setSRID": { "field": "setSRID", @@ -914,7 +978,8 @@ "temporal_from_hexwkb", "tspatial_set_srid", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_set_srid" }, "transform": { "field": "transform", @@ -931,7 +996,8 @@ "temporal_from_hexwkb", "tspatial_transform", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_transform" }, "asText": { "field": "asText", @@ -947,7 +1013,8 @@ "meosFns": [ "temporal_from_hexwkb", "tspatial_as_text" - ] + ], + "primaryMeos": "tspatial_as_text" }, "asEWKT": { "field": "asEWKT", @@ -963,7 +1030,8 @@ "meosFns": [ "temporal_from_hexwkb", "tspatial_as_ewkt" - ] + ], + "primaryMeos": "tspatial_as_ewkt" }, "atElevation": { "field": "atElevation", @@ -982,7 +1050,8 @@ "floatspan_make", "tpoint_at_elevation", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_at_elevation" }, "tContains": { "field": "tContains", @@ -1000,7 +1069,8 @@ "geo_from_text", "tcontains_geo_tgeo", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tcontains_geo_tgeo" }, "tCovers": { "field": "tCovers", @@ -1017,7 +1087,8 @@ "temporal_from_hexwkb", "tcovers_tgeo_tgeo", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tcovers_tgeo_tgeo" }, "tDwithin": { "field": "tDwithin", @@ -1035,7 +1106,8 @@ "temporal_from_hexwkb", "tdwithin_tgeo_tgeo", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdwithin_tgeo_tgeo" }, "bearingToPoint": { "field": "bearingToPoint", @@ -1053,7 +1125,8 @@ "geo_from_text", "bearing_tpoint_point", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "bearing_tpoint_point" }, "bearing": { "field": "bearing", @@ -1070,7 +1143,8 @@ "temporal_from_hexwkb", "bearing_tpoint_tpoint", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "bearing_tpoint_tpoint" }, "twCentroid": { "field": "twCentroid", @@ -1086,7 +1160,8 @@ "temporal_from_hexwkb", "tpoint_twcentroid", "geo_as_text" - ] + ], + "primaryMeos": "tpoint_twcentroid" }, "geoSame": { "field": "geoSame", @@ -1102,7 +1177,8 @@ "meosFns": [ "geo_from_text", "geo_same" - ] + ], + "primaryMeos": "geo_same" }, "tpointConvexHull": { "field": "tpointConvexHull", @@ -1118,7 +1194,8 @@ "temporal_from_hexwkb", "tgeo_convex_hull", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_convex_hull" }, "tpointExpandSpace": { "field": "tpointExpandSpace", @@ -1141,7 +1218,8 @@ "stbox_from_hexwkb", "stbox_transform_pipeline", "geo_from_text" - ] + ], + "primaryMeos": "stbox_transform_pipeline" }, "eIntersects": { "field": "eIntersects", @@ -1162,7 +1240,8 @@ "geo_from_text", "geom_to_geog", "eintersects_tgeo_geo" - ] + ], + "primaryMeos": "eintersects_tgeo_geo" }, "eDisjoint": { "field": "eDisjoint", @@ -1181,7 +1260,8 @@ "stbox_srid", "geo_from_text", "edisjoint_tgeo_geo" - ] + ], + "primaryMeos": "edisjoint_tgeo_geo" }, "eTouches": { "field": "eTouches", @@ -1200,7 +1280,8 @@ "stbox_srid", "geo_from_text", "etouches_tgeo_geo" - ] + ], + "primaryMeos": "etouches_tgeo_geo" }, "eCovers": { "field": "eCovers", @@ -1219,7 +1300,8 @@ "stbox_srid", "geo_from_text", "ecovers_tgeo_geo" - ] + ], + "primaryMeos": "ecovers_tgeo_geo" }, "eContains": { "field": "eContains", @@ -1238,7 +1320,8 @@ "stbox_srid", "geo_from_text", "econtains_geo_tgeo" - ] + ], + "primaryMeos": "econtains_geo_tgeo" }, "eDisjointTgeoTgeo": { "field": "eDisjointTgeoTgeo", @@ -1254,7 +1337,8 @@ "meosFns": [ "temporal_from_hexwkb", "edisjoint_tgeo_tgeo" - ] + ], + "primaryMeos": "edisjoint_tgeo_tgeo" }, "eIntersectsTgeoTgeo": { "field": "eIntersectsTgeoTgeo", @@ -1270,7 +1354,8 @@ "meosFns": [ "temporal_from_hexwkb", "eintersects_tgeo_tgeo" - ] + ], + "primaryMeos": "eintersects_tgeo_tgeo" }, "nearestApproachDistance": { "field": "nearestApproachDistance", @@ -1286,7 +1371,8 @@ "meosFns": [ "temporal_from_hexwkb", "nad_tgeo_tgeo" - ] + ], + "primaryMeos": "nad_tgeo_tgeo" }, "eDwithin": { "field": "eDwithin", @@ -1303,7 +1389,8 @@ "meosFns": [ "temporal_from_hexwkb", "edwithin_tgeo_tgeo" - ] + ], + "primaryMeos": "edwithin_tgeo_tgeo" }, "eDwithinGeo": { "field": "eDwithinGeo", @@ -1323,7 +1410,8 @@ "stbox_srid", "geo_from_text", "edwithin_tgeo_geo" - ] + ], + "primaryMeos": "edwithin_tgeo_geo" }, "aIntersects": { "field": "aIntersects", @@ -1342,7 +1430,8 @@ "stbox_srid", "geo_from_text", "aintersects_tgeo_geo" - ] + ], + "primaryMeos": "aintersects_tgeo_geo" }, "aDisjoint": { "field": "aDisjoint", @@ -1358,7 +1447,8 @@ "meosFns": [ "temporal_from_hexwkb", "adisjoint_tgeo_tgeo" - ] + ], + "primaryMeos": "adisjoint_tgeo_tgeo" }, "aDwithin": { "field": "aDwithin", @@ -1375,7 +1465,8 @@ "meosFns": [ "temporal_from_hexwkb", "adwithin_tgeo_tgeo" - ] + ], + "primaryMeos": "adwithin_tgeo_tgeo" }, "aDwithinGeo": { "field": "aDwithinGeo", @@ -1395,7 +1486,8 @@ "stbox_srid", "geo_from_text", "adwithin_tgeo_geo" - ] + ], + "primaryMeos": "adwithin_tgeo_geo" }, "tgeompoint": { "field": "tgeompoint", @@ -1410,7 +1502,8 @@ "meosFns": [ "tgeompoint_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "trajectory": { "field": "trajectory", @@ -1426,7 +1519,8 @@ "temporal_from_hexwkb", "tpoint_trajectory", "geo_as_hexewkb" - ] + ], + "primaryMeos": "geo_as_hexewkb" }, "geomFromText": { "field": "geomFromText", @@ -1441,7 +1535,8 @@ "meosFns": [ "geo_from_text", "geo_as_hexewkb" - ] + ], + "primaryMeos": "geo_as_hexewkb" }, "getX": { "field": "getX", @@ -1457,7 +1552,8 @@ "temporal_from_hexwkb", "tpoint_get_x", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_get_x" }, "getY": { "field": "getY", @@ -1473,7 +1569,8 @@ "temporal_from_hexwkb", "tpoint_get_y", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_get_y" }, "getZ": { "field": "getZ", @@ -1491,7 +1588,8 @@ "stbox_hasz", "tpoint_get_z", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_get_z" }, "cumulativeLength": { "field": "cumulativeLength", @@ -1507,7 +1605,8 @@ "temporal_from_hexwkb", "tpoint_cumulative_length", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_cumulative_length" }, "stops": { "field": "stops", @@ -1526,7 +1625,8 @@ "pg_interval_in", "temporal_stops", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_stops" }, "isSimple": { "field": "isSimple", @@ -1541,7 +1641,8 @@ "meosFns": [ "temporal_from_hexwkb", "tpoint_is_simple" - ] + ], + "primaryMeos": "tpoint_is_simple" }, "shortestLine": { "field": "shortestLineTgeoGeo", @@ -1558,7 +1659,8 @@ "temporal_from_hexwkb", "geo_from_text", "geo_as_text" - ] + ], + "primaryMeos": "geo_as_text" }, "tpointTransform": { "field": "tpointTransform", @@ -1575,7 +1677,8 @@ "temporal_from_hexwkb", "tspatial_transform", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_transform" }, "tpointAsText": { "field": "tpointAsText", @@ -1591,7 +1694,8 @@ "meosFns": [ "temporal_from_hexwkb", "tspatial_as_text" - ] + ], + "primaryMeos": "tspatial_as_text" }, "tpointAsEWKT": { "field": "tpointAsEWKT", @@ -1607,7 +1711,8 @@ "meosFns": [ "temporal_from_hexwkb", "tspatial_as_ewkt" - ] + ], + "primaryMeos": "tspatial_as_ewkt" }, "tpointSRID": { "field": "tpointSRID", @@ -1623,7 +1728,8 @@ "temporal_from_hexwkb", "tspatial_to_stbox", "stbox_srid" - ] + ], + "primaryMeos": "stbox_srid" }, "tpointSetSRID": { "field": "tpointSetSRID", @@ -1640,7 +1746,8 @@ "temporal_from_hexwkb", "tspatial_set_srid", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_set_srid" }, "tpointRound": { "field": "tpointRound", @@ -1657,7 +1764,8 @@ "temporal_from_hexwkb", "temporal_round", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_round" }, "tpointToStbox": { "field": "tpointToStbox", @@ -1673,7 +1781,8 @@ "temporal_from_hexwkb", "tspatial_to_stbox", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_to_stbox" }, "expandSpace": { "field": "expandSpace", @@ -1692,7 +1801,8 @@ "tspatial_to_stbox", "stbox_expand_space", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_expand_space" }, "geoAsEwkt": { "field": "geoAsEwkt", @@ -1708,7 +1818,8 @@ "meosFns": [ "geo_from_text", "geo_as_ewkt" - ] + ], + "primaryMeos": "geo_as_ewkt" }, "geoAsGeojson": { "field": "geoAsGeojson", @@ -1725,7 +1836,8 @@ "meosFns": [ "geo_from_text", "geo_as_geojson" - ] + ], + "primaryMeos": "geo_as_geojson" }, "geoFromGeojson": { "field": "geoFromGeojson", @@ -1740,7 +1852,8 @@ "meosFns": [ "geo_from_geojson", "geo_as_text" - ] + ], + "primaryMeos": "geo_from_geojson" }, "geomContains": { "field": "geomContains", @@ -1758,7 +1871,8 @@ "pg_timestamptz_in", "tpointinst_make", "econtains_geo_tgeo" - ] + ], + "primaryMeos": "econtains_geo_tgeo" }, "geomCovers": { "field": "geomCovers", @@ -1774,7 +1888,8 @@ "meosFns": [ "geo_from_text", "geom_covers" - ] + ], + "primaryMeos": "geom_covers" }, "geomDisjoint": { "field": "geomDisjoint", @@ -1790,7 +1905,8 @@ "meosFns": [ "geo_from_text", "geom_disjoint2d" - ] + ], + "primaryMeos": "geom_disjoint2d" }, "geomIntersects": { "field": "geomIntersects", @@ -1806,7 +1922,8 @@ "meosFns": [ "geo_from_text", "geom_intersects2d" - ] + ], + "primaryMeos": "geom_intersects2d" }, "geomTouches": { "field": "geomTouches", @@ -1822,7 +1939,8 @@ "meosFns": [ "geo_from_text", "geom_touches" - ] + ], + "primaryMeos": "geom_touches" }, "geomDwithin": { "field": "geomDwithin", @@ -1839,7 +1957,8 @@ "meosFns": [ "geo_from_text", "geom_dwithin2d" - ] + ], + "primaryMeos": "geom_dwithin2d" }, "geomDistance": { "field": "geomDistance", @@ -1855,7 +1974,8 @@ "meosFns": [ "geo_from_text", "geom_distance2d" - ] + ], + "primaryMeos": "geom_distance2d" }, "geomLength": { "field": "geomLength", @@ -1870,7 +1990,8 @@ "meosFns": [ "geo_from_text", "geom_length" - ] + ], + "primaryMeos": "geom_length" }, "geomPerimeter": { "field": "geomPerimeter", @@ -1885,7 +2006,8 @@ "meosFns": [ "geo_from_text", "geom_perimeter" - ] + ], + "primaryMeos": "geom_perimeter" }, "geomCentroid": { "field": "geomCentroid", @@ -1901,7 +2023,8 @@ "geo_from_text", "geom_centroid", "geo_as_text" - ] + ], + "primaryMeos": "geom_centroid" }, "geomBoundary": { "field": "geomBoundary", @@ -1917,7 +2040,8 @@ "geo_from_text", "geom_boundary", "geo_as_text" - ] + ], + "primaryMeos": "geom_boundary" }, "geomDifference": { "field": "geomDifference", @@ -1934,7 +2058,8 @@ "geo_from_text", "geom_difference2d", "geo_as_text" - ] + ], + "primaryMeos": "geom_difference2d" }, "geomUnaryUnion": { "field": "geomUnaryUnion", @@ -1951,7 +2076,8 @@ "geo_from_text", "geom_unary_union", "geo_as_text" - ] + ], + "primaryMeos": "geom_unary_union" }, "geoReverse": { "field": "geoReverse", @@ -1967,7 +2093,8 @@ "geo_from_text", "geo_reverse", "geo_as_text" - ] + ], + "primaryMeos": "geo_reverse" }, "geoRound": { "field": "geoRound", @@ -1984,7 +2111,8 @@ "geo_from_text", "geo_round", "geo_as_text" - ] + ], + "primaryMeos": "geo_round" }, "lineInterpolatePoint": { "field": "lineInterpolatePoint", @@ -2001,7 +2129,8 @@ "geo_from_text", "line_interpolate_point", "geo_as_text" - ] + ], + "primaryMeos": "line_interpolate_point" }, "lineSubstring": { "field": "lineSubstring", @@ -2019,7 +2148,8 @@ "geo_from_text", "line_substring", "geo_as_text" - ] + ], + "primaryMeos": "line_substring" }, "tdistanceTgeoGeo": { "field": "tdistanceTgeoGeo", @@ -2037,7 +2167,8 @@ "geo_from_text", "tdistance_tgeo_geo", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdistance_tgeo_geo" }, "tdistanceTgeoTgeo": { "field": "tdistanceTgeoTgeo", @@ -2054,7 +2185,8 @@ "temporal_from_hexwkb", "tdistance_tgeo_tgeo", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdistance_tgeo_tgeo" }, "tdistanceTfloatFloat": { "field": "tdistanceTfloatFloat", @@ -2071,7 +2203,8 @@ "temporal_from_hexwkb", "tdistance_tfloat_float", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdistance_tfloat_float" }, "tdistanceTintInt": { "field": "tdistanceTintInt", @@ -2088,7 +2221,8 @@ "temporal_from_hexwkb", "tdistance_tint_int", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdistance_tint_int" }, "tdistanceTnumberTnumber": { "field": "tdistanceTnumberTnumber", @@ -2105,7 +2239,8 @@ "temporal_from_hexwkb", "tdistance_tnumber_tnumber", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tdistance_tnumber_tnumber" }, "nadTgeoGeo": { "field": "nadTgeoGeo", @@ -2121,7 +2256,8 @@ "meosFns": [ "temporal_from_hexwkb", "geo_from_text" - ] + ], + "primaryMeos": "geo_from_text" }, "nadTgeoStbox": { "field": "nadTgeoStbox", @@ -2137,7 +2273,8 @@ "meosFns": [ "temporal_from_hexwkb", "stbox_from_hexwkb" - ] + ], + "primaryMeos": "stbox_from_hexwkb" }, "nadTgeoTgeo": { "field": "nadTgeoTgeo", @@ -2152,7 +2289,8 @@ "retType": "Double", "meosFns": [ "temporal_from_hexwkb" - ] + ], + "primaryMeos": "temporal_from_hexwkb" }, "naiTgeoGeo": { "field": "naiTgeoGeo", @@ -2169,7 +2307,8 @@ "temporal_from_hexwkb", "geo_from_text", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "naiTgeoTgeo": { "field": "naiTgeoTgeo", @@ -2185,7 +2324,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "shortestLineTgeoGeo": { "field": "shortestLineTgeoGeo", @@ -2202,7 +2342,8 @@ "temporal_from_hexwkb", "geo_from_text", "geo_as_text" - ] + ], + "primaryMeos": "geo_as_text" }, "shortestLineTgeoTgeo": { "field": "shortestLineTgeoTgeo", @@ -2219,7 +2360,8 @@ "temporal_from_hexwkb", "shortestline_tgeo_tgeo", "geo_as_text" - ] + ], + "primaryMeos": "shortestline_tgeo_tgeo" }, "minDistanceTgeoGeo": { "field": "minDistanceTgeoGeo", @@ -2235,7 +2377,8 @@ "meosFns": [ "temporal_from_hexwkb", "geo_from_text" - ] + ], + "primaryMeos": "geo_from_text" }, "minDistanceTgeoTgeo": { "field": "minDistanceTgeoTgeo", @@ -2250,7 +2393,8 @@ "retType": "Double", "meosFns": [ "temporal_from_hexwkb" - ] + ], + "primaryMeos": "temporal_from_hexwkb" }, "minDistanceTgeoarrTgeoarr": { "field": "minDistanceTgeoarrTgeoarr", @@ -2267,7 +2411,8 @@ "temporal_from_hexwkb", "mindistance_tgeoarr_tgeoarr", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "mindistance_tgeoarr_tgeoarr" }, "nearestApproachInstant": { "field": "naiTgeoGeo", @@ -2284,7 +2429,8 @@ "temporal_from_hexwkb", "geo_from_text", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "minDistance": { "field": "minDistanceTgeoarrTgeoarr", @@ -2301,7 +2447,8 @@ "temporal_from_hexwkb", "mindistance_tgeoarr_tgeoarr", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "mindistance_tgeoarr_tgeoarr" }, "stboxHasx": { "field": "stboxHasx", @@ -2315,7 +2462,8 @@ "retType": "Boolean", "meosFns": [ "stbox_hasx" - ] + ], + "primaryMeos": "stbox_hasx" }, "stboxHast": { "field": "stboxHast", @@ -2329,7 +2477,8 @@ "retType": "Boolean", "meosFns": [ "stbox_hast" - ] + ], + "primaryMeos": "stbox_hast" }, "stboxHasz": { "field": "stboxHasz", @@ -2343,7 +2492,8 @@ "retType": "Boolean", "meosFns": [ "stbox_hasz" - ] + ], + "primaryMeos": "stbox_hasz" }, "stboxXmin": { "field": "stboxXmin", @@ -2357,7 +2507,8 @@ "retType": "Double", "meosFns": [ "stbox_xmin" - ] + ], + "primaryMeos": "stbox_xmin" }, "stboxXmax": { "field": "stboxXmax", @@ -2371,7 +2522,8 @@ "retType": "Double", "meosFns": [ "stbox_xmax" - ] + ], + "primaryMeos": "stbox_xmax" }, "stboxYmin": { "field": "stboxYmin", @@ -2385,7 +2537,8 @@ "retType": "Double", "meosFns": [ "stbox_ymin" - ] + ], + "primaryMeos": "stbox_ymin" }, "stboxYmax": { "field": "stboxYmax", @@ -2399,7 +2552,8 @@ "retType": "Double", "meosFns": [ "stbox_ymax" - ] + ], + "primaryMeos": "stbox_ymax" }, "stboxZmin": { "field": "stboxZmin", @@ -2413,7 +2567,8 @@ "retType": "Double", "meosFns": [ "stbox_zmin" - ] + ], + "primaryMeos": "stbox_zmin" }, "stboxZmax": { "field": "stboxZmax", @@ -2427,7 +2582,8 @@ "retType": "Double", "meosFns": [ "stbox_zmax" - ] + ], + "primaryMeos": "stbox_zmax" }, "stboxTmin": { "field": "stboxTmin", @@ -2441,7 +2597,8 @@ "retType": "java.sql.Timestamp", "meosFns": [ "stbox_tmin" - ] + ], + "primaryMeos": "stbox_tmin" }, "stboxTmax": { "field": "stboxTmax", @@ -2455,7 +2612,8 @@ "retType": "java.sql.Timestamp", "meosFns": [ "stbox_tmax" - ] + ], + "primaryMeos": "stbox_tmax" }, "stboxTminInc": { "field": "stboxTminInc", @@ -2469,7 +2627,8 @@ "retType": "Boolean", "meosFns": [ "stbox_tmin_inc" - ] + ], + "primaryMeos": "stbox_tmin_inc" }, "stboxTmaxInc": { "field": "stboxTmaxInc", @@ -2483,7 +2642,8 @@ "retType": "Boolean", "meosFns": [ "stbox_tmax_inc" - ] + ], + "primaryMeos": "stbox_tmax_inc" }, "stboxSrid": { "field": "stboxSrid", @@ -2497,7 +2657,8 @@ "retType": "Integer", "meosFns": [ "stbox_srid" - ] + ], + "primaryMeos": "stbox_srid" }, "stboxExpandSpace": { "field": "stboxExpandSpace", @@ -2512,7 +2673,8 @@ "retType": "String", "meosFns": [ "stbox_expand_space" - ] + ], + "primaryMeos": "stbox_expand_space" }, "stboxExpandTime": { "field": "stboxExpandTime", @@ -2528,7 +2690,8 @@ "meosFns": [ "pg_interval_in", "stbox_expand_time" - ] + ], + "primaryMeos": "stbox_expand_time" }, "stboxArea": { "field": "stboxArea", @@ -2542,7 +2705,8 @@ "retType": "Double", "meosFns": [ "stbox_area" - ] + ], + "primaryMeos": "stbox_area" }, "stboxPerimeter": { "field": "stboxPerimeter", @@ -2556,7 +2720,8 @@ "retType": "Double", "meosFns": [ "stbox_perimeter" - ] + ], + "primaryMeos": "stbox_perimeter" }, "stboxVolume": { "field": "stboxVolume", @@ -2570,7 +2735,8 @@ "retType": "Double", "meosFns": [ "stbox_volume" - ] + ], + "primaryMeos": "stbox_volume" }, "stboxIsGeodetic": { "field": "stboxIsGeodetic", @@ -2584,7 +2750,8 @@ "retType": "Boolean", "meosFns": [ "stbox_isgeodetic" - ] + ], + "primaryMeos": "stbox_isgeodetic" }, "stboxToGeo": { "field": "stboxToGeo", @@ -2599,7 +2766,8 @@ "meosFns": [ "stbox_to_geo", "geo_as_text" - ] + ], + "primaryMeos": "stbox_to_geo" }, "stboxToTstzspan": { "field": "stboxToTstzspan", @@ -2614,7 +2782,8 @@ "meosFns": [ "stbox_to_tstzspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "stbox_to_tstzspan" }, "stboxRound": { "field": "stboxRound", @@ -2629,7 +2798,8 @@ "retType": "String", "meosFns": [ "stbox_round" - ] + ], + "primaryMeos": "stbox_round" }, "stboxSetSrid": { "field": "stboxSetSrid", @@ -2644,7 +2814,8 @@ "retType": "String", "meosFns": [ "stbox_set_srid" - ] + ], + "primaryMeos": "stbox_set_srid" }, "stboxShiftScaleTime": { "field": "stboxShiftScaleTime", @@ -2661,7 +2832,8 @@ "meosFns": [ "pg_interval_in", "stbox_shift_scale_time" - ] + ], + "primaryMeos": "stbox_shift_scale_time" }, "stboxGetSpace": { "field": "stboxGetSpace", @@ -2675,7 +2847,8 @@ "retType": "String", "meosFns": [ "stbox_get_space" - ] + ], + "primaryMeos": "stbox_get_space" }, "geoToStbox": { "field": "geoToStbox", @@ -2690,7 +2863,8 @@ "meosFns": [ "geo_from_text", "geo_to_stbox" - ] + ], + "primaryMeos": "geo_to_stbox" }, "tstzspanToStbox": { "field": "tstzspanToStbox", @@ -2705,7 +2879,8 @@ "meosFns": [ "span_from_hexwkb", "tstzspan_to_stbox" - ] + ], + "primaryMeos": "tstzspan_to_stbox" }, "timestamptzToStbox": { "field": "timestamptzToStbox", @@ -2719,7 +2894,8 @@ "retType": "String", "meosFns": [ "timestamptz_to_stbox" - ] + ], + "primaryMeos": "timestamptz_to_stbox" }, "intersectionStboxStbox": { "field": "intersectionStboxStbox", @@ -2732,7 +2908,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "unionStboxStbox": { "field": "unionStboxStbox", @@ -2747,7 +2924,8 @@ "retType": "String", "meosFns": [ "union_stbox_stbox" - ] + ], + "primaryMeos": "union_stbox_stbox" }, "stboxIntersection": { "field": "intersectionStboxStbox", @@ -2760,7 +2938,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxUnion": { "field": "unionStboxStbox", @@ -2775,7 +2954,8 @@ "retType": "String", "meosFns": [ "union_stbox_stbox" - ] + ], + "primaryMeos": "union_stbox_stbox" }, "stboxX": { "field": "stboxX", @@ -2790,7 +2970,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxT": { "field": "stboxT", @@ -2802,7 +2983,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxXT": { "field": "stboxXT", @@ -2818,7 +3000,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxZ": { "field": "stboxZ", @@ -2835,7 +3018,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxZT": { "field": "stboxZT", @@ -2853,7 +3037,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geodstboxZ": { "field": "geodstboxZ", @@ -2870,7 +3055,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geodstboxT": { "field": "geodstboxT", @@ -2882,7 +3068,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geodstboxZT": { "field": "geodstboxZT", @@ -2900,7 +3087,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxContains": { "field": "stboxContains", @@ -2913,7 +3101,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxContained": { "field": "stboxContained", @@ -2926,7 +3115,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverlaps": { "field": "stboxOverlaps", @@ -2942,7 +3132,8 @@ "meosFns": [ "stbox_from_hexwkb", "overlaps_stbox_stbox" - ] + ], + "primaryMeos": "overlaps_stbox_stbox" }, "stboxLeft": { "field": "stboxLeft", @@ -2955,7 +3146,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverleft": { "field": "stboxOverleft", @@ -2968,7 +3160,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxRight": { "field": "stboxRight", @@ -2981,7 +3174,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverright": { "field": "stboxOverright", @@ -2994,7 +3188,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxBelow": { "field": "stboxBelow", @@ -3007,7 +3202,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverbelow": { "field": "stboxOverbelow", @@ -3020,7 +3216,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAbove": { "field": "stboxAbove", @@ -3033,7 +3230,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverabove": { "field": "stboxOverabove", @@ -3046,7 +3244,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxBefore": { "field": "stboxBefore", @@ -3059,7 +3258,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverbefore": { "field": "stboxOverbefore", @@ -3072,7 +3272,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAfter": { "field": "stboxAfter", @@ -3085,7 +3286,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverafter": { "field": "stboxOverafter", @@ -3098,7 +3300,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAdjacent": { "field": "stboxAdjacent", @@ -3115,7 +3318,8 @@ "span_from_hexwkb", "stbox_make", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_make" }, "translate": { "field": "translate2", @@ -3129,7 +3333,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "translate3": { "field": "translate3", @@ -3144,7 +3349,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "rotate": { "field": "rotate", @@ -3157,7 +3363,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "rotateX": { "field": "rotateX", @@ -3170,7 +3377,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "rotateY": { "field": "rotateY", @@ -3183,7 +3391,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "rotateZ": { "field": "rotateZ", @@ -3196,7 +3405,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "transscale": { "field": "transscale", @@ -3212,7 +3422,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tDisjoint": { "field": "tDisjoint", @@ -3229,7 +3440,8 @@ "temporal_from_hexwkb", "geo_from_text", "tdisjoint_tgeo_geo" - ] + ], + "primaryMeos": "tdisjoint_tgeo_geo" }, "tIntersects": { "field": "tIntersects", @@ -3246,7 +3458,8 @@ "temporal_from_hexwkb", "geo_from_text", "tintersects_tgeo_geo" - ] + ], + "primaryMeos": "tintersects_tgeo_geo" }, "tTouches": { "field": "tTouches", @@ -3263,7 +3476,8 @@ "temporal_from_hexwkb", "geo_from_text", "ttouches_tgeo_geo" - ] + ], + "primaryMeos": "ttouches_tgeo_geo" }, "tDisjointTgeoTgeo": { "field": "tDisjointTgeoTgeo", @@ -3279,7 +3493,8 @@ "meosFns": [ "temporal_from_hexwkb", "tdisjoint_tgeo_tgeo" - ] + ], + "primaryMeos": "tdisjoint_tgeo_tgeo" }, "tIntersectsTgeoTgeo": { "field": "tIntersectsTgeoTgeo", @@ -3295,7 +3510,8 @@ "meosFns": [ "temporal_from_hexwkb", "tintersects_tgeo_tgeo" - ] + ], + "primaryMeos": "tintersects_tgeo_tgeo" }, "tTouchesTogeoTgeo": { "field": "tTouchesTogeoTgeo", @@ -3311,7 +3527,8 @@ "meosFns": [ "temporal_from_hexwkb", "ttouches_tgeo_tgeo" - ] + ], + "primaryMeos": "ttouches_tgeo_tgeo" }, "tContainsTgeoGeo": { "field": "tContainsTgeoGeo", @@ -3328,7 +3545,8 @@ "temporal_from_hexwkb", "geo_from_text", "tcontains_tgeo_geo" - ] + ], + "primaryMeos": "tcontains_tgeo_geo" }, "tContainsTgeoTgeo": { "field": "tContainsTgeoTgeo", @@ -3344,7 +3562,8 @@ "meosFns": [ "temporal_from_hexwkb", "tcontains_tgeo_tgeo" - ] + ], + "primaryMeos": "tcontains_tgeo_tgeo" }, "tCoversTgeoGeo": { "field": "tCoversTgeoGeo", @@ -3361,7 +3580,8 @@ "temporal_from_hexwkb", "geo_from_text", "tcovers_tgeo_geo" - ] + ], + "primaryMeos": "tcovers_tgeo_geo" }, "tDwithinTgeoGeo": { "field": "tDwithinTgeoGeo", @@ -3379,7 +3599,8 @@ "temporal_from_hexwkb", "geo_from_text", "tdwithin_tgeo_geo" - ] + ], + "primaryMeos": "tdwithin_tgeo_geo" }, "aDisjointTgeoGeo": { "field": "aDisjointTgeoGeo", @@ -3392,7 +3613,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aDisjointTgeoTgeo": { "field": "aDisjointTgeoTgeo", @@ -3405,7 +3627,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aIntersectsTgeoGeo": { "field": "aIntersectsTgeoGeo", @@ -3418,7 +3641,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aIntersectsTgeoTgeo": { "field": "aIntersectsTgeoTgeo", @@ -3431,7 +3655,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aTouchesTgeoGeo": { "field": "aTouchesTgeoGeo", @@ -3444,7 +3669,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aTouchesTgeoTgeo": { "field": "aTouchesTgeoTgeo", @@ -3457,7 +3683,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aContainsTgeoGeo": { "field": "aContainsTgeoGeo", @@ -3470,7 +3697,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aContainsTgeoTgeo": { "field": "aContainsTgeoTgeo", @@ -3483,7 +3711,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aContainsGeoTgeo": { "field": "aContainsGeoTgeo", @@ -3496,7 +3725,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aCoversTgeoGeo": { "field": "aCoversTgeoGeo", @@ -3509,7 +3739,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aDwithinTgeoGeo": { "field": "aDwithinTgeoGeo", @@ -3523,7 +3754,8 @@ "Double" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "aDwithinTgeoTgeo": { "field": "aDwithinTgeoTgeo", @@ -3537,7 +3769,8 @@ "Double" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxLeftTpoint": { "field": "stboxLeftTpoint", @@ -3550,7 +3783,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverleftTpoint": { "field": "stboxOverleftTpoint", @@ -3563,7 +3797,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxRightTpoint": { "field": "stboxRightTpoint", @@ -3576,7 +3811,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverrightTpoint": { "field": "stboxOverrightTpoint", @@ -3589,7 +3825,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxBelowTpoint": { "field": "stboxBelowTpoint", @@ -3602,7 +3839,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverbelowTpoint": { "field": "stboxOverbelowTpoint", @@ -3615,7 +3853,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAboveTpoint": { "field": "stboxAboveTpoint", @@ -3628,7 +3867,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOveraboveTpoint": { "field": "stboxOveraboveTpoint", @@ -3641,7 +3881,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxFrontTpoint": { "field": "stboxFrontTpoint", @@ -3654,7 +3895,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverfrontTpoint": { "field": "stboxOverfrontTpoint", @@ -3667,7 +3909,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxBackTpoint": { "field": "stboxBackTpoint", @@ -3680,7 +3923,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverbackTpoint": { "field": "stboxOverbackTpoint", @@ -3693,7 +3937,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxBeforeTpoint": { "field": "stboxBeforeTpoint", @@ -3706,7 +3951,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverbeforeTpoint": { "field": "stboxOverbeforeTpoint", @@ -3719,7 +3965,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAfterTpoint": { "field": "stboxAfterTpoint", @@ -3732,7 +3979,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverafterTpoint": { "field": "stboxOverafterTpoint", @@ -3745,7 +3993,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxAdjacentTpoint": { "field": "stboxAdjacentTpoint", @@ -3758,7 +4007,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxContainsTpoint": { "field": "stboxContainsTpoint", @@ -3771,7 +4021,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxContainedTpoint": { "field": "stboxContainedTpoint", @@ -3784,7 +4035,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxOverlapsTpoint": { "field": "stboxOverlapsTpoint", @@ -3797,7 +4049,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxSameTpoint": { "field": "stboxSameTpoint", @@ -3810,7 +4063,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointLeftStbox": { "field": "tpointLeftStbox", @@ -3823,7 +4077,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverleftStbox": { "field": "tpointOverleftStbox", @@ -3836,7 +4091,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointRightStbox": { "field": "tpointRightStbox", @@ -3849,7 +4105,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverrightStbox": { "field": "tpointOverrightStbox", @@ -3862,7 +4119,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointBelowStbox": { "field": "tpointBelowStbox", @@ -3875,7 +4133,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverbelowStbox": { "field": "tpointOverbelowStbox", @@ -3888,7 +4147,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointAboveStbox": { "field": "tpointAboveStbox", @@ -3901,7 +4161,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOveraboveStbox": { "field": "tpointOveraboveStbox", @@ -3914,7 +4175,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointFrontStbox": { "field": "tpointFrontStbox", @@ -3927,7 +4189,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverfrontStbox": { "field": "tpointOverfrontStbox", @@ -3940,7 +4203,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointBackStbox": { "field": "tpointBackStbox", @@ -3953,7 +4217,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverbackStbox": { "field": "tpointOverbackStbox", @@ -3966,7 +4231,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointBeforeStbox": { "field": "tpointBeforeStbox", @@ -3979,7 +4245,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverbeforeStbox": { "field": "tpointOverbeforeStbox", @@ -3992,7 +4259,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointAfterStbox": { "field": "tpointAfterStbox", @@ -4005,7 +4273,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverafterStbox": { "field": "tpointOverafterStbox", @@ -4018,7 +4287,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointAdjacentStbox": { "field": "tpointAdjacentStbox", @@ -4031,7 +4301,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointContainsStbox": { "field": "tpointContainsStbox", @@ -4044,7 +4315,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointContainedStbox": { "field": "tpointContainedStbox", @@ -4057,7 +4329,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointOverlapsStbox": { "field": "tpointOverlapsStbox", @@ -4070,7 +4343,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointSameStbox": { "field": "tpointSameStbox", @@ -4083,7 +4357,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "h3IndexFromText": { "field": "h3IndexFromText", @@ -4097,7 +4372,8 @@ "retType": "Long", "meosFns": [ "h3index_parse" - ] + ], + "primaryMeos": "h3index_parse" }, "h3IndexAsText": { "field": "h3IndexAsText", @@ -4111,7 +4387,8 @@ "retType": "String", "meosFns": [ "h3index_to_string" - ] + ], + "primaryMeos": "h3index_to_string" }, "h3IndexParse": { "field": "h3IndexParse", @@ -4125,7 +4402,8 @@ "retType": "Long", "meosFns": [ "h3index_parse" - ] + ], + "primaryMeos": "h3index_parse" }, "h3IndexToString": { "field": "h3IndexToString", @@ -4139,7 +4417,8 @@ "retType": "String", "meosFns": [ "h3index_to_string" - ] + ], + "primaryMeos": "h3index_to_string" }, "h3IndexEq": { "field": "h3IndexEq", @@ -4154,7 +4433,8 @@ "retType": "Boolean", "meosFns": [ "h3index_eq" - ] + ], + "primaryMeos": "h3index_eq" }, "h3IndexNe": { "field": "h3IndexNe", @@ -4169,7 +4449,8 @@ "retType": "Boolean", "meosFns": [ "h3index_ne" - ] + ], + "primaryMeos": "h3index_ne" }, "h3IndexLt": { "field": "h3IndexLt", @@ -4184,7 +4465,8 @@ "retType": "Boolean", "meosFns": [ "h3index_lt" - ] + ], + "primaryMeos": "h3index_lt" }, "h3IndexLe": { "field": "h3IndexLe", @@ -4199,7 +4481,8 @@ "retType": "Boolean", "meosFns": [ "h3index_le" - ] + ], + "primaryMeos": "h3index_le" }, "h3IndexGt": { "field": "h3IndexGt", @@ -4214,7 +4497,8 @@ "retType": "Boolean", "meosFns": [ "h3index_gt" - ] + ], + "primaryMeos": "h3index_gt" }, "h3IndexGe": { "field": "h3IndexGe", @@ -4229,7 +4513,8 @@ "retType": "Boolean", "meosFns": [ "h3index_ge" - ] + ], + "primaryMeos": "h3index_ge" }, "h3IndexCmp": { "field": "h3IndexCmp", @@ -4244,7 +4529,8 @@ "retType": "Integer", "meosFns": [ "h3index_cmp" - ] + ], + "primaryMeos": "h3index_cmp" }, "h3IndexHash": { "field": "h3IndexHash", @@ -4258,7 +4544,8 @@ "retType": "Long", "meosFns": [ "h3index_hash" - ] + ], + "primaryMeos": "h3index_hash" }, "h3GridDisk": { "field": "h3GridDisk", @@ -4273,7 +4560,8 @@ "retType": "String", "meosFns": [ "h3_grid_disk" - ] + ], + "primaryMeos": "h3_grid_disk" }, "h3GridRing": { "field": "h3GridRing", @@ -4288,7 +4576,8 @@ "retType": "String", "meosFns": [ "h3_grid_ring" - ] + ], + "primaryMeos": "h3_grid_ring" }, "h3GridPathCells": { "field": "h3GridPathCells", @@ -4303,7 +4592,8 @@ "retType": "String", "meosFns": [ "h3_grid_path_cells" - ] + ], + "primaryMeos": "h3_grid_path_cells" }, "h3CellToChildren": { "field": "h3CellToChildren", @@ -4318,7 +4608,8 @@ "retType": "String", "meosFns": [ "h3_cell_to_children" - ] + ], + "primaryMeos": "h3_cell_to_children" }, "h3CompactCells": { "field": "h3CompactCells", @@ -4333,7 +4624,8 @@ "meosFns": [ "set_from_hexwkb", "h3_compact_cells" - ] + ], + "primaryMeos": "h3_compact_cells" }, "h3UncompactCells": { "field": "h3UncompactCells", @@ -4349,7 +4641,8 @@ "meosFns": [ "set_from_hexwkb", "h3_uncompact_cells" - ] + ], + "primaryMeos": "h3_uncompact_cells" }, "h3OriginToDirectedEdges": { "field": "h3OriginToDirectedEdges", @@ -4363,7 +4656,8 @@ "retType": "String", "meosFns": [ "h3_origin_to_directed_edges" - ] + ], + "primaryMeos": "h3_origin_to_directed_edges" }, "h3CellToVertexes": { "field": "h3CellToVertexes", @@ -4377,7 +4671,8 @@ "retType": "String", "meosFns": [ "h3_cell_to_vertexes" - ] + ], + "primaryMeos": "h3_cell_to_vertexes" }, "h3GetIcosahedronFaces": { "field": "h3GetIcosahedronFaces", @@ -4391,7 +4686,8 @@ "retType": "String", "meosFns": [ "h3_get_icosahedron_faces" - ] + ], + "primaryMeos": "h3_get_icosahedron_faces" }, "th3IndexFromText": { "field": "th3IndexFromText", @@ -4405,7 +4701,8 @@ "retType": "String", "meosFns": [ "th3index_in" - ] + ], + "primaryMeos": "th3index_in" }, "th3IndexInstFromText": { "field": "th3IndexInstFromText", @@ -4420,7 +4717,8 @@ "meosFns": [ "th3indexinst_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "th3IndexSeqFromText": { "field": "th3IndexSeqFromText", @@ -4436,7 +4734,8 @@ "meosFns": [ "th3indexseq_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "th3IndexSeqSetFromText": { "field": "th3IndexSeqSetFromText", @@ -4451,7 +4750,8 @@ "meosFns": [ "th3indexseqset_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "th3IndexMake": { "field": "th3IndexMake", @@ -4466,7 +4766,8 @@ "retType": "String", "meosFns": [ "th3index_make" - ] + ], + "primaryMeos": "th3index_make" }, "th3IndexInstMake": { "field": "th3IndexInstMake", @@ -4482,7 +4783,8 @@ "meosFns": [ "th3indexinst_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "th3indexinst_make" }, "th3IndexSeqMake": { "field": "th3IndexSeqMake", @@ -4501,7 +4803,8 @@ "meosFns": [ "th3indexseq_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "th3indexseq_make" }, "th3IndexSeqSetMake": { "field": "th3IndexSeqSetMake", @@ -4517,7 +4820,8 @@ "temporal_from_hexwkb", "th3indexseqset_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "th3indexseqset_make" }, "th3IndexStartValue": { "field": "th3IndexStartValue", @@ -4532,7 +4836,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_start_value" - ] + ], + "primaryMeos": "th3index_start_value" }, "th3IndexEndValue": { "field": "th3IndexEndValue", @@ -4547,7 +4852,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_end_value" - ] + ], + "primaryMeos": "th3index_end_value" }, "th3IndexValueN": { "field": "th3IndexValueN", @@ -4563,7 +4869,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_value_n" - ] + ], + "primaryMeos": "th3index_value_n" }, "th3IndexValueAtTimestamp": { "field": "th3IndexValueAtTimestamp", @@ -4580,7 +4887,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_value_at_timestamptz" - ] + ], + "primaryMeos": "th3index_value_at_timestamptz" }, "tbigintToTh3Index": { "field": "tbigintToTh3Index", @@ -4595,7 +4903,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbigint_to_th3index" - ] + ], + "primaryMeos": "tbigint_to_th3index" }, "th3IndexToTbigint": { "field": "th3IndexToTbigint", @@ -4610,7 +4919,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_to_tbigint" - ] + ], + "primaryMeos": "th3index_to_tbigint" }, "everEqH3IndexTh3Index": { "field": "everEqH3IndexTh3Index", @@ -4623,7 +4933,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everEqTh3IndexH3Index": { "field": "everEqTh3IndexH3Index", @@ -4636,7 +4947,8 @@ "Long" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everNeH3IndexTh3Index": { "field": "everNeH3IndexTh3Index", @@ -4649,7 +4961,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everNeTh3IndexH3Index": { "field": "everNeTh3IndexH3Index", @@ -4662,7 +4975,8 @@ "Long" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysEqH3IndexTh3Index": { "field": "alwaysEqH3IndexTh3Index", @@ -4675,7 +4989,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysEqTh3IndexH3Index": { "field": "alwaysEqTh3IndexH3Index", @@ -4688,7 +5003,8 @@ "Long" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysNeH3IndexTh3Index": { "field": "alwaysNeH3IndexTh3Index", @@ -4701,7 +5017,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysNeTh3IndexH3Index": { "field": "alwaysNeTh3IndexH3Index", @@ -4724,7 +5041,8 @@ "always_eq_th3index_h3index", "always_ne_h3index_th3index", "always_ne_th3index_h3index" - ] + ], + "primaryMeos": "always_ne_th3index_h3index" }, "everEqTh3IndexTh3Index": { "field": "everEqTh3IndexTh3Index", @@ -4737,7 +5055,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everNeTh3IndexTh3Index": { "field": "everNeTh3IndexTh3Index", @@ -4750,7 +5069,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysEqTh3IndexTh3Index": { "field": "alwaysEqTh3IndexTh3Index", @@ -4763,7 +5083,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysNeTh3IndexTh3Index": { "field": "alwaysNeTh3IndexTh3Index", @@ -4782,7 +5103,8 @@ "ever_ne_th3index_th3index", "always_eq_th3index_th3index", "always_ne_th3index_th3index" - ] + ], + "primaryMeos": "always_ne_th3index_th3index" }, "teqH3IndexTh3Index": { "field": "teqH3IndexTh3Index", @@ -4798,7 +5120,8 @@ "meosFns": [ "temporal_from_hexwkb", "teq_h3index_th3index" - ] + ], + "primaryMeos": "teq_h3index_th3index" }, "teqTh3IndexH3Index": { "field": "teqTh3IndexH3Index", @@ -4814,7 +5137,8 @@ "meosFns": [ "temporal_from_hexwkb", "teq_th3index_h3index" - ] + ], + "primaryMeos": "teq_th3index_h3index" }, "teqTh3IndexTh3Index": { "field": "teqTh3IndexTh3Index", @@ -4830,7 +5154,8 @@ "meosFns": [ "temporal_from_hexwkb", "teq_th3index_th3index" - ] + ], + "primaryMeos": "teq_th3index_th3index" }, "tneH3IndexTh3Index": { "field": "tneH3IndexTh3Index", @@ -4846,7 +5171,8 @@ "meosFns": [ "temporal_from_hexwkb", "tne_h3index_th3index" - ] + ], + "primaryMeos": "tne_h3index_th3index" }, "tneTh3IndexH3Index": { "field": "tneTh3IndexH3Index", @@ -4862,7 +5188,8 @@ "meosFns": [ "temporal_from_hexwkb", "tne_th3index_h3index" - ] + ], + "primaryMeos": "tne_th3index_h3index" }, "tneTh3IndexTh3Index": { "field": "tneTh3IndexTh3Index", @@ -4878,7 +5205,8 @@ "meosFns": [ "temporal_from_hexwkb", "tne_th3index_th3index" - ] + ], + "primaryMeos": "tne_th3index_th3index" }, "th3IndexGetResolution": { "field": "th3IndexGetResolution", @@ -4890,7 +5218,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexGetBaseCellNumber": { "field": "th3IndexGetBaseCellNumber", @@ -4902,7 +5231,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexIsValidCell": { "field": "th3IndexIsValidCell", @@ -4914,7 +5244,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexIsResClassIii": { "field": "th3IndexIsResClassIii", @@ -4926,7 +5257,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexIsPentagon": { "field": "th3IndexIsPentagon", @@ -4956,7 +5288,8 @@ "th3index_to_tgeogpoint", "th3index_to_tgeompoint", "th3index_cell_to_boundary" - ] + ], + "primaryMeos": "th3index_cell_to_boundary" }, "th3IndexCellToParent": { "field": "th3IndexCellToParent", @@ -4972,7 +5305,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_to_parent" - ] + ], + "primaryMeos": "th3index_cell_to_parent" }, "th3IndexCellToParentNext": { "field": "th3IndexCellToParentNext", @@ -4984,7 +5318,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexCellToCenterChild": { "field": "th3IndexCellToCenterChild", @@ -5000,7 +5335,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_to_center_child" - ] + ], + "primaryMeos": "th3index_cell_to_center_child" }, "th3IndexCellToCenterChildNext": { "field": "th3IndexCellToCenterChildNext", @@ -5012,7 +5348,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexCellToChildPos": { "field": "th3IndexCellToChildPos", @@ -5028,7 +5365,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_to_child_pos" - ] + ], + "primaryMeos": "th3index_cell_to_child_pos" }, "th3IndexChildPosToCell": { "field": "th3IndexChildPosToCell", @@ -5045,7 +5383,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_child_pos_to_cell" - ] + ], + "primaryMeos": "th3index_child_pos_to_cell" }, "tgeogpointToTh3Index": { "field": "tgeogpointToTh3Index", @@ -5061,7 +5400,8 @@ "meosFns": [ "temporal_from_hexwkb", "tgeogpoint_to_th3index" - ] + ], + "primaryMeos": "tgeogpoint_to_th3index" }, "tgeompointToTh3Index": { "field": "tgeompointToTh3Index", @@ -5077,7 +5417,8 @@ "meosFns": [ "temporal_from_hexwkb", "tgeompoint_to_th3index" - ] + ], + "primaryMeos": "tgeompoint_to_th3index" }, "th3IndexToTgeogpoint": { "field": "th3IndexToTgeogpoint", @@ -5089,7 +5430,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexToTgeompoint": { "field": "th3IndexToTgeompoint", @@ -5101,7 +5443,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexCellToBoundary": { "field": "th3IndexCellToBoundary", @@ -5113,7 +5456,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geomToH3Cell": { "field": "geomToH3Cell", @@ -5131,7 +5475,8 @@ "tpointinst_make", "tgeompoint_to_th3index", "th3index_start_value" - ] + ], + "primaryMeos": "th3index_start_value" }, "geoToH3IndexSet": { "field": "geoToH3IndexSet", @@ -5147,7 +5492,8 @@ "meosFns": [ "geo_from_text", "geo_to_h3index_set" - ] + ], + "primaryMeos": "geo_to_h3index_set" }, "everIntersectsH3IndexSetTh3Index": { "field": "everIntersectsH3IndexSetTh3Index", @@ -5164,7 +5510,8 @@ "set_from_hexwkb", "temporal_from_hexwkb", "ever_eq_h3indexset_th3index" - ] + ], + "primaryMeos": "ever_eq_h3indexset_th3index" }, "th3IndexAreNeighborCells": { "field": "th3IndexAreNeighborCells", @@ -5180,7 +5527,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_are_neighbor_cells" - ] + ], + "primaryMeos": "th3index_are_neighbor_cells" }, "th3IndexCellsToDirectedEdge": { "field": "th3IndexCellsToDirectedEdge", @@ -5196,7 +5544,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cells_to_directed_edge" - ] + ], + "primaryMeos": "th3index_cells_to_directed_edge" }, "th3IndexIsValidDirectedEdge": { "field": "th3IndexIsValidDirectedEdge", @@ -5208,7 +5557,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexGetDirectedEdgeOrigin": { "field": "th3IndexGetDirectedEdgeOrigin", @@ -5220,7 +5570,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexGetDirectedEdgeDestination": { "field": "th3IndexGetDirectedEdgeDestination", @@ -5232,7 +5583,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexDirectedEdgeToBoundary": { "field": "th3IndexDirectedEdgeToBoundary", @@ -5244,7 +5596,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexCellToVertex": { "field": "th3IndexCellToVertex", @@ -5260,7 +5613,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_to_vertex" - ] + ], + "primaryMeos": "th3index_cell_to_vertex" }, "th3IndexVertexToLatlng": { "field": "th3IndexVertexToLatlng", @@ -5272,7 +5626,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexIsValidVertex": { "field": "th3IndexIsValidVertex", @@ -5284,7 +5639,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "th3IndexGridDistance": { "field": "th3IndexGridDistance", @@ -5300,7 +5656,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_grid_distance" - ] + ], + "primaryMeos": "th3index_grid_distance" }, "th3IndexCellToLocalIj": { "field": "th3IndexCellToLocalIj", @@ -5316,7 +5673,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_to_local_ij" - ] + ], + "primaryMeos": "th3index_cell_to_local_ij" }, "th3IndexLocalIjToCell": { "field": "th3IndexLocalIjToCell", @@ -5332,7 +5690,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_local_ij_to_cell" - ] + ], + "primaryMeos": "th3index_local_ij_to_cell" }, "th3IndexCellArea": { "field": "th3IndexCellArea", @@ -5348,7 +5707,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_cell_area" - ] + ], + "primaryMeos": "th3index_cell_area" }, "th3IndexEdgeLength": { "field": "th3IndexEdgeLength", @@ -5364,7 +5724,8 @@ "meosFns": [ "temporal_from_hexwkb", "th3index_edge_length" - ] + ], + "primaryMeos": "th3index_edge_length" }, "tgeogpointGreatCircleDistance": { "field": "tgeogpointGreatCircleDistance", @@ -5381,7 +5742,8 @@ "meosFns": [ "temporal_from_hexwkb", "tgeogpoint_great_circle_distance" - ] + ], + "primaryMeos": "tgeogpoint_great_circle_distance" }, "abs": { "field": "abs", @@ -5396,7 +5758,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_abs" - ] + ], + "primaryMeos": "tnumber_abs" }, "ceil": { "field": "ceil", @@ -5411,7 +5774,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_ceil" - ] + ], + "primaryMeos": "tfloat_ceil" }, "floor": { "field": "floor", @@ -5426,7 +5790,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_floor" - ] + ], + "primaryMeos": "tfloat_floor" }, "exp": { "field": "exp", @@ -5441,7 +5806,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_exp" - ] + ], + "primaryMeos": "tfloat_exp" }, "ln": { "field": "ln", @@ -5456,7 +5822,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_ln" - ] + ], + "primaryMeos": "tfloat_ln" }, "log10": { "field": "log10", @@ -5471,7 +5838,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_log10" - ] + ], + "primaryMeos": "tfloat_log10" }, "radians": { "field": "radians", @@ -5486,7 +5854,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_radians" - ] + ], + "primaryMeos": "tfloat_radians" }, "derivative": { "field": "derivative", @@ -5501,7 +5870,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_derivative" - ] + ], + "primaryMeos": "temporal_derivative" }, "deltavalue": { "field": "deltavalue", @@ -5516,7 +5886,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_delta_value" - ] + ], + "primaryMeos": "tnumber_delta_value" }, "trend": { "field": "trend", @@ -5531,7 +5902,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_trend" - ] + ], + "primaryMeos": "tnumber_trend" }, "degrees": { "field": "degrees", @@ -5547,7 +5919,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_degrees" - ] + ], + "primaryMeos": "tfloat_degrees" }, "integral": { "field": "integral", @@ -5562,7 +5935,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_integral" - ] + ], + "primaryMeos": "tnumber_integral" }, "twavg": { "field": "twavg", @@ -5577,7 +5951,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_twavg" - ] + ], + "primaryMeos": "tnumber_twavg" }, "tnumber_add": { "field": "tnumber_add", @@ -5593,7 +5968,8 @@ "meosFns": [ "temporal_from_hexwkb", "add_tnumber_tnumber" - ] + ], + "primaryMeos": "add_tnumber_tnumber" }, "tnumber_sub": { "field": "tnumber_sub", @@ -5609,7 +5985,8 @@ "meosFns": [ "temporal_from_hexwkb", "sub_tnumber_tnumber" - ] + ], + "primaryMeos": "sub_tnumber_tnumber" }, "tnumber_mul": { "field": "tnumber_mul", @@ -5625,7 +6002,8 @@ "meosFns": [ "temporal_from_hexwkb", "mul_tnumber_tnumber" - ] + ], + "primaryMeos": "mul_tnumber_tnumber" }, "tnumber_div": { "field": "tnumber_div", @@ -5641,7 +6019,8 @@ "meosFns": [ "temporal_from_hexwkb", "div_tnumber_tnumber" - ] + ], + "primaryMeos": "div_tnumber_tnumber" }, "tfloatDerivative": { "field": "tfloatDerivative", @@ -5657,7 +6036,8 @@ "temporal_from_hexwkb", "temporal_derivative", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_derivative" }, "tfloatRound": { "field": "tfloatRound", @@ -5674,7 +6054,8 @@ "temporal_from_hexwkb", "temporal_round", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_round" }, "tfloatFloor": { "field": "tfloatFloor", @@ -5690,7 +6071,8 @@ "temporal_from_hexwkb", "tfloat_floor", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_floor" }, "tfloatCeil": { "field": "tfloatCeil", @@ -5706,7 +6088,8 @@ "temporal_from_hexwkb", "tfloat_ceil", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_ceil" }, "tfloatDegrees": { "field": "tfloatDegrees", @@ -5723,7 +6106,8 @@ "temporal_from_hexwkb", "tfloat_degrees", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_degrees" }, "tfloatRadians": { "field": "tfloatRadians", @@ -5739,7 +6123,8 @@ "temporal_from_hexwkb", "tfloat_radians", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_radians" }, "tnumberIntegral": { "field": "tnumberIntegral", @@ -5754,7 +6139,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_integral" - ] + ], + "primaryMeos": "tnumber_integral" }, "tnumberTwavg": { "field": "tnumberTwavg", @@ -5769,7 +6155,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_twavg" - ] + ], + "primaryMeos": "tnumber_twavg" }, "tnumberTrend": { "field": "tnumberTrend", @@ -5785,7 +6172,8 @@ "temporal_from_hexwkb", "tnumber_trend", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_trend" }, "tpointLength": { "field": "tpointLength", @@ -5800,7 +6188,8 @@ "meosFns": [ "temporal_from_hexwkb", "tpoint_length" - ] + ], + "primaryMeos": "tpoint_length" }, "tpointSpeed": { "field": "tpointSpeed", @@ -5816,7 +6205,8 @@ "temporal_from_hexwkb", "tpoint_speed", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_speed" }, "tpointAzimuth": { "field": "tpointAzimuth", @@ -5832,7 +6222,8 @@ "temporal_from_hexwkb", "tpoint_azimuth", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_azimuth" }, "tpointDirection": { "field": "tpointDirection", @@ -5848,7 +6239,8 @@ "temporal_from_hexwkb", "tpoint_direction", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_direction" }, "tpointCumulativeLength": { "field": "tpointCumulativeLength", @@ -5864,7 +6256,8 @@ "temporal_from_hexwkb", "tpoint_cumulative_length", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_cumulative_length" }, "tgeoTraversedArea": { "field": "tgeoTraversedArea", @@ -5880,7 +6273,8 @@ "temporal_from_hexwkb", "tgeo_traversed_area", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_traversed_area" }, "span_union": { "field": "spanUnion", @@ -5896,7 +6290,8 @@ "meosFns": [ "span_from_hexwkb", "super_union_span_span" - ] + ], + "primaryMeos": "super_union_span_span" }, "span_minus": { "field": "spanMinus", @@ -5912,7 +6307,8 @@ "meosFns": [ "span_from_hexwkb", "minus_span_span" - ] + ], + "primaryMeos": "minus_span_span" }, "span_intersection": { "field": "spanIntersection", @@ -5928,7 +6324,8 @@ "meosFns": [ "span_from_hexwkb", "intersection_span_span" - ] + ], + "primaryMeos": "intersection_span_span" }, "spanset_union": { "field": "spansetUnion", @@ -5944,7 +6341,8 @@ "meosFns": [ "spanset_from_hexwkb", "union_spanset_spanset" - ] + ], + "primaryMeos": "union_spanset_spanset" }, "spanset_minus": { "field": "spansetMinus", @@ -5960,7 +6358,8 @@ "meosFns": [ "spanset_from_hexwkb", "minus_spanset_spanset" - ] + ], + "primaryMeos": "minus_spanset_spanset" }, "spanset_intersection": { "field": "spansetIntersection", @@ -5976,7 +6375,8 @@ "meosFns": [ "spanset_from_hexwkb", "intersection_spanset_spanset" - ] + ], + "primaryMeos": "intersection_spanset_spanset" }, "spann": { "field": "spann", @@ -5992,7 +6392,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_span_n" - ] + ], + "primaryMeos": "spanset_span_n" }, "startSpan": { "field": "startSpan", @@ -6007,7 +6408,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_start_span" - ] + ], + "primaryMeos": "spanset_start_span" }, "endSpan": { "field": "endSpan", @@ -6022,7 +6424,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_end_span" - ] + ], + "primaryMeos": "spanset_end_span" }, "numSpans": { "field": "numSpans", @@ -6037,7 +6440,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_num_spans" - ] + ], + "primaryMeos": "spanset_num_spans" }, "setUnion": { "field": "setUnion", @@ -6053,7 +6457,8 @@ "meosFns": [ "union_set_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "union_set_set" }, "setMinus": { "field": "setMinus", @@ -6069,7 +6474,8 @@ "meosFns": [ "minus_set_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "minus_set_set" }, "setIntersection": { "field": "setIntersection", @@ -6085,7 +6491,8 @@ "meosFns": [ "intersection_set_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "intersection_set_set" }, "tbox_union": { "field": "tboxUnion", @@ -6101,7 +6508,8 @@ "meosFns": [ "tbox_from_hexwkb", "union_tbox_tbox" - ] + ], + "primaryMeos": "union_tbox_tbox" }, "tbox_intersection": { "field": "tboxIntersection", @@ -6117,7 +6525,8 @@ "meosFns": [ "tbox_from_hexwkb", "intersection_tbox_tbox" - ] + ], + "primaryMeos": "intersection_tbox_tbox" }, "stbox_union": { "field": "stboxUnion", @@ -6133,7 +6542,8 @@ "meosFns": [ "stbox_from_hexwkb", "union_stbox_stbox" - ] + ], + "primaryMeos": "union_stbox_stbox" }, "stbox_intersection": { "field": "stboxIntersection", @@ -6149,7 +6559,8 @@ "meosFns": [ "stbox_from_hexwkb", "intersection_stbox_stbox" - ] + ], + "primaryMeos": "intersection_stbox_stbox" }, "bigintSpan": { "field": "bigintSpan", @@ -6164,7 +6575,8 @@ "meosFns": [ "tbox_from_hexwkb", "tbox_to_bigintspan" - ] + ], + "primaryMeos": "tbox_to_bigintspan" }, "atTbox": { "field": "atTbox", @@ -6182,7 +6594,8 @@ "tbox_from_hexwkb", "tnumber_at_tbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_at_tbox" }, "minusTbox": { "field": "minusTbox", @@ -6200,7 +6613,8 @@ "tbox_from_hexwkb", "tnumber_minus_tbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_minus_tbox" }, "span_distance": { "field": "spanDistance", @@ -6216,7 +6630,8 @@ "meosFns": [ "span_from_hexwkb", "distance_floatspan_floatspan" - ] + ], + "primaryMeos": "distance_floatspan_floatspan" }, "spanset_distance": { "field": "spansetDistance", @@ -6232,7 +6647,8 @@ "meosFns": [ "spanset_from_hexwkb", "distance_floatspanset_floatspanset" - ] + ], + "primaryMeos": "distance_floatspanset_floatspanset" }, "set_distance": { "field": "setDistance", @@ -6248,7 +6664,8 @@ "meosFns": [ "set_from_hexwkb", "distance_floatset_floatset" - ] + ], + "primaryMeos": "distance_floatset_floatset" }, "time_distance": { "field": "timeDistanceSpan", @@ -6264,7 +6681,8 @@ "meosFns": [ "span_from_hexwkb", "distance_tstzspan_tstzspan" - ] + ], + "primaryMeos": "distance_tstzspan_tstzspan" }, "time_distance_spanset": { "field": "timeDistanceSpanset", @@ -6280,7 +6698,8 @@ "meosFns": [ "spanset_from_hexwkb", "distance_tstzspanset_tstzspanset" - ] + ], + "primaryMeos": "distance_tstzspanset_tstzspanset" }, "startValue": { "field": "startValue", @@ -6296,7 +6715,8 @@ "temporal_from_hexwkb", "trgeometry_start_value", "geo_as_text" - ] + ], + "primaryMeos": "trgeometry_start_value" }, "endValue": { "field": "endValue", @@ -6312,7 +6732,8 @@ "temporal_from_hexwkb", "trgeometry_end_value", "geo_as_text" - ] + ], + "primaryMeos": "trgeometry_end_value" }, "valueN": { "field": "valueN", @@ -6329,7 +6750,8 @@ "temporal_from_hexwkb", "trgeometry_value_n", "geo_as_text" - ] + ], + "primaryMeos": "trgeometry_value_n" }, "minusValue": { "field": "minusValue", @@ -6347,7 +6769,8 @@ "cbuffer_from_hexwkb", "tcbuffer_minus_cbuffer", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tcbuffer_minus_cbuffer" }, "minusValues": { "field": "minusValues", @@ -6365,7 +6788,8 @@ "set_from_hexwkb", "temporal_minus_values", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_values" }, "atValue": { "field": "atValue", @@ -6384,7 +6808,8 @@ "tcbuffer_at_cbuffer", "temporal_as_hexwkb", "temporal_timestamps" - ] + ], + "primaryMeos": "temporal_timestamps" }, "traversedArea": { "field": "traversedArea", @@ -6401,7 +6826,8 @@ "temporal_from_hexwkb", "tgeo_traversed_area", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_traversed_area" }, "getSpace": { "field": "getSpace", @@ -6417,7 +6843,8 @@ "stbox_from_hexwkb", "stbox_get_space", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_get_space" }, "tprecision": { "field": "tprecision", @@ -6435,7 +6862,8 @@ "pg_interval_in", "temporal_tprecision", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_tprecision" }, "tsample": { "field": "tsample", @@ -6454,7 +6882,8 @@ "pg_interval_in", "temporal_tsample", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_tsample" }, "tboolInst": { "field": "tboolInst", @@ -6470,7 +6899,8 @@ "meosFns": [ "tboolinst_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tboolinst_make" }, "tintInst": { "field": "tintInst", @@ -6486,7 +6916,8 @@ "meosFns": [ "tintinst_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tintinst_make" }, "tfloatInst": { "field": "tfloatInst", @@ -6502,7 +6933,8 @@ "meosFns": [ "tfloatinst_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloatinst_make" }, "ttextInst": { "field": "ttextInst", @@ -6522,7 +6954,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_to_tsequenceset" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "tgeompointInst": { "field": "tgeompointInst", @@ -6539,7 +6972,8 @@ "geo_from_text", "tpointinst_make", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpointinst_make" }, "tgeogpointInst": { "field": "tgeogpointInst", @@ -6552,7 +6986,8 @@ "Timestamp" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryInst": { "field": "tgeometryInst", @@ -6568,7 +7003,8 @@ "meosFns": [ "geo_from_text", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tgeographyInst": { "field": "tgeographyInst", @@ -6581,7 +7017,8 @@ "Timestamp" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboolSeq": { "field": "tboolSeq", @@ -6593,7 +7030,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintSeq": { "field": "tintSeq", @@ -6605,7 +7043,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatSeq": { "field": "tfloatSeq", @@ -6617,7 +7056,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextSeq": { "field": "ttextSeq", @@ -6629,7 +7069,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointSeq": { "field": "tgeompointSeq", @@ -6641,7 +7082,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointSeq": { "field": "tgeogpointSeq", @@ -6653,7 +7095,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometrySeq": { "field": "tgeometrySeq", @@ -6665,7 +7108,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographySeq": { "field": "tgeographySeq", @@ -6677,7 +7121,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboolSeqSet": { "field": "tboolSeqSet", @@ -6689,7 +7134,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintSeqSet": { "field": "tintSeqSet", @@ -6701,7 +7147,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatSeqSet": { "field": "tfloatSeqSet", @@ -6713,7 +7160,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextSeqSet": { "field": "ttextSeqSet", @@ -6725,7 +7173,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointSeqSet": { "field": "tgeompointSeqSet", @@ -6737,7 +7186,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointSeqSet": { "field": "tgeogpointSeqSet", @@ -6749,7 +7199,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometrySeqSet": { "field": "tgeometrySeqSet", @@ -6761,7 +7212,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographySeqSet": { "field": "tgeographySeqSet", @@ -6773,7 +7225,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tempSubtype": { "field": "tempSubtype", @@ -6788,7 +7241,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_subtype" - ] + ], + "primaryMeos": "temporal_subtype" }, "memSize": { "field": "memSize", @@ -6802,7 +7256,8 @@ "retType": "Integer", "meosFns": [ "temporal_from_hexwkb" - ] + ], + "primaryMeos": "temporal_from_hexwkb" }, "getTime": { "field": "getTime", @@ -6818,7 +7273,8 @@ "temporal_from_hexwkb", "temporal_time", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "temporal_time" }, "deleteTime": { "field": "deleteTime", @@ -6835,7 +7291,8 @@ "temporal_from_hexwkb", "temporal_delete_timestamptz", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_delete_timestamptz" }, "beforeTimestamp": { "field": "beforeTimestamp", @@ -6851,7 +7308,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "afterTimestamp": { "field": "afterTimestamp", @@ -6867,7 +7325,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "temporalToTInstant": { "field": "temporalToTInstant", @@ -6883,7 +7342,8 @@ "temporal_from_hexwkb", "temporal_to_tinstant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tinstant" }, "temporalToTSequence": { "field": "temporalToTSequence", @@ -6900,7 +7360,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequence" }, "temporalToTSequenceSet": { "field": "temporalToTSequenceSet", @@ -6917,7 +7378,8 @@ "temporal_from_hexwkb", "temporal_to_tsequenceset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "temporalSetInterp": { "field": "temporalSetInterp", @@ -6934,7 +7396,8 @@ "temporal_from_hexwkb", "temporal_set_interp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_set_interp" }, "tfloatToTint": { "field": "tfloatToTint", @@ -6950,7 +7413,8 @@ "temporal_from_hexwkb", "tfloat_to_tint", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_to_tint" }, "tintToTfloat": { "field": "tintToTfloat", @@ -6966,7 +7430,8 @@ "temporal_from_hexwkb", "tint_to_tfloat", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_to_tfloat" }, "tintShiftValue": { "field": "tintShiftValue", @@ -6983,7 +7448,8 @@ "temporal_from_hexwkb", "tint_shift_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_shift_value" }, "tintScaleValue": { "field": "tintScaleValue", @@ -7000,7 +7466,8 @@ "temporal_from_hexwkb", "tint_scale_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_scale_value" }, "tintShiftScaleValue": { "field": "tintShiftScaleValue", @@ -7018,7 +7485,8 @@ "temporal_from_hexwkb", "tint_shift_scale_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_shift_scale_value" }, "tfloatShiftValue": { "field": "tfloatShiftValue", @@ -7035,7 +7503,8 @@ "temporal_from_hexwkb", "tfloat_shift_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_shift_value" }, "tfloatScaleValue": { "field": "tfloatScaleValue", @@ -7052,7 +7521,8 @@ "temporal_from_hexwkb", "tfloat_scale_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_scale_value" }, "tfloatShiftScaleValue": { "field": "tfloatShiftScaleValue", @@ -7070,7 +7540,8 @@ "temporal_from_hexwkb", "tfloat_shift_scale_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_shift_scale_value" }, "temporalShiftTime": { "field": "temporalShiftTime", @@ -7088,7 +7559,8 @@ "pg_interval_in", "temporal_shift_time", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_shift_time" }, "temporalScaleTime": { "field": "temporalScaleTime", @@ -7106,7 +7578,8 @@ "pg_interval_in", "temporal_scale_time", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_scale_time" }, "temporalShiftScaleTime": { "field": "temporalShiftScaleTime", @@ -7125,7 +7598,8 @@ "pg_interval_in", "temporal_shift_scale_time", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_shift_scale_time" }, "tpointSetSrid": { "field": "tpointSetSrid", @@ -7142,7 +7616,8 @@ "temporal_from_hexwkb", "tspatial_set_srid", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tspatial_set_srid" }, "temporalSimplifyDp": { "field": "temporalSimplifyDp", @@ -7159,7 +7634,8 @@ "temporal_from_hexwkb", "temporal_simplify_dp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_dp" }, "temporalSimplifyMaxDist": { "field": "temporalSimplifyMaxDist", @@ -7176,7 +7652,8 @@ "temporal_from_hexwkb", "temporal_simplify_max_dist", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_max_dist" }, "temporalSimplifyMinDist": { "field": "temporalSimplifyMinDist", @@ -7193,7 +7670,8 @@ "temporal_from_hexwkb", "temporal_simplify_min_dist", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_min_dist" }, "temporalSimplifyMinTdelta": { "field": "temporalSimplifyMinTdelta", @@ -7211,7 +7689,8 @@ "pg_interval_in", "temporal_simplify_min_tdelta", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_min_tdelta" }, "temporalTPrecision": { "field": "temporalTPrecision", @@ -7229,7 +7708,8 @@ "pg_interval_in", "temporal_tprecision", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_tprecision" }, "temporalTSample": { "field": "temporalTSample", @@ -7248,7 +7728,8 @@ "pg_interval_in", "temporal_tsample", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_tsample" }, "tpointTrajectory": { "field": "tpointTrajectory", @@ -7264,7 +7745,8 @@ "temporal_from_hexwkb", "tpoint_trajectory", "geo_as_text" - ] + ], + "primaryMeos": "tpoint_trajectory" }, "floatsetCeil": { "field": "floatsetCeil", @@ -7280,7 +7762,8 @@ "set_from_hexwkb", "floatset_ceil", "set_as_hexwkb" - ] + ], + "primaryMeos": "floatset_ceil" }, "floatsetFloor": { "field": "floatsetFloor", @@ -7296,7 +7779,8 @@ "set_from_hexwkb", "floatset_floor", "set_as_hexwkb" - ] + ], + "primaryMeos": "floatset_floor" }, "floatsetDegrees": { "field": "floatsetDegrees", @@ -7312,7 +7796,8 @@ "set_from_hexwkb", "floatset_degrees", "set_as_hexwkb" - ] + ], + "primaryMeos": "floatset_degrees" }, "floatsetRadians": { "field": "floatsetRadians", @@ -7328,7 +7813,8 @@ "set_from_hexwkb", "floatset_radians", "set_as_hexwkb" - ] + ], + "primaryMeos": "floatset_radians" }, "textsetLower": { "field": "textsetLower", @@ -7344,7 +7830,8 @@ "set_from_hexwkb", "textset_lower", "set_as_hexwkb" - ] + ], + "primaryMeos": "textset_lower" }, "textsetUpper": { "field": "textsetUpper", @@ -7360,7 +7847,8 @@ "set_from_hexwkb", "textset_upper", "set_as_hexwkb" - ] + ], + "primaryMeos": "textset_upper" }, "textsetInitcap": { "field": "textsetInitcap", @@ -7376,7 +7864,8 @@ "set_from_hexwkb", "textset_initcap", "set_as_hexwkb" - ] + ], + "primaryMeos": "textset_initcap" }, "intspanShiftScale": { "field": "intspanShiftScale", @@ -7394,7 +7883,8 @@ "span_from_hexwkb", "intspan_shift_scale", "span_as_hexwkb" - ] + ], + "primaryMeos": "intspan_shift_scale" }, "floatspanShiftScale": { "field": "floatspanShiftScale", @@ -7412,7 +7902,8 @@ "span_from_hexwkb", "floatspan_shift_scale", "span_as_hexwkb" - ] + ], + "primaryMeos": "floatspan_shift_scale" }, "intspansetShiftScale": { "field": "intspansetShiftScale", @@ -7430,7 +7921,8 @@ "spanset_from_hexwkb", "intspanset_shift_scale", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "intspanset_shift_scale" }, "floatspansetShiftScale": { "field": "floatspansetShiftScale", @@ -7448,7 +7940,8 @@ "spanset_from_hexwkb", "floatspanset_shift_scale", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_shift_scale" }, "floatspansetCeil": { "field": "floatspansetCeil", @@ -7464,7 +7957,8 @@ "spanset_from_hexwkb", "floatspanset_ceil", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_ceil" }, "floatspansetFloor": { "field": "floatspansetFloor", @@ -7480,7 +7974,8 @@ "spanset_from_hexwkb", "floatspanset_floor", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_floor" }, "floatspansetRound": { "field": "floatspansetRound", @@ -7497,7 +7992,8 @@ "spanset_from_hexwkb", "floatspanset_round", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_round" }, "intspansetToFloat": { "field": "intspansetToFloat", @@ -7513,7 +8009,8 @@ "spanset_from_hexwkb", "intspanset_to_floatspanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "intspanset_to_floatspanset" }, "floatspansetToInt": { "field": "floatspansetToInt", @@ -7529,7 +8026,8 @@ "spanset_from_hexwkb", "floatspanset_to_intspanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_to_intspanset" }, "douglasPeuckerSimplify": { "field": "temporalSimplifyDp", @@ -7546,7 +8044,8 @@ "temporal_from_hexwkb", "temporal_simplify_dp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_dp" }, "maxDistSimplify": { "field": "temporalSimplifyMaxDist", @@ -7563,7 +8062,8 @@ "temporal_from_hexwkb", "temporal_simplify_max_dist", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_max_dist" }, "minDistSimplify": { "field": "temporalSimplifyMinDist", @@ -7580,7 +8080,8 @@ "temporal_from_hexwkb", "temporal_simplify_min_dist", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_min_dist" }, "minTimeDeltaSimplify": { "field": "temporalSimplifyMinTdelta", @@ -7598,7 +8099,8 @@ "pg_interval_in", "temporal_simplify_min_tdelta", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_simplify_min_tdelta" }, "intspanset": { "field": "floatspansetToInt", @@ -7614,7 +8116,8 @@ "spanset_from_hexwkb", "floatspanset_to_intspanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "floatspanset_to_intspanset" }, "floatspanset": { "field": "intspansetToFloat", @@ -7630,7 +8133,8 @@ "spanset_from_hexwkb", "intspanset_to_floatspanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "intspanset_to_floatspanset" }, "shiftScale": { "field": "floatspanShiftScale", @@ -7648,7 +8152,8 @@ "span_from_hexwkb", "floatspan_shift_scale", "span_as_hexwkb" - ] + ], + "primaryMeos": "floatspan_shift_scale" }, "dateset": { "field": "tstzsetToDateset", @@ -7664,7 +8169,8 @@ "set_from_hexwkb", "tstzset_to_dateset", "set_as_hexwkb" - ] + ], + "primaryMeos": "tstzset_to_dateset" }, "tstzset": { "field": "tstzset", @@ -7679,7 +8185,8 @@ "meosFns": [ "tstzset_in", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "span": { "field": "temporalToTstzspan", @@ -7695,7 +8202,8 @@ "temporal_from_hexwkb", "temporal_to_tstzspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tstzspan" }, "spanset": { "field": "spanToSpanset", @@ -7711,7 +8219,8 @@ "span_from_hexwkb", "span_to_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "span_to_spanset" }, "getTimeTile": { "field": "getTimeTile", @@ -7728,7 +8237,8 @@ "meosFns": [ "pg_interval_in", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "getSpaceTile": { "field": "getSpaceTile", @@ -7747,7 +8257,8 @@ "meosFns": [ "geo_from_text", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "getSpaceTimeTile": { "field": "getSpaceTimeTile", @@ -7770,7 +8281,8 @@ "geo_from_text", "pg_interval_in", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "getStboxTimeTile": { "field": "getTimeTile", @@ -7787,7 +8299,8 @@ "meosFns": [ "pg_interval_in", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "getValueTile": { "field": "getValueTileFloat", @@ -7803,7 +8316,8 @@ "retType": "String", "meosFns": [ "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "getTBoxTimeTile": { "field": "getTBoxTimeTile", @@ -7824,7 +8338,8 @@ "geo_as_hexewkb", "stbox_from_hexwkb", "geo_as_text" - ] + ], + "primaryMeos": "geo_as_hexewkb" }, "tnumberAdjacentTnumber": { "field": "tnumberAdjacentTnumber", @@ -7837,7 +8352,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainsTnumber": { "field": "tnumberContainsTnumber", @@ -7850,7 +8366,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainedTnumber": { "field": "tnumberContainedTnumber", @@ -7863,7 +8380,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverlapsTnumber": { "field": "tnumberOverlapsTnumber", @@ -7876,7 +8394,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberSameTnumber": { "field": "tnumberSameTnumber", @@ -7889,7 +8408,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "numspanAdjacentTnumber": { "field": "numspanAdjacentTnumber", @@ -7902,7 +8422,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "numspanContainsTnumber": { "field": "numspanContainsTnumber", @@ -7915,7 +8436,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "numspanContainedTnumber": { "field": "numspanContainedTnumber", @@ -7928,7 +8450,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "numspanOverlapsTnumber": { "field": "numspanOverlapsTnumber", @@ -7941,7 +8464,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "numspanSameTnumber": { "field": "numspanSameTnumber", @@ -7954,7 +8478,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberAdjacentNumspan": { "field": "tnumberAdjacentNumspan", @@ -7967,7 +8492,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainsNumspan": { "field": "tnumberContainsNumspan", @@ -7980,7 +8506,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainedNumspan": { "field": "tnumberContainedNumspan", @@ -7993,7 +8520,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverlapsNumspan": { "field": "tnumberOverlapsNumspan", @@ -8006,7 +8534,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberSameNumspan": { "field": "tnumberSameNumspan", @@ -8019,7 +8548,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanAdjacentTemporal": { "field": "tstzspanAdjacentTemporal", @@ -8032,7 +8562,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanContainsTemporal": { "field": "tstzspanContainsTemporal", @@ -8045,7 +8576,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanContainedTemporal": { "field": "tstzspanContainedTemporal", @@ -8058,7 +8590,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanOverlapsTemporal": { "field": "tstzspanOverlapsTemporal", @@ -8071,7 +8604,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanSameTemporal": { "field": "tstzspanSameTemporal", @@ -8084,7 +8618,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalAdjacentTstzspan": { "field": "temporalAdjacentTstzspan", @@ -8097,7 +8632,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalContainsTstzspan": { "field": "temporalContainsTstzspan", @@ -8110,7 +8646,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalContainedTstzspan": { "field": "temporalContainedTstzspan", @@ -8123,7 +8660,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalOverlapsTstzspan": { "field": "temporalOverlapsTstzspan", @@ -8136,7 +8674,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalSameTstzspan": { "field": "temporalSameTstzspan", @@ -8149,7 +8688,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatBucket": { "field": "floatBucket", @@ -8163,7 +8703,8 @@ "Double" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intBucket": { "field": "intBucket", @@ -8177,7 +8718,8 @@ "Integer" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalAtTstzspan": { "field": "temporalAtTstzspan", @@ -8195,7 +8737,8 @@ "span_from_hexwkb", "temporal_at_tstzspan", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzspan" }, "temporalAtTstzspanset": { "field": "temporalAtTstzspanset", @@ -8213,7 +8756,8 @@ "spanset_from_hexwkb", "temporal_at_tstzspanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzspanset" }, "temporalAtTstzset": { "field": "temporalAtTstzset", @@ -8231,7 +8775,8 @@ "set_from_hexwkb", "temporal_at_tstzset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzset" }, "temporalMinusTstzset": { "field": "temporalMinusTstzset", @@ -8249,7 +8794,8 @@ "set_from_hexwkb", "temporal_minus_tstzset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_tstzset" }, "temporalMinusTstzspan": { "field": "temporalMinusTstzspan", @@ -8267,7 +8813,8 @@ "span_from_hexwkb", "temporal_minus_tstzspan", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_tstzspan" }, "temporalMinusTstzspanset": { "field": "temporalMinusTstzspanset", @@ -8285,7 +8832,8 @@ "spanset_from_hexwkb", "temporal_minus_tstzspanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_tstzspanset" }, "temporalAtTimestamptz": { "field": "temporalAtTimestamptz", @@ -8302,7 +8850,8 @@ "temporal_from_hexwkb", "temporal_at_timestamptz", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_timestamptz" }, "temporalMinusTimestamptz": { "field": "temporalMinusTimestamptz", @@ -8319,7 +8868,8 @@ "temporal_from_hexwkb", "temporal_minus_timestamptz", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_timestamptz" }, "temporalDeleteTstzspan": { "field": "temporalDeleteTstzspan", @@ -8337,7 +8887,8 @@ "span_from_hexwkb", "temporal_delete_tstzspan", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_delete_tstzspan" }, "temporalDeleteTstzspanset": { "field": "temporalDeleteTstzspanset", @@ -8355,7 +8906,8 @@ "spanset_from_hexwkb", "temporal_delete_tstzspanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_delete_tstzspanset" }, "temporalDeleteTstzset": { "field": "temporalDeleteTstzset", @@ -8373,7 +8925,8 @@ "set_from_hexwkb", "temporal_delete_tstzset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_delete_tstzset" }, "temporalDeleteTimestamptz": { "field": "temporalDeleteTimestamptz", @@ -8390,7 +8943,8 @@ "temporal_from_hexwkb", "temporal_delete_timestamptz", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_delete_timestamptz" }, "tfloatAtValue": { "field": "tfloatAtValue", @@ -8407,7 +8961,8 @@ "temporal_from_hexwkb", "tfloat_at_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_at_value" }, "tfloatMinusValue": { "field": "tfloatMinusValue", @@ -8424,7 +8979,8 @@ "temporal_from_hexwkb", "tfloat_minus_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_minus_value" }, "tintAtValue": { "field": "tintAtValue", @@ -8441,7 +8997,8 @@ "temporal_from_hexwkb", "tint_at_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_at_value" }, "tintMinusValue": { "field": "tintMinusValue", @@ -8458,7 +9015,8 @@ "temporal_from_hexwkb", "tint_minus_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_minus_value" }, "tnumberAtSpan": { "field": "tnumberAtSpan", @@ -8476,7 +9034,8 @@ "span_from_hexwkb", "tnumber_at_span", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_at_span" }, "tnumberMinusSpan": { "field": "tnumberMinusSpan", @@ -8494,7 +9053,8 @@ "span_from_hexwkb", "tnumber_minus_span", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_minus_span" }, "tnumberAtSpanset": { "field": "tnumberAtSpanset", @@ -8512,7 +9072,8 @@ "spanset_from_hexwkb", "tnumber_at_spanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_at_spanset" }, "tnumberMinusSpanset": { "field": "tnumberMinusSpanset", @@ -8530,7 +9091,8 @@ "spanset_from_hexwkb", "tnumber_minus_spanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_minus_spanset" }, "tboolAtValue": { "field": "tboolAtValue", @@ -8547,7 +9109,8 @@ "temporal_from_hexwkb", "tbool_at_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tbool_at_value" }, "tboolMinusValue": { "field": "tboolMinusValue", @@ -8564,7 +9127,8 @@ "temporal_from_hexwkb", "tbool_minus_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tbool_minus_value" }, "ttextAtValue": { "field": "ttextAtValue", @@ -8582,7 +9146,8 @@ "cstring2text", "ttext_at_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "ttext_at_value" }, "ttextMinusValue": { "field": "ttextMinusValue", @@ -8600,7 +9165,8 @@ "cstring2text", "ttext_minus_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "ttext_minus_value" }, "tpointAtValue": { "field": "tpointAtValue", @@ -8618,7 +9184,8 @@ "geo_from_text", "tpoint_at_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_at_value" }, "tpointMinusValue": { "field": "tpointMinusValue", @@ -8636,7 +9203,8 @@ "geo_from_text", "tpoint_minus_value", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_minus_value" }, "tgeoAtStbox": { "field": "tgeoAtStbox", @@ -8654,7 +9222,8 @@ "stbox_from_hexwkb", "tgeo_at_stbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_at_stbox" }, "tgeoMinusStbox": { "field": "tgeoMinusStbox", @@ -8672,7 +9241,8 @@ "stbox_from_hexwkb", "tgeo_minus_stbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_minus_stbox" }, "tpointAtElevation": { "field": "tpointAtElevation", @@ -8690,7 +9260,8 @@ "span_from_hexwkb", "tpoint_at_elevation", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_at_elevation" }, "tpointMinusElevation": { "field": "tpointMinusElevation", @@ -8708,7 +9279,8 @@ "span_from_hexwkb", "tpoint_minus_elevation", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_minus_elevation" }, "temporalAtMax": { "field": "temporalAtMax", @@ -8724,7 +9296,8 @@ "temporal_from_hexwkb", "temporal_at_max", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_max" }, "temporalAtMin": { "field": "temporalAtMin", @@ -8740,7 +9313,8 @@ "temporal_from_hexwkb", "temporal_at_min", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_min" }, "temporalAtValues": { "field": "temporalAtValues", @@ -8758,7 +9332,8 @@ "set_from_hexwkb", "temporal_at_values", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_values" }, "temporalMinusValues": { "field": "temporalMinusValues", @@ -8776,7 +9351,8 @@ "set_from_hexwkb", "temporal_minus_values", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_values" }, "tgeoAtGeom": { "field": "tgeoAtGeom", @@ -8794,7 +9370,8 @@ "geo_from_text", "tgeo_at_geom", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_at_geom" }, "tgeoMinusGeom": { "field": "tgeoMinusGeom", @@ -8812,7 +9389,8 @@ "geo_from_text", "tgeo_minus_geom", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_minus_geom" }, "temporalEq": { "field": "temporalEq", @@ -8827,7 +9405,8 @@ "retType": "Boolean", "meosFns": [ "temporal_eq" - ] + ], + "primaryMeos": "temporal_eq" }, "temporalNe": { "field": "temporalNe", @@ -8842,7 +9421,8 @@ "retType": "Boolean", "meosFns": [ "temporal_ne" - ] + ], + "primaryMeos": "temporal_ne" }, "temporalLt": { "field": "temporalLt", @@ -8857,7 +9437,8 @@ "retType": "Boolean", "meosFns": [ "temporal_lt" - ] + ], + "primaryMeos": "temporal_lt" }, "temporalLe": { "field": "temporalLe", @@ -8872,7 +9453,8 @@ "retType": "Boolean", "meosFns": [ "temporal_le" - ] + ], + "primaryMeos": "temporal_le" }, "temporalGt": { "field": "temporalGt", @@ -8887,7 +9469,8 @@ "retType": "Boolean", "meosFns": [ "temporal_gt" - ] + ], + "primaryMeos": "temporal_gt" }, "temporalGe": { "field": "temporalGe", @@ -8902,7 +9485,8 @@ "retType": "Boolean", "meosFns": [ "temporal_ge" - ] + ], + "primaryMeos": "temporal_ge" }, "everEqTintInt": { "field": "everEqTintInt", @@ -8917,7 +9501,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_tint_int" - ] + ], + "primaryMeos": "ever_eq_tint_int" }, "everEqTfloatFloat": { "field": "everEqTfloatFloat", @@ -8932,7 +9517,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_tfloat_float" - ] + ], + "primaryMeos": "ever_eq_tfloat_float" }, "everEqTemporal": { "field": "everEqTemporal", @@ -8947,7 +9533,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_temporal_temporal" - ] + ], + "primaryMeos": "ever_eq_temporal_temporal" }, "everLtTintInt": { "field": "everLtTintInt", @@ -8962,7 +9549,8 @@ "retType": "Boolean", "meosFns": [ "ever_lt_tint_int" - ] + ], + "primaryMeos": "ever_lt_tint_int" }, "everLtTfloatFloat": { "field": "everLtTfloatFloat", @@ -8977,7 +9565,8 @@ "retType": "Boolean", "meosFns": [ "ever_lt_tfloat_float" - ] + ], + "primaryMeos": "ever_lt_tfloat_float" }, "everLtTemporal": { "field": "everLtTemporal", @@ -8992,7 +9581,8 @@ "retType": "Boolean", "meosFns": [ "ever_lt_temporal_temporal" - ] + ], + "primaryMeos": "ever_lt_temporal_temporal" }, "everLeTintInt": { "field": "everLeTintInt", @@ -9007,7 +9597,8 @@ "retType": "Boolean", "meosFns": [ "ever_le_tint_int" - ] + ], + "primaryMeos": "ever_le_tint_int" }, "everLeTfloatFloat": { "field": "everLeTfloatFloat", @@ -9022,7 +9613,8 @@ "retType": "Boolean", "meosFns": [ "ever_le_tfloat_float" - ] + ], + "primaryMeos": "ever_le_tfloat_float" }, "everLeTemporal": { "field": "everLeTemporal", @@ -9037,7 +9629,8 @@ "retType": "Boolean", "meosFns": [ "ever_le_temporal_temporal" - ] + ], + "primaryMeos": "ever_le_temporal_temporal" }, "everGtTintInt": { "field": "everGtTintInt", @@ -9052,7 +9645,8 @@ "retType": "Boolean", "meosFns": [ "ever_gt_tint_int" - ] + ], + "primaryMeos": "ever_gt_tint_int" }, "everGtTfloatFloat": { "field": "everGtTfloatFloat", @@ -9067,7 +9661,8 @@ "retType": "Boolean", "meosFns": [ "ever_gt_tfloat_float" - ] + ], + "primaryMeos": "ever_gt_tfloat_float" }, "everGtTemporal": { "field": "everGtTemporal", @@ -9082,7 +9677,8 @@ "retType": "Boolean", "meosFns": [ "ever_gt_temporal_temporal" - ] + ], + "primaryMeos": "ever_gt_temporal_temporal" }, "everGeTintInt": { "field": "everGeTintInt", @@ -9097,7 +9693,8 @@ "retType": "Boolean", "meosFns": [ "ever_ge_tint_int" - ] + ], + "primaryMeos": "ever_ge_tint_int" }, "everGeTfloatFloat": { "field": "everGeTfloatFloat", @@ -9112,7 +9709,8 @@ "retType": "Boolean", "meosFns": [ "ever_ge_tfloat_float" - ] + ], + "primaryMeos": "ever_ge_tfloat_float" }, "everGeTemporal": { "field": "everGeTemporal", @@ -9127,7 +9725,8 @@ "retType": "Boolean", "meosFns": [ "ever_ge_temporal_temporal" - ] + ], + "primaryMeos": "ever_ge_temporal_temporal" }, "everNeTintInt": { "field": "everNeTintInt", @@ -9142,7 +9741,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_tint_int" - ] + ], + "primaryMeos": "ever_ne_tint_int" }, "everNeTfloatFloat": { "field": "everNeTfloatFloat", @@ -9157,7 +9757,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_tfloat_float" - ] + ], + "primaryMeos": "ever_ne_tfloat_float" }, "everNeTemporal": { "field": "everNeTemporal", @@ -9172,7 +9773,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_temporal_temporal" - ] + ], + "primaryMeos": "ever_ne_temporal_temporal" }, "alwaysEqTintInt": { "field": "alwaysEqTintInt", @@ -9187,7 +9789,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_tint_int" - ] + ], + "primaryMeos": "always_eq_tint_int" }, "alwaysEqTfloatFloat": { "field": "alwaysEqTfloatFloat", @@ -9202,7 +9805,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_tfloat_float" - ] + ], + "primaryMeos": "always_eq_tfloat_float" }, "alwaysEqTemporal": { "field": "alwaysEqTemporal", @@ -9217,7 +9821,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_temporal_temporal" - ] + ], + "primaryMeos": "always_eq_temporal_temporal" }, "alwaysLtTintInt": { "field": "alwaysLtTintInt", @@ -9232,7 +9837,8 @@ "retType": "Boolean", "meosFns": [ "always_lt_tint_int" - ] + ], + "primaryMeos": "always_lt_tint_int" }, "alwaysLtTfloatFloat": { "field": "alwaysLtTfloatFloat", @@ -9247,7 +9853,8 @@ "retType": "Boolean", "meosFns": [ "always_lt_tfloat_float" - ] + ], + "primaryMeos": "always_lt_tfloat_float" }, "alwaysLtTemporal": { "field": "alwaysLtTemporal", @@ -9262,7 +9869,8 @@ "retType": "Boolean", "meosFns": [ "always_lt_temporal_temporal" - ] + ], + "primaryMeos": "always_lt_temporal_temporal" }, "alwaysLeTintInt": { "field": "alwaysLeTintInt", @@ -9277,7 +9885,8 @@ "retType": "Boolean", "meosFns": [ "always_le_tint_int" - ] + ], + "primaryMeos": "always_le_tint_int" }, "alwaysLeTfloatFloat": { "field": "alwaysLeTfloatFloat", @@ -9292,7 +9901,8 @@ "retType": "Boolean", "meosFns": [ "always_le_tfloat_float" - ] + ], + "primaryMeos": "always_le_tfloat_float" }, "alwaysLeTemporal": { "field": "alwaysLeTemporal", @@ -9307,7 +9917,8 @@ "retType": "Boolean", "meosFns": [ "always_le_temporal_temporal" - ] + ], + "primaryMeos": "always_le_temporal_temporal" }, "alwaysGtTintInt": { "field": "alwaysGtTintInt", @@ -9322,7 +9933,8 @@ "retType": "Boolean", "meosFns": [ "always_gt_tint_int" - ] + ], + "primaryMeos": "always_gt_tint_int" }, "alwaysGtTfloatFloat": { "field": "alwaysGtTfloatFloat", @@ -9337,7 +9949,8 @@ "retType": "Boolean", "meosFns": [ "always_gt_tfloat_float" - ] + ], + "primaryMeos": "always_gt_tfloat_float" }, "alwaysGtTemporal": { "field": "alwaysGtTemporal", @@ -9352,7 +9965,8 @@ "retType": "Boolean", "meosFns": [ "always_gt_temporal_temporal" - ] + ], + "primaryMeos": "always_gt_temporal_temporal" }, "alwaysGeTintInt": { "field": "alwaysGeTintInt", @@ -9367,7 +9981,8 @@ "retType": "Boolean", "meosFns": [ "always_ge_tint_int" - ] + ], + "primaryMeos": "always_ge_tint_int" }, "alwaysGeTfloatFloat": { "field": "alwaysGeTfloatFloat", @@ -9382,7 +9997,8 @@ "retType": "Boolean", "meosFns": [ "always_ge_tfloat_float" - ] + ], + "primaryMeos": "always_ge_tfloat_float" }, "alwaysGeTemporal": { "field": "alwaysGeTemporal", @@ -9397,7 +10013,8 @@ "retType": "Boolean", "meosFns": [ "always_ge_temporal_temporal" - ] + ], + "primaryMeos": "always_ge_temporal_temporal" }, "alwaysNeTintInt": { "field": "alwaysNeTintInt", @@ -9412,7 +10029,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_tint_int" - ] + ], + "primaryMeos": "always_ne_tint_int" }, "alwaysNeTfloatFloat": { "field": "alwaysNeTfloatFloat", @@ -9427,7 +10045,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_tfloat_float" - ] + ], + "primaryMeos": "always_ne_tfloat_float" }, "alwaysNeTemporal": { "field": "alwaysNeTemporal", @@ -9442,7 +10061,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_temporal_temporal" - ] + ], + "primaryMeos": "always_ne_temporal_temporal" }, "alwaysEqIntTint": { "field": "alwaysEqIntTint", @@ -9457,7 +10077,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_int_tint" - ] + ], + "primaryMeos": "always_eq_int_tint" }, "alwaysNeIntTint": { "field": "alwaysNeIntTint", @@ -9472,7 +10093,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_int_tint" - ] + ], + "primaryMeos": "always_ne_int_tint" }, "alwaysLtIntTint": { "field": "alwaysLtIntTint", @@ -9487,7 +10109,8 @@ "retType": "Boolean", "meosFns": [ "always_lt_int_tint" - ] + ], + "primaryMeos": "always_lt_int_tint" }, "alwaysLeIntTint": { "field": "alwaysLeIntTint", @@ -9502,7 +10125,8 @@ "retType": "Boolean", "meosFns": [ "always_le_int_tint" - ] + ], + "primaryMeos": "always_le_int_tint" }, "alwaysGtIntTint": { "field": "alwaysGtIntTint", @@ -9517,7 +10141,8 @@ "retType": "Boolean", "meosFns": [ "always_gt_int_tint" - ] + ], + "primaryMeos": "always_gt_int_tint" }, "alwaysGeIntTint": { "field": "alwaysGeIntTint", @@ -9532,7 +10157,8 @@ "retType": "Boolean", "meosFns": [ "always_ge_int_tint" - ] + ], + "primaryMeos": "always_ge_int_tint" }, "alwaysEqFloatTfloat": { "field": "alwaysEqFloatTfloat", @@ -9547,7 +10173,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_float_tfloat" - ] + ], + "primaryMeos": "always_eq_float_tfloat" }, "alwaysNeFloatTfloat": { "field": "alwaysNeFloatTfloat", @@ -9562,7 +10189,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_float_tfloat" - ] + ], + "primaryMeos": "always_ne_float_tfloat" }, "alwaysLtFloatTfloat": { "field": "alwaysLtFloatTfloat", @@ -9577,7 +10205,8 @@ "retType": "Boolean", "meosFns": [ "always_lt_float_tfloat" - ] + ], + "primaryMeos": "always_lt_float_tfloat" }, "alwaysLeFloatTfloat": { "field": "alwaysLeFloatTfloat", @@ -9592,7 +10221,8 @@ "retType": "Boolean", "meosFns": [ "always_le_float_tfloat" - ] + ], + "primaryMeos": "always_le_float_tfloat" }, "alwaysGtFloatTfloat": { "field": "alwaysGtFloatTfloat", @@ -9607,7 +10237,8 @@ "retType": "Boolean", "meosFns": [ "always_gt_float_tfloat" - ] + ], + "primaryMeos": "always_gt_float_tfloat" }, "alwaysGeFloatTfloat": { "field": "alwaysGeFloatTfloat", @@ -9622,7 +10253,8 @@ "retType": "Boolean", "meosFns": [ "always_ge_float_tfloat" - ] + ], + "primaryMeos": "always_ge_float_tfloat" }, "everEqIntTint": { "field": "everEqIntTint", @@ -9637,7 +10269,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_int_tint" - ] + ], + "primaryMeos": "ever_eq_int_tint" }, "everNeIntTint": { "field": "everNeIntTint", @@ -9652,7 +10285,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_int_tint" - ] + ], + "primaryMeos": "ever_ne_int_tint" }, "everLtIntTint": { "field": "everLtIntTint", @@ -9667,7 +10301,8 @@ "retType": "Boolean", "meosFns": [ "ever_lt_int_tint" - ] + ], + "primaryMeos": "ever_lt_int_tint" }, "everLeIntTint": { "field": "everLeIntTint", @@ -9682,7 +10317,8 @@ "retType": "Boolean", "meosFns": [ "ever_le_int_tint" - ] + ], + "primaryMeos": "ever_le_int_tint" }, "everGtIntTint": { "field": "everGtIntTint", @@ -9697,7 +10333,8 @@ "retType": "Boolean", "meosFns": [ "ever_gt_int_tint" - ] + ], + "primaryMeos": "ever_gt_int_tint" }, "everGeIntTint": { "field": "everGeIntTint", @@ -9712,7 +10349,8 @@ "retType": "Boolean", "meosFns": [ "ever_ge_int_tint" - ] + ], + "primaryMeos": "ever_ge_int_tint" }, "everEqFloatTfloat": { "field": "everEqFloatTfloat", @@ -9727,7 +10365,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_float_tfloat" - ] + ], + "primaryMeos": "ever_eq_float_tfloat" }, "everNeFloatTfloat": { "field": "everNeFloatTfloat", @@ -9742,7 +10381,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_float_tfloat" - ] + ], + "primaryMeos": "ever_ne_float_tfloat" }, "everLtFloatTfloat": { "field": "everLtFloatTfloat", @@ -9757,7 +10397,8 @@ "retType": "Boolean", "meosFns": [ "ever_lt_float_tfloat" - ] + ], + "primaryMeos": "ever_lt_float_tfloat" }, "everLeFloatTfloat": { "field": "everLeFloatTfloat", @@ -9772,7 +10413,8 @@ "retType": "Boolean", "meosFns": [ "ever_le_float_tfloat" - ] + ], + "primaryMeos": "ever_le_float_tfloat" }, "everGtFloatTfloat": { "field": "everGtFloatTfloat", @@ -9787,7 +10429,8 @@ "retType": "Boolean", "meosFns": [ "ever_gt_float_tfloat" - ] + ], + "primaryMeos": "ever_gt_float_tfloat" }, "everGeFloatTfloat": { "field": "everGeFloatTfloat", @@ -9802,7 +10445,8 @@ "retType": "Boolean", "meosFns": [ "ever_ge_float_tfloat" - ] + ], + "primaryMeos": "ever_ge_float_tfloat" }, "alwaysEqTboolBool": { "field": "alwaysEqTboolBool", @@ -9817,7 +10461,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_tbool_bool" - ] + ], + "primaryMeos": "always_eq_tbool_bool" }, "alwaysNeTboolBool": { "field": "alwaysNeTboolBool", @@ -9832,7 +10477,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_tbool_bool" - ] + ], + "primaryMeos": "always_ne_tbool_bool" }, "alwaysEqBoolTbool": { "field": "alwaysEqBoolTbool", @@ -9847,7 +10493,8 @@ "retType": "Boolean", "meosFns": [ "always_eq_bool_tbool" - ] + ], + "primaryMeos": "always_eq_bool_tbool" }, "alwaysNeBoolTbool": { "field": "alwaysNeBoolTbool", @@ -9862,7 +10509,8 @@ "retType": "Boolean", "meosFns": [ "always_ne_bool_tbool" - ] + ], + "primaryMeos": "always_ne_bool_tbool" }, "everEqTboolBool": { "field": "everEqTboolBool", @@ -9877,7 +10525,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_tbool_bool" - ] + ], + "primaryMeos": "ever_eq_tbool_bool" }, "everNeTboolBool": { "field": "everNeTboolBool", @@ -9892,7 +10541,8 @@ "retType": "Boolean", "meosFns": [ "ever_ne_tbool_bool" - ] + ], + "primaryMeos": "ever_ne_tbool_bool" }, "everEqBoolTbool": { "field": "everEqBoolTbool", @@ -9907,7 +10557,8 @@ "retType": "Boolean", "meosFns": [ "ever_eq_bool_tbool" - ] + ], + "primaryMeos": "ever_eq_bool_tbool" }, "everNeBoolTbool": { "field": "everNeBoolTbool", @@ -9925,7 +10576,8 @@ "ttext_in", "ttext_value_n", "temporal_from_hexwkb" - ] + ], + "primaryMeos": "ttext_value_n" }, "alwaysEqTextTtext": { "field": "alwaysEqTextTtext", @@ -9938,7 +10590,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysNeTextTtext": { "field": "alwaysNeTextTtext", @@ -9951,7 +10604,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysLtTextTtext": { "field": "alwaysLtTextTtext", @@ -9964,7 +10618,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysLeTextTtext": { "field": "alwaysLeTextTtext", @@ -9977,7 +10632,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysGtTextTtext": { "field": "alwaysGtTextTtext", @@ -9990,7 +10646,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysGeTextTtext": { "field": "alwaysGeTextTtext", @@ -10003,7 +10660,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysEqTtextText": { "field": "alwaysEqTtextText", @@ -10016,7 +10674,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysNeTtextText": { "field": "alwaysNeTtextText", @@ -10029,7 +10688,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysLtTtextText": { "field": "alwaysLtTtextText", @@ -10042,7 +10702,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysLeTtextText": { "field": "alwaysLeTtextText", @@ -10055,7 +10716,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysGtTtextText": { "field": "alwaysGtTtextText", @@ -10068,7 +10730,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "alwaysGeTtextText": { "field": "alwaysGeTtextText", @@ -10081,7 +10744,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everEqTextTtext": { "field": "everEqTextTtext", @@ -10094,7 +10758,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everNeTextTtext": { "field": "everNeTextTtext", @@ -10107,7 +10772,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everLtTextTtext": { "field": "everLtTextTtext", @@ -10120,7 +10786,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everLeTextTtext": { "field": "everLeTextTtext", @@ -10133,7 +10800,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everGtTextTtext": { "field": "everGtTextTtext", @@ -10146,7 +10814,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everGeTextTtext": { "field": "everGeTextTtext", @@ -10159,7 +10828,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everEqTtextText": { "field": "everEqTtextText", @@ -10172,7 +10842,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everNeTtextText": { "field": "everNeTtextText", @@ -10185,7 +10856,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everLtTtextText": { "field": "everLtTtextText", @@ -10198,7 +10870,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everLeTtextText": { "field": "everLeTtextText", @@ -10211,7 +10884,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everGtTtextText": { "field": "everGtTtextText", @@ -10224,7 +10898,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "everGeTtextText": { "field": "everGeTtextText", @@ -10237,7 +10912,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tpointIsSimple": { "field": "tpointIsSimple", @@ -10252,7 +10928,8 @@ "meosFns": [ "temporal_from_hexwkb", "tpoint_is_simple" - ] + ], + "primaryMeos": "tpoint_is_simple" }, "tboxLeftTbox": { "field": "tboxLeftTbox", @@ -10265,7 +10942,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverleftTbox": { "field": "tboxOverleftTbox", @@ -10278,7 +10956,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxRightTbox": { "field": "tboxRightTbox", @@ -10291,7 +10970,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverrightTbox": { "field": "tboxOverrightTbox", @@ -10304,7 +10984,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxBeforeTbox": { "field": "tboxBeforeTbox", @@ -10317,7 +10998,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverbeforeTbox": { "field": "tboxOverbeforeTbox", @@ -10330,7 +11012,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAfterTbox": { "field": "tboxAfterTbox", @@ -10343,7 +11026,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverafterTbox": { "field": "tboxOverafterTbox", @@ -10356,7 +11040,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAdjacentTbox": { "field": "tboxAdjacentTbox", @@ -10369,7 +11054,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxContainsTbox": { "field": "tboxContainsTbox", @@ -10382,7 +11068,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxContainedTbox": { "field": "tboxContainedTbox", @@ -10395,7 +11082,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverlapsTbox": { "field": "tboxOverlapsTbox", @@ -10408,7 +11096,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxSameTbox": { "field": "tboxSameTbox", @@ -10421,7 +11110,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxLeftTnumber": { "field": "tboxLeftTnumber", @@ -10434,7 +11124,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverleftTnumber": { "field": "tboxOverleftTnumber", @@ -10447,7 +11138,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxRightTnumber": { "field": "tboxRightTnumber", @@ -10460,7 +11152,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverrightTnumber": { "field": "tboxOverrightTnumber", @@ -10473,7 +11166,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxBeforeTnumber": { "field": "tboxBeforeTnumber", @@ -10486,7 +11180,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverbeforeTnumber": { "field": "tboxOverbeforeTnumber", @@ -10499,7 +11194,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAfterTnumber": { "field": "tboxAfterTnumber", @@ -10512,7 +11208,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverafterTnumber": { "field": "tboxOverafterTnumber", @@ -10525,7 +11222,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAdjacentTnumber": { "field": "tboxAdjacentTnumber", @@ -10538,7 +11236,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxContainsTnumber": { "field": "tboxContainsTnumber", @@ -10551,7 +11250,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxContainedTnumber": { "field": "tboxContainedTnumber", @@ -10564,7 +11264,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverlapsTnumber": { "field": "tboxOverlapsTnumber", @@ -10577,7 +11278,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxSameTnumber": { "field": "tboxSameTnumber", @@ -10590,7 +11292,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberLeftTbox": { "field": "tnumberLeftTbox", @@ -10603,7 +11306,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverleftTbox": { "field": "tnumberOverleftTbox", @@ -10616,7 +11320,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberRightTbox": { "field": "tnumberRightTbox", @@ -10629,7 +11334,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverrightTbox": { "field": "tnumberOverrightTbox", @@ -10642,7 +11348,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberBeforeTbox": { "field": "tnumberBeforeTbox", @@ -10655,7 +11362,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverbeforeTbox": { "field": "tnumberOverbeforeTbox", @@ -10668,7 +11376,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberAfterTbox": { "field": "tnumberAfterTbox", @@ -10681,7 +11390,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverafterTbox": { "field": "tnumberOverafterTbox", @@ -10694,7 +11404,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberAdjacentTbox": { "field": "tnumberAdjacentTbox", @@ -10707,7 +11418,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainsTbox": { "field": "tnumberContainsTbox", @@ -10720,7 +11432,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberContainedTbox": { "field": "tnumberContainedTbox", @@ -10733,7 +11446,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberOverlapsTbox": { "field": "tnumberOverlapsTbox", @@ -10746,7 +11460,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnumberSameTbox": { "field": "tnumberSameTbox", @@ -10759,7 +11474,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intspanLower": { "field": "intspanLower", @@ -10774,7 +11490,8 @@ "meosFns": [ "span_from_hexwkb", "intspan_lower" - ] + ], + "primaryMeos": "intspan_lower" }, "intspanUpper": { "field": "intspanUpper", @@ -10789,7 +11506,8 @@ "meosFns": [ "span_from_hexwkb", "intspan_upper" - ] + ], + "primaryMeos": "intspan_upper" }, "intspanWidth": { "field": "intspanWidth", @@ -10804,7 +11522,8 @@ "meosFns": [ "span_from_hexwkb", "intspan_width" - ] + ], + "primaryMeos": "intspan_width" }, "floatspanLower": { "field": "floatspanLower", @@ -10819,7 +11538,8 @@ "meosFns": [ "span_from_hexwkb", "floatspan_lower" - ] + ], + "primaryMeos": "floatspan_lower" }, "floatspanUpper": { "field": "floatspanUpper", @@ -10834,7 +11554,8 @@ "meosFns": [ "span_from_hexwkb", "floatspan_upper" - ] + ], + "primaryMeos": "floatspan_upper" }, "floatspanWidth": { "field": "floatspanWidth", @@ -10849,7 +11570,8 @@ "meosFns": [ "span_from_hexwkb", "floatspan_width" - ] + ], + "primaryMeos": "floatspan_width" }, "bigintspanLower": { "field": "bigintspanLower", @@ -10864,7 +11586,8 @@ "meosFns": [ "span_from_hexwkb", "bigintspan_lower" - ] + ], + "primaryMeos": "bigintspan_lower" }, "bigintspanUpper": { "field": "bigintspanUpper", @@ -10879,7 +11602,8 @@ "meosFns": [ "span_from_hexwkb", "bigintspan_upper" - ] + ], + "primaryMeos": "bigintspan_upper" }, "datespanLower": { "field": "datespanLower", @@ -10894,7 +11618,8 @@ "meosFns": [ "span_from_hexwkb", "datespan_lower" - ] + ], + "primaryMeos": "datespan_lower" }, "datespanUpper": { "field": "datespanUpper", @@ -10909,7 +11634,8 @@ "meosFns": [ "span_from_hexwkb", "datespan_upper" - ] + ], + "primaryMeos": "datespan_upper" }, "tstzspanLower": { "field": "tstzspanLower", @@ -10924,7 +11650,8 @@ "meosFns": [ "span_from_hexwkb", "tstzspan_lower" - ] + ], + "primaryMeos": "tstzspan_lower" }, "tstzspanUpper": { "field": "tstzspanUpper", @@ -10939,7 +11666,8 @@ "meosFns": [ "span_from_hexwkb", "tstzspan_upper" - ] + ], + "primaryMeos": "tstzspan_upper" }, "spanLowerInc": { "field": "spanLowerInc", @@ -10954,7 +11682,8 @@ "meosFns": [ "span_from_hexwkb", "span_lower_inc" - ] + ], + "primaryMeos": "span_lower_inc" }, "spanUpperInc": { "field": "spanUpperInc", @@ -10969,7 +11698,8 @@ "meosFns": [ "span_from_hexwkb", "span_upper_inc" - ] + ], + "primaryMeos": "span_upper_inc" }, "spansetNumSpans": { "field": "spansetNumSpans", @@ -10984,7 +11714,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_num_spans" - ] + ], + "primaryMeos": "spanset_num_spans" }, "spansetStartSpan": { "field": "spansetStartSpan", @@ -11000,7 +11731,8 @@ "spanset_from_hexwkb", "spanset_start_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "spanset_start_span" }, "spansetEndSpan": { "field": "spansetEndSpan", @@ -11016,7 +11748,8 @@ "spanset_from_hexwkb", "spanset_end_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "spanset_end_span" }, "spansetLowerInc": { "field": "spansetLowerInc", @@ -11031,7 +11764,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_lower_inc" - ] + ], + "primaryMeos": "spanset_lower_inc" }, "spansetUpperInc": { "field": "spansetUpperInc", @@ -11046,7 +11780,8 @@ "meosFns": [ "spanset_from_hexwkb", "spanset_upper_inc" - ] + ], + "primaryMeos": "spanset_upper_inc" }, "spanToSpanset": { "field": "spanToSpanset", @@ -11062,7 +11797,8 @@ "span_from_hexwkb", "span_to_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "span_to_spanset" }, "setNumValues": { "field": "setNumValues", @@ -11077,7 +11813,8 @@ "meosFns": [ "set_from_hexwkb", "set_num_values" - ] + ], + "primaryMeos": "set_num_values" }, "intsetStartValue": { "field": "intsetStartValue", @@ -11092,7 +11829,8 @@ "meosFns": [ "set_from_hexwkb", "intset_start_value" - ] + ], + "primaryMeos": "intset_start_value" }, "intsetEndValue": { "field": "intsetEndValue", @@ -11109,7 +11847,8 @@ "intset_end_value", "set_num_values", "intset_values" - ] + ], + "primaryMeos": "intset_values" }, "floatsetStartValue": { "field": "floatsetStartValue", @@ -11124,7 +11863,8 @@ "meosFns": [ "set_from_hexwkb", "floatset_start_value" - ] + ], + "primaryMeos": "floatset_start_value" }, "floatsetEndValue": { "field": "floatsetEndValue", @@ -11141,7 +11881,8 @@ "floatset_end_value", "set_num_values", "floatset_values" - ] + ], + "primaryMeos": "floatset_values" }, "datesetStartValue": { "field": "datesetStartValue", @@ -11156,7 +11897,8 @@ "meosFns": [ "set_from_hexwkb", "dateset_start_value" - ] + ], + "primaryMeos": "dateset_start_value" }, "datesetEndValue": { "field": "datesetEndValue", @@ -11173,7 +11915,8 @@ "dateset_end_value", "set_num_values", "dateset_values" - ] + ], + "primaryMeos": "dateset_values" }, "tstzsetStartValue": { "field": "tstzsetStartValue", @@ -11188,7 +11931,8 @@ "meosFns": [ "set_from_hexwkb", "tstzset_start_value" - ] + ], + "primaryMeos": "tstzset_start_value" }, "tstzsetEndValue": { "field": "tstzsetEndValue", @@ -11205,7 +11949,8 @@ "tstzset_end_value", "set_num_values", "tstzset_values" - ] + ], + "primaryMeos": "tstzset_values" }, "textsetStartValue": { "field": "textsetStartValue", @@ -11221,7 +11966,8 @@ "set_from_hexwkb", "textset_start_value", "text_out" - ] + ], + "primaryMeos": "textset_start_value" }, "textsetEndValue": { "field": "textsetEndValue", @@ -11239,7 +11985,8 @@ "text_out", "set_num_values", "textset_values" - ] + ], + "primaryMeos": "textset_values" }, "tstzspansetLower": { "field": "tstzspansetLower", @@ -11254,7 +12001,8 @@ "meosFns": [ "spanset_from_hexwkb", "tstzspanset_lower" - ] + ], + "primaryMeos": "tstzspanset_lower" }, "tstzspansetUpper": { "field": "tstzspansetUpper", @@ -11269,7 +12017,8 @@ "meosFns": [ "spanset_from_hexwkb", "tstzspanset_upper" - ] + ], + "primaryMeos": "tstzspanset_upper" }, "tstzspansetStartTimestamptz": { "field": "tstzspansetStartTimestamptz", @@ -11284,7 +12033,8 @@ "meosFns": [ "spanset_from_hexwkb", "tstzspanset_start_timestamptz" - ] + ], + "primaryMeos": "tstzspanset_start_timestamptz" }, "tstzspansetEndTimestamptz": { "field": "tstzspansetEndTimestamptz", @@ -11299,7 +12049,8 @@ "meosFns": [ "spanset_from_hexwkb", "tstzspanset_end_timestamptz" - ] + ], + "primaryMeos": "tstzspanset_end_timestamptz" }, "spansetSpanN": { "field": "spansetSpanN", @@ -11316,7 +12067,8 @@ "spanset_from_hexwkb", "spanset_span_n", "span_as_hexwkb" - ] + ], + "primaryMeos": "spanset_span_n" }, "intspansetLower": { "field": "intspansetLower", @@ -11331,7 +12083,8 @@ "meosFns": [ "spanset_from_hexwkb", "intspanset_lower" - ] + ], + "primaryMeos": "intspanset_lower" }, "intspansetUpper": { "field": "intspansetUpper", @@ -11346,7 +12099,8 @@ "meosFns": [ "spanset_from_hexwkb", "intspanset_upper" - ] + ], + "primaryMeos": "intspanset_upper" }, "intspansetWidth": { "field": "intspansetWidth", @@ -11362,7 +12116,8 @@ "meosFns": [ "spanset_from_hexwkb", "intspanset_width" - ] + ], + "primaryMeos": "intspanset_width" }, "floatspansetLower": { "field": "floatspansetLower", @@ -11378,7 +12133,8 @@ "spanset_from_hexwkb", "spanset_start_span", "floatspan_lower" - ] + ], + "primaryMeos": "floatspan_lower" }, "floatspansetUpper": { "field": "floatspansetUpper", @@ -11394,7 +12150,8 @@ "spanset_from_hexwkb", "spanset_end_span", "floatspan_upper" - ] + ], + "primaryMeos": "floatspan_upper" }, "floatspansetWidth": { "field": "floatspansetWidth", @@ -11410,7 +12167,8 @@ "meosFns": [ "spanset_from_hexwkb", "floatspanset_width" - ] + ], + "primaryMeos": "floatspanset_width" }, "tstzspansetNumTimestamps": { "field": "tstzspansetNumTimestamps", @@ -11426,7 +12184,8 @@ "spanset_from_hexwkb", "tstzspanset_num_timestamps", "tstzspanset_timestamps" - ] + ], + "primaryMeos": "tstzspanset_timestamps" }, "tstzspansetDuration": { "field": "tstzspansetDuration", @@ -11443,7 +12202,8 @@ "spanset_from_hexwkb", "tstzspanset_duration", "pg_interval_out" - ] + ], + "primaryMeos": "tstzspanset_duration" }, "intsetFromHexWKB": { "field": "intsetFromHexWKB", @@ -11455,7 +12215,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintsetFromHexWKB": { "field": "bigintsetFromHexWKB", @@ -11467,7 +12228,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatsetFromHexWKB": { "field": "floatsetFromHexWKB", @@ -11479,7 +12241,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "textsetFromHexWKB": { "field": "textsetFromHexWKB", @@ -11491,7 +12254,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzsetFromHexWKB": { "field": "tstzsetFromHexWKB", @@ -11503,7 +12267,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datesetFromHexWKB": { "field": "datesetFromHexWKB", @@ -11515,7 +12280,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intspanFromHexWKB": { "field": "intspanFromHexWKB", @@ -11527,7 +12293,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintspanFromHexWKB": { "field": "bigintspanFromHexWKB", @@ -11539,7 +12306,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatspanFromHexWKB": { "field": "floatspanFromHexWKB", @@ -11551,7 +12319,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspanFromHexWKB": { "field": "tstzspanFromHexWKB", @@ -11563,7 +12332,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datespanFromHexWKB": { "field": "datespanFromHexWKB", @@ -11575,7 +12345,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intspansetFromHexWKB": { "field": "intspansetFromHexWKB", @@ -11587,7 +12358,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintspansetFromHexWKB": { "field": "bigintspansetFromHexWKB", @@ -11599,7 +12371,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatspansetFromHexWKB": { "field": "floatspansetFromHexWKB", @@ -11611,7 +12384,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspansetFromHexWKB": { "field": "tstzspansetFromHexWKB", @@ -11623,7 +12397,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datespansetFromHexWKB": { "field": "datespansetFromHexWKB", @@ -11635,7 +12410,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboolFromHexWKB": { "field": "tboolFromHexWKB", @@ -11647,7 +12423,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintFromHexWKB": { "field": "tintFromHexWKB", @@ -11659,7 +12436,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatFromHexWKB": { "field": "tfloatFromHexWKB", @@ -11671,7 +12449,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextFromHexWKB": { "field": "ttextFromHexWKB", @@ -11683,7 +12462,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromHexEWKB": { "field": "tgeometryFromHexEWKB", @@ -11695,7 +12475,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromHexEWKB": { "field": "tgeographyFromHexEWKB", @@ -11707,7 +12488,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromHexEWKB": { "field": "tgeompointFromHexEWKB", @@ -11719,7 +12501,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromHexEWKB": { "field": "tgeogpointFromHexEWKB", @@ -11731,7 +12514,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromMFJSON": { "field": "tgeometryFromMFJSON", @@ -11743,7 +12527,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromMFJSON": { "field": "tgeographyFromMFJSON", @@ -11755,7 +12540,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromMFJSON": { "field": "tgeompointFromMFJSON", @@ -11767,7 +12553,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromMFJSON": { "field": "tgeogpointFromMFJSON", @@ -11779,7 +12566,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboolFromText": { "field": "tboolFromText", @@ -11791,7 +12579,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintFromText": { "field": "tintFromText", @@ -11803,7 +12592,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatFromText": { "field": "tfloatFromText", @@ -11815,7 +12605,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextFromText": { "field": "ttextFromText", @@ -11827,7 +12618,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromText": { "field": "tgeompointFromText", @@ -11839,7 +12631,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromText": { "field": "tgeogpointFromText", @@ -11851,7 +12644,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromEWKT": { "field": "tgeompointFromEWKT", @@ -11863,7 +12657,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromEWKT": { "field": "tgeogpointFromEWKT", @@ -11875,7 +12670,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromText": { "field": "tgeometryFromText", @@ -11887,7 +12683,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromText": { "field": "tgeographyFromText", @@ -11899,7 +12696,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromEWKT": { "field": "tgeometryFromEWKT", @@ -11911,7 +12709,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromEWKT": { "field": "tgeographyFromEWKT", @@ -11926,7 +12725,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tboolFromBinary": { "field": "tboolFromBinary", @@ -11938,7 +12738,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintFromBinary": { "field": "tintFromBinary", @@ -11950,7 +12751,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatFromBinary": { "field": "tfloatFromBinary", @@ -11962,7 +12764,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextFromBinary": { "field": "ttextFromBinary", @@ -11974,7 +12777,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromBinary": { "field": "tgeompointFromBinary", @@ -11986,7 +12790,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromBinary": { "field": "tgeogpointFromBinary", @@ -11998,7 +12803,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromBinary": { "field": "tgeometryFromBinary", @@ -12010,7 +12816,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromBinary": { "field": "tgeographyFromBinary", @@ -12022,7 +12829,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointFromEWKB": { "field": "tgeompointFromEWKB", @@ -12034,7 +12842,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointFromEWKB": { "field": "tgeogpointFromEWKB", @@ -12046,7 +12855,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometryFromEWKB": { "field": "tgeometryFromEWKB", @@ -12058,7 +12868,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographyFromEWKB": { "field": "tgeographyFromEWKB", @@ -12070,7 +12881,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "asBinary": { "field": "asBinary", @@ -12082,7 +12894,8 @@ "String" ], "retType": "byte[]", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "asEWKB": { "field": "asEWKB", @@ -12094,7 +12907,8 @@ "String" ], "retType": "byte[]", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "asHexEWKB": { "field": "asHexEWKB", @@ -12113,7 +12927,8 @@ "set_as_hexwkb", "geogset_in", "set_from_hexwkb" - ] + ], + "primaryMeos": "set_from_hexwkb" }, "geomsetFromText": { "field": "geomsetFromText", @@ -12125,7 +12940,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geogsetFromText": { "field": "geogsetFromText", @@ -12137,7 +12953,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geomsetFromEWKT": { "field": "geomsetFromEWKT", @@ -12149,7 +12966,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geogsetFromEWKT": { "field": "geogsetFromEWKT", @@ -12161,7 +12979,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geomsetFromHexWKB": { "field": "geomsetFromHexWKB", @@ -12173,7 +12992,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geogsetFromHexWKB": { "field": "geogsetFromHexWKB", @@ -12185,7 +13005,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geomsetFromBinary": { "field": "geomsetFromBinary", @@ -12197,7 +13018,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geogsetFromBinary": { "field": "geogsetFromBinary", @@ -12209,7 +13031,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geomsetFromEWKB": { "field": "geomsetFromEWKB", @@ -12221,7 +13044,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "geogsetFromEWKB": { "field": "geogsetFromEWKB", @@ -12233,7 +13057,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxFromHexWKB": { "field": "tboxFromHexWKB", @@ -12248,7 +13073,8 @@ "meosFns": [ "tbox_from_hexwkb", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "tboxFromBinary": { "field": "tboxFromBinary", @@ -12263,7 +13089,8 @@ "meosFns": [ "tbox_from_hexwkb", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "stboxFromHexWKB": { "field": "stboxFromHexWKB", @@ -12278,7 +13105,8 @@ "meosFns": [ "stbox_from_hexwkb", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "stboxFromBinary": { "field": "stboxFromBinary", @@ -12293,7 +13121,8 @@ "meosFns": [ "stbox_from_hexwkb", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "ttextUpper": { "field": "ttextUpper", @@ -12309,7 +13138,8 @@ "temporal_from_hexwkb", "ttext_upper", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "ttext_upper" }, "ttextLower": { "field": "ttextLower", @@ -12325,7 +13155,8 @@ "temporal_from_hexwkb", "ttext_lower", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "ttext_lower" }, "ttextInitcap": { "field": "ttextInitcap", @@ -12343,7 +13174,8 @@ "temporal_as_hexwkb", "ttext_in", "ttext_value_n" - ] + ], + "primaryMeos": "ttext_value_n" }, "teqTextTtext": { "field": "teqTextTtext", @@ -12356,7 +13188,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tneTextTtext": { "field": "tneTextTtext", @@ -12369,7 +13202,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tltTextTtext": { "field": "tltTextTtext", @@ -12382,7 +13216,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tleTextTtext": { "field": "tleTextTtext", @@ -12395,7 +13230,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgtTextTtext": { "field": "tgtTextTtext", @@ -12408,7 +13244,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeTextTtext": { "field": "tgeTextTtext", @@ -12421,7 +13258,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "teqTtextText": { "field": "teqTtextText", @@ -12434,7 +13272,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tneTtextText": { "field": "tneTtextText", @@ -12447,7 +13286,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tltTtextText": { "field": "tltTtextText", @@ -12460,7 +13300,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tleTtextText": { "field": "tleTtextText", @@ -12473,7 +13314,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgtTtextText": { "field": "tgtTtextText", @@ -12486,7 +13328,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeTtextText": { "field": "tgeTtextText", @@ -12499,7 +13342,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextCatTtextText": { "field": "ttextCatTtextText", @@ -12516,7 +13360,8 @@ "temporal_from_hexwkb", "cstring2text", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "cstring2text" }, "ttextCatTextTtext": { "field": "ttextCatTextTtext", @@ -12533,7 +13378,8 @@ "cstring2text", "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "cstring2text" }, "ttextCatTtextTtext": { "field": "ttextCatTtextTtext", @@ -12549,7 +13395,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "ttextCat": { "field": "ttextCatTtextTtext", @@ -12565,7 +13412,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "textsetCatTextsetText": { "field": "textsetCatTextsetText", @@ -12583,7 +13431,8 @@ "cstring2text", "textcat_textset_text", "set_as_hexwkb" - ] + ], + "primaryMeos": "textcat_textset_text" }, "textsetCatTextTextset": { "field": "textsetCatTextTextset", @@ -12601,7 +13450,8 @@ "set_from_hexwkb", "textcat_text_textset", "set_as_hexwkb" - ] + ], + "primaryMeos": "textcat_text_textset" }, "textsetCat": { "field": "textsetCatTextsetText", @@ -12619,7 +13469,8 @@ "cstring2text", "textcat_textset_text", "set_as_hexwkb" - ] + ], + "primaryMeos": "textcat_textset_text" }, "tint": { "field": "tint", @@ -12634,7 +13485,8 @@ "meosFns": [ "tint_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tfloat": { "field": "tfloat", @@ -12649,7 +13501,8 @@ "meosFns": [ "tfloat_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tbool": { "field": "tbool", @@ -12664,7 +13517,8 @@ "meosFns": [ "tbool_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "ttext": { "field": "ttext", @@ -12679,7 +13533,8 @@ "meosFns": [ "ttext_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tgeogpoint": { "field": "tgeogpoint", @@ -12694,7 +13549,8 @@ "meosFns": [ "tgeogpoint_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tstzspan": { "field": "tstzspan", @@ -12709,7 +13565,8 @@ "meosFns": [ "tstzspan_in", "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "tstzspanset": { "field": "tstzspanset", @@ -12724,7 +13581,8 @@ "meosFns": [ "tstzspanset_in", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "spanset_as_hexwkb" }, "intspan": { "field": "intspan", @@ -12739,7 +13597,8 @@ "meosFns": [ "intspan_in", "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "floatspan": { "field": "floatspan", @@ -12754,7 +13613,8 @@ "meosFns": [ "floatspan_in", "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "datespan": { "field": "datespan", @@ -12769,7 +13629,8 @@ "meosFns": [ "datespan_in", "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "datespanset": { "field": "datespanset", @@ -12784,7 +13645,8 @@ "meosFns": [ "datespanset_in", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "spanset_as_hexwkb" }, "intset": { "field": "intset", @@ -12799,7 +13661,8 @@ "meosFns": [ "intset_in", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "floatset": { "field": "floatset", @@ -12814,7 +13677,8 @@ "meosFns": [ "floatset_in", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "textset": { "field": "textset", @@ -12829,7 +13693,8 @@ "meosFns": [ "textset_in", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "bigintset": { "field": "bigintset", @@ -12844,7 +13709,8 @@ "meosFns": [ "bigintset_in", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "stbox": { "field": "stbox", @@ -12859,7 +13725,8 @@ "meosFns": [ "stbox_in", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "stbox_as_hexwkb" }, "tbox": { "field": "tbox", @@ -12874,7 +13741,8 @@ "meosFns": [ "tbox_in", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "tboolFromMfjson": { "field": "tboolFromMfjson", @@ -12889,7 +13757,8 @@ "meosFns": [ "tbool_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tintFromMfjson": { "field": "tintFromMfjson", @@ -12904,7 +13773,8 @@ "meosFns": [ "tint_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tfloatFromMfjson": { "field": "tfloatFromMfjson", @@ -12919,7 +13789,8 @@ "meosFns": [ "tfloat_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "ttextFromMfjson": { "field": "ttextFromMfjson", @@ -12934,7 +13805,8 @@ "meosFns": [ "ttext_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tgeompointFromMfjson": { "field": "tgeompointFromMfjson", @@ -12949,7 +13821,8 @@ "meosFns": [ "tgeompoint_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tgeogpointFromMfjson": { "field": "tgeogpointFromMfjson", @@ -12964,7 +13837,8 @@ "meosFns": [ "tgeogpoint_from_mfjson", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tboolFromBaseTemp": { "field": "tboolFromBaseTemp", @@ -12981,7 +13855,8 @@ "temporal_from_hexwkb", "tbool_from_base_temp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tbool_from_base_temp" }, "tintFromBaseTemp": { "field": "tintFromBaseTemp", @@ -12998,7 +13873,8 @@ "temporal_from_hexwkb", "tint_from_base_temp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tint_from_base_temp" }, "tfloatFromBaseTemp": { "field": "tfloatFromBaseTemp", @@ -13015,7 +13891,8 @@ "temporal_from_hexwkb", "tfloat_from_base_temp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tfloat_from_base_temp" }, "ttextFromBaseTemp": { "field": "ttextFromBaseTemp", @@ -13034,7 +13911,8 @@ "temporal_from_hexwkb", "ttext_from_base_temp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "ttext_from_base_temp" }, "tpointFromBaseTemp": { "field": "tpointFromBaseTemp", @@ -13052,7 +13930,8 @@ "temporal_from_hexwkb", "tpoint_from_base_temp", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_from_base_temp" }, "tnumberAbs": { "field": "tnumberAbs", @@ -13067,7 +13946,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_abs" - ] + ], + "primaryMeos": "tnumber_abs" }, "tnumberDeltaValue": { "field": "tnumberDeltaValue", @@ -13082,7 +13962,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_delta_value" - ] + ], + "primaryMeos": "tnumber_delta_value" }, "tnumberAngularDifference": { "field": "tnumberAngularDifference", @@ -13097,7 +13978,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnumber_angular_difference" - ] + ], + "primaryMeos": "tnumber_angular_difference" }, "tpointAngularDifference": { "field": "tpointAngularDifference", @@ -13112,7 +13994,8 @@ "meosFns": [ "temporal_from_hexwkb", "tpoint_angular_difference" - ] + ], + "primaryMeos": "tpoint_angular_difference" }, "tfloatExp": { "field": "tfloatExp", @@ -13127,7 +14010,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_exp" - ] + ], + "primaryMeos": "tfloat_exp" }, "tfloatLn": { "field": "tfloatLn", @@ -13142,7 +14026,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_ln" - ] + ], + "primaryMeos": "tfloat_ln" }, "tfloatLog10": { "field": "tfloatLog10", @@ -13157,7 +14042,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_log10" - ] + ], + "primaryMeos": "tfloat_log10" }, "addTintInt": { "field": "addTintInt", @@ -13173,7 +14059,8 @@ "meosFns": [ "temporal_from_hexwkb", "add_tint_int" - ] + ], + "primaryMeos": "add_tint_int" }, "subTintInt": { "field": "subTintInt", @@ -13189,7 +14076,8 @@ "meosFns": [ "temporal_from_hexwkb", "sub_tint_int" - ] + ], + "primaryMeos": "sub_tint_int" }, "multTintInt": { "field": "multTintInt", @@ -13205,7 +14093,8 @@ "meosFns": [ "temporal_from_hexwkb", "mul_tint_int" - ] + ], + "primaryMeos": "mul_tint_int" }, "divTintInt": { "field": "divTintInt", @@ -13221,7 +14110,8 @@ "meosFns": [ "temporal_from_hexwkb", "div_tint_int" - ] + ], + "primaryMeos": "div_tint_int" }, "addTfloatFloat": { "field": "addTfloatFloat", @@ -13237,7 +14127,8 @@ "meosFns": [ "temporal_from_hexwkb", "add_tfloat_float" - ] + ], + "primaryMeos": "add_tfloat_float" }, "subTfloatFloat": { "field": "subTfloatFloat", @@ -13253,7 +14144,8 @@ "meosFns": [ "temporal_from_hexwkb", "sub_tfloat_float" - ] + ], + "primaryMeos": "sub_tfloat_float" }, "multTfloatFloat": { "field": "multTfloatFloat", @@ -13269,7 +14161,8 @@ "meosFns": [ "temporal_from_hexwkb", "mul_tfloat_float" - ] + ], + "primaryMeos": "mul_tfloat_float" }, "divTfloatFloat": { "field": "divTfloatFloat", @@ -13285,7 +14178,8 @@ "meosFns": [ "temporal_from_hexwkb", "div_tfloat_float" - ] + ], + "primaryMeos": "div_tfloat_float" }, "addTnumberTnumber": { "field": "addTnumberTnumber", @@ -13301,7 +14195,8 @@ "meosFns": [ "temporal_from_hexwkb", "add_tnumber_tnumber" - ] + ], + "primaryMeos": "add_tnumber_tnumber" }, "subTnumberTnumber": { "field": "subTnumberTnumber", @@ -13317,7 +14212,8 @@ "meosFns": [ "temporal_from_hexwkb", "sub_tnumber_tnumber" - ] + ], + "primaryMeos": "sub_tnumber_tnumber" }, "multTnumberTnumber": { "field": "multTnumberTnumber", @@ -13333,7 +14229,8 @@ "meosFns": [ "temporal_from_hexwkb", "mul_tnumber_tnumber" - ] + ], + "primaryMeos": "mul_tnumber_tnumber" }, "divTnumberTnumber": { "field": "divTnumberTnumber", @@ -13349,7 +14246,8 @@ "meosFns": [ "temporal_from_hexwkb", "div_tnumber_tnumber" - ] + ], + "primaryMeos": "div_tnumber_tnumber" }, "cbufferEq": { "field": "cbufferEq", @@ -13362,7 +14260,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferNe": { "field": "cbufferNe", @@ -13375,7 +14274,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferLt": { "field": "cbufferLt", @@ -13388,7 +14288,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferLe": { "field": "cbufferLe", @@ -13401,7 +14302,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferGt": { "field": "cbufferGt", @@ -13414,7 +14316,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferGe": { "field": "cbufferGe", @@ -13427,7 +14330,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "cbufferCmp": { "field": "cbufferCmp", @@ -13440,7 +14344,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointEq": { "field": "npointEq", @@ -13453,7 +14358,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointNe": { "field": "npointNe", @@ -13466,7 +14372,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointLt": { "field": "npointLt", @@ -13479,7 +14386,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointLe": { "field": "npointLe", @@ -13492,7 +14400,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointGt": { "field": "npointGt", @@ -13505,7 +14414,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointGe": { "field": "npointGe", @@ -13518,7 +14428,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointCmp": { "field": "npointCmp", @@ -13531,7 +14442,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointHash": { "field": "npointHash", @@ -13543,7 +14455,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointHashExtended": { "field": "npointHashExtended", @@ -13556,7 +14469,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseEq": { "field": "poseEq", @@ -13569,7 +14483,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseNe": { "field": "poseNe", @@ -13582,7 +14497,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseLt": { "field": "poseLt", @@ -13595,7 +14511,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseLe": { "field": "poseLe", @@ -13608,7 +14525,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseGt": { "field": "poseGt", @@ -13621,7 +14539,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseGe": { "field": "poseGe", @@ -13634,7 +14553,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseCmp": { "field": "poseCmp", @@ -13647,7 +14567,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseHash": { "field": "poseHash", @@ -13659,7 +14580,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "poseHashExtended": { "field": "poseHashExtended", @@ -13672,7 +14594,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentEq": { "field": "nsegmentEq", @@ -13685,7 +14608,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentNe": { "field": "nsegmentNe", @@ -13698,7 +14622,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentLt": { "field": "nsegmentLt", @@ -13711,7 +14636,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentLe": { "field": "nsegmentLe", @@ -13724,7 +14650,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentGt": { "field": "nsegmentGt", @@ -13737,7 +14664,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentGe": { "field": "nsegmentGe", @@ -13750,7 +14678,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegmentCmp": { "field": "nsegmentCmp", @@ -13763,7 +14692,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setEq": { "field": "setEq", @@ -13776,7 +14706,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setNe": { "field": "setNe", @@ -13789,7 +14720,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setLt": { "field": "setLt", @@ -13802,7 +14734,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setLe": { "field": "setLe", @@ -13815,7 +14748,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setGt": { "field": "setGt", @@ -13828,7 +14762,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setGe": { "field": "setGe", @@ -13841,7 +14776,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setCmp": { "field": "setCmp", @@ -13854,7 +14790,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setHash": { "field": "setHash", @@ -13866,7 +14803,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setHashExtended": { "field": "setHashExtended", @@ -13879,7 +14817,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanEq": { "field": "spanEq", @@ -13892,7 +14831,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanNe": { "field": "spanNe", @@ -13905,7 +14845,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanLt": { "field": "spanLt", @@ -13918,7 +14859,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanLe": { "field": "spanLe", @@ -13931,7 +14873,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanGt": { "field": "spanGt", @@ -13944,7 +14887,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanGe": { "field": "spanGe", @@ -13957,7 +14901,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanCmp": { "field": "spanCmp", @@ -13970,7 +14915,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanHash": { "field": "spanHash", @@ -13982,7 +14928,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanHashExtended": { "field": "spanHashExtended", @@ -13995,7 +14942,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetEq": { "field": "spansetEq", @@ -14008,7 +14956,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetNe": { "field": "spansetNe", @@ -14021,7 +14970,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetLt": { "field": "spansetLt", @@ -14034,7 +14984,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetLe": { "field": "spansetLe", @@ -14047,7 +14998,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetGt": { "field": "spansetGt", @@ -14060,7 +15012,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetGe": { "field": "spansetGe", @@ -14073,7 +15026,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetCmp": { "field": "spansetCmp", @@ -14086,7 +15040,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetHash": { "field": "spansetHash", @@ -14098,7 +15053,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetHashExtended": { "field": "spansetHashExtended", @@ -14111,7 +15067,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxEq": { "field": "tboxEq", @@ -14124,7 +15081,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxNe": { "field": "tboxNe", @@ -14137,7 +15095,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxLt": { "field": "tboxLt", @@ -14150,7 +15109,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxLe": { "field": "tboxLe", @@ -14163,7 +15123,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxGt": { "field": "tboxGt", @@ -14176,7 +15137,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxGe": { "field": "tboxGe", @@ -14189,7 +15151,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxCmp": { "field": "tboxCmp", @@ -14202,7 +15165,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxHash": { "field": "tboxHash", @@ -14214,7 +15178,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxHashExtended": { "field": "tboxHashExtended", @@ -14227,7 +15192,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxEq": { "field": "stboxEq", @@ -14240,7 +15206,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxNe": { "field": "stboxNe", @@ -14253,7 +15220,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxLt": { "field": "stboxLt", @@ -14266,7 +15234,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxLe": { "field": "stboxLe", @@ -14279,7 +15248,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxGt": { "field": "stboxGt", @@ -14292,7 +15262,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxGe": { "field": "stboxGe", @@ -14305,7 +15276,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxCmp": { "field": "stboxCmp", @@ -14318,7 +15290,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxHash": { "field": "stboxHash", @@ -14330,7 +15303,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "stboxHashExtended": { "field": "stboxHashExtended", @@ -14343,7 +15317,8 @@ "Long" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalCmp": { "field": "temporalCmp", @@ -14356,7 +15331,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalHash": { "field": "temporalHash", @@ -14368,7 +15344,8 @@ "String" ], "retType": "Integer", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "atTime": { "field": "atTime", @@ -14388,7 +15365,8 @@ "temporal_at_tstzspan", "pg_timestamptz_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzspan" }, "startTimestamp": { "field": "startTimestamp", @@ -14403,7 +15381,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_start_timestamptz" - ] + ], + "primaryMeos": "temporal_start_timestamptz" }, "endTimestamp": { "field": "endTimestamp", @@ -14418,7 +15397,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_end_timestamptz" - ] + ], + "primaryMeos": "temporal_end_timestamptz" }, "numInstants": { "field": "numInstants", @@ -14433,7 +15413,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_num_instants" - ] + ], + "primaryMeos": "temporal_num_instants" }, "speed": { "field": "speed", @@ -14449,7 +15430,8 @@ "temporal_from_hexwkb", "tpoint_speed", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tpoint_speed" }, "atGeometry": { "field": "atGeometry", @@ -14467,7 +15449,8 @@ "geo_from_text", "tgeo_at_geom", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_at_geom" }, "asHexWKB": { "field": "asHexWKB", @@ -14482,7 +15465,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "temporalAsMfjson": { "field": "temporalAsMfjson", @@ -14498,7 +15482,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_mfjson" - ] + ], + "primaryMeos": "temporal_as_mfjson" }, "tboolOut": { "field": "tboolOut", @@ -14513,7 +15498,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_out" - ] + ], + "primaryMeos": "tbool_out" }, "tintOut": { "field": "tintOut", @@ -14528,7 +15514,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_out" - ] + ], + "primaryMeos": "tint_out" }, "tfloatOut": { "field": "tfloatOut", @@ -14544,7 +15531,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_out" - ] + ], + "primaryMeos": "tfloat_out" }, "ttextOut": { "field": "ttextOut", @@ -14559,7 +15547,8 @@ "meosFns": [ "temporal_from_hexwkb", "ttext_out" - ] + ], + "primaryMeos": "ttext_out" }, "getTimestamp": { "field": "startTimestamp", @@ -14574,7 +15563,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_start_timestamptz" - ] + ], + "primaryMeos": "temporal_start_timestamptz" }, "teqTintInt": { "field": "teqTintInt", @@ -14587,7 +15577,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "teqTfloatFloat": { "field": "teqTfloatFloat", @@ -14600,7 +15591,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "teqTboolBool": { "field": "teqTboolBool", @@ -14613,7 +15605,8 @@ "Boolean" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tneTintInt": { "field": "tneTintInt", @@ -14626,7 +15619,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tneTfloatFloat": { "field": "tneTfloatFloat", @@ -14639,7 +15633,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tneTboolBool": { "field": "tneTboolBool", @@ -14652,7 +15647,8 @@ "Boolean" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tltTintInt": { "field": "tltTintInt", @@ -14665,7 +15661,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tltTfloatFloat": { "field": "tltTfloatFloat", @@ -14678,7 +15675,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tleTintInt": { "field": "tleTintInt", @@ -14691,7 +15689,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tleTfloatFloat": { "field": "tleTfloatFloat", @@ -14704,7 +15703,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgtTintInt": { "field": "tgtTintInt", @@ -14717,7 +15717,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgtTfloatFloat": { "field": "tgtTfloatFloat", @@ -14730,7 +15731,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeTintInt": { "field": "tgeTintInt", @@ -14743,7 +15745,8 @@ "Integer" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeTfloatFloat": { "field": "tgeTfloatFloat", @@ -14756,7 +15759,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintspanWidth": { "field": "bigintspanWidth", @@ -14771,7 +15775,8 @@ "meosFns": [ "span_from_hexwkb", "bigintspan_width" - ] + ], + "primaryMeos": "bigintspan_width" }, "bigintspansetWidth": { "field": "bigintspansetWidth", @@ -14787,7 +15792,8 @@ "meosFns": [ "spanset_from_hexwkb", "bigintspanset_width" - ] + ], + "primaryMeos": "bigintspanset_width" }, "width": { "field": "floatspanWidth", @@ -14802,7 +15808,8 @@ "meosFns": [ "span_from_hexwkb", "floatspan_width" - ] + ], + "primaryMeos": "floatspan_width" }, "startDate": { "field": "startDate", @@ -14817,7 +15824,8 @@ "meosFns": [ "spanset_from_hexwkb", "datespanset_start_date" - ] + ], + "primaryMeos": "datespanset_start_date" }, "endDate": { "field": "endDate", @@ -14832,7 +15840,8 @@ "meosFns": [ "spanset_from_hexwkb", "datespanset_end_date" - ] + ], + "primaryMeos": "datespanset_end_date" }, "numDates": { "field": "numDates", @@ -14847,7 +15856,8 @@ "meosFns": [ "spanset_from_hexwkb", "datespanset_num_dates" - ] + ], + "primaryMeos": "datespanset_num_dates" }, "dateN": { "field": "dateN", @@ -14863,7 +15873,8 @@ "meosFns": [ "spanset_from_hexwkb", "datespanset_date_n" - ] + ], + "primaryMeos": "datespanset_date_n" }, "dates": { "field": "dates", @@ -14879,7 +15890,8 @@ "spanset_from_hexwkb", "datespanset_dates", "set_as_hexwkb" - ] + ], + "primaryMeos": "datespanset_dates" }, "valueSpan": { "field": "valueSpan", @@ -14895,7 +15907,8 @@ "temporal_from_hexwkb", "tnumber_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_to_span" }, "intsetFromBinary": { "field": "intsetFromBinary", @@ -14907,7 +15920,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintsetFromBinary": { "field": "bigintsetFromBinary", @@ -14919,7 +15933,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatsetFromBinary": { "field": "floatsetFromBinary", @@ -14931,7 +15946,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "textsetFromBinary": { "field": "textsetFromBinary", @@ -14943,7 +15959,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzsetFromBinary": { "field": "tstzsetFromBinary", @@ -14955,7 +15972,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datesetFromBinary": { "field": "datesetFromBinary", @@ -14967,7 +15985,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometry": { "field": "tgeometry", @@ -14982,7 +16001,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tgeography": { "field": "tgeography", @@ -14997,7 +16017,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "geometry": { "field": "tgeometry", @@ -15012,7 +16033,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "geography": { "field": "tgeography", @@ -15027,7 +16049,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "valueSet": { "field": "valueSet", @@ -15044,7 +16067,8 @@ "set_as_hexwkb", "pg_interval_in", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "box2d": { "field": "box2d", @@ -15058,7 +16082,8 @@ "retType": "String", "meosFns": [ "stbox_from_hexwkb" - ] + ], + "primaryMeos": "stbox_from_hexwkb" }, "box3d": { "field": "box3d", @@ -15072,7 +16097,8 @@ "retType": "String", "meosFns": [ "stbox_from_hexwkb" - ] + ], + "primaryMeos": "stbox_from_hexwkb" }, "avgValue": { "field": "avgValue", @@ -15086,7 +16112,8 @@ "retType": "Double", "meosFns": [ "temporal_from_hexwkb" - ] + ], + "primaryMeos": "temporal_from_hexwkb" }, "frechetDistance": { "field": "frechetDistance", @@ -15102,7 +16129,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_frechet_distance" - ] + ], + "primaryMeos": "temporal_frechet_distance" }, "dynamicTimeWarp": { "field": "dynamicTimeWarp", @@ -15118,7 +16146,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_dyntimewarp_distance" - ] + ], + "primaryMeos": "temporal_dyntimewarp_distance" }, "hausdorffDistance": { "field": "hausdorffDistance", @@ -15134,7 +16163,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_hausdorff_distance" - ] + ], + "primaryMeos": "temporal_hausdorff_distance" }, "dynTimeWarpDistance": { "field": "dynamicTimeWarp", @@ -15150,7 +16180,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_dyntimewarp_distance" - ] + ], + "primaryMeos": "temporal_dyntimewarp_distance" }, "tboolSeqSetGaps": { "field": "tboolSeqSetGaps", @@ -15163,7 +16194,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "ttextSeqSetGaps": { "field": "ttextSeqSetGaps", @@ -15176,7 +16208,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tintSeqSetGaps": { "field": "tintSeqSetGaps", @@ -15190,7 +16223,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tfloatSeqSetGaps": { "field": "tfloatSeqSetGaps", @@ -15205,7 +16239,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeompointSeqSetGaps": { "field": "tgeompointSeqSetGaps", @@ -15220,7 +16255,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeogpointSeqSetGaps": { "field": "tgeogpointSeqSetGaps", @@ -15235,7 +16271,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeometrySeqSetGaps": { "field": "tgeometrySeqSetGaps", @@ -15250,7 +16287,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tgeographySeqSetGaps": { "field": "tgeographySeqSetGaps", @@ -15265,7 +16303,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnotTbool": { "field": "tnotTbool", @@ -15280,7 +16319,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnot_tbool" - ] + ], + "primaryMeos": "tnot_tbool" }, "tandBool": { "field": "tandBool", @@ -15296,7 +16336,8 @@ "meosFns": [ "temporal_from_hexwkb", "tand_tbool_bool" - ] + ], + "primaryMeos": "tand_tbool_bool" }, "tandBoolTbool": { "field": "tandBoolTbool", @@ -15312,7 +16353,8 @@ "meosFns": [ "temporal_from_hexwkb", "tand_bool_tbool" - ] + ], + "primaryMeos": "tand_bool_tbool" }, "tandTboolTbool": { "field": "tandTboolTbool", @@ -15328,7 +16370,8 @@ "meosFns": [ "temporal_from_hexwkb", "tand_tbool_tbool" - ] + ], + "primaryMeos": "tand_tbool_tbool" }, "torBool": { "field": "torBool", @@ -15344,7 +16387,8 @@ "meosFns": [ "temporal_from_hexwkb", "tor_tbool_bool" - ] + ], + "primaryMeos": "tor_tbool_bool" }, "torBoolTbool": { "field": "torBoolTbool", @@ -15360,7 +16404,8 @@ "meosFns": [ "temporal_from_hexwkb", "tor_bool_tbool" - ] + ], + "primaryMeos": "tor_bool_tbool" }, "torTboolTbool": { "field": "torTboolTbool", @@ -15376,7 +16421,8 @@ "meosFns": [ "temporal_from_hexwkb", "tor_tbool_tbool" - ] + ], + "primaryMeos": "tor_tbool_tbool" }, "tboolWhenTrue": { "field": "tboolWhenTrue", @@ -15392,7 +16438,8 @@ "temporal_from_hexwkb", "tbool_when_true", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "tbool_when_true" }, "teqTemporalTemporal": { "field": "teqTemporalTemporal", @@ -15409,7 +16456,8 @@ "temporal_from_hexwkb", "teq_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "teq_temporal_temporal" }, "tneTemporalTemporal": { "field": "tneTemporalTemporal", @@ -15426,7 +16474,8 @@ "temporal_from_hexwkb", "tne_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tne_temporal_temporal" }, "tltTemporalTemporal": { "field": "tltTemporalTemporal", @@ -15443,7 +16492,8 @@ "temporal_from_hexwkb", "tlt_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tlt_temporal_temporal" }, "tleTemporalTemporal": { "field": "tleTemporalTemporal", @@ -15460,7 +16510,8 @@ "temporal_from_hexwkb", "tle_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tle_temporal_temporal" }, "tgtTemporalTemporal": { "field": "tgtTemporalTemporal", @@ -15477,7 +16528,8 @@ "temporal_from_hexwkb", "tgt_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgt_temporal_temporal" }, "tgeTemporalTemporal": { "field": "tgeTemporalTemporal", @@ -15494,7 +16546,8 @@ "temporal_from_hexwkb", "tge_temporal_temporal", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tge_temporal_temporal" }, "tboolNot": { "field": "tnotTbool", @@ -15509,7 +16562,8 @@ "meosFns": [ "temporal_from_hexwkb", "tnot_tbool" - ] + ], + "primaryMeos": "tnot_tbool" }, "tboolAnd": { "field": "tandTboolTbool", @@ -15525,7 +16579,8 @@ "meosFns": [ "temporal_from_hexwkb", "tand_tbool_tbool" - ] + ], + "primaryMeos": "tand_tbool_tbool" }, "tboolOr": { "field": "torTboolTbool", @@ -15541,7 +16596,8 @@ "meosFns": [ "temporal_from_hexwkb", "tor_tbool_tbool" - ] + ], + "primaryMeos": "tor_tbool_tbool" }, "numSequences": { "field": "numSequences", @@ -15556,7 +16612,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_num_sequences" - ] + ], + "primaryMeos": "temporal_num_sequences" }, "interp": { "field": "interp", @@ -15571,7 +16628,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_interp" - ] + ], + "primaryMeos": "temporal_interp" }, "time": { "field": "time", @@ -15587,7 +16645,8 @@ "temporal_from_hexwkb", "temporal_time", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "temporal_time" }, "timespan": { "field": "timespan", @@ -15603,7 +16662,8 @@ "temporal_from_hexwkb", "temporal_to_tstzspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tstzspan" }, "merge": { "field": "merge", @@ -15620,7 +16680,8 @@ "temporal_from_hexwkb", "temporal_merge", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_merge" }, "shift": { "field": "shift", @@ -15638,7 +16699,8 @@ "pg_interval_in", "temporal_shift_time", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_shift_time" }, "scale": { "field": "scale", @@ -15656,7 +16718,8 @@ "pg_interval_in", "temporal_scale_time", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_scale_time" }, "atSpan": { "field": "atSpan", @@ -15674,7 +16737,8 @@ "span_from_hexwkb", "temporal_at_tstzspan", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzspan" }, "atSpanset": { "field": "atSpanset", @@ -15692,7 +16756,8 @@ "spanset_from_hexwkb", "temporal_at_tstzspanset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_tstzspanset" }, "insert": { "field": "insert", @@ -15709,7 +16774,8 @@ "temporal_from_hexwkb", "temporal_insert", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_insert" }, "update": { "field": "update", @@ -15726,7 +16792,8 @@ "temporal_from_hexwkb", "temporal_update", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_update" }, "tfloatStartValue": { "field": "tfloatStartValue", @@ -15741,7 +16808,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_start_value" - ] + ], + "primaryMeos": "tfloat_start_value" }, "tfloatEndValue": { "field": "tfloatEndValue", @@ -15756,7 +16824,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_end_value" - ] + ], + "primaryMeos": "tfloat_end_value" }, "tfloatMinValue": { "field": "tfloatMinValue", @@ -15771,7 +16840,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_min_value" - ] + ], + "primaryMeos": "tfloat_min_value" }, "tfloatMaxValue": { "field": "tfloatMaxValue", @@ -15786,7 +16856,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_max_value" - ] + ], + "primaryMeos": "tfloat_max_value" }, "tintStartValue": { "field": "tintStartValue", @@ -15801,7 +16872,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_start_value" - ] + ], + "primaryMeos": "tint_start_value" }, "tintEndValue": { "field": "tintEndValue", @@ -15816,7 +16888,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_end_value" - ] + ], + "primaryMeos": "tint_end_value" }, "tintMinValue": { "field": "tintMinValue", @@ -15831,7 +16904,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_min_value" - ] + ], + "primaryMeos": "tint_min_value" }, "tintMaxValue": { "field": "tintMaxValue", @@ -15846,7 +16920,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_max_value" - ] + ], + "primaryMeos": "tint_max_value" }, "tboolStartValue": { "field": "tboolStartValue", @@ -15861,7 +16936,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_start_value" - ] + ], + "primaryMeos": "tbool_start_value" }, "tboolEndValue": { "field": "tboolEndValue", @@ -15876,7 +16952,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_end_value" - ] + ], + "primaryMeos": "tbool_end_value" }, "tpointStartValue": { "field": "tpointStartValue", @@ -15892,7 +16969,8 @@ "temporal_from_hexwkb", "tgeo_start_value", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_start_value" }, "tpointEndValue": { "field": "tpointEndValue", @@ -15908,7 +16986,8 @@ "temporal_from_hexwkb", "tgeo_end_value", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_end_value" }, "ttextStartValue": { "field": "ttextStartValue", @@ -15924,7 +17003,8 @@ "temporal_from_hexwkb", "ttext_start_value", "text_out" - ] + ], + "primaryMeos": "ttext_start_value" }, "ttextEndValue": { "field": "ttextEndValue", @@ -15940,7 +17020,8 @@ "temporal_from_hexwkb", "ttext_end_value", "text_out" - ] + ], + "primaryMeos": "ttext_end_value" }, "tintGetValue": { "field": "tintStartValue", @@ -15955,7 +17036,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_start_value" - ] + ], + "primaryMeos": "tint_start_value" }, "tfloatGetValue": { "field": "tfloatStartValue", @@ -15970,7 +17052,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_start_value" - ] + ], + "primaryMeos": "tfloat_start_value" }, "tboolGetValue": { "field": "tboolStartValue", @@ -15985,7 +17068,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_start_value" - ] + ], + "primaryMeos": "tbool_start_value" }, "ttextGetValue": { "field": "ttextStartValue", @@ -16001,7 +17085,8 @@ "temporal_from_hexwkb", "ttext_start_value", "text_out" - ] + ], + "primaryMeos": "ttext_start_value" }, "tpointGetValue": { "field": "tpointStartValue", @@ -16017,7 +17102,8 @@ "temporal_from_hexwkb", "tgeo_start_value", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_start_value" }, "getValue": { "field": "tfloatStartValue", @@ -16032,7 +17118,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_start_value" - ] + ], + "primaryMeos": "tfloat_start_value" }, "atMin": { "field": "atMin", @@ -16048,7 +17135,8 @@ "temporal_from_hexwkb", "temporal_at_min", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_min" }, "atMax": { "field": "atMax", @@ -16064,7 +17152,8 @@ "temporal_from_hexwkb", "temporal_at_max", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_max" }, "atValues": { "field": "atValues", @@ -16082,7 +17171,8 @@ "set_from_hexwkb", "temporal_at_values", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_at_values" }, "minusTime": { "field": "minusTime", @@ -16100,7 +17190,8 @@ "span_from_hexwkb", "temporal_minus_tstzspan", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_tstzspan" }, "minusMin": { "field": "minusMin", @@ -16116,7 +17207,8 @@ "temporal_from_hexwkb", "temporal_minus_min", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_min" }, "minusMax": { "field": "minusMax", @@ -16132,7 +17224,8 @@ "temporal_from_hexwkb", "temporal_minus_max", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_minus_max" }, "atStbox": { "field": "atStbox", @@ -16150,7 +17243,8 @@ "stbox_from_hexwkb", "tgeo_at_stbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_at_stbox" }, "minusStbox": { "field": "minusStbox", @@ -16168,7 +17262,8 @@ "stbox_from_hexwkb", "tgeo_minus_stbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tgeo_minus_stbox" }, "tnumberAtTbox": { "field": "tnumberAtTbox", @@ -16186,7 +17281,8 @@ "tbox_from_hexwkb", "tnumber_at_tbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_at_tbox" }, "tnumberMinusTbox": { "field": "tnumberMinusTbox", @@ -16204,7 +17300,8 @@ "tbox_from_hexwkb", "tnumber_minus_tbox", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_minus_tbox" }, "appendInstant": { "field": "appendInstant", @@ -16221,7 +17318,8 @@ "temporal_from_hexwkb", "temporal_append_tinstant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_append_tinstant" }, "appendSequence": { "field": "appendSequence", @@ -16238,7 +17336,8 @@ "temporal_from_hexwkb", "temporal_append_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_append_tsequence" }, "tnumberValuespans": { "field": "tnumberValuespans", @@ -16254,7 +17353,8 @@ "temporal_from_hexwkb", "tnumber_valuespans", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_valuespans" }, "tnumberToSpan": { "field": "tnumberToSpan", @@ -16270,7 +17370,8 @@ "temporal_from_hexwkb", "tnumber_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_to_span" }, "tnumberToTbox": { "field": "tnumberToTbox", @@ -16286,7 +17387,8 @@ "temporal_from_hexwkb", "tnumber_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tnumber_to_tbox" }, "setLeft": { "field": "setLeft", @@ -16299,7 +17401,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setRight": { "field": "setRight", @@ -16312,7 +17415,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setOverleft": { "field": "setOverleft", @@ -16325,7 +17429,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setOverright": { "field": "setOverright", @@ -16338,7 +17443,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setContains": { "field": "setContains", @@ -16353,7 +17459,8 @@ "retType": "Boolean", "meosFns": [ "contains_set_set" - ] + ], + "primaryMeos": "contains_set_set" }, "setContained": { "field": "setContained", @@ -16366,7 +17473,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "setOverlaps": { "field": "setOverlaps", @@ -16381,7 +17489,8 @@ "retType": "Boolean", "meosFns": [ "overlaps_set_set" - ] + ], + "primaryMeos": "overlaps_set_set" }, "distanceIntsetIntset": { "field": "distanceIntsetIntset", @@ -16397,7 +17506,8 @@ "meosFns": [ "set_from_hexwkb", "distance_intset_intset" - ] + ], + "primaryMeos": "distance_intset_intset" }, "distanceBigintsetBigintset": { "field": "distanceBigintsetBigintset", @@ -16413,7 +17523,8 @@ "meosFns": [ "set_from_hexwkb", "distance_bigintset_bigintset" - ] + ], + "primaryMeos": "distance_bigintset_bigintset" }, "distanceFloatsetFloatset": { "field": "distanceFloatsetFloatset", @@ -16429,7 +17540,8 @@ "meosFns": [ "set_from_hexwkb", "distance_floatset_floatset" - ] + ], + "primaryMeos": "distance_floatset_floatset" }, "distanceTstzsetTstzset": { "field": "distanceTstzsetTstzset", @@ -16445,7 +17557,8 @@ "meosFns": [ "set_from_hexwkb", "distance_tstzset_tstzset" - ] + ], + "primaryMeos": "distance_tstzset_tstzset" }, "setDistance": { "field": "distanceFloatsetFloatset", @@ -16461,7 +17574,8 @@ "meosFns": [ "set_from_hexwkb", "distance_floatset_floatset" - ] + ], + "primaryMeos": "distance_floatset_floatset" }, "spanContains": { "field": "spanContains", @@ -16476,7 +17590,8 @@ "retType": "Boolean", "meosFns": [ "contains_span_span" - ] + ], + "primaryMeos": "contains_span_span" }, "spanContainedIn": { "field": "spanContainedIn", @@ -16491,7 +17606,8 @@ "retType": "Boolean", "meosFns": [ "contained_span_span" - ] + ], + "primaryMeos": "contained_span_span" }, "spanOverlaps": { "field": "spanOverlaps", @@ -16506,7 +17622,8 @@ "retType": "Boolean", "meosFns": [ "overlaps_span_span" - ] + ], + "primaryMeos": "overlaps_span_span" }, "spanAdjacent": { "field": "spanAdjacent", @@ -16521,7 +17638,8 @@ "retType": "Boolean", "meosFns": [ "adjacent_span_span" - ] + ], + "primaryMeos": "adjacent_span_span" }, "spanLeft": { "field": "spanLeft", @@ -16536,7 +17654,8 @@ "retType": "Boolean", "meosFns": [ "left_span_span" - ] + ], + "primaryMeos": "left_span_span" }, "spanRight": { "field": "spanRight", @@ -16551,7 +17670,8 @@ "retType": "Boolean", "meosFns": [ "right_span_span" - ] + ], + "primaryMeos": "right_span_span" }, "spanOverleft": { "field": "spanOverleft", @@ -16566,7 +17686,8 @@ "retType": "Boolean", "meosFns": [ "overleft_span_span" - ] + ], + "primaryMeos": "overleft_span_span" }, "spanOverright": { "field": "spanOverright", @@ -16581,7 +17702,8 @@ "retType": "Boolean", "meosFns": [ "overright_span_span" - ] + ], + "primaryMeos": "overright_span_span" }, "spanUnion": { "field": "spanUnion", @@ -16597,7 +17719,8 @@ "meosFns": [ "union_span_span", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "union_span_span" }, "spanIntersection": { "field": "spanIntersection", @@ -16613,7 +17736,8 @@ "meosFns": [ "intersection_span_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "intersection_span_span" }, "spanMinus": { "field": "spanMinus", @@ -16629,7 +17753,8 @@ "meosFns": [ "minus_span_span", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "minus_span_span" }, "tstzspanDistance": { "field": "tstzspanDistance", @@ -16644,7 +17769,8 @@ "retType": "Double", "meosFns": [ "distance_tstzspan_tstzspan" - ] + ], + "primaryMeos": "distance_tstzspan_tstzspan" }, "intspanDistance": { "field": "intspanDistance", @@ -16659,7 +17785,8 @@ "retType": "Integer", "meosFns": [ "distance_intspan_intspan" - ] + ], + "primaryMeos": "distance_intspan_intspan" }, "bigintspanDistance": { "field": "bigintspanDistance", @@ -16674,7 +17801,8 @@ "retType": "Long", "meosFns": [ "distance_bigintspan_bigintspan" - ] + ], + "primaryMeos": "distance_bigintspan_bigintspan" }, "floatspanDistance": { "field": "floatspanDistance", @@ -16689,7 +17817,8 @@ "retType": "Double", "meosFns": [ "distance_floatspan_floatspan" - ] + ], + "primaryMeos": "distance_floatspan_floatspan" }, "datespanDistance": { "field": "datespanDistance", @@ -16704,7 +17833,8 @@ "retType": "Integer", "meosFns": [ "distance_datespan_datespan" - ] + ], + "primaryMeos": "distance_datespan_datespan" }, "spanDistance": { "field": "floatspanDistance", @@ -16719,7 +17849,8 @@ "retType": "Double", "meosFns": [ "distance_floatspan_floatspan" - ] + ], + "primaryMeos": "distance_floatspan_floatspan" }, "timeDistance": { "field": "tstzspanDistance", @@ -16734,7 +17865,8 @@ "retType": "Double", "meosFns": [ "distance_tstzspan_tstzspan" - ] + ], + "primaryMeos": "distance_tstzspan_tstzspan" }, "intspanExpand": { "field": "intspanExpand", @@ -16749,7 +17881,8 @@ "retType": "String", "meosFns": [ "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "bigintspanExpand": { "field": "bigintspanExpand", @@ -16764,7 +17897,8 @@ "retType": "String", "meosFns": [ "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "floatspanExpand": { "field": "floatspanExpand", @@ -16779,7 +17913,8 @@ "retType": "String", "meosFns": [ "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "expand": { "field": "floatspanExpand", @@ -16794,7 +17929,8 @@ "retType": "String", "meosFns": [ "span_as_hexwkb" - ] + ], + "primaryMeos": "span_as_hexwkb" }, "spansetContainsSpan": { "field": "spansetContainsSpan", @@ -16809,7 +17945,8 @@ "retType": "Boolean", "meosFns": [ "contains_spanset_span" - ] + ], + "primaryMeos": "contains_spanset_span" }, "spanContainedInSpanset": { "field": "spanContainedInSpanset", @@ -16824,7 +17961,8 @@ "retType": "Boolean", "meosFns": [ "contained_span_spanset" - ] + ], + "primaryMeos": "contained_span_spanset" }, "spansetOverlaps": { "field": "spansetOverlaps", @@ -16839,7 +17977,8 @@ "retType": "Boolean", "meosFns": [ "overlaps_spanset_spanset" - ] + ], + "primaryMeos": "overlaps_spanset_spanset" }, "spansetUnion": { "field": "spansetUnion", @@ -16855,7 +17994,8 @@ "meosFns": [ "union_spanset_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "union_spanset_spanset" }, "spansetIntersection": { "field": "spansetIntersection", @@ -16871,7 +18011,8 @@ "meosFns": [ "intersection_spanset_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "intersection_spanset_spanset" }, "spansetMinus": { "field": "spansetMinus", @@ -16887,7 +18028,8 @@ "meosFns": [ "minus_spanset_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "minus_spanset_spanset" }, "intspanToFloatspan": { "field": "intspanToFloatspan", @@ -16902,7 +18044,8 @@ "meosFns": [ "intspan_to_floatspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "intspan_to_floatspan" }, "floatspanToIntspan": { "field": "floatspanToIntspan", @@ -16917,7 +18060,8 @@ "meosFns": [ "floatspan_to_intspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "floatspan_to_intspan" }, "datespanToTstzspan": { "field": "datespanToTstzspan", @@ -16932,7 +18076,8 @@ "meosFns": [ "datespan_to_tstzspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "datespan_to_tstzspan" }, "tstzspanToDatespan": { "field": "tstzspanToDatespan", @@ -16947,7 +18092,8 @@ "meosFns": [ "tstzspan_to_datespan", "span_as_hexwkb" - ] + ], + "primaryMeos": "tstzspan_to_datespan" }, "intsetToFloatset": { "field": "intsetToFloatset", @@ -16963,7 +18109,8 @@ "set_from_hexwkb", "intset_to_floatset", "set_as_hexwkb" - ] + ], + "primaryMeos": "intset_to_floatset" }, "floatsetToIntset": { "field": "floatsetToIntset", @@ -16979,7 +18126,8 @@ "set_from_hexwkb", "floatset_to_intset", "set_as_hexwkb" - ] + ], + "primaryMeos": "floatset_to_intset" }, "setToSpan": { "field": "setToSpan", @@ -16995,7 +18143,8 @@ "set_from_hexwkb", "set_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "set_to_span" }, "setToSpanset": { "field": "setToSpanset", @@ -17011,7 +18160,8 @@ "set_from_hexwkb", "set_to_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "set_to_spanset" }, "tstzspanDuration": { "field": "tstzspanDuration", @@ -17026,7 +18176,8 @@ "meosFns": [ "tstzspan_duration", "pg_interval_out" - ] + ], + "primaryMeos": "tstzspan_duration" }, "datespanDuration": { "field": "datespanDuration", @@ -17041,7 +18192,8 @@ "meosFns": [ "datespan_duration", "pg_interval_out" - ] + ], + "primaryMeos": "datespan_duration" }, "tstzspanShiftScale": { "field": "tstzspanShiftScale", @@ -17059,7 +18211,8 @@ "pg_interval_in", "tstzspan_shift_scale", "span_as_hexwkb" - ] + ], + "primaryMeos": "tstzspan_shift_scale" }, "tstzspansetShiftScale": { "field": "tstzspansetShiftScale", @@ -17077,7 +18230,8 @@ "pg_interval_in", "tstzspanset_shift_scale", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "tstzspanset_shift_scale" }, "timestamptzToSpan": { "field": "timestamptzToSpan", @@ -17092,7 +18246,8 @@ "meosFns": [ "timestamptz_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "timestamptz_to_span" }, "timestamptzToSet": { "field": "timestamptzToSet", @@ -17107,7 +18262,8 @@ "meosFns": [ "timestamptz_to_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "timestamptz_to_set" }, "spansetIntersectionSpan": { "field": "spansetIntersectionSpan", @@ -17123,7 +18279,8 @@ "meosFns": [ "intersection_spanset_span", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "intersection_spanset_span" }, "spansetUnionSpan": { "field": "spansetUnionSpan", @@ -17139,7 +18296,8 @@ "meosFns": [ "union_spanset_span", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "union_spanset_span" }, "spansetMinusSpan": { "field": "spansetMinusSpan", @@ -17155,7 +18313,8 @@ "meosFns": [ "minus_spanset_span", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "minus_spanset_span" }, "intToSpan": { "field": "intToSpan", @@ -17170,7 +18329,8 @@ "meosFns": [ "int_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "int_to_span" }, "intToSet": { "field": "intToSet", @@ -17185,7 +18345,8 @@ "meosFns": [ "int_to_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "int_to_set" }, "intToSpanset": { "field": "intToSpanset", @@ -17200,7 +18361,8 @@ "meosFns": [ "int_to_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "int_to_spanset" }, "floatToSpan": { "field": "floatToSpan", @@ -17215,7 +18377,8 @@ "meosFns": [ "float_to_span", "span_as_hexwkb" - ] + ], + "primaryMeos": "float_to_span" }, "floatToSet": { "field": "floatToSet", @@ -17230,7 +18393,8 @@ "meosFns": [ "float_to_set", "set_as_hexwkb" - ] + ], + "primaryMeos": "float_to_set" }, "floatToSpanset": { "field": "floatToSpanset", @@ -17245,7 +18409,8 @@ "meosFns": [ "float_to_spanset", "spanset_as_hexwkb" - ] + ], + "primaryMeos": "float_to_spanset" }, "intToTbox": { "field": "intToTbox", @@ -17260,7 +18425,8 @@ "meosFns": [ "int_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "int_to_tbox" }, "floatToTbox": { "field": "floatToTbox", @@ -17275,7 +18441,8 @@ "meosFns": [ "float_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "float_to_tbox" }, "tboxHasx": { "field": "tboxHasx", @@ -17289,7 +18456,8 @@ "retType": "Boolean", "meosFns": [ "tbox_hasx" - ] + ], + "primaryMeos": "tbox_hasx" }, "tboxHast": { "field": "tboxHast", @@ -17303,7 +18471,8 @@ "retType": "Boolean", "meosFns": [ "tbox_hast" - ] + ], + "primaryMeos": "tbox_hast" }, "tboxXmin": { "field": "tboxXmin", @@ -17317,7 +18486,8 @@ "retType": "Double", "meosFns": [ "tbox_xmin" - ] + ], + "primaryMeos": "tbox_xmin" }, "tboxXmax": { "field": "tboxXmax", @@ -17331,7 +18501,8 @@ "retType": "Double", "meosFns": [ "tbox_xmax" - ] + ], + "primaryMeos": "tbox_xmax" }, "tboxXminInc": { "field": "tboxXminInc", @@ -17345,7 +18516,8 @@ "retType": "Boolean", "meosFns": [ "tbox_xmin_inc" - ] + ], + "primaryMeos": "tbox_xmin_inc" }, "tboxXmaxInc": { "field": "tboxXmaxInc", @@ -17359,7 +18531,8 @@ "retType": "Boolean", "meosFns": [ "tbox_xmax_inc" - ] + ], + "primaryMeos": "tbox_xmax_inc" }, "tboxTmin": { "field": "tboxTmin", @@ -17373,7 +18546,8 @@ "retType": "java.sql.Timestamp", "meosFns": [ "tbox_tmin" - ] + ], + "primaryMeos": "tbox_tmin" }, "tboxTmax": { "field": "tboxTmax", @@ -17387,7 +18561,8 @@ "retType": "java.sql.Timestamp", "meosFns": [ "tbox_tmax" - ] + ], + "primaryMeos": "tbox_tmax" }, "tboxTminInc": { "field": "tboxTminInc", @@ -17401,7 +18576,8 @@ "retType": "Boolean", "meosFns": [ "tbox_tmin_inc" - ] + ], + "primaryMeos": "tbox_tmin_inc" }, "tboxTmaxInc": { "field": "tboxTmaxInc", @@ -17415,7 +18591,8 @@ "retType": "Boolean", "meosFns": [ "tbox_tmax_inc" - ] + ], + "primaryMeos": "tbox_tmax_inc" }, "tboxToIntspan": { "field": "tboxToIntspan", @@ -17430,7 +18607,8 @@ "meosFns": [ "tbox_to_intspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "tbox_to_intspan" }, "tboxToFloatspan": { "field": "tboxToFloatspan", @@ -17445,7 +18623,8 @@ "meosFns": [ "tbox_to_floatspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "tbox_to_floatspan" }, "tboxToTstzspan": { "field": "tboxToTstzspan", @@ -17460,7 +18639,8 @@ "meosFns": [ "tbox_to_tstzspan", "span_as_hexwkb" - ] + ], + "primaryMeos": "tbox_to_tstzspan" }, "tboxRound": { "field": "tboxRound", @@ -17476,7 +18656,8 @@ "meosFns": [ "tbox_round", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_round" }, "spanToTbox": { "field": "spanToTbox", @@ -17492,7 +18673,8 @@ "span_from_hexwkb", "span_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "span_to_tbox" }, "spansetToTbox": { "field": "spansetToTbox", @@ -17508,7 +18690,8 @@ "spanset_from_hexwkb", "spanset_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "spanset_to_tbox" }, "setToTbox": { "field": "setToTbox", @@ -17524,7 +18707,8 @@ "set_from_hexwkb", "set_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "set_to_tbox" }, "tboxfloatXmin": { "field": "tboxfloatXmin", @@ -17538,7 +18722,8 @@ "retType": "Double", "meosFns": [ "tboxfloat_xmin" - ] + ], + "primaryMeos": "tboxfloat_xmin" }, "tboxfloatXmax": { "field": "tboxfloatXmax", @@ -17552,7 +18737,8 @@ "retType": "Double", "meosFns": [ "tboxfloat_xmax" - ] + ], + "primaryMeos": "tboxfloat_xmax" }, "tboxintXmin": { "field": "tboxintXmin", @@ -17566,7 +18752,8 @@ "retType": "Integer", "meosFns": [ "tboxint_xmin" - ] + ], + "primaryMeos": "tboxint_xmin" }, "tboxintXmax": { "field": "tboxintXmax", @@ -17580,7 +18767,8 @@ "retType": "Integer", "meosFns": [ "tboxint_xmax" - ] + ], + "primaryMeos": "tboxint_xmax" }, "tboxMake": { "field": "tboxMake", @@ -17597,7 +18785,8 @@ "span_from_hexwkb", "tbox_make", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_make" }, "timestamptzToTbox": { "field": "timestamptzToTbox", @@ -17612,7 +18801,8 @@ "meosFns": [ "timestamptz_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "timestamptz_to_tbox" }, "numspanTimestamptzToTbox": { "field": "numspanTimestamptzToTbox", @@ -17629,7 +18819,8 @@ "span_from_hexwkb", "numspan_timestamptz_to_tbox", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "numspan_timestamptz_to_tbox" }, "tboxExpandTime": { "field": "tboxExpandTime", @@ -17646,7 +18837,8 @@ "pg_interval_in", "tbox_expand_time", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_expand_time" }, "tboxExpandFloat": { "field": "tboxExpandFloat", @@ -17661,7 +18853,8 @@ "retType": "String", "meosFns": [ "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "tboxExpandInt": { "field": "tboxExpandInt", @@ -17676,7 +18869,8 @@ "retType": "String", "meosFns": [ "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "tboxShiftScaleTime": { "field": "tboxShiftScaleTime", @@ -17694,7 +18888,8 @@ "pg_interval_in", "tbox_shift_scale_time", "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_shift_scale_time" }, "intersectionTboxTbox": { "field": "intersectionTboxTbox", @@ -17707,7 +18902,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "unionTboxTbox": { "field": "unionTboxTbox", @@ -17722,7 +18918,8 @@ "retType": "String", "meosFns": [ "union_tbox_tbox" - ] + ], + "primaryMeos": "union_tbox_tbox" }, "tboxIntersection": { "field": "intersectionTboxTbox", @@ -17735,7 +18932,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxUnion": { "field": "unionTboxTbox", @@ -17750,7 +18948,8 @@ "retType": "String", "meosFns": [ "union_tbox_tbox" - ] + ], + "primaryMeos": "union_tbox_tbox" }, "expandValue": { "field": "tboxExpandFloat", @@ -17765,7 +18964,8 @@ "retType": "String", "meosFns": [ "tbox_as_hexwkb" - ] + ], + "primaryMeos": "tbox_as_hexwkb" }, "tboxContains": { "field": "tboxContains", @@ -17778,7 +18978,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxContained": { "field": "tboxContained", @@ -17791,7 +18992,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverlaps": { "field": "tboxOverlaps", @@ -17804,7 +19006,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxLeft": { "field": "tboxLeft", @@ -17817,7 +19020,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverleft": { "field": "tboxOverleft", @@ -17830,7 +19034,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxRight": { "field": "tboxRight", @@ -17843,7 +19048,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverright": { "field": "tboxOverright", @@ -17856,7 +19062,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxBefore": { "field": "tboxBefore", @@ -17869,7 +19076,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverbefore": { "field": "tboxOverbefore", @@ -17882,7 +19090,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAfter": { "field": "tboxAfter", @@ -17895,7 +19104,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxOverafter": { "field": "tboxOverafter", @@ -17908,7 +19118,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tboxAdjacent": { "field": "tboxAdjacent", @@ -17921,7 +19132,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "temporalSubtype": { "field": "temporalSubtype", @@ -17936,7 +19148,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_subtype" - ] + ], + "primaryMeos": "temporal_subtype" }, "startInstant": { "field": "startInstant", @@ -17952,7 +19165,8 @@ "temporal_from_hexwkb", "temporal_start_instant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_start_instant" }, "endInstant": { "field": "endInstant", @@ -17968,7 +19182,8 @@ "temporal_from_hexwkb", "temporal_end_instant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_end_instant" }, "instantN": { "field": "instantN", @@ -17985,7 +19200,8 @@ "temporal_from_hexwkb", "temporal_instant_n", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_instant_n" }, "startSequence": { "field": "startSequence", @@ -18001,7 +19217,8 @@ "temporal_from_hexwkb", "temporal_start_sequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_start_sequence" }, "endSequence": { "field": "endSequence", @@ -18017,7 +19234,8 @@ "temporal_from_hexwkb", "temporal_end_sequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_end_sequence" }, "sequenceN": { "field": "sequenceN", @@ -18034,7 +19252,8 @@ "temporal_from_hexwkb", "temporal_sequence_n", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_sequence_n" }, "minInstant": { "field": "minInstant", @@ -18050,7 +19269,8 @@ "temporal_from_hexwkb", "temporal_min_instant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_min_instant" }, "maxInstant": { "field": "maxInstant", @@ -18066,7 +19286,8 @@ "temporal_from_hexwkb", "temporal_max_instant", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_max_instant" }, "numTimestamps": { "field": "numTimestamps", @@ -18081,7 +19302,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_num_timestamps" - ] + ], + "primaryMeos": "temporal_num_timestamps" }, "timestampN": { "field": "timestampN", @@ -18097,7 +19319,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_timestamptz_n" - ] + ], + "primaryMeos": "temporal_timestamptz_n" }, "lowerInc": { "field": "lowerInc", @@ -18112,7 +19335,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_lower_inc" - ] + ], + "primaryMeos": "temporal_lower_inc" }, "upperInc": { "field": "upperInc", @@ -18127,7 +19351,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_upper_inc" - ] + ], + "primaryMeos": "temporal_upper_inc" }, "duration": { "field": "duration", @@ -18143,7 +19368,8 @@ "temporal_from_hexwkb", "temporal_duration", "pg_interval_out" - ] + ], + "primaryMeos": "temporal_duration" }, "tboolValueN": { "field": "tboolValueN", @@ -18159,7 +19385,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_value_n" - ] + ], + "primaryMeos": "tbool_value_n" }, "tfloatValueN": { "field": "tfloatValueN", @@ -18175,7 +19402,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_value_n" - ] + ], + "primaryMeos": "tfloat_value_n" }, "ttextMinValue": { "field": "ttextMinValue", @@ -18191,7 +19419,8 @@ "temporal_from_hexwkb", "ttext_min_value", "text_out" - ] + ], + "primaryMeos": "ttext_min_value" }, "ttextMaxValue": { "field": "ttextMaxValue", @@ -18207,7 +19436,8 @@ "temporal_from_hexwkb", "ttext_max_value", "text_out" - ] + ], + "primaryMeos": "ttext_max_value" }, "ttextValueN": { "field": "ttextValueN", @@ -18224,7 +19454,8 @@ "temporal_from_hexwkb", "ttext_value_n", "text_out" - ] + ], + "primaryMeos": "ttext_value_n" }, "tpointSrid": { "field": "tpointSrid", @@ -18239,7 +19470,8 @@ "meosFns": [ "temporal_from_hexwkb", "tspatial_srid" - ] + ], + "primaryMeos": "tspatial_srid" }, "tpointValueN": { "field": "tpointValueN", @@ -18256,7 +19488,8 @@ "temporal_from_hexwkb", "tgeo_value_n", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_value_n" }, "tintValueN": { "field": "tintValueN", @@ -18272,7 +19505,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_value_n" - ] + ], + "primaryMeos": "tint_value_n" }, "tboolValueAtTimestamptz": { "field": "tboolValueAtTimestamptz", @@ -18288,7 +19522,8 @@ "meosFns": [ "temporal_from_hexwkb", "tbool_value_at_timestamptz" - ] + ], + "primaryMeos": "tbool_value_at_timestamptz" }, "tintValueAtTimestamptz": { "field": "tintValueAtTimestamptz", @@ -18304,7 +19539,8 @@ "meosFns": [ "temporal_from_hexwkb", "tint_value_at_timestamptz" - ] + ], + "primaryMeos": "tint_value_at_timestamptz" }, "tfloatValueAtTimestamptz": { "field": "tfloatValueAtTimestamptz", @@ -18320,7 +19556,8 @@ "meosFns": [ "temporal_from_hexwkb", "tfloat_value_at_timestamptz" - ] + ], + "primaryMeos": "tfloat_value_at_timestamptz" }, "ttextValueAtTimestamptz": { "field": "ttextValueAtTimestamptz", @@ -18343,7 +19580,8 @@ "tfloat_values", "temporal_as_hexwkb", "ttext_values" - ] + ], + "primaryMeos": "ttext_values" }, "temporalBeforeSpan": { "field": "temporalBeforeSpan", @@ -18358,7 +19596,8 @@ "retType": "Boolean", "meosFns": [ "before_temporal_tstzspan" - ] + ], + "primaryMeos": "before_temporal_tstzspan" }, "temporalAfterSpan": { "field": "temporalAfterSpan", @@ -18373,7 +19612,8 @@ "retType": "Boolean", "meosFns": [ "after_temporal_tstzspan" - ] + ], + "primaryMeos": "after_temporal_tstzspan" }, "temporalOverbeforeSpan": { "field": "temporalOverbeforeSpan", @@ -18388,7 +19628,8 @@ "retType": "Boolean", "meosFns": [ "overbefore_temporal_tstzspan" - ] + ], + "primaryMeos": "overbefore_temporal_tstzspan" }, "temporalOverafterSpan": { "field": "temporalOverafterSpan", @@ -18403,7 +19644,8 @@ "retType": "Boolean", "meosFns": [ "overafter_temporal_tstzspan" - ] + ], + "primaryMeos": "overafter_temporal_tstzspan" }, "tstzspanFromBinary": { "field": "tstzspanFromBinary", @@ -18415,7 +19657,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intspanFromBinary": { "field": "intspanFromBinary", @@ -18427,7 +19670,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatspanFromBinary": { "field": "floatspanFromBinary", @@ -18439,7 +19683,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintspanFromBinary": { "field": "bigintspanFromBinary", @@ -18451,7 +19696,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datespanFromBinary": { "field": "datespanFromBinary", @@ -18463,7 +19709,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tstzspansetFromBinary": { "field": "tstzspansetFromBinary", @@ -18475,7 +19722,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "intspansetFromBinary": { "field": "intspansetFromBinary", @@ -18487,7 +19735,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "floatspansetFromBinary": { "field": "floatspansetFromBinary", @@ -18499,7 +19748,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "bigintspansetFromBinary": { "field": "bigintspansetFromBinary", @@ -18511,7 +19761,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "datespansetFromBinary": { "field": "datespansetFromBinary", @@ -18523,7 +19774,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanLeftSpanset": { "field": "spanLeftSpanset", @@ -18536,7 +19788,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanOverleftSpanset": { "field": "spanOverleftSpanset", @@ -18549,7 +19802,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanRightSpanset": { "field": "spanRightSpanset", @@ -18562,7 +19816,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanOverrightSpanset": { "field": "spanOverrightSpanset", @@ -18575,7 +19830,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanAdjacentSpanset": { "field": "spanAdjacentSpanset", @@ -18588,7 +19844,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanContainsSpanset": { "field": "spanContainsSpanset", @@ -18601,7 +19858,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanContainedSpanset": { "field": "spanContainedSpanset", @@ -18614,7 +19872,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spanOverlapsSpanset": { "field": "spanOverlapsSpanset", @@ -18627,7 +19886,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetLeftSpan": { "field": "spansetLeftSpan", @@ -18640,7 +19900,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetOverleftSpan": { "field": "spansetOverleftSpan", @@ -18653,7 +19914,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetRightSpan": { "field": "spansetRightSpan", @@ -18666,7 +19928,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetOverrightSpan": { "field": "spansetOverrightSpan", @@ -18679,7 +19942,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetAdjacentSpan": { "field": "spansetAdjacentSpan", @@ -18692,7 +19956,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetContainedSpan": { "field": "spansetContainedSpan", @@ -18705,7 +19970,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetOverlapsSpan": { "field": "spansetOverlapsSpan", @@ -18718,7 +19984,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetLeftSpanset": { "field": "spansetLeftSpanset", @@ -18731,7 +19998,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetOverleftSpanset": { "field": "spansetOverleftSpanset", @@ -18744,7 +20012,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetRightSpanset": { "field": "spansetRightSpanset", @@ -18757,7 +20026,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetOverrightSpanset": { "field": "spansetOverrightSpanset", @@ -18770,7 +20040,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetAdjacentSpanset": { "field": "spansetAdjacentSpanset", @@ -18783,7 +20054,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetContainsSpanset": { "field": "spansetContainsSpanset", @@ -18796,7 +20068,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "spansetContainedSpanset": { "field": "spansetContainedSpanset", @@ -18809,7 +20082,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "length": { "field": "length", @@ -18824,7 +20098,8 @@ "meosFns": [ "temporal_from_hexwkb", "tpoint_length" - ] + ], + "primaryMeos": "tpoint_length" }, "bboxOverlaps": { "field": "bboxOverlaps", @@ -18843,7 +20118,8 @@ "overlaps_temporal_tstzspan", "stbox_from_hexwkb", "overlaps_tspatial_stbox" - ] + ], + "primaryMeos": "overlaps_tspatial_stbox" }, "valueAtTimestamp": { "field": "valueAtTimestamp", @@ -18860,7 +20136,8 @@ "temporal_from_hexwkb", "tgeo_value_at_timestamptz", "geo_as_text" - ] + ], + "primaryMeos": "tgeo_value_at_timestamptz" }, "geoTimeStbox": { "field": "geoTimeStbox", @@ -18880,7 +20157,8 @@ "geo_tstzspan_to_stbox", "pg_timestamptz_in", "stbox_as_hexwkb" - ] + ], + "primaryMeos": "geo_tstzspan_to_stbox" }, "whenTrue": { "field": "whenTrue", @@ -18896,7 +20174,8 @@ "temporal_from_hexwkb", "tbool_when_true", "tstzspanset_out" - ] + ], + "primaryMeos": "tbool_when_true" }, "npoint": { "field": "npoint", @@ -18909,7 +20188,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "nsegment": { "field": "nsegment", @@ -18923,7 +20203,8 @@ "Double" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "route": { "field": "route", @@ -18935,7 +20216,8 @@ "String" ], "retType": "Long", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "getPosition": { "field": "getPosition", @@ -18947,7 +20229,8 @@ "String" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "startPosition": { "field": "startPosition", @@ -18959,7 +20242,8 @@ "String" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "endPosition": { "field": "endPosition", @@ -18971,7 +20255,8 @@ "String" ], "retType": "Double", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointFromText": { "field": "npointFromText", @@ -18983,7 +20268,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointFromEWKT": { "field": "npointFromEWKT", @@ -18995,7 +20281,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointFromHexEWKB": { "field": "npointFromHexEWKB", @@ -19007,7 +20294,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointFromBinary": { "field": "npointFromBinary", @@ -19019,7 +20307,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointFromEWKB": { "field": "npointFromEWKB", @@ -19031,7 +20320,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointsetFromHexWKB": { "field": "npointsetFromHexWKB", @@ -19046,7 +20336,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "npointsetFromText": { "field": "npointsetFromText", @@ -19060,7 +20351,8 @@ "retType": "String", "meosFns": [ "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "npointsetFromEWKT": { "field": "npointsetFromEWKT", @@ -19072,7 +20364,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "npointsetFromBinary": { "field": "npointsetFromBinary", @@ -19087,7 +20380,8 @@ "meosFns": [ "set_from_hexwkb", "set_as_hexwkb" - ] + ], + "primaryMeos": "set_as_hexwkb" }, "npointsetFromEWKB": { "field": "npointsetFromEWKB", @@ -19099,7 +20393,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "routes": { "field": "routes", @@ -19115,7 +20410,8 @@ "set_from_hexwkb", "set_as_hexwkb", "temporal_from_hexwkb" - ] + ], + "primaryMeos": "temporal_from_hexwkb" }, "tnpoint": { "field": "tnpoint", @@ -19130,7 +20426,8 @@ "retType": "String", "meosFns": [ "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tnpointInst": { "field": "tnpointInst", @@ -19143,7 +20440,8 @@ "Timestamp" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnpointRoute": { "field": "tnpointRoute", @@ -19158,7 +20456,8 @@ "meosFns": [ "temporal_from_hexwkb", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_as_hexwkb" }, "tnpointFromHexWKB": { "field": "tnpointFromHexWKB", @@ -19170,7 +20469,8 @@ "String" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnpointFromBinary": { "field": "tnpointFromBinary", @@ -19182,7 +20482,8 @@ "byte[]" ], "retType": "String", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "tnpointSeq": { "field": "tnpointSeq", @@ -19198,7 +20499,8 @@ "temporal_from_hexwkb", "temporal_to_tsequence", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequence" }, "tnpointSeqSet": { "field": "tnpointSeqSet", @@ -19214,7 +20516,8 @@ "temporal_from_hexwkb", "temporal_to_tsequenceset", "temporal_as_hexwkb" - ] + ], + "primaryMeos": "temporal_to_tsequenceset" }, "tnpointSeqSetGaps": { "field": "tnpointSeqSetGaps", @@ -19233,7 +20536,8 @@ "tsequenceset_make_gaps", "temporal_as_hexwkb", "set_from_hexwkb" - ] + ], + "primaryMeos": "tsequenceset_make_gaps" }, "containsRid": { "field": "containsRid", @@ -19246,7 +20550,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "containedRid": { "field": "containedRid", @@ -19259,7 +20564,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "sameRid": { "field": "sameRid", @@ -19272,7 +20578,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null }, "overlapsRid": { "field": "overlapsRid", @@ -19285,7 +20592,8 @@ "String" ], "retType": "Boolean", - "meosFns": [] + "meosFns": [], + "primaryMeos": null } } } \ No newline at end of file diff --git a/codegen/output/MobilitySparkConnectExtensionsGen.scala b/codegen/output/MobilitySparkConnectExtensionsGen.scala index 94979aed..ff5635bb 100644 --- a/codegen/output/MobilitySparkConnectExtensionsGen.scala +++ b/codegen/output/MobilitySparkConnectExtensionsGen.scala @@ -1,9 +1,10 @@ /* GENERATED by codegen/tools/generate_spark_registrar.py from the canonical * named-operation surface (meos-named-surface.json) joined with the MobilitySpark * impl scan (spark-impls.json). Do not edit by hand. Each canonical function is - * injected under its identity name; the camelCase remap and the hand-written - * registrar are retired. Single-impl functions only; multi-impl functions need - * the per-row WKB-type-tag dispatch (see the trailing comment). */ + * injected under its identity name (no camelCase remap, no hand-written table). + * Single-impl functions bind to the one impl; multi-impl functions that differ on + * arg0's MEOS type dispatch per row on the arg0 WKB type tag. Functions that + * differ only on a later argument are listed in the trailing comment. */ package org.mobilitydb.spark.connect import org.apache.spark.sql.SparkSessionExtensions @@ -12,6 +13,7 @@ import org.apache.spark.sql.catalyst.expressions.{Expression, ExpressionInfo, Sc import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder import org.apache.spark.sql.types._ import org.apache.spark.sql.api.java.{UDF1, UDF2, UDF3, UDF4} +import functions.GeneratedFunctions class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) { private lazy val encs: Map[String, ExpressionEncoder[_]] = Map( @@ -35,6 +37,19 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } } + // One SQL name over several type-specific impls: dispatch per row on arg0's + // runtime MEOS type tag to the impl whose receiver type matches. + private def injMulti(ext: SparkSessionExtensions, name: String, arity: Int, + argTs: Array[String], retT: String, + routes: Map[String, AnyRef], dflt: AnyRef): Unit = { + val builder = (children: Seq[Expression]) => { + val n = math.min(children.size, arity) + ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, routes, dflt, arity), dt(retT), children, + argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + } + try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) + catch { case _: Throwable => } + } def apply(ext: SparkSessionExtensions): Unit = { inj(ext, "Ymax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmax) @@ -65,12 +80,14 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "getX", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getX) inj(ext, "getY", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getY) inj(ext, "getZ", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getZ) + inj(ext, "hasZ", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxHasz) inj(ext, "initcap", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.textsetInitcap) inj(ext, "insert", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.insert) inj(ext, "instantN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.instantN) inj(ext, "interp", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.interp) inj(ext, "intset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatsetToIntset) - inj(ext, "intspan", 3, Array[String]("String", "Double", "Double"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.atElevation) + inj(ext, "intsetFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.IOAliasUDFs.asHexEWKB) + inj(ext, "isGeodetic", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxIsGeodetic) inj(ext, "lowerInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.lowerInc) inj(ext, "maxInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.maxInstant) inj(ext, "merge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.merge) @@ -81,6 +98,8 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "numDates", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.numDates) inj(ext, "numInstants", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.TemporalUDFs.numInstants) inj(ext, "numSequences", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorUDFs.numSequences) + inj(ext, "numTimestamps", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.MoreAccessorUDFs.numTimestamps) + inj(ext, "numValues", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.SpanAccessorUDFs.setNumValues) inj(ext, "sequenceN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.sequenceN) inj(ext, "setInterp", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSetInterp) inj(ext, "set_contains", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setContains) @@ -100,7 +119,6 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "stbox_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.stboxIntersection) inj(ext, "stbox_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.stboxOverlaps) inj(ext, "tCovers", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.TempSpatialRelsUDFs.tCoversTgeoGeo) - inj(ext, "tbox_in", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.ConstructorUDFs.tbox) inj(ext, "temporal_after", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalAfterSpan) inj(ext, "temporal_before", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalBeforeSpan) inj(ext, "temporal_overafter", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverafterSpan) @@ -114,17 +132,32 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "tfloat", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tintToTfloat) inj(ext, "timestampN", 2, Array[String]("String", "Integer"), "Timestamp", org.mobilitydb.spark.temporal.MoreAccessorUDFs.timestampN) inj(ext, "tintInst", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalToTInstant) + inj(ext, "trajectory", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tpointTrajectory) inj(ext, "twCentroid", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.twCentroid) inj(ext, "update", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.update) inj(ext, "upperInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.upperInc) inj(ext, "volume", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxVolume) + + // multi-impl: per-row arg0 MEOS-type-tag dispatch + injMulti(ext, "SRID", 1, Array[String]("String"), "Integer", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSrid: AnyRef)), (org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointSrid: AnyRef)) + injMulti(ext, "Tmax", 1, Array[String]("String"), "java.sql.Timestamp", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmax: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmax: AnyRef)), null) + injMulti(ext, "Tmin", 1, Array[String]("String"), "java.sql.Timestamp", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmin: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmin: AnyRef)), null) + injMulti(ext, "Xmax", 1, Array[String]("String"), "Double", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmax: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmax: AnyRef)), null) + injMulti(ext, "Xmin", 1, Array[String]("String"), "Double", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmin: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmin: AnyRef)), null) + injMulti(ext, "asHexWKB", 2, Array[String]("String", "Timestamp"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.temporal.TileUDFs.getSpaceTile: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandFloat: AnyRef)), (org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.afterTimestamp: AnyRef)) + injMulti(ext, "hasT", 1, Array[String]("String"), "Boolean", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHast: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHast: AnyRef)), null) + injMulti(ext, "hasX", 1, Array[String]("String"), "Boolean", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHasx: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHasx: AnyRef)), null) + injMulti(ext, "intspanset", 1, Array[String]("Double"), "String", Map[String, AnyRef]("floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetToInt: AnyRef), "set" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setToSpanset: AnyRef)), null) + injMulti(ext, "round", 2, Array[String]("String", "Integer"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxRound: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxRound: AnyRef)), null) + injMulti(ext, "setSRID", 2, Array[String]("String", "Integer"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSetSrid: AnyRef)), (org.mobilitydb.spark.geo.GeoAnalyticsUDFs.setSRID: AnyRef)) + injMulti(ext, "shiftTime", 2, Array[String]("String", "String"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxShiftScaleTime: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxShiftScaleTime: AnyRef)), (org.mobilitydb.spark.temporal.AccessorUDFs.shift: AnyRef)) + injMulti(ext, "span", 1, Array[String]("Double"), "String", Map[String, AnyRef]("set" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setToSpan: AnyRef), "span" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.spanToSpanset: AnyRef)), null) + injMulti(ext, "stbox", 1, Array[String]("String"), "String", Map[String, AnyRef]("tstzspan" -> (org.mobilitydb.spark.geo.STBoxUDFs.tstzspanToStbox: AnyRef)), (org.mobilitydb.spark.geo.GeoUDFs.tpointToStbox: AnyRef)) + injMulti(ext, "tbox", 1, Array[String]("Double"), "String", Map[String, AnyRef]("numspan_timestamptz" -> (org.mobilitydb.spark.temporal.TBoxUDFs.numspanTimestamptzToTbox: AnyRef), "set" -> (org.mobilitydb.spark.temporal.TBoxUDFs.setToTbox: AnyRef), "span" -> (org.mobilitydb.spark.temporal.TBoxUDFs.spanToTbox: AnyRef), "spanset" -> (org.mobilitydb.spark.temporal.TBoxUDFs.spansetToTbox: AnyRef)), (org.mobilitydb.spark.temporal.AccessorUDFs.tnumberToTbox: AnyRef)) + injMulti(ext, "timeSpan", 1, Array[String]("String"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxToTstzspan: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxToTstzspan: AnyRef)), (org.mobilitydb.spark.temporal.TransformUDFs.temporalToTstzspan: AnyRef)) } - // multi-impl (need per-row meos_typeof_hexwkb dispatch, v2): - // SRID -> ['aDwithinGeo', 'aIntersects', 'eContains', 'eCovers', 'eDisjoint', 'eDwithinGeo', 'eIntersects', 'eTouches', 'stboxSrid', 'tpointSRID', 'tpointSrid'] - // Tmax -> ['stboxTmax', 'tboxTmax'] - // Tmin -> ['stboxTmin', 'tboxTmin'] - // Xmax -> ['stboxXmax', 'tboxXmax', 'tboxfloatXmax', 'tboxintXmax'] - // Xmin -> ['stboxXmin', 'tboxXmin', 'tboxfloatXmin', 'tboxintXmin'] + // multi-impl not arg0-dispatchable (all impls share arg0 type; need + // the differentiating arg, e.g. atTime on the time argument): // aDwithin -> ['aDwithin', 'aDwithinGeo'] // aIntersects -> ['aIntersects', 'eIntersects'] // abs -> ['abs', 'tnumberAbs'] @@ -137,7 +170,6 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // angularDifference -> ['tnumberAngularDifference', 'tpointAngularDifference'] // area -> ['stboxArea', 'stboxPerimeter'] // asEWKT -> ['asEWKT', 'tpointAsEWKT'] - // asHexWKB -> ['afterTimestamp', 'appendInstant', 'appendSequence', 'asHexEWKB', 'asHexWKB', 'atElevation', 'atGeometry', 'atMax', 'atMin', 'atSpan', 'atSpanset', 'atStbox', 'atTbox', 'atTime', 'atValue', 'atValues', 'bearing', 'bearingToPoint', 'beforeTimestamp', 'bigintset', 'bigintspanExpand', 'cbuffersetFromBinary', 'cbuffersetFromHexWKB', 'cumulativeLength', 'dates', 'dateset', 'datespan', 'datespanToTstzspan', 'datespanset', 'deleteTime', 'douglasPeuckerSimplify', 'endInstant', 'endSequence', 'expand', 'expandSpace', 'expandValue', 'floatToSet', 'floatToSpan', 'floatToSpanset', 'floatToTbox', 'floatset', 'floatsetCeil', 'floatsetDegrees', 'floatsetFloor', 'floatsetRadians', 'floatsetToIntset', 'floatspan', 'floatspanExpand', 'floatspanShiftScale', 'floatspanToIntspan', 'floatspanset', 'floatspansetCeil', 'floatspansetFloor', 'floatspansetRound', 'floatspansetShiftScale', 'floatspansetToInt', 'geoTimeStbox', 'geography', 'geometry', 'getSpace', 'getSpaceTile', 'getSpaceTimeTile', 'getStboxTimeTile', 'getTBoxTimeTile', 'getTime', 'getTimeTile', 'getValueTile', 'getX', 'getY', 'getZ', 'insert', 'instantN', 'intToSet', 'intToSpan', 'intToSpanset', 'intToTbox', 'intset', 'intsetToFloatset', 'intspan', 'intspanExpand', 'intspanShiftScale', 'intspanToFloatspan', 'intspanset', 'intspansetShiftScale', 'intspansetToFloat', 'maxDistSimplify', 'maxInstant', 'merge', 'minDistSimplify', 'minDistance', 'minDistanceTgeoarrTgeoarr', 'minInstant', 'minTimeDeltaSimplify', 'minusMax', 'minusMin', 'minusStbox', 'minusTbox', 'minusTime', 'minusValue', 'minusValues', 'naiTgeoGeo', 'naiTgeoTgeo', 'nearestApproachInstant', 'npointsetFromBinary', 'npointsetFromHexWKB', 'npointsetFromText', 'numspanTimestamptzToTbox', 'points', 'posesetFromBinary', 'posesetFromHexWKB', 'posesetFromText', 'routes', 'scale', 'sequenceN', 'setIntersection', 'setMinus', 'setSRID', 'setToSpan', 'setToSpanset', 'setToTbox', 'setUnion', 'shift', 'shiftScale', 'span', 'spanIntersection', 'spanMinus', 'spanToSpanset', 'spanToTbox', 'spanUnion', 'spanset', 'spansetEndSpan', 'spansetIntersection', 'spansetIntersectionSpan', 'spansetMinus', 'spansetMinusSpan', 'spansetSpanN', 'spansetStartSpan', 'spansetToTbox', 'spansetUnion', 'spansetUnionSpan', 'speed', 'startInstant', 'startSequence', 'stbox', 'stboxAdjacent', 'stboxFromBinary', 'stboxFromHexWKB', 'stboxToTstzspan', 'stops', 'tContains', 'tCovers', 'tDwithin', 'tbool', 'tboolAtValue', 'tboolFromBaseTemp', 'tboolFromMfjson', 'tboolInst', 'tboolMinusValue', 'tboolWhenTrue', 'tbox', 'tboxExpandFloat', 'tboxExpandInt', 'tboxExpandTime', 'tboxFromBinary', 'tboxFromHexWKB', 'tboxMake', 'tboxRound', 'tboxShiftScaleTime', 'tboxToFloatspan', 'tboxToIntspan', 'tboxToTstzspan', 'tcbuffer', 'tcbufferFromText', 'tcbufferInst', 'tcbufferRadius', 'tcbufferSeq', 'tcbufferSeqSet', 'tcbufferSeqSetGaps', 'tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber', 'temporalAtMax', 'temporalAtMin', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset', 'temporalAtValues', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset', 'temporalMinusValues', 'temporalScaleTime', 'temporalSetInterp', 'temporalShiftScaleTime', 'temporalShiftTime', 'temporalSimplifyDp', 'temporalSimplifyMaxDist', 'temporalSimplifyMinDist', 'temporalSimplifyMinTdelta', 'temporalTPrecision', 'temporalTSample', 'temporalToTInstant', 'temporalToTSequence', 'temporalToTSequenceSet', 'teqTemporalTemporal', 'textset', 'textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText', 'textsetInitcap', 'textsetLower', 'textsetUpper', 'tfloat', 'tfloatAtValue', 'tfloatCeil', 'tfloatDegrees', 'tfloatDerivative', 'tfloatFloor', 'tfloatFromBaseTemp', 'tfloatFromMfjson', 'tfloatInst', 'tfloatMinusValue', 'tfloatRadians', 'tfloatRound', 'tfloatScaleValue', 'tfloatShiftScaleValue', 'tfloatShiftValue', 'tfloatToTint', 'tgeTemporalTemporal', 'tgeoAtGeom', 'tgeoAtStbox', 'tgeoMinusGeom', 'tgeoMinusStbox', 'tgeogpoint', 'tgeogpointFromMfjson', 'tgeography', 'tgeographyFromEWKT', 'tgeometry', 'tgeometryInst', 'tgeompoint', 'tgeompointFromMfjson', 'tgeompointInst', 'tgtTemporalTemporal', 'th3IndexInstFromText', 'th3IndexInstMake', 'th3IndexSeqFromText', 'th3IndexSeqMake', 'th3IndexSeqSetFromText', 'th3IndexSeqSetMake', 'time', 'timespan', 'timestamptzToSet', 'timestamptzToSpan', 'timestamptzToTbox', 'tint', 'tintAtValue', 'tintFromBaseTemp', 'tintFromMfjson', 'tintInst', 'tintMinusValue', 'tintScaleValue', 'tintShiftScaleValue', 'tintShiftValue', 'tintToTfloat', 'tleTemporalTemporal', 'tltTemporalTemporal', 'tneTemporalTemporal', 'tnpoint', 'tnpointRoute', 'tnpointSeq', 'tnpointSeqSet', 'tnpointSeqSetGaps', 'tnumberAtSpan', 'tnumberAtSpanset', 'tnumberAtTbox', 'tnumberMinusSpan', 'tnumberMinusSpanset', 'tnumberMinusTbox', 'tnumberToSpan', 'tnumberToTbox', 'tnumberTrend', 'tnumberValuespans', 'tpointAtElevation', 'tpointAtValue', 'tpointAzimuth', 'tpointCumulativeLength', 'tpointDirection', 'tpointExpandSpace', 'tpointFromBaseTemp', 'tpointMinusElevation', 'tpointMinusValue', 'tpointRound', 'tpointSetSRID', 'tpointSetSrid', 'tpointSpeed', 'tpointToStbox', 'tpointTransform', 'tpose', 'tposeFromMFJSON', 'tposeFromText', 'tposeInst', 'tposePoints', 'tposeRotation', 'tposeSeq', 'tposeSeqSet', 'tposeSeqSetGaps', 'tprecision', 'transform', 'trgeometry', 'trgeometryFromMFJSON', 'trgeometrySeq', 'trgeometrySeqSet', 'trgeometrySeqSetGaps', 'tsample', 'tstzset', 'tstzspan', 'tstzspanShiftScale', 'tstzspanToDatespan', 'tstzspanset', 'tstzspansetShiftScale', 'ttext', 'ttextAtValue', 'ttextCat', 'ttextCatTextTtext', 'ttextCatTtextText', 'ttextCatTtextTtext', 'ttextFromBaseTemp', 'ttextFromMfjson', 'ttextInitcap', 'ttextInst', 'ttextLower', 'ttextMinusValue', 'ttextUpper', 'ttextValueAtTimestamptz', 'update', 'valueSet', 'valueSpan'] // asText -> ['asText', 'tpointAsText'] // atGeometry -> ['atElevation', 'atGeometry', 'tgeoAtGeom', 'tpointAtElevation'] // atMax -> ['atMax', 'temporalAtMax'] @@ -145,7 +177,7 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // atStbox -> ['atStbox', 'tgeoAtStbox'] // atTbox -> ['atTbox', 'tnumberAtTbox'] // atTime -> ['atSpan', 'atSpanset', 'atTime', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset'] - // atValue -> ['atValue', 'tboolAtValue', 'tfloatAtValue', 'tintAtValue', 'tpointAtValue', 'ttextAtValue'] + // atValue -> ['tboolAtValue', 'tfloatAtValue', 'tintAtValue', 'tpointAtValue', 'ttextAtValue'] // atValues -> ['atValues', 'temporalAtValues'] // bearing -> ['bearing', 'bearingToPoint'] // ceil -> ['ceil', 'floatsetCeil', 'floatspansetCeil', 'tfloatCeil'] @@ -160,34 +192,25 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // eContains -> ['eContains', 'geomContains'] // eDisjoint -> ['eDisjoint', 'eDisjointTgeoTgeo'] // eDwithin -> ['eDwithin', 'eDwithinGeo'] - // endSpan -> ['endSpan', 'floatspansetUpper', 'spansetEndSpan'] + // endSpan -> ['endSpan', 'spansetEndSpan'] // endTimestamp -> ['endTimestamp', 'tstzspansetEndTimestamptz'] - // endValue -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'tboolEndValue', 'textsetEndValue', 'tfloatEndValue', 'tintEndValue', 'tpointEndValue', 'tstzsetEndValue', 'ttextEndValue'] + // endValue -> ['tboolEndValue', 'tfloatEndValue', 'tintEndValue', 'tpointEndValue', 'ttextEndValue'] // ever_eq -> ['everEqBoolTbool', 'everEqFloatTfloat', 'everEqIntTint', 'everEqTboolBool', 'everEqTemporal', 'everEqTfloatFloat', 'everEqTintInt'] // ever_ge -> ['everGeFloatTfloat', 'everGeIntTint', 'everGeTemporal', 'everGeTfloatFloat', 'everGeTintInt'] // ever_gt -> ['everGtFloatTfloat', 'everGtIntTint', 'everGtTemporal', 'everGtTfloatFloat', 'everGtTintInt'] // ever_le -> ['everLeFloatTfloat', 'everLeIntTint', 'everLeTemporal', 'everLeTfloatFloat', 'everLeTintInt'] // ever_lt -> ['everLtFloatTfloat', 'everLtIntTint', 'everLtTemporal', 'everLtTfloatFloat', 'everLtTintInt'] - // ever_ne -> ['everNeBoolTbool', 'everNeFloatTfloat', 'everNeIntTint', 'everNeTboolBool', 'everNeTemporal', 'everNeTfloatFloat', 'everNeTintInt'] - // expandSpace -> ['expandSpace', 'stboxExpandSpace', 'tpointExpandSpace'] + // ever_ne -> ['everNeFloatTfloat', 'everNeIntTint', 'everNeTboolBool', 'everNeTemporal', 'everNeTfloatFloat', 'everNeTintInt'] + // expandSpace -> ['expandSpace', 'stboxExpandSpace'] // floatspan -> ['tboxToFloatspan', 'tboxToIntspan'] // floatspanset -> ['floatspanset', 'intspansetToFloat'] // floor -> ['floatsetFloor', 'floatspansetFloor', 'floor', 'tfloatFloor'] // getSpace -> ['getSpace', 'stboxGetSpace'] // getTime -> ['getTime', 'time'] // getValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'textsetEndValue', 'tnumberValuespans', 'tstzsetEndValue', 'ttextValueAtTimestamptz'] - // hasT -> ['stboxHast', 'tboxHast'] - // hasX -> ['stboxHasx', 'tboxHasx'] - // hasZ -> ['getZ', 'stboxHasz'] - // intsetFromHexWKB -> ['asHexEWKB', 'atValues', 'cbuffersetFromBinary', 'cbuffersetFromHexWKB', 'dateset', 'datesetEndValue', 'datesetStartValue', 'distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'everIntersectsH3IndexSetTh3Index', 'floatsetCeil', 'floatsetDegrees', 'floatsetEndValue', 'floatsetFloor', 'floatsetRadians', 'floatsetStartValue', 'floatsetToIntset', 'h3CompactCells', 'h3UncompactCells', 'intsetEndValue', 'intsetStartValue', 'intsetToFloatset', 'minusValues', 'npointsetFromBinary', 'npointsetFromHexWKB', 'posesetFromBinary', 'posesetFromHexWKB', 'routes', 'setDistance', 'setNumValues', 'setToSpan', 'setToSpanset', 'setToTbox', 'set_distance', 'temporalAtTstzset', 'temporalAtValues', 'temporalDeleteTstzset', 'temporalMinusTstzset', 'temporalMinusValues', 'textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText', 'textsetEndValue', 'textsetInitcap', 'textsetLower', 'textsetStartValue', 'textsetUpper', 'tnpointSeqSetGaps', 'tstzsetEndValue', 'tstzsetStartValue'] - // intset_in -> ['asHexEWKB', 'bigintset', 'floatset', 'intset', 'textset', 'tstzset'] - // intspanFromHexWKB -> ['atSpan', 'bigintspanLower', 'bigintspanUpper', 'bigintspanWidth', 'datespanLower', 'datespanUpper', 'floatspanLower', 'floatspanShiftScale', 'floatspanUpper', 'floatspanWidth', 'intspanLower', 'intspanShiftScale', 'intspanUpper', 'intspanWidth', 'minusTime', 'numspanTimestamptzToTbox', 'shiftScale', 'spanLowerInc', 'spanToSpanset', 'spanToTbox', 'spanUpperInc', 'span_distance', 'span_intersection', 'span_minus', 'span_union', 'spanset', 'stboxAdjacent', 'tboxMake', 'temporalAtTstzspan', 'temporalDeleteTstzspan', 'temporalMinusTstzspan', 'time_distance', 'tnumberAtSpan', 'tnumberMinusSpan', 'tpointAtElevation', 'tpointMinusElevation', 'tstzspanLower', 'tstzspanToStbox', 'tstzspanUpper', 'width'] - // intspanset -> ['floatToSpanset', 'floatspansetToInt', 'intToSpanset', 'intspanset', 'setToSpanset'] - // intspansetFromHexWKB -> ['atSpanset', 'bigintspansetWidth', 'dateN', 'dates', 'endDate', 'endSpan', 'floatspanset', 'floatspansetCeil', 'floatspansetFloor', 'floatspansetLower', 'floatspansetRound', 'floatspansetShiftScale', 'floatspansetToInt', 'floatspansetUpper', 'floatspansetWidth', 'intspanset', 'intspansetLower', 'intspansetShiftScale', 'intspansetToFloat', 'intspansetUpper', 'intspansetWidth', 'numDates', 'numSpans', 'spann', 'spansetEndSpan', 'spansetLowerInc', 'spansetNumSpans', 'spansetSpanN', 'spansetStartSpan', 'spansetToTbox', 'spansetUpperInc', 'spanset_distance', 'spanset_intersection', 'spanset_minus', 'spanset_union', 'startDate', 'startSpan', 'temporalAtTstzspanset', 'temporalDeleteTstzspanset', 'temporalMinusTstzspanset', 'time_distance_spanset', 'tnumberAtSpanset', 'tnumberMinusSpanset', 'tstzspansetDuration', 'tstzspansetEndTimestamptz', 'tstzspansetLower', 'tstzspansetNumTimestamps', 'tstzspansetStartTimestamptz', 'tstzspansetUpper'] - // isGeodetic -> ['eIntersects', 'stboxIsGeodetic'] // length -> ['length', 'speed', 'tpointLength', 'tpointSpeed'] // ln -> ['exp', 'ln', 'log10', 'tfloatExp', 'tfloatLn', 'tfloatLog10'] - // lower -> ['bigintspanLower', 'datespanLower', 'floatspanLower', 'floatspansetLower', 'intspanLower', 'intspansetLower', 'textsetLower', 'tstzspanLower', 'tstzspansetLower', 'ttextInitcap', 'ttextLower'] + // lower -> ['bigintspanLower', 'datespanLower', 'floatspanLower', 'floatspansetLower', 'intspanLower', 'intspansetLower', 'textsetLower', 'tstzspanLower', 'tstzspansetLower', 'ttextLower'] // maxValue -> ['tfloatMaxValue', 'tintMaxValue', 'ttextMaxValue'] // minDistSimplify -> ['minDistSimplify', 'temporalSimplifyMinDist'] // minDistance -> ['minDistance', 'minDistanceTgeoarrTgeoarr'] @@ -200,20 +223,14 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // minusValue -> ['minusValue', 'tboolMinusValue', 'tfloatMinusValue', 'tintMinusValue', 'tpointMinusValue', 'ttextMinusValue'] // minusValues -> ['minusValues', 'temporalMinusValues'] // numSpans -> ['numSpans', 'spansetNumSpans'] - // numTimestamps -> ['numTimestamps', 'tstzspansetNumTimestamps'] - // numValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'setNumValues', 'textsetEndValue', 'tstzsetEndValue'] // radians -> ['floatsetRadians', 'radians', 'tfloatRadians'] - // round -> ['floatspansetRound', 'stboxRound', 'tboxRound'] // scaleTime -> ['scale', 'temporalScaleTime'] // scaleValue -> ['tfloatScaleValue', 'tintScaleValue'] // set -> ['floatToSet', 'intToSet', 'timestamptzToSet'] - // setSRID -> ['setSRID', 'stboxSetSrid', 'tpointSetSRID', 'tpointSetSrid'] // set_distance -> ['distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'setDistance', 'set_distance'] // shift -> ['floatspanShiftScale', 'floatspansetShiftScale', 'intspanShiftScale', 'intspansetShiftScale', 'shiftScale', 'tstzspanShiftScale', 'tstzspansetShiftScale'] // shiftScaleValue -> ['tfloatShiftScaleValue', 'tintShiftScaleValue'] - // shiftTime -> ['shift', 'stboxShiftScaleTime', 'tboxShiftScaleTime', 'temporalShiftScaleTime', 'temporalShiftTime'] // shiftValue -> ['tfloatShiftValue', 'tintShiftValue'] - // span -> ['floatToSpan', 'intToSpan', 'setToSpan', 'spanToSpanset', 'spanset', 'timestamptzToSpan'] // spanN -> ['spann', 'spansetSpanN'] // span_contained -> ['spanContainedIn', 'spanContainedInSpanset'] // span_contains -> ['spanContains', 'spansetContainsSpan'] @@ -222,11 +239,10 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // span_minus -> ['spansetMinus', 'spansetMinusSpan', 'spanset_minus'] // span_overlaps -> ['spanOverlaps', 'spansetOverlaps'] // span_union -> ['spansetUnion', 'spansetUnionSpan', 'spanset_union'] - // startSpan -> ['floatspansetLower', 'spansetStartSpan', 'startSpan'] + // startSpan -> ['spansetStartSpan', 'startSpan'] // startTimestamp -> ['getTimestamp', 'startTimestamp', 'tstzspansetStartTimestamptz'] // startValue -> ['datesetStartValue', 'floatsetStartValue', 'getValue', 'intsetStartValue', 'startValue', 'tboolGetValue', 'tboolStartValue', 'textsetStartValue', 'tfloatGetValue', 'tfloatStartValue', 'tintGetValue', 'tintStartValue', 'tpointGetValue', 'tpointStartValue', 'tstzsetStartValue', 'ttextGetValue', 'ttextStartValue'] - // stbox -> ['aDwithinGeo', 'aIntersects', 'eContains', 'eCovers', 'eDisjoint', 'eDwithinGeo', 'eIntersects', 'eTouches', 'expandSpace', 'geoToStbox', 'getZ', 'timestamptzToStbox', 'tpointExpandSpace', 'tpointSRID', 'tpointToStbox', 'tstzspanToStbox'] - // stboxFromHexWKB -> ['atStbox', 'bboxOverlaps', 'box2d', 'box3d', 'expandSpace', 'getSpace', 'getTBoxTimeTile', 'minusStbox', 'nadTgeoStbox', 'stboxFromBinary', 'stboxFromHexWKB', 'stboxOverlaps', 'stbox_intersection', 'stbox_union', 'tgeoAtStbox', 'tgeoMinusStbox', 'tpointExpandSpace'] + // stboxFromHexWKB -> ['box2d', 'box3d', 'nadTgeoStbox'] // stbox_union -> ['stboxUnion', 'stbox_union', 'unionStboxStbox'] // tContains -> ['tContains', 'tContainsTgeoGeo'] // tDisjoint -> ['tDisjoint', 'tDisjointTgeoTgeo'] @@ -234,28 +250,24 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // tDwithin -> ['tDwithin', 'tDwithinTgeoGeo'] // tIntersects -> ['tIntersects', 'tIntersectsTgeoTgeo'] // tTouches -> ['tTouches', 'tTouchesTogeoTgeo'] - // tbox -> ['floatToTbox', 'intToTbox', 'numspanTimestamptzToTbox', 'setToTbox', 'spanToTbox', 'spansetToTbox', 'timestamptzToTbox', 'tnumberToTbox'] - // tboxFromHexWKB -> ['atTbox', 'bigintSpan', 'minusTbox', 'tboxFromBinary', 'tboxFromHexWKB', 'tbox_intersection', 'tbox_union', 'tnumberAtTbox', 'tnumberMinusTbox'] // tempSubtype -> ['tempSubtype', 'temporalSubtype'] // textset_cat -> ['textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText'] - // timeSpan -> ['span', 'stboxToTstzspan', 'tboxToTstzspan', 'timespan'] - // timestamps -> ['atValue', 'tstzspansetNumTimestamps', 'ttextValueAtTimestamptz'] - // tint -> ['geomContains', 'geomToH3Cell', 'tboolInst', 'tcbufferInst', 'tfloatInst', 'tfloatToTint', 'tgeompointInst', 'tintInst', 'tposeInst', 'ttextInst'] - // tintFromHexWKB -> ['aDisjoint', 'aDwithin', 'aDwithinGeo', 'aIntersects', 'abs', 'addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'afterTimestamp', 'alwaysNeTh3IndexH3Index', 'alwaysNeTh3IndexTh3Index', 'appendInstant', 'appendSequence', 'asEWKT', 'asHexEWKB', 'asHexWKB', 'asText', 'atElevation', 'atGeometry', 'atMax', 'atMin', 'atSpan', 'atSpanset', 'atStbox', 'atTbox', 'atTime', 'atValue', 'atValues', 'avgValue', 'bboxOverlaps', 'bearing', 'bearingToPoint', 'beforeTimestamp', 'ceil', 'cumulativeLength', 'degrees', 'deleteTime', 'deltavalue', 'derivative', 'divTfloatFloat', 'divTintInt', 'divTnumberTnumber', 'douglasPeuckerSimplify', 'duration', 'dynTimeWarpDistance', 'dynamicTimeWarp', 'eContains', 'eCovers', 'eDisjoint', 'eDisjointTgeoTgeo', 'eDwithin', 'eDwithinGeo', 'eIntersects', 'eIntersectsTgeoTgeo', 'eTouches', 'endInstant', 'endSequence', 'endTimestamp', 'endValue', 'everIntersectsH3IndexSetTh3Index', 'everNeBoolTbool', 'exp', 'expandSpace', 'floor', 'frechetDistance', 'geography', 'geometry', 'getTBoxTimeTile', 'getTime', 'getTimestamp', 'getValue', 'getX', 'getY', 'getZ', 'hausdorffDistance', 'insert', 'instantN', 'integral', 'interp', 'isSimple', 'length', 'ln', 'log10', 'lowerInc', 'maxDistSimplify', 'maxInstant', 'memSize', 'merge', 'minDistSimplify', 'minDistance', 'minDistanceTgeoGeo', 'minDistanceTgeoTgeo', 'minDistanceTgeoarrTgeoarr', 'minInstant', 'minTimeDeltaSimplify', 'minusMax', 'minusMin', 'minusStbox', 'minusTbox', 'minusTime', 'minusValue', 'minusValues', 'multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'nadTgeoGeo', 'nadTgeoStbox', 'nadTgeoTgeo', 'naiTgeoGeo', 'naiTgeoTgeo', 'nearestApproachDistance', 'nearestApproachInstant', 'numInstants', 'numSequences', 'numTimestamps', 'points', 'radians', 'routes', 'scale', 'sequenceN', 'setSRID', 'shift', 'shortestLine', 'shortestLineTgeoGeo', 'shortestLineTgeoTgeo', 'span', 'speed', 'startInstant', 'startSequence', 'startTimestamp', 'startValue', 'stops', 'subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tContains', 'tContainsTgeoGeo', 'tContainsTgeoTgeo', 'tCovers', 'tCoversTgeoGeo', 'tDisjoint', 'tDisjointTgeoTgeo', 'tDwithin', 'tDwithinTgeoGeo', 'tIntersects', 'tIntersectsTgeoTgeo', 'tTouches', 'tTouchesTogeoTgeo', 'tandBool', 'tandBoolTbool', 'tandTboolTbool', 'tbigintToTh3Index', 'tboolAnd', 'tboolAtValue', 'tboolEndValue', 'tboolFromBaseTemp', 'tboolGetValue', 'tboolMinusValue', 'tboolNot', 'tboolOr', 'tboolOut', 'tboolStartValue', 'tboolValueAtTimestamptz', 'tboolValueN', 'tboolWhenTrue', 'tcbuffer', 'tcbufferInst', 'tcbufferRadius', 'tcbufferSeq', 'tcbufferSeqSet', 'tcbufferSeqSetGaps', 'tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber', 'tempSubtype', 'temporalAsMfjson', 'temporalAtMax', 'temporalAtMin', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset', 'temporalAtValues', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset', 'temporalMinusValues', 'temporalScaleTime', 'temporalSetInterp', 'temporalShiftScaleTime', 'temporalShiftTime', 'temporalSimplifyDp', 'temporalSimplifyMaxDist', 'temporalSimplifyMinDist', 'temporalSimplifyMinTdelta', 'temporalSubtype', 'temporalTPrecision', 'temporalTSample', 'temporalToTInstant', 'temporalToTSequence', 'temporalToTSequenceSet', 'teqH3IndexTh3Index', 'teqTemporalTemporal', 'teqTh3IndexH3Index', 'teqTh3IndexTh3Index', 'tfloatAtValue', 'tfloatCeil', 'tfloatDegrees', 'tfloatDerivative', 'tfloatEndValue', 'tfloatExp', 'tfloatFloor', 'tfloatFromBaseTemp', 'tfloatGetValue', 'tfloatLn', 'tfloatLog10', 'tfloatMaxValue', 'tfloatMinValue', 'tfloatMinusValue', 'tfloatOut', 'tfloatRadians', 'tfloatRound', 'tfloatScaleValue', 'tfloatShiftScaleValue', 'tfloatShiftValue', 'tfloatStartValue', 'tfloatToTint', 'tfloatValueAtTimestamptz', 'tfloatValueN', 'tgeTemporalTemporal', 'tgeoAtGeom', 'tgeoAtStbox', 'tgeoMinusGeom', 'tgeoMinusStbox', 'tgeoTraversedArea', 'tgeogpointGreatCircleDistance', 'tgeogpointToTh3Index', 'tgeography', 'tgeographyFromEWKT', 'tgeometry', 'tgeompointToTh3Index', 'tgtTemporalTemporal', 'th3IndexAreNeighborCells', 'th3IndexCellArea', 'th3IndexCellToCenterChild', 'th3IndexCellToChildPos', 'th3IndexCellToLocalIj', 'th3IndexCellToParent', 'th3IndexCellToVertex', 'th3IndexCellsToDirectedEdge', 'th3IndexChildPosToCell', 'th3IndexEdgeLength', 'th3IndexEndValue', 'th3IndexGridDistance', 'th3IndexIsPentagon', 'th3IndexLocalIjToCell', 'th3IndexSeqSetMake', 'th3IndexStartValue', 'th3IndexToTbigint', 'th3IndexValueAtTimestamp', 'th3IndexValueN', 'time', 'timespan', 'timestampN', 'tintAtValue', 'tintEndValue', 'tintFromBaseTemp', 'tintGetValue', 'tintMaxValue', 'tintMinValue', 'tintMinusValue', 'tintOut', 'tintScaleValue', 'tintShiftScaleValue', 'tintShiftValue', 'tintStartValue', 'tintToTfloat', 'tintValueAtTimestamptz', 'tintValueN', 'tleTemporalTemporal', 'tltTemporalTemporal', 'tneH3IndexTh3Index', 'tneTemporalTemporal', 'tneTh3IndexH3Index', 'tneTh3IndexTh3Index', 'tnotTbool', 'tnpointRoute', 'tnpointSeq', 'tnpointSeqSet', 'tnpointSeqSetGaps', 'tnumberAbs', 'tnumberAngularDifference', 'tnumberAtSpan', 'tnumberAtSpanset', 'tnumberAtTbox', 'tnumberDeltaValue', 'tnumberIntegral', 'tnumberMinusSpan', 'tnumberMinusSpanset', 'tnumberMinusTbox', 'tnumberToSpan', 'tnumberToTbox', 'tnumberTrend', 'tnumberTwavg', 'tnumberValuespans', 'tnumber_add', 'tnumber_div', 'tnumber_mul', 'tnumber_sub', 'torBool', 'torBoolTbool', 'torTboolTbool', 'tpointAngularDifference', 'tpointAsEWKT', 'tpointAsText', 'tpointAtElevation', 'tpointAtValue', 'tpointAzimuth', 'tpointConvexHull', 'tpointCumulativeLength', 'tpointDirection', 'tpointEndValue', 'tpointExpandSpace', 'tpointFromBaseTemp', 'tpointGetValue', 'tpointIsSimple', 'tpointLength', 'tpointMinusElevation', 'tpointMinusValue', 'tpointRound', 'tpointSRID', 'tpointSetSRID', 'tpointSetSrid', 'tpointSpeed', 'tpointSrid', 'tpointStartValue', 'tpointToStbox', 'tpointTrajectory', 'tpointTransform', 'tpointValueN', 'tpose', 'tposeInst', 'tposePoints', 'tposeRotation', 'tposeSeq', 'tposeSeqSet', 'tposeSeqSetGaps', 'tprecision', 'trajectory', 'transform', 'traversedArea', 'trend', 'trgeometry', 'trgeometrySeq', 'trgeometrySeqSet', 'trgeometrySeqSetGaps', 'tsample', 'ttextAtValue', 'ttextCat', 'ttextCatTextTtext', 'ttextCatTtextText', 'ttextCatTtextTtext', 'ttextEndValue', 'ttextFromBaseTemp', 'ttextGetValue', 'ttextInitcap', 'ttextInst', 'ttextLower', 'ttextMaxValue', 'ttextMinValue', 'ttextMinusValue', 'ttextOut', 'ttextStartValue', 'ttextUpper', 'ttextValueAtTimestamptz', 'ttextValueN', 'twCentroid', 'twavg', 'update', 'upperInc', 'valueAtTimestamp', 'valueN', 'valueSet', 'valueSpan', 'whenTrue'] - // tintSeq -> ['tcbufferSeq', 'temporalToTSequence', 'tnpointSeq', 'tposeSeq', 'trgeometrySeq', 'ttextInst'] + // timestamps -> ['atValue', 'tstzspansetNumTimestamps'] + // tint -> ['tboolInst', 'tcbufferInst', 'tfloatInst', 'tfloatToTint', 'tgeompointInst', 'tintInst', 'tposeInst'] + // tintFromHexWKB -> ['avgValue', 'memSize', 'minDistanceTgeoTgeo', 'nadTgeoTgeo', 'routes'] + // tintSeq -> ['tcbufferSeq', 'temporalToTSequence', 'tnpointSeq', 'tposeSeq', 'trgeometrySeq'] // tintSeqSet -> ['tcbufferSeqSet', 'temporalToTSequenceSet', 'tnpointSeqSet', 'tposeSeqSet', 'trgeometrySeqSet', 'ttextInst'] // tintSeqSetGaps -> ['tcbufferSeqSetGaps', 'tnpointSeqSetGaps', 'tposeSeqSetGaps', 'trgeometrySeqSetGaps'] // tnumber_add -> ['addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'tnumber_add'] // tnumber_div -> ['divTfloatFloat', 'divTnumberTnumber', 'tnumber_div'] // tnumber_mul -> ['multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'tnumber_mul'] // tnumber_sub -> ['subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tnumber_sub'] - // trajectory -> ['tpointTrajectory', 'trajectory'] // traversedArea -> ['tgeoTraversedArea', 'traversedArea'] // trend -> ['tnumberTrend', 'trend'] // twAvg -> ['tnumberTwavg', 'twavg'] // upper -> ['bigintspanUpper', 'datespanUpper', 'floatspanUpper', 'floatspansetUpper', 'intspanUpper', 'intspansetUpper', 'textsetUpper', 'tstzspanUpper', 'tstzspansetUpper', 'ttextUpper'] - // valueAtTimestamp -> ['tboolValueAtTimestamptz', 'tfloatValueAtTimestamptz', 'tintValueAtTimestamptz', 'ttextValueAtTimestamptz', 'valueAtTimestamp'] - // valueN -> ['everNeBoolTbool', 'tboolValueN', 'tfloatValueN', 'tintValueN', 'tpointValueN', 'ttextFromBaseTemp', 'ttextInitcap', 'ttextValueN', 'valueN'] + // valueAtTimestamp -> ['tboolValueAtTimestamptz', 'tfloatValueAtTimestamptz', 'tintValueAtTimestamptz', 'valueAtTimestamp'] + // valueN -> ['everNeBoolTbool', 'tboolValueN', 'tfloatValueN', 'tintValueN', 'tpointValueN', 'ttextInitcap', 'ttextValueN', 'valueN'] // valueSpan -> ['tnumberToSpan', 'valueSpan'] // whenTrue -> ['tboolWhenTrue', 'whenTrue'] // width -> ['bigintspanWidth', 'bigintspansetWidth', 'floatspanWidth', 'floatspansetWidth', 'intspanWidth', 'intspansetWidth', 'width'] @@ -277,4 +289,18 @@ object MobilitySparkConnectExtensionsGen { case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) } + // route by arg0's MEOS type-tag name to the matching type-specific impl + private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { + case s: String => + val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) + catch { case _: Throwable => null } + routes.getOrElse(tn, dflt) + case _ => dflt + } + def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { + case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a)) } + case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b)) } + case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c)) } + case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d)) } + } } diff --git a/codegen/tools/NAMED_SURFACE.md b/codegen/tools/NAMED_SURFACE.md index aabf7021..3e89f981 100644 --- a/codegen/tools/NAMED_SURFACE.md +++ b/codegen/tools/NAMED_SURFACE.md @@ -59,13 +59,25 @@ so they capture only the serializable UDF, not the extension. The builder adapts to the call-site arity by null-padding the impl's optional args (so `asMFJSON(g)` reaches the impl's default precision). -- **single impl** (81 functions): direct ScalaUDF over the one impl. Generated, - compiled, and served live over Spark Connect under the identity names - (`asMFJSON(trip)`, `numSequences(trip)`, …) — retiring the camelCase remap and - `dialect_spark.go`'s `sparkNameMap` for this set. -- **multi impl** (139 functions, one SQL name over several type-specific impls): - listed in the generated file for the **v2** per-row `meos_typeof_hexwkb` - dispatch (the FFI peek is present in `GeneratedFunctions`). +- **single impl**: direct ScalaUDF over the one impl, bound to the identity name + (`asMFJSON(trip)`, `numSequences(trip)`, …) — no camelCase remap, no + `dialect_spark.go` `sparkNameMap` for this set. +- **multi impl, arg0-dispatchable** (one SQL name over several type-specific impls + whose first argument differs in MEOS type): one ScalaUDF whose companion-object + closure peeks `meostype_name(meos_typeof_hexwkb(arg0))` and routes to the impl + whose receiver type matches, with the `Temporal`-receiver impl as the catch-all + default. `Xmin/Ymin/Xmax/Ymax/Tmin/Tmax` route `stbox→stbox*`, `tbox→tbox*`; + `stbox` routes `tstzspan→tstzspanToStbox` with `tpointToStbox` as default. The + receiver category is read from the impl's `primaryMeos` first C-parameter type + (the last non-marshaling `GeneratedFunctions` call in the UDF body). Served live: + `Xmin(stbox(trip))` resolves the inner and outer tags per row to the real value. +- **multi impl, not arg0-dispatchable** (all impls share the first-arg type; the + differentiating argument is later, e.g. `atTime` on its time argument): listed + in the generated file for the arg-N dispatch extension. + +The registrar serves the `/items`-collection OGC function set (`asMFJSON`, `stbox`, +the `Xmin/Ymin/Xmax/Ymax/Tmin/Tmax` accessors, `numSequences`, `sequenceN`, +`trajectory`) under identity names over Spark Connect. The same two specs feed the PG/DuckDB identity dialects, PyMEOS, and Flink/Kafka. diff --git a/codegen/tools/extract_spark_impls.py b/codegen/tools/extract_spark_impls.py index 69110935..1fff439f 100644 --- a/codegen/tools/extract_spark_impls.py +++ b/codegen/tools/extract_spark_impls.py @@ -22,6 +22,18 @@ # a public static UDFn field declaration: capture name + generic type args FIELD_RE = re.compile(r'public\s+static\s+final\s+UDF(\d)<([^>]*)>\s+(\w+)\s*=', re.MULTILINE) GENFN_RE = re.compile(r'GeneratedFunctions\.(\w+)\s*\(') +# I/O helpers a UDF body calls for marshaling, not the semantic operation +HELPER_RE = re.compile(r'(_from_hexwkb|_from_binary|_from_wkb|_from_hexewkb|_in|_out|' + r'_as_hexwkb|_as_wkb|_as_text|_from_mfjson|_from_text|geo_from_text|' + r'pg_timestamptz_in|free)$') + +def primary_meos(meos): + """The semantic MEOS function of a UDF body: the last non-marshaling call + (the result-producing op, after any input parse / bbox-prefilter helpers).""" + for m in reversed(meos): + if not HELPER_RE.search(m): + return m + return meos[-1] if meos else None def scan_impls(root): impls = {} # sparkName -> dict @@ -40,14 +52,16 @@ def scan_impls(root): body = text[m.end(): decls[i + 1].start() if i + 1 < len(decls) else len(text)] meos = list(dict.fromkeys(GENFN_RE.findall(body))) # ordered-unique fields[field] = {'class': cls, 'pkg': pkg, 'arity': arity, - 'argTypes': targs[:-1], 'retType': targs[-1], 'meosFns': meos} + 'argTypes': targs[:-1], 'retType': targs[-1], 'meosFns': meos, + 'primaryMeos': primary_meos(meos)} for m in REG_RE.finditer(text): sparkName, field, ret = m.group(1), m.group(2), m.group(3) fd = fields.get(field) if fd: impls[sparkName] = {'field': field, 'class': fd['class'], 'pkg': fd['pkg'], 'retDataType': ret, 'arity': fd['arity'], 'argTypes': fd['argTypes'], - 'retType': fd['retType'], 'meosFns': fd['meosFns']} + 'retType': fd['retType'], 'meosFns': fd['meosFns'], + 'primaryMeos': fd['primaryMeos']} return impls def main(): @@ -63,8 +77,8 @@ def main(): # MEOS C fn -> spark impl(s) meos2spark = {} for sn, d in impls.items(): - for mf in d['meosFns']: - meos2spark.setdefault(mf, []).append(sn) + if d.get('primaryMeos'): + meos2spark.setdefault(d['primaryMeos'], []).append(sn) derived = {} for fn in surface: for c in fn['c']: diff --git a/codegen/tools/generate_spark_registrar.py b/codegen/tools/generate_spark_registrar.py index 8f92a811..03228d03 100644 --- a/codegen/tools/generate_spark_registrar.py +++ b/codegen/tools/generate_spark_registrar.py @@ -9,11 +9,14 @@ Joining them on the SQL->MEOS C doxygen chain yields canonical name -> Spark impl. This tool emits MobilitySparkConnectExtensionsGen.scala: a SparkSessionExtensions that injects each canonical function under its IDENTITY name (no camelCase remap, -no hand-written table). Single-impl functions bind directly to the one impl; -the builder adapts to the call-site arity by null-padding the impl's optional -args (so e.g. asMFJSON(g) reaches the impl's default precision). Multi-impl -functions (one SQL name over several type-specific impls) are listed for the -v2 per-row WKB-type-tag dispatch (meos_typeof_hexwkb) and not emitted here. +no hand-written table). Single-impl functions bind directly to the one impl; the +builder adapts to the call-site arity by null-padding the impl's optional args (so +e.g. asMFJSON(g) reaches the impl's default precision). Multi-impl functions (one +SQL name over several type-specific impls) whose first argument differs in MEOS +type are emitted as a per-row dispatch ScalaUDF that peeks the arg0 WKB type tag +(meos_typeof_hexwkb) and routes to the type-matching impl. Multi-impl functions +that differ only on a later argument (e.g. atTime on its time arg) are listed for +the arg-N dispatch extension. Usage: generate_spark_registrar.py [named-surface.json] [spark-impls.json] [out.scala] """ @@ -26,16 +29,72 @@ meos2spark = {} for sn, d in impls.items(): - for mf in d['meosFns']: - meos2spark.setdefault(mf, []).append(sn) + if d.get('primaryMeos'): + meos2spark.setdefault(d['primaryMeos'], []).append(sn) -single, multi = [], [] +# C-FFI param types -> receiver category, so a multi-impl SQL name can dispatch on +# arg0's runtime MEOS type tag (meos_typeof_hexwkb) to the type-specific impl. +idl = json.load(open(os.path.join(HERE, '..', 'input', 'meos-idl.json'))) +prim2ctype0 = {} +for fdef in idl['functions']: + ps = fdef.get('params') or [] + if ps: + prim2ctype0[fdef['name']] = ps[0].get('cType', '') + +def category(ctype): + if 'STBox' in ctype: return 'stbox' + if 'TBox' in ctype: return 'tbox' + if 'GSERIALIZED' in ctype: return 'geo' + if 'Temporal' in ctype: return 'temporal' + if 'Span' in ctype: return 'span' + if 'Set' in ctype: return 'set' + return 'other' + +# meostype_name strings each impl's arg0 category answers to (geo serves both +# geometry/geography; temporal is the catch-all default; span/set take the +# concrete source type from the *_to_* primaryMeos name) +CAT_TNAMES = {'stbox': ['stbox'], 'tbox': ['tbox'], + 'geo': ['geometry', 'geography', 'geometryset', 'geographyset']} + +def impl_routes(spark): + """(tnames, isDefault) for an impl, by its primaryMeos arg0 category.""" + d = impls[spark] + cat = category(prim2ctype0.get(d['primaryMeos'], '')) + if cat == 'temporal': + return [], True + if cat in CAT_TNAMES: + return CAT_TNAMES[cat], False + if cat in ('span', 'set'): + pm = d['primaryMeos'] + src = pm.split('_to_')[0] if '_to_' in pm else None + return ([src] if src else []), False + return [], False + +single, multi, dispatch = [], [], [] for fn in named['functions']: names = sorted({sn for c in fn['c'] for sn in meos2spark.get(c['meos'], [])}) if len(names) == 1: single.append((fn['name'], names[0])) elif len(names) > 1: - multi.append((fn['name'], names)) + cats = {category(prim2ctype0.get(impls[s]['primaryMeos'], '')) for s in names} + # arg0 distinguishes only when impls differ on the FIRST-arg category and + # at least one is a concrete WKB-peekable receiver (box/geo/span/set) + peekable = cats & {'stbox', 'tbox', 'geo', 'span', 'set'} + if len(cats) > 1 and peekable: + routes = {} # tname -> spark impl + default = None + for s in names: + tns, isdef = impl_routes(s) + for tn in tns: + routes.setdefault(tn, s) + if isdef and default is None: + default = s + if routes: + dispatch.append((fn['name'], names, routes, default)) + else: + multi.append((fn['name'], names)) + else: + multi.append((fn['name'], names)) lines = [] seen = set() @@ -49,12 +108,28 @@ lines.append(f' inj(ext, "{canon}", {d["arity"]}, Array[String]({argts}), ' f'"{d["retType"]}", {fqn})') +dlines = [] +for canon, names, routes, default in dispatch: + if canon in seen: + continue + seen.add(canon) + d = impls[names[0]] # arity/types shared across the type-specific impls + argts = ', '.join(f'"{t}"' for t in d['argTypes']) + def fqn(s): + x = impls[s] + return f"{x['pkg']}.{x['class']}.{x['field']}" + rmap = ', '.join(f'"{tn}" -> ({fqn(s)}: AnyRef)' for tn, s in sorted(routes.items())) + dflt = f"({fqn(default)}: AnyRef)" if default else "null" + dlines.append(f' injMulti(ext, "{canon}", {d["arity"]}, Array[String]({argts}), ' + f'"{d["retType"]}", Map[String, AnyRef]({rmap}), {dflt})') + HEADER = '''/* GENERATED by codegen/tools/generate_spark_registrar.py from the canonical * named-operation surface (meos-named-surface.json) joined with the MobilitySpark * impl scan (spark-impls.json). Do not edit by hand. Each canonical function is - * injected under its identity name; the camelCase remap and the hand-written - * registrar are retired. Single-impl functions only; multi-impl functions need - * the per-row WKB-type-tag dispatch (see the trailing comment). */ + * injected under its identity name (no camelCase remap, no hand-written table). + * Single-impl functions bind to the one impl; multi-impl functions that differ on + * arg0's MEOS type dispatch per row on the arg0 WKB type tag. Functions that + * differ only on a later argument are listed in the trailing comment. */ package org.mobilitydb.spark.connect import org.apache.spark.sql.SparkSessionExtensions @@ -63,6 +138,7 @@ import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder import org.apache.spark.sql.types._ import org.apache.spark.sql.api.java.{UDF1, UDF2, UDF3, UDF4} +import functions.GeneratedFunctions class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) { private lazy val encs: Map[String, ExpressionEncoder[_]] = Map( @@ -86,6 +162,19 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } } + // One SQL name over several type-specific impls: dispatch per row on arg0's + // runtime MEOS type tag to the impl whose receiver type matches. + private def injMulti(ext: SparkSessionExtensions, name: String, arity: Int, + argTs: Array[String], retT: String, + routes: Map[String, AnyRef], dflt: AnyRef): Unit = { + val builder = (children: Seq[Expression]) => { + val n = math.min(children.size, arity) + ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, routes, dflt, arity), dt(retT), children, + argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + } + try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) + catch { case _: Throwable => } + } def apply(ext: SparkSessionExtensions): Unit = { ''' @@ -94,8 +183,11 @@ def apply(ext: SparkSessionExtensions): Unit = { with open(out, 'w') as f: f.write(HEADER) f.write('\n'.join(lines)) + f.write('\n\n // multi-impl: per-row arg0 MEOS-type-tag dispatch\n') + f.write('\n'.join(dlines)) f.write('\n }\n') - f.write(' // multi-impl (need per-row meos_typeof_hexwkb dispatch, v2):\n') + f.write(' // multi-impl not arg0-dispatchable (all impls share arg0 type; need\n') + f.write(' // the differentiating arg, e.g. atTime on the time argument):\n') for canon, names in multi: f.write(f' // {canon} -> {names}\n') f.write('}\n\n') @@ -117,6 +209,20 @@ def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) } + // route by arg0's MEOS type-tag name to the matching type-specific impl + private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { + case s: String => + val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) + catch { case _: Throwable => null } + routes.getOrElse(tn, dflt) + case _ => dflt + } + def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { + case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a)) } + case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b)) } + case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c)) } + case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d)) } + } } ''') print(f"single-impl injected: {len(lines)} multi-impl (v2 dispatch): {len(multi)} -> {out}") From 138a8f1a174167ffc6dec01c0ce2d569865d3dd3 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 07:58:16 +0200 Subject: [PATCH 13/14] Bind duplicate-registration ops to one impl and fill optional args with the SQL default Several MobilitySpark UDFs register one MEOS operation under both a bare name and a camelCase name (asText/tpointAsText, getTime/time, cumulativeLength/...). When a canonical name's impls all share one primary MEOS function, bind the identity name to a single impl rather than treating it as a type dispatch. Capture each optional argument's SQL DEFAULT literal in the named surface and fill an omitted optional argument with it, but only when the impl exposes a full overload's worth of arguments (impl arity equals that overload's maxArity, so the positions align); otherwise null-pad and let the impl's own default hold. This serves asText/asEWKT (maxdecimaldigits default 15) while keeping asMFJSON at full coordinate precision (its impl exposes a non-leading argument subset). --- codegen/input/meos-named-surface.json | 48528 ++++++++++------ .../MobilitySparkConnectExtensionsGen.scala | 281 +- codegen/tools/extract_named_surface.py | 14 +- codegen/tools/generate_spark_registrar.py | 60 +- 4 files changed, 32549 insertions(+), 16334 deletions(-) diff --git a/codegen/input/meos-named-surface.json b/codegen/input/meos-named-surface.json index 9dafa6f8..9464b9de 100644 --- a/codegen/input/meos-named-surface.json +++ b/codegen/input/meos-named-surface.json @@ -9,11 +9,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -24,11 +26,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45,11 +49,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -60,11 +66,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -75,11 +83,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -90,11 +100,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -105,11 +117,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -126,7 +140,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -137,7 +152,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -148,7 +164,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -159,7 +176,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -170,7 +188,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -181,7 +200,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -192,7 +212,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -203,7 +224,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -214,7 +236,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -225,7 +248,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -236,7 +260,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -247,7 +272,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -258,7 +284,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -269,7 +296,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -280,7 +308,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -291,7 +320,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -302,7 +332,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -344,7 +375,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -355,7 +387,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -372,7 +405,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -383,7 +417,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -409,7 +444,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -420,7 +456,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -437,7 +474,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -448,7 +486,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -474,7 +513,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -485,7 +525,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -502,7 +543,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -513,7 +555,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -551,7 +594,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -568,7 +612,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -579,7 +624,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -617,7 +663,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -634,7 +681,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -656,7 +704,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -678,7 +727,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -700,7 +750,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -722,11 +773,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -737,11 +790,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -752,11 +807,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -767,11 +824,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -782,11 +841,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -797,11 +858,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -812,11 +875,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -827,11 +892,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -842,11 +909,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -857,11 +926,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -878,11 +949,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -899,11 +972,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -920,11 +995,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -941,11 +1018,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -962,23 +1041,28 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -995,19 +1079,23 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -1018,19 +1106,23 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -1041,19 +1133,23 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -1064,19 +1160,23 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -1087,19 +1187,23 @@ "args": [ { "type": "regclass", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "regoper", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -1116,23 +1220,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -1149,23 +1258,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -1182,11 +1296,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1197,11 +1313,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1212,11 +1330,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1227,11 +1347,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1242,11 +1364,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1257,11 +1381,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1272,11 +1398,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1287,11 +1415,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1302,11 +1432,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1317,11 +1449,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1332,11 +1466,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1347,11 +1483,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1362,11 +1500,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1377,11 +1517,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1392,11 +1534,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1407,11 +1551,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1422,11 +1568,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1484,11 +1632,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1499,11 +1649,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1514,11 +1666,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1529,11 +1683,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1544,11 +1700,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1559,11 +1717,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1574,11 +1734,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1589,11 +1751,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1604,11 +1768,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1619,11 +1785,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1634,11 +1802,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1649,11 +1819,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1664,11 +1836,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1679,11 +1853,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1694,11 +1870,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1709,11 +1887,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1724,11 +1904,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1782,11 +1964,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1797,11 +1981,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1812,11 +1998,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1827,11 +2015,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1842,11 +2032,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1857,11 +2049,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1872,11 +2066,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1887,11 +2083,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1902,11 +2100,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1917,11 +2117,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1932,11 +2134,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1947,11 +2151,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1962,11 +2168,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1977,11 +2185,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -1992,11 +2202,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2007,11 +2219,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2022,11 +2236,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2037,11 +2253,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2052,11 +2270,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2067,11 +2287,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2082,11 +2304,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2097,11 +2321,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2112,11 +2338,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2127,11 +2355,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2142,11 +2372,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2157,11 +2389,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2172,11 +2406,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2222,19 +2458,23 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -2245,19 +2485,23 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -2279,15 +2523,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2298,15 +2545,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2317,15 +2567,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2336,15 +2589,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2355,15 +2611,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2374,15 +2633,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2393,15 +2655,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2412,15 +2677,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2431,15 +2699,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2450,15 +2721,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2469,15 +2743,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2488,15 +2765,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2507,15 +2787,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2526,15 +2809,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2545,15 +2831,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2564,15 +2853,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2583,15 +2875,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2602,15 +2897,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2621,15 +2919,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2640,15 +2941,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2659,15 +2963,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2678,15 +2985,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2697,15 +3007,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2716,15 +3029,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2735,15 +3051,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2789,11 +3108,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2804,11 +3125,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2819,11 +3142,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2834,11 +3159,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2849,11 +3176,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2864,11 +3193,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2879,11 +3210,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2894,11 +3227,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2909,11 +3244,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2924,11 +3261,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2939,11 +3278,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2954,11 +3295,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2969,11 +3312,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2984,11 +3329,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -2999,11 +3346,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3014,11 +3363,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3029,11 +3380,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3044,11 +3397,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3059,11 +3414,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3074,11 +3431,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3089,11 +3448,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3104,11 +3465,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3119,11 +3482,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3134,11 +3499,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3149,11 +3516,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3164,11 +3533,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3179,11 +3550,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3194,11 +3567,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3209,11 +3584,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3267,11 +3644,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3282,11 +3661,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3297,11 +3678,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3312,11 +3695,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3327,11 +3712,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3342,11 +3729,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3357,11 +3746,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3372,11 +3763,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3387,11 +3780,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3402,11 +3797,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3417,11 +3814,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3432,11 +3831,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3447,11 +3848,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3462,11 +3865,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3477,11 +3882,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3492,11 +3899,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3507,11 +3916,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3522,11 +3933,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3537,11 +3950,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3603,11 +4018,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3618,11 +4035,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3633,11 +4052,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3648,11 +4069,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3663,11 +4086,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3678,11 +4103,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3693,11 +4120,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3708,11 +4137,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3723,11 +4154,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3738,11 +4171,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3753,11 +4188,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3768,11 +4205,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3783,11 +4222,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3798,11 +4239,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3813,11 +4256,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3828,11 +4273,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3843,11 +4290,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3858,11 +4307,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3873,11 +4324,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3894,7 +4347,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -3905,7 +4359,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -3916,7 +4371,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -3950,11 +4406,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3965,11 +4423,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3980,11 +4440,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -3995,11 +4457,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4010,11 +4474,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4025,11 +4491,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4040,11 +4508,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4055,11 +4525,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4070,11 +4542,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4085,11 +4559,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4100,11 +4576,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4115,11 +4593,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4130,11 +4610,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4145,11 +4627,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4160,11 +4644,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4175,11 +4661,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4190,11 +4678,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4205,11 +4695,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4220,11 +4712,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4235,11 +4729,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4250,11 +4746,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4265,11 +4763,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4280,11 +4780,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4295,11 +4797,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4310,11 +4814,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4325,11 +4831,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4340,11 +4848,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4355,11 +4865,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4370,11 +4882,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4385,11 +4899,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4400,11 +4916,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4415,11 +4933,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4430,11 +4950,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4445,11 +4967,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4460,11 +4984,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4475,11 +5001,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4490,11 +5018,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4505,11 +5035,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4520,11 +5052,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4535,11 +5069,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4550,11 +5086,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4565,11 +5103,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4580,11 +5120,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4595,11 +5137,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4610,11 +5154,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4625,11 +5171,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4640,11 +5188,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4655,11 +5205,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4670,11 +5222,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4685,11 +5239,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4700,11 +5256,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4715,11 +5273,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4730,11 +5290,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4745,11 +5307,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4760,11 +5324,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4775,11 +5341,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4790,11 +5358,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4805,11 +5375,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4820,11 +5392,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4835,11 +5409,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4850,11 +5426,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4865,11 +5443,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4880,11 +5460,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4895,11 +5477,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4910,11 +5494,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4925,11 +5511,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4940,11 +5528,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4955,11 +5545,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4970,11 +5562,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -4985,11 +5579,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5000,11 +5596,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5015,11 +5613,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5030,11 +5630,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5045,11 +5647,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5060,11 +5664,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5075,11 +5681,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5090,11 +5698,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5105,11 +5715,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5120,11 +5732,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5135,11 +5749,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5150,11 +5766,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5165,11 +5783,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5180,11 +5800,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5195,11 +5817,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5210,11 +5834,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5225,11 +5851,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5240,11 +5868,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5255,11 +5885,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5270,11 +5902,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5285,11 +5919,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5300,11 +5936,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5315,11 +5953,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5330,11 +5970,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5345,11 +5987,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5360,11 +6004,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5375,11 +6021,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5390,11 +6038,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5405,11 +6055,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5420,11 +6072,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5435,11 +6089,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5450,11 +6106,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5465,11 +6123,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5486,55 +6146,68 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -5545,31 +6218,38 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -5580,55 +6260,68 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -5639,31 +6332,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -5685,11 +6385,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5700,11 +6402,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5715,11 +6419,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5730,11 +6436,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5745,11 +6453,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5760,11 +6470,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5775,11 +6487,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5790,11 +6504,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5805,11 +6521,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5820,11 +6538,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5835,11 +6555,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5850,11 +6572,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5865,11 +6589,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5880,11 +6606,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5895,11 +6623,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5910,11 +6640,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5925,11 +6657,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5940,11 +6674,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5955,11 +6691,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5970,11 +6708,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -5985,11 +6725,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6000,11 +6742,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6015,11 +6759,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6030,11 +6776,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6045,11 +6793,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6060,11 +6810,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6075,11 +6827,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6090,11 +6844,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6105,11 +6861,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6120,11 +6878,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6135,11 +6895,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6150,11 +6912,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6165,11 +6929,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6180,11 +6946,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6195,11 +6963,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6210,11 +6980,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6225,11 +6997,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6240,11 +7014,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6255,11 +7031,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6270,11 +7048,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6285,11 +7065,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6300,11 +7082,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6315,11 +7099,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6330,11 +7116,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6345,11 +7133,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6360,11 +7150,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6375,11 +7167,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6390,11 +7184,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6405,11 +7201,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6420,11 +7218,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6435,11 +7235,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6450,11 +7252,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6465,11 +7269,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6480,11 +7286,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6495,11 +7303,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6510,11 +7320,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6525,11 +7337,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6540,11 +7354,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6555,11 +7371,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6570,11 +7388,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6585,11 +7405,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6600,11 +7422,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6615,11 +7439,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6630,11 +7456,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6645,11 +7473,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6660,11 +7490,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6675,11 +7507,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6690,11 +7524,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6705,11 +7541,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6720,11 +7558,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6735,11 +7575,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6750,11 +7592,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6765,11 +7609,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6780,11 +7626,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6795,11 +7643,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6810,11 +7660,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6825,11 +7677,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6840,11 +7694,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6855,11 +7711,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6870,11 +7728,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -6891,15 +7751,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -6910,15 +7773,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -6929,15 +7795,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -6948,15 +7817,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -6967,15 +7839,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -6986,15 +7861,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -7005,15 +7883,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -7024,15 +7905,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -7043,15 +7927,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -7062,15 +7949,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -7081,15 +7971,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -7100,15 +7993,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -7119,15 +8015,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -7144,11 +8043,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7159,11 +8060,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7174,11 +8077,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7189,11 +8094,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7204,11 +8111,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7219,11 +8128,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7234,11 +8145,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7249,11 +8162,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7264,11 +8179,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7279,11 +8196,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7294,11 +8213,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7309,11 +8230,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7324,11 +8247,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7339,11 +8264,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7354,11 +8281,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7369,11 +8298,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7384,11 +8315,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7399,11 +8332,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7414,11 +8349,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7429,11 +8366,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7444,11 +8383,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7459,11 +8400,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7474,11 +8417,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7489,11 +8434,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7504,11 +8451,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7519,11 +8468,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7534,11 +8485,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7549,11 +8502,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7564,11 +8519,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7579,11 +8536,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7594,11 +8553,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7609,11 +8570,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7624,11 +8587,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7639,11 +8604,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7654,11 +8621,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7669,11 +8638,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7684,11 +8655,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7699,11 +8672,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7714,11 +8689,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7729,11 +8706,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7744,11 +8723,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7759,11 +8740,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7774,11 +8757,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7789,11 +8774,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7915,11 +8902,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7930,11 +8919,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7945,11 +8936,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7960,11 +8953,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7975,11 +8970,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -7990,11 +8987,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8005,11 +9004,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8020,11 +9021,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8035,11 +9038,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8050,11 +9055,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8065,11 +9072,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8080,11 +9089,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8138,11 +9149,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8153,11 +9166,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8168,11 +9183,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8183,11 +9200,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8198,11 +9217,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8213,11 +9234,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8228,11 +9251,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8243,11 +9268,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8258,11 +9285,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8273,11 +9302,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8288,11 +9319,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8303,11 +9336,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8361,11 +9396,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8376,11 +9413,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8391,11 +9430,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8406,11 +9447,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8421,11 +9464,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8436,11 +9481,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8451,11 +9498,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8466,11 +9515,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8481,11 +9532,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8496,11 +9549,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8511,11 +9566,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8526,11 +9583,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8584,11 +9643,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8599,11 +9660,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8614,11 +9677,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8629,11 +9694,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8644,11 +9711,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8659,11 +9728,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8674,11 +9745,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8689,11 +9762,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8704,11 +9779,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8719,11 +9796,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8734,11 +9813,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8749,11 +9830,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8807,11 +9890,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8822,11 +9907,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8837,11 +9924,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8852,11 +9941,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8867,11 +9958,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8882,11 +9975,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8897,11 +9992,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8912,11 +10009,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8927,11 +10026,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8942,11 +10043,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8957,11 +10060,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8972,11 +10077,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -8987,11 +10094,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9002,11 +10111,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9017,11 +10128,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9032,11 +10145,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9047,11 +10162,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9062,11 +10179,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9077,11 +10196,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9092,11 +10213,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9107,11 +10230,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9122,11 +10247,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9137,11 +10264,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9152,11 +10281,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9167,11 +10298,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9182,11 +10315,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9197,11 +10332,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9212,11 +10349,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9227,11 +10366,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9242,11 +10383,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9257,11 +10400,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9272,11 +10417,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9287,11 +10434,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9302,11 +10451,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9317,11 +10468,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9332,11 +10485,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9347,11 +10502,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9362,11 +10519,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9377,11 +10536,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9392,11 +10553,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9407,11 +10570,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9422,11 +10587,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -9548,7 +10715,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -9559,7 +10727,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -9570,11 +10739,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -9600,7 +10771,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -9622,11 +10794,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -9637,11 +10811,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -9652,11 +10828,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -9667,11 +10845,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -9682,11 +10862,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -9697,11 +10879,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -9712,11 +10896,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -9727,11 +10913,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -9742,11 +10930,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -9757,11 +10947,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -9772,11 +10964,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -9787,11 +10981,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -9802,15 +10998,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -9821,15 +11020,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -9840,15 +11042,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -9859,15 +11064,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -9878,15 +11086,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -9897,11 +11108,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -9939,11 +11152,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -9954,11 +11169,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -9969,11 +11186,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -9984,11 +11203,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -9999,11 +11220,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -10014,11 +11237,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -10029,11 +11254,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -10044,11 +11271,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -10059,11 +11288,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -10074,11 +11305,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -10089,11 +11322,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -10104,11 +11339,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -10119,11 +11356,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -10161,11 +11400,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -10176,11 +11417,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -10206,11 +11449,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "float", @@ -10236,7 +11481,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -10247,7 +11493,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -10258,7 +11505,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -10269,7 +11517,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -10280,7 +11529,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -10291,7 +11541,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -10302,7 +11553,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -10313,7 +11565,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -10324,7 +11577,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -10335,7 +11589,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -10346,7 +11601,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -10357,7 +11613,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -10368,7 +11625,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -10379,7 +11637,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -10390,7 +11649,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -10401,7 +11661,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -10412,7 +11673,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -10423,7 +11685,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -10434,7 +11697,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -10445,7 +11709,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -10456,7 +11721,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -10467,7 +11733,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -10478,7 +11745,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -10489,7 +11757,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -10500,7 +11769,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -10511,7 +11781,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -10522,7 +11793,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -10533,7 +11805,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -10544,7 +11817,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -10555,7 +11829,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -10566,7 +11841,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -10577,7 +11853,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -10588,7 +11865,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -10599,7 +11877,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -10610,7 +11889,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -10621,7 +11901,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -10638,11 +11919,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10653,11 +11936,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10668,11 +11953,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10683,11 +11970,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10698,11 +11987,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10713,11 +12004,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10728,11 +12021,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10743,11 +12038,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10758,11 +12055,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10773,11 +12072,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10788,11 +12089,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10803,11 +12106,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10818,11 +12123,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10833,11 +12140,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10848,11 +12157,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10863,11 +12174,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10878,11 +12191,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10893,11 +12208,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10908,11 +12225,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10923,11 +12242,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10938,11 +12259,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10953,11 +12276,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10968,11 +12293,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10983,11 +12310,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -10998,11 +12327,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11013,11 +12344,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11028,11 +12361,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11043,11 +12378,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11058,11 +12395,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11073,11 +12412,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11088,11 +12429,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11103,11 +12446,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11118,11 +12463,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11133,11 +12480,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11148,11 +12497,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11163,11 +12514,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11178,11 +12531,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11193,11 +12548,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11208,11 +12565,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11223,11 +12582,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11238,11 +12599,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11253,11 +12616,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11268,11 +12633,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11283,11 +12650,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11304,11 +12673,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11319,11 +12690,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11334,11 +12707,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11349,11 +12724,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11364,11 +12741,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11379,11 +12758,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11394,11 +12775,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11409,11 +12792,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11424,11 +12809,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11439,11 +12826,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11454,11 +12843,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "bytea", @@ -11475,11 +12866,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11490,11 +12883,13 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11505,11 +12900,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11520,11 +12917,13 @@ "args": [ { "type": "cbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11535,11 +12934,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11550,11 +12951,13 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11565,11 +12968,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11580,11 +12985,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11595,11 +13002,13 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11610,11 +13019,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11625,11 +13036,13 @@ "args": [ { "type": "pose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11640,11 +13053,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11655,11 +13070,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11670,11 +13087,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11685,11 +13104,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11700,11 +13121,13 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11715,11 +13138,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11730,11 +13155,13 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11745,11 +13172,13 @@ "args": [ { "type": "geometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11760,11 +13189,13 @@ "args": [ { "type": "geography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11775,11 +13206,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11790,11 +13223,13 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11805,11 +13240,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11820,11 +13257,13 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11835,11 +13274,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11850,11 +13291,13 @@ "args": [ { "type": "npoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -11865,11 +13308,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -11907,15 +13352,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "text", @@ -11926,15 +13374,18 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "text", @@ -11956,11 +13407,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -11971,11 +13424,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -11986,11 +13441,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12001,11 +13458,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12016,11 +13475,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12031,11 +13492,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12046,11 +13509,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12061,11 +13526,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12076,11 +13543,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12097,11 +13566,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12112,11 +13583,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12127,11 +13600,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12142,11 +13617,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12157,11 +13634,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12172,11 +13651,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12187,11 +13668,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12202,11 +13685,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12217,11 +13702,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12232,11 +13719,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12247,11 +13736,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12262,11 +13753,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12277,11 +13770,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12292,11 +13787,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12307,11 +13804,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12322,11 +13821,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12337,11 +13838,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12352,11 +13855,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12367,11 +13872,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12382,11 +13889,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12397,11 +13906,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12412,11 +13923,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12427,11 +13940,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12442,11 +13957,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12457,11 +13974,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12472,11 +13991,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12487,11 +14008,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12502,11 +14025,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12517,11 +14042,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12532,11 +14059,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12547,11 +14076,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12562,11 +14093,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12577,11 +14110,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12592,11 +14127,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12607,11 +14144,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12622,11 +14161,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12637,11 +14178,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12652,11 +14195,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12667,11 +14212,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "''" } ], "returns": "text", @@ -12725,19 +14272,23 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12748,19 +14299,23 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12771,19 +14326,23 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12794,19 +14353,23 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12817,19 +14380,23 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12840,19 +14407,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12863,19 +14434,23 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12886,19 +14461,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12909,19 +14488,23 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -12932,15 +14515,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "text", @@ -12951,15 +14537,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "text", @@ -12970,15 +14559,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "text", @@ -12989,19 +14581,23 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13012,15 +14608,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "text", @@ -13031,19 +14630,23 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13065,35 +14668,43 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "wlocalOutlierFactor(geometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "SETOF", @@ -13115,11 +14726,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13130,11 +14743,13 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13145,11 +14760,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13160,11 +14777,13 @@ "args": [ { "type": "cbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13175,11 +14794,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13190,11 +14811,13 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13205,11 +14828,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13220,11 +14845,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13235,11 +14862,13 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13250,11 +14879,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13265,11 +14896,13 @@ "args": [ { "type": "pose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13280,11 +14913,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13295,11 +14930,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13310,11 +14947,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13325,11 +14964,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13340,11 +14981,13 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13355,11 +14998,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13370,11 +15015,13 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13385,11 +15032,13 @@ "args": [ { "type": "geometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13400,11 +15049,13 @@ "args": [ { "type": "geography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13415,11 +15066,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13430,11 +15083,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13445,11 +15100,13 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13460,11 +15117,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13475,11 +15134,13 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13490,7 +15151,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13501,7 +15163,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13512,7 +15175,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13523,7 +15187,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13534,11 +15199,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13549,7 +15216,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13560,7 +15228,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13571,7 +15240,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13582,7 +15252,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13593,11 +15264,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13608,7 +15281,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13619,7 +15293,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13630,7 +15305,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13641,7 +15317,8 @@ "args": [ { "type": "tbool[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text[]", @@ -13652,7 +15329,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13663,7 +15341,8 @@ "args": [ { "type": "tint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text[]", @@ -13674,7 +15353,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13685,7 +15365,8 @@ "args": [ { "type": "tbigint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text[]", @@ -13696,11 +15377,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13711,11 +15394,13 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13726,7 +15411,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13737,7 +15423,8 @@ "args": [ { "type": "ttext[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text[]", @@ -13748,7 +15435,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13759,7 +15447,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13770,11 +15459,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13785,7 +15476,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13796,7 +15488,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13807,7 +15500,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -13818,11 +15512,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13833,11 +15529,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13848,11 +15546,13 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13863,11 +15563,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13878,11 +15580,13 @@ "args": [ { "type": "npoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text[]", @@ -13893,11 +15597,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": true + "hasDefault": true, + "default": "15" } ], "returns": "text", @@ -13935,11 +15641,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -13956,11 +15664,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -13971,11 +15681,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -13986,11 +15698,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -14001,11 +15715,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -14016,11 +15732,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -14031,11 +15749,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -14046,11 +15766,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -14108,7 +15830,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -14119,7 +15842,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -14130,7 +15854,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -14141,7 +15866,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -14163,7 +15889,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -14174,7 +15901,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -14185,7 +15913,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -14196,7 +15925,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -14234,15 +15964,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -14253,15 +15986,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -14272,15 +16008,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -14291,15 +16030,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -14310,15 +16052,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -14329,15 +16074,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -14348,15 +16096,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -14394,11 +16145,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -14409,11 +16162,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -14424,11 +16179,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -14450,11 +16207,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -14465,11 +16224,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -14480,11 +16241,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -14495,11 +16258,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -14510,11 +16275,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -14525,11 +16292,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -14540,11 +16309,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -14555,11 +16326,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -14570,11 +16343,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -14585,11 +16360,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -14600,11 +16377,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -14615,11 +16394,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -14630,11 +16411,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -14645,11 +16428,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -14660,11 +16445,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -14675,11 +16462,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -14690,11 +16479,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -14705,11 +16496,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -14720,11 +16513,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -14735,11 +16530,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -14750,11 +16547,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -14765,11 +16564,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -14780,11 +16581,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -14795,11 +16598,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -14810,11 +16615,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -14825,11 +16632,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -14840,11 +16649,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -14855,11 +16666,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -14870,11 +16683,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -14885,11 +16700,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -14900,11 +16717,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -14915,11 +16734,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -14930,11 +16751,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -14945,11 +16768,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -14960,11 +16785,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -14975,11 +16802,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -14990,11 +16819,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15005,11 +16836,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15020,11 +16853,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15035,11 +16870,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15050,11 +16887,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -15065,11 +16904,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15080,11 +16921,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15095,11 +16938,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15110,11 +16955,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15125,11 +16972,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -15140,11 +16989,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15155,11 +17006,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15170,11 +17023,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15185,11 +17040,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15200,11 +17057,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -15215,11 +17074,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15230,11 +17091,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15245,11 +17108,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15260,11 +17125,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15275,11 +17142,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -15290,11 +17159,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -15305,11 +17176,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -15320,11 +17193,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -15426,15 +17301,18 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -15445,15 +17323,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpoint", @@ -15470,15 +17351,18 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -15495,11 +17379,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -15577,11 +17463,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -15592,11 +17480,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -15607,11 +17497,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -15622,11 +17514,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -15637,11 +17531,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -15652,11 +17548,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -15667,11 +17565,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -15682,11 +17582,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -15697,11 +17599,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -15712,11 +17616,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -15727,11 +17633,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -15742,11 +17650,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -15757,11 +17667,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -15772,11 +17684,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15787,11 +17701,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15802,11 +17718,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15817,11 +17735,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15832,11 +17752,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15847,11 +17769,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15862,11 +17786,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15877,11 +17803,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -15892,11 +17820,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15907,11 +17837,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15922,11 +17854,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15937,11 +17871,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -15952,11 +17888,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -15967,11 +17905,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -15982,11 +17922,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -15997,11 +17939,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -16047,11 +17991,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16062,11 +18008,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16077,11 +18025,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16092,11 +18042,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16113,7 +18065,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16124,7 +18077,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16135,7 +18089,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16161,7 +18116,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16191,11 +18147,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16206,11 +18164,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16221,11 +18181,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16236,11 +18198,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16251,11 +18215,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16266,11 +18232,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16281,11 +18249,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16296,11 +18266,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16311,11 +18283,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16326,11 +18300,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16347,11 +18323,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16362,11 +18340,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -16377,11 +18357,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16392,11 +18374,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16407,11 +18391,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16422,11 +18408,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16437,11 +18425,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -16452,11 +18442,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "isSimple(tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -16486,11 +18478,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16501,11 +18495,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16516,11 +18512,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16531,11 +18529,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16546,11 +18546,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16561,11 +18563,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16576,11 +18580,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16591,11 +18597,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16606,11 +18614,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16621,11 +18631,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16636,11 +18648,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16651,11 +18665,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16666,11 +18682,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16681,11 +18699,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16696,11 +18716,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16711,11 +18733,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16726,11 +18750,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16741,11 +18767,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16756,11 +18784,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16771,11 +18801,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16786,11 +18818,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16801,11 +18835,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16816,11 +18852,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16831,11 +18869,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16846,11 +18886,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16861,11 +18903,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16876,11 +18920,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16891,11 +18937,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16906,11 +18954,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16921,11 +18971,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16936,11 +18988,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16951,11 +19005,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16966,11 +19022,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16981,11 +19039,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -16996,11 +19056,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17011,11 +19073,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17026,11 +19090,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17041,11 +19107,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17056,11 +19124,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17071,11 +19141,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17086,11 +19158,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17101,11 +19175,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17116,11 +19192,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17131,11 +19209,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17146,11 +19226,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17161,11 +19243,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17176,11 +19260,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17191,11 +19277,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17206,11 +19294,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17221,11 +19311,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17236,11 +19328,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17251,11 +19345,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17266,11 +19362,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17281,11 +19379,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17296,11 +19396,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17311,11 +19413,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17326,11 +19430,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17341,11 +19447,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17356,11 +19464,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17371,11 +19481,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17386,11 +19498,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17401,11 +19515,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17416,11 +19532,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17431,11 +19549,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17446,11 +19566,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17461,11 +19583,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17476,11 +19600,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17491,11 +19617,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17506,11 +19634,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17521,11 +19651,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17536,11 +19668,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17551,11 +19685,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17566,11 +19702,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17581,11 +19719,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17596,11 +19736,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17611,11 +19753,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17626,11 +19770,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17641,11 +19787,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17656,11 +19804,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17671,11 +19821,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17692,15 +19844,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -17711,15 +19866,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -17730,15 +19888,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -17749,15 +19910,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -17768,15 +19932,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -17787,15 +19954,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -17806,15 +19976,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -17825,15 +19998,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -17844,15 +20020,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -17863,15 +20042,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -17882,15 +20064,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -17901,15 +20086,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -17920,15 +20108,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -17945,11 +20136,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17960,11 +20153,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17975,11 +20170,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -17990,11 +20187,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18005,11 +20204,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18020,11 +20221,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18035,11 +20238,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18050,11 +20255,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18065,11 +20272,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18080,11 +20289,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18095,11 +20306,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18110,11 +20323,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18125,11 +20340,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18140,11 +20357,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18155,11 +20374,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18170,11 +20391,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18185,11 +20408,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18200,11 +20425,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18215,11 +20442,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -18236,7 +20465,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -18253,7 +20483,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -18270,7 +20501,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -18287,7 +20519,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -18304,7 +20537,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -18321,7 +20555,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -18338,11 +20573,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -18359,7 +20596,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -18376,7 +20614,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -18402,7 +20641,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -18419,7 +20659,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -18436,7 +20677,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -18453,7 +20695,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -18470,7 +20713,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -18487,7 +20731,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -18504,11 +20749,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -18525,7 +20772,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -18542,7 +20790,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -18559,7 +20808,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -18576,7 +20826,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -18593,7 +20844,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -18610,7 +20862,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -18627,7 +20880,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -18644,15 +20898,18 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan[]", @@ -18663,15 +20920,18 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan[]", @@ -18682,15 +20942,18 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspan[]", @@ -18701,15 +20964,18 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "datespan[]", @@ -18720,15 +20986,18 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tstzspan[]", @@ -18739,15 +21008,18 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan[]", @@ -18758,15 +21030,18 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan[]", @@ -18777,15 +21052,18 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspan[]", @@ -18796,15 +21074,18 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "datespan[]", @@ -18815,15 +21096,18 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tstzspan[]", @@ -18840,11 +21124,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -18866,11 +21152,13 @@ "args": [ { "type": "point", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "point", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "box", @@ -18887,7 +21175,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "box2d", @@ -18909,7 +21198,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "box3d", @@ -18931,11 +21221,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -18946,7 +21238,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -18972,11 +21265,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -18998,11 +21293,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19028,11 +21325,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19058,11 +21357,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19084,15 +21385,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19114,11 +21418,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19140,11 +21446,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19166,11 +21474,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19192,7 +21502,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -19209,11 +21520,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -19230,7 +21543,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -19252,11 +21566,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19286,11 +21602,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19312,11 +21630,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19338,11 +21658,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19364,7 +21686,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -19386,7 +21709,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -19412,11 +21736,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19433,7 +21759,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -19450,11 +21777,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19480,7 +21809,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -19497,7 +21827,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -19514,7 +21845,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -19531,7 +21863,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -19548,7 +21881,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -19565,7 +21899,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -19582,7 +21917,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -19599,7 +21935,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -19610,7 +21947,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -19621,7 +21959,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -19632,7 +21971,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -19666,7 +22006,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -19677,7 +22018,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -19688,7 +22030,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -19699,7 +22042,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -19710,7 +22054,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -19721,7 +22066,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -19747,11 +22093,13 @@ "args": [ { "type": "point", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "circle", @@ -19768,11 +22116,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19783,11 +22133,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19798,11 +22150,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19813,11 +22167,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19828,11 +22184,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19843,11 +22201,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19858,11 +22218,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19873,11 +22235,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19888,11 +22252,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19903,11 +22269,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19918,11 +22286,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19933,11 +22303,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19948,11 +22320,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19963,11 +22337,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19978,11 +22354,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -19993,11 +22371,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20008,11 +22388,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20023,11 +22405,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20038,11 +22422,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20053,11 +22439,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20068,11 +22456,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20083,11 +22473,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20098,11 +22490,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20113,11 +22507,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20128,11 +22524,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20143,11 +22541,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20158,11 +22558,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20173,11 +22575,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20188,11 +22592,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20203,11 +22609,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20218,11 +22626,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20233,11 +22643,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20248,11 +22660,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20263,11 +22677,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20278,11 +22694,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20293,11 +22711,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20308,11 +22728,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20323,11 +22745,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20338,11 +22762,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20353,11 +22779,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20368,11 +22796,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20383,11 +22813,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20398,11 +22830,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20413,11 +22847,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20428,11 +22864,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20443,11 +22881,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20458,11 +22898,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20473,11 +22915,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20488,11 +22932,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20503,11 +22949,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20518,11 +22966,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20533,11 +22983,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20548,11 +23000,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20563,11 +23017,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20578,11 +23034,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20593,11 +23051,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20608,11 +23068,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20623,11 +23085,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20638,11 +23102,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20653,11 +23119,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20668,11 +23136,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20683,11 +23153,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20698,11 +23170,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20713,11 +23187,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20728,11 +23204,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20743,11 +23221,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20758,11 +23238,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20773,11 +23255,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20788,11 +23272,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20803,11 +23289,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20818,11 +23306,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20833,11 +23323,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20848,11 +23340,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20863,11 +23357,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20878,11 +23374,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20893,11 +23391,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20908,11 +23408,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20923,11 +23425,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20938,11 +23442,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20953,11 +23459,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20968,11 +23476,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20983,11 +23493,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -20998,11 +23510,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21013,11 +23527,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21028,11 +23544,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21043,11 +23561,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21058,11 +23578,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21073,11 +23595,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21088,11 +23612,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21103,11 +23629,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21118,11 +23646,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21133,11 +23663,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21148,11 +23680,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21163,11 +23697,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21178,11 +23714,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21193,11 +23731,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21208,11 +23748,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21223,11 +23765,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21238,11 +23782,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21253,11 +23799,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21268,11 +23816,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21283,11 +23833,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21298,11 +23850,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21313,11 +23867,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21328,11 +23884,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21343,11 +23901,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21358,11 +23918,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21373,11 +23935,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21388,11 +23952,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21403,11 +23969,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21418,11 +23986,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21433,11 +24003,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21448,11 +24020,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21463,11 +24037,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21484,11 +24060,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21499,11 +24077,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21514,11 +24094,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21529,11 +24111,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21544,11 +24128,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21565,11 +24151,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21580,11 +24168,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21595,11 +24185,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21610,11 +24202,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21625,11 +24219,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21640,11 +24236,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21655,11 +24253,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21670,11 +24270,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21685,11 +24287,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21700,11 +24304,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21715,11 +24321,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21730,11 +24338,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21745,11 +24355,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21760,11 +24372,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21775,11 +24389,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21790,11 +24406,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21805,11 +24423,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21820,11 +24440,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21835,11 +24457,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21850,11 +24474,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21865,11 +24491,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21880,11 +24508,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21895,11 +24525,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21910,11 +24542,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21925,11 +24559,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21940,11 +24576,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21955,11 +24593,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21970,11 +24610,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -21985,11 +24627,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22000,11 +24644,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22015,11 +24661,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22030,11 +24678,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22045,11 +24695,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22060,11 +24712,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22075,11 +24729,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22090,11 +24746,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22105,11 +24763,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22120,11 +24780,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22135,11 +24797,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22150,11 +24814,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22165,11 +24831,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22180,11 +24848,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22195,11 +24865,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22210,11 +24882,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22225,11 +24899,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22240,11 +24916,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22255,11 +24933,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22270,11 +24950,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22285,11 +24967,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22300,11 +24984,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22315,11 +25001,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22330,11 +25018,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22345,11 +25035,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22360,11 +25052,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22375,11 +25069,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22390,11 +25086,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22405,11 +25103,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22420,11 +25120,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22435,11 +25137,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22450,11 +25154,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22465,11 +25171,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22480,11 +25188,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22495,11 +25205,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22510,11 +25222,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22525,11 +25239,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22540,11 +25256,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22555,11 +25273,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22570,11 +25290,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22585,11 +25307,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22600,11 +25324,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22615,11 +25341,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22630,11 +25358,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22645,11 +25375,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22660,11 +25392,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22675,11 +25409,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22690,11 +25426,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22705,11 +25443,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22720,11 +25460,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22735,11 +25477,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22750,11 +25494,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22765,11 +25511,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22780,11 +25528,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22795,11 +25545,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22810,11 +25562,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22825,11 +25579,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22840,11 +25596,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22855,11 +25613,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22870,11 +25630,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22885,11 +25647,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22900,11 +25664,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22915,11 +25681,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22930,11 +25698,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22945,11 +25715,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22960,11 +25732,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22975,11 +25749,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -22990,11 +25766,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23005,11 +25783,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23020,11 +25800,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23035,11 +25817,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23050,11 +25834,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23065,11 +25851,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23080,11 +25868,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23095,11 +25885,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23110,11 +25902,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23125,11 +25919,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23140,11 +25936,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23155,11 +25953,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23170,11 +25970,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23185,11 +25987,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23200,11 +26004,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23215,11 +26021,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23230,11 +26038,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23245,11 +26055,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23260,11 +26072,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23281,11 +26095,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23296,11 +26112,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23311,11 +26129,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23326,11 +26146,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23341,11 +26163,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -23362,7 +26186,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -23373,7 +26198,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -23384,7 +26210,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -23395,7 +26222,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -23406,7 +26234,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -23436,19 +26265,23 @@ "args": [ { "type": "record[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -23465,7 +26298,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -23476,7 +26310,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -23487,7 +26322,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -23498,7 +26334,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -23536,11 +26373,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -23562,7 +26401,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23584,7 +26424,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23606,7 +26447,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23623,7 +26465,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23640,7 +26483,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23657,7 +26501,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -23674,7 +26519,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23691,7 +26537,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -23708,7 +26555,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -23725,7 +26573,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -23742,7 +26591,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -23759,7 +26609,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -23776,7 +26627,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -23793,7 +26645,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -23810,7 +26663,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -23827,7 +26681,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -23844,11 +26699,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -23865,7 +26722,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23882,7 +26740,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23904,7 +26763,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23921,7 +26781,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23938,7 +26799,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23955,7 +26817,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -23972,7 +26835,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -23989,7 +26853,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -24006,11 +26871,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "floatspan", @@ -24021,11 +26888,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "floatspanset", @@ -24036,11 +26905,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "floatset", @@ -24051,11 +26922,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "float", @@ -24066,11 +26939,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "tfloat", @@ -24108,15 +26983,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -24127,15 +27005,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -24146,15 +27027,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -24165,15 +27049,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -24184,15 +27071,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -24203,15 +27093,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -24222,15 +27115,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -24241,15 +27137,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -24260,15 +27159,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -24279,15 +27181,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -24298,15 +27203,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -24317,15 +27225,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -24336,15 +27247,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -24355,15 +27269,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -24374,15 +27291,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -24393,15 +27313,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -24412,15 +27335,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -24431,15 +27357,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -24450,15 +27379,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -24469,15 +27401,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -24488,15 +27423,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -24507,15 +27445,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -24526,15 +27467,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -24545,15 +27489,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -24564,15 +27511,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -24583,15 +27533,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -24602,15 +27555,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -24621,15 +27577,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -24640,15 +27599,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -24659,15 +27621,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -24678,15 +27643,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -24697,15 +27665,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -24716,15 +27687,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -24735,15 +27709,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -24754,15 +27731,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -24773,15 +27753,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -24792,15 +27775,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -24811,15 +27797,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -24830,15 +27819,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -24849,15 +27841,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -24868,15 +27863,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -24887,15 +27885,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -24906,15 +27907,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -24925,15 +27929,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -24944,15 +27951,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -24963,15 +27973,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -24982,15 +27995,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -25001,15 +28017,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -25020,15 +28039,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -25039,15 +28061,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -25058,15 +28083,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -25077,15 +28105,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -25147,7 +28178,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -25158,7 +28190,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -25169,7 +28202,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -25191,7 +28225,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -25221,7 +28256,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25232,7 +28268,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25262,11 +28299,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25277,11 +28316,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25292,11 +28333,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25307,11 +28350,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25322,11 +28367,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -25343,15 +28390,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -25362,15 +28412,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpcpoint", @@ -25381,15 +28434,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -25400,15 +28456,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -25419,15 +28478,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -25438,15 +28500,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -25468,11 +28533,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25483,11 +28550,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25498,11 +28567,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25513,11 +28584,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25528,11 +28601,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25543,11 +28618,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25558,11 +28635,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25573,11 +28652,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25588,11 +28669,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25603,11 +28686,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25618,11 +28703,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25633,11 +28720,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25648,11 +28737,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25663,11 +28754,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25678,7 +28771,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "interval", @@ -25689,7 +28783,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "interval", @@ -25700,11 +28795,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25715,11 +28812,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25730,11 +28829,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "interval", @@ -25780,11 +28881,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25795,11 +28898,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25810,11 +28915,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25825,11 +28932,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25840,11 +28949,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25855,11 +28966,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -25885,11 +28998,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25900,11 +29015,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25915,11 +29032,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25930,11 +29049,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25945,11 +29066,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25960,11 +29083,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -25990,11 +29115,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26005,11 +29132,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26020,11 +29149,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26035,11 +29166,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26050,11 +29183,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26065,11 +29200,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26080,11 +29217,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26095,11 +29234,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26110,11 +29251,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26125,11 +29268,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26140,11 +29285,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26155,11 +29302,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26170,11 +29319,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26185,11 +29336,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26200,11 +29353,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26215,11 +29370,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26230,11 +29387,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26280,11 +29439,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26295,11 +29456,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26310,11 +29473,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26325,11 +29490,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26340,11 +29507,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26355,11 +29524,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26370,11 +29541,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26385,11 +29558,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26400,11 +29575,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26415,11 +29592,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26430,11 +29609,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26445,11 +29626,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26460,11 +29643,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26475,11 +29660,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26490,11 +29677,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26505,11 +29694,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26520,11 +29711,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26586,11 +29779,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26601,11 +29796,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26616,11 +29813,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26631,11 +29830,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26646,11 +29847,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26661,11 +29864,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26676,11 +29881,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26691,11 +29898,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26706,11 +29915,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26721,11 +29932,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26736,11 +29949,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26751,11 +29966,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26766,11 +29983,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26781,11 +30000,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26796,23 +30017,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "_edisjoint(geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26823,11 +30049,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26838,11 +30066,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26853,11 +30083,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26868,23 +30100,28 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "aDisjoint(geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26895,23 +30132,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "_edisjoint(geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26922,11 +30164,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26937,11 +30181,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26952,11 +30198,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26967,23 +30215,28 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "eDisjoint(tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "aDisjoint(geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -26994,11 +30247,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27009,11 +30264,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27024,11 +30281,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27098,15 +30357,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27117,15 +30379,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27136,15 +30401,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27155,15 +30423,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27174,15 +30445,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27193,15 +30467,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27212,15 +30489,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27231,15 +30511,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27250,15 +30533,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27269,15 +30555,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27288,15 +30577,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27307,15 +30599,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27326,15 +30621,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27345,15 +30643,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27364,15 +30665,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27383,15 +30687,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27402,15 +30709,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27421,15 +30731,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27440,15 +30753,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27459,15 +30775,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27478,15 +30797,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27497,15 +30819,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27516,15 +30841,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27535,15 +30863,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27554,15 +30885,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27573,15 +30907,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27592,15 +30929,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27611,15 +30951,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27630,15 +30973,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27692,23 +31038,28 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -27719,23 +31070,28 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -27757,11 +31113,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27772,11 +31130,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27787,11 +31147,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27802,11 +31164,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27817,11 +31181,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27832,11 +31198,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27847,11 +31215,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27862,11 +31232,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27877,11 +31249,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27892,11 +31266,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27907,11 +31283,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27922,11 +31300,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27937,11 +31317,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27952,11 +31334,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27967,11 +31351,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27982,11 +31368,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -27997,11 +31385,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28012,11 +31402,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28027,11 +31419,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28042,11 +31436,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28057,11 +31453,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28072,11 +31470,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28087,11 +31487,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28102,11 +31504,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28117,11 +31521,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28132,11 +31538,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28147,11 +31555,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28162,11 +31572,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28177,11 +31589,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28255,11 +31669,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28270,11 +31686,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28285,11 +31703,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28300,11 +31720,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28315,11 +31737,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28330,11 +31754,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28345,11 +31771,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28360,11 +31788,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28375,11 +31805,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28390,11 +31822,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28405,11 +31839,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28420,11 +31856,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28435,11 +31873,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28450,11 +31890,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28465,11 +31907,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28480,11 +31924,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28495,11 +31941,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28510,11 +31958,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28525,11 +31975,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28603,11 +32055,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28618,11 +32072,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28633,11 +32089,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28648,11 +32106,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28663,11 +32123,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28678,11 +32140,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28699,11 +32163,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28714,11 +32180,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -28735,7 +32203,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -28757,7 +32226,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -28768,7 +32238,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -28779,7 +32250,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -28790,7 +32262,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -28801,7 +32274,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -28812,7 +32286,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -28823,7 +32298,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -28834,7 +32310,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -28845,7 +32322,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -28856,7 +32334,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -28867,7 +32346,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -28878,7 +32358,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -28889,7 +32370,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -28900,7 +32382,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -28911,7 +32394,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -28937,7 +32421,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -28954,7 +32439,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "double", @@ -28976,7 +32462,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -28987,7 +32474,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -28998,7 +32486,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -29009,7 +32498,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -29020,7 +32510,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -29031,7 +32522,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -29042,7 +32534,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -29053,7 +32546,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -29064,7 +32558,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -29075,7 +32570,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -29086,7 +32582,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -29097,7 +32594,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -29108,7 +32606,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -29134,7 +32633,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -29145,7 +32645,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -29156,7 +32657,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -29167,7 +32669,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -29178,7 +32681,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -29200,7 +32704,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29211,7 +32716,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29222,7 +32728,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29233,7 +32740,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29244,7 +32752,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29255,7 +32764,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29266,7 +32776,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29277,7 +32788,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29288,7 +32800,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29299,7 +32812,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29310,7 +32824,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29321,7 +32836,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29332,7 +32848,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29343,7 +32860,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29354,7 +32872,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29365,7 +32884,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29399,7 +32919,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -29410,7 +32931,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -29421,7 +32943,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -29432,7 +32955,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -29443,7 +32967,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -29454,7 +32979,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -29465,7 +32991,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -29476,7 +33003,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -29487,7 +33015,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -29498,7 +33027,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -29509,7 +33039,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -29520,7 +33051,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -29531,7 +33063,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -29542,7 +33075,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -29553,7 +33087,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -29564,7 +33099,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -29575,7 +33111,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -29586,7 +33123,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29597,7 +33135,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -29608,7 +33147,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -29619,7 +33159,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -29630,7 +33171,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -29641,7 +33183,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -29652,7 +33195,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -29663,7 +33207,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -29674,7 +33219,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -29685,7 +33231,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -29696,7 +33243,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -29707,7 +33255,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -29718,7 +33267,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -29820,11 +33370,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29835,11 +33387,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29850,11 +33404,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29865,11 +33421,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29880,11 +33438,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29895,11 +33455,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29910,11 +33472,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29925,11 +33489,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29940,11 +33506,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29955,11 +33523,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29970,11 +33540,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -29985,11 +33557,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30000,11 +33574,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30015,11 +33591,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30030,11 +33608,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30045,11 +33625,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30060,11 +33642,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30075,11 +33659,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30090,11 +33676,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30105,11 +33693,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30120,11 +33710,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30135,11 +33727,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30150,11 +33744,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30165,11 +33761,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30180,11 +33778,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30195,11 +33795,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30210,11 +33812,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30225,11 +33829,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30240,11 +33846,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30255,11 +33863,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30270,11 +33880,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30285,11 +33897,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30300,11 +33914,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30315,11 +33931,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30330,11 +33948,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30345,11 +33965,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30360,11 +33982,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30375,11 +33999,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30390,11 +34016,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30405,11 +34033,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30420,11 +34050,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30435,11 +34067,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30450,11 +34084,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30465,11 +34101,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30591,11 +34229,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30606,11 +34246,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30621,11 +34263,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30636,11 +34280,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30651,11 +34297,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30666,11 +34314,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30681,11 +34331,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30696,11 +34348,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30711,11 +34365,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30726,11 +34382,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30741,11 +34399,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30756,11 +34416,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30814,11 +34476,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30829,11 +34493,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30844,11 +34510,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30859,11 +34527,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30874,11 +34544,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30889,11 +34561,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30904,11 +34578,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30919,11 +34595,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30934,11 +34612,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30949,11 +34629,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30964,11 +34646,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -30979,11 +34663,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31037,11 +34723,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31052,11 +34740,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31067,11 +34757,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31082,11 +34774,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31097,11 +34791,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31112,11 +34808,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31127,11 +34825,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31142,11 +34842,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31157,11 +34859,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31172,11 +34876,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31187,11 +34893,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31202,11 +34910,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31260,11 +34970,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31275,11 +34987,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31290,11 +35004,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31305,11 +35021,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31320,11 +35038,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31335,11 +35055,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31350,11 +35072,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31365,11 +35089,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31380,11 +35106,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31395,11 +35123,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31410,11 +35140,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31425,11 +35157,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31483,11 +35217,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31498,11 +35234,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31513,11 +35251,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31528,11 +35268,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31543,11 +35285,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31558,11 +35302,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31573,11 +35319,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31588,11 +35336,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31603,11 +35353,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31618,11 +35370,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31633,11 +35387,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31648,11 +35404,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31663,11 +35421,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31678,11 +35438,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31693,11 +35455,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31708,11 +35472,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31723,11 +35489,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31738,11 +35506,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31753,11 +35523,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31768,11 +35540,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31783,11 +35557,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31798,11 +35574,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31813,11 +35591,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31828,11 +35608,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31843,11 +35625,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31858,11 +35642,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31873,11 +35659,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31888,11 +35676,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31903,11 +35693,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31918,11 +35710,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31933,11 +35727,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31948,11 +35744,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31963,11 +35761,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31978,11 +35778,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -31993,11 +35795,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32008,11 +35812,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32023,11 +35829,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32038,11 +35846,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32053,11 +35863,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32068,11 +35880,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32083,11 +35897,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32098,11 +35914,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -32224,7 +36042,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -32241,11 +36060,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -32256,11 +36077,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -32271,11 +36094,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -32286,11 +36111,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32301,11 +36128,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -32316,11 +36145,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -32346,11 +36177,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32361,11 +36194,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32376,11 +36211,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32391,11 +36228,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32406,11 +36245,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32421,11 +36262,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32436,11 +36279,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32451,11 +36296,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32466,11 +36313,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32481,11 +36330,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32507,11 +36358,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -32522,11 +36375,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -32548,11 +36403,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -32563,11 +36420,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -32578,11 +36437,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -32616,23 +36477,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tgeompoint", @@ -32643,23 +36509,28 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tfloat", @@ -32688,7 +36559,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32710,7 +36582,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32727,7 +36600,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32744,7 +36618,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32761,7 +36636,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -32778,7 +36654,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32795,7 +36672,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -32812,11 +36690,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -32833,7 +36713,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -32850,7 +36731,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32861,7 +36743,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32895,7 +36778,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32912,7 +36796,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32929,7 +36814,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32946,7 +36832,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -32963,7 +36850,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -32980,7 +36868,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -32997,11 +36886,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -33018,7 +36909,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33035,7 +36927,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33057,7 +36950,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33074,7 +36968,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33091,7 +36986,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33108,7 +37004,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -33125,7 +37022,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33142,7 +37040,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -33159,7 +37058,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -33170,7 +37070,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -33181,7 +37082,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -33192,7 +37094,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -33226,11 +37129,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33241,11 +37146,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33256,11 +37163,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33271,11 +37180,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33286,11 +37197,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33301,11 +37214,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -33331,11 +37246,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33346,11 +37263,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33361,11 +37280,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33376,11 +37297,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33391,11 +37314,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33406,11 +37331,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -33436,11 +37363,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33451,11 +37380,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33466,11 +37397,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33481,11 +37414,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33496,11 +37431,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33511,11 +37448,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33526,11 +37465,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33541,11 +37482,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33556,11 +37499,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33571,11 +37516,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -33592,15 +37539,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geometry", @@ -33611,15 +37561,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geography", @@ -33636,11 +37589,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -33657,11 +37612,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -33678,7 +37635,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -33689,7 +37647,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -33706,31 +37665,38 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "4326" } ], "returns": "stbox", @@ -33747,35 +37713,43 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "4326" } ], "returns": "stbox", @@ -33786,35 +37760,43 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "4326" } ], "returns": "stbox", @@ -33831,7 +37813,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -33842,7 +37825,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -33853,11 +37837,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geography", @@ -33874,7 +37860,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33891,7 +37878,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33908,7 +37896,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33925,7 +37914,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33942,7 +37932,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33959,7 +37950,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -33976,7 +37968,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -33993,7 +37986,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -34010,7 +38004,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -34027,7 +38022,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -34044,7 +38040,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34055,7 +38052,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34066,7 +38064,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34077,7 +38076,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34088,7 +38088,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34099,11 +38100,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geometry", @@ -34114,7 +38117,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34125,7 +38129,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -34167,7 +38172,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34184,7 +38190,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34201,7 +38208,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34218,7 +38226,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34235,7 +38244,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34252,7 +38262,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34269,7 +38280,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -34286,7 +38298,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34303,7 +38316,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -34320,7 +38334,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -34337,7 +38352,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -34354,7 +38370,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -34371,7 +38388,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -34388,15 +38406,18 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan", @@ -34407,15 +38428,18 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "bigintspan", @@ -34426,15 +38450,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspan", @@ -34445,15 +38472,18 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "datespan", @@ -34464,15 +38494,18 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tstzspan", @@ -34489,11 +38522,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -34504,11 +38539,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -34530,7 +38567,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "double", @@ -34547,7 +38585,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -34569,23 +38608,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox", @@ -34596,15 +38640,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox", @@ -34615,19 +38662,23 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox", @@ -34644,35 +38695,43 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox", @@ -34683,27 +38742,33 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox", @@ -34714,31 +38779,38 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox", @@ -34755,15 +38827,18 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox", @@ -34780,15 +38855,18 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox", @@ -34805,7 +38883,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34816,7 +38895,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34827,7 +38907,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34838,7 +38919,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34849,7 +38931,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34860,7 +38943,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34871,7 +38955,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34882,7 +38967,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34893,7 +38979,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34904,7 +38991,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34915,7 +39003,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34926,7 +39015,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34937,7 +39027,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34948,7 +39039,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34959,7 +39051,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -34993,7 +39086,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35004,7 +39098,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35015,7 +39110,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35026,7 +39122,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35037,7 +39134,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35048,7 +39146,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35059,7 +39158,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35070,7 +39170,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35081,7 +39182,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35092,7 +39194,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35103,7 +39206,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35114,7 +39218,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35125,7 +39230,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -35142,7 +39248,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -35153,7 +39260,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -35164,7 +39272,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -35175,7 +39284,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -35186,7 +39296,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -35197,7 +39308,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -35208,7 +39320,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -35219,7 +39332,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -35230,7 +39344,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -35241,7 +39356,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -35252,7 +39368,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -35263,7 +39380,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -35274,7 +39392,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -35296,15 +39415,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" } ], "returns": "tbox", @@ -35321,27 +39443,33 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox", @@ -35358,7 +39486,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -35369,7 +39498,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -35380,7 +39510,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer[]", @@ -35391,7 +39522,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -35402,7 +39534,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -35413,7 +39546,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint[]", @@ -35424,7 +39558,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch[]", @@ -35435,7 +39570,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -35446,7 +39582,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose[]", @@ -35457,7 +39594,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry[]", @@ -35468,7 +39606,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography[]", @@ -35479,7 +39618,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index[]", @@ -35490,7 +39630,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -35501,7 +39642,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean[]", @@ -35512,7 +39654,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -35523,7 +39666,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -35534,7 +39678,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -35545,7 +39690,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -35556,7 +39702,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer[]", @@ -35567,7 +39714,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint[]", @@ -35578,7 +39726,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float[]", @@ -35589,7 +39738,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text[]", @@ -35600,7 +39750,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date[]", @@ -35611,7 +39762,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -35622,7 +39774,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -35633,7 +39786,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint[]", @@ -35775,7 +39929,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35786,7 +39941,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -35797,7 +39953,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35808,7 +39965,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35834,7 +39992,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35845,7 +40004,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -35856,7 +40016,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35867,7 +40028,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35893,7 +40055,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35904,7 +40067,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -35915,7 +40079,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35926,7 +40091,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -35952,11 +40118,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -35973,11 +40141,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tfloat", @@ -35994,7 +40164,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -36011,11 +40182,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36026,7 +40199,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36043,11 +40217,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -36064,11 +40240,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36085,7 +40263,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -36102,7 +40281,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -36119,11 +40299,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -36140,11 +40322,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36155,7 +40339,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36172,11 +40357,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36193,7 +40380,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36210,11 +40398,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36231,15 +40421,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36256,7 +40449,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36273,7 +40467,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -36290,11 +40485,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tfloat", @@ -36311,7 +40508,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -36328,7 +40526,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36345,7 +40544,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36362,7 +40562,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -36379,7 +40580,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -36396,15 +40598,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tfloat", @@ -36421,11 +40626,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36442,11 +40649,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -36463,11 +40672,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36484,11 +40695,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36505,7 +40718,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -36522,7 +40736,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -36539,7 +40754,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -36550,7 +40766,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36567,7 +40784,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -36578,7 +40796,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36595,7 +40814,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -36606,7 +40826,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36623,11 +40844,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36638,11 +40861,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36659,11 +40884,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -36680,7 +40907,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36697,11 +40925,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36718,7 +40948,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -36735,11 +40966,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -36756,11 +40989,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36777,11 +41012,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36798,11 +41035,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36819,7 +41058,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -36836,7 +41076,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -36853,11 +41094,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36874,11 +41117,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36895,11 +41140,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -36916,7 +41163,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -36933,7 +41181,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -36950,7 +41199,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -36967,7 +41217,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -36984,7 +41235,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -37001,7 +41253,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -37018,7 +41271,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -37035,7 +41289,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -37052,7 +41307,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -37069,7 +41325,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -37086,7 +41343,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37097,7 +41355,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37108,7 +41367,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37134,7 +41394,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37145,7 +41406,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37156,7 +41418,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37182,7 +41445,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37193,7 +41457,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -37215,11 +41480,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37230,11 +41497,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37245,11 +41514,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37260,11 +41531,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37275,11 +41548,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37290,11 +41565,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -37316,7 +41593,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -37327,7 +41605,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -37349,15 +41628,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -37368,15 +41650,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -37387,15 +41672,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -37406,15 +41694,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -37425,15 +41716,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -37444,15 +41738,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -37463,15 +41760,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -37482,15 +41782,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -37501,15 +41804,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -37520,15 +41826,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -37539,15 +41848,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -37558,15 +41870,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -37577,15 +41892,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -37607,11 +41925,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -37622,11 +41942,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -37637,11 +41959,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -37652,11 +41976,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -37667,11 +41993,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -37682,11 +42010,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -37697,11 +42027,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -37712,11 +42044,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -37727,11 +42061,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -37742,11 +42078,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -37757,11 +42095,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -37772,11 +42112,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -37787,11 +42129,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -37802,11 +42146,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -37817,11 +42163,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -37851,7 +42199,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry[]", @@ -37862,7 +42211,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer[]", @@ -37873,7 +42223,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch[]", @@ -37884,7 +42235,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint[]", @@ -37895,7 +42247,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose[]", @@ -37906,7 +42259,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry[]", @@ -37917,7 +42271,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography[]", @@ -37928,7 +42283,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint[]", @@ -37939,7 +42295,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint[]", @@ -37950,7 +42307,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool[]", @@ -37961,7 +42319,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint[]", @@ -37972,7 +42331,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint[]", @@ -37983,7 +42343,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat[]", @@ -37994,7 +42355,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext[]", @@ -38005,7 +42367,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint[]", @@ -38035,7 +42398,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38046,7 +42410,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38057,7 +42422,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38074,7 +42440,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38085,7 +42452,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38096,7 +42464,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38107,7 +42476,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38118,7 +42488,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38129,7 +42500,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38140,7 +42512,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38151,7 +42524,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38162,7 +42536,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38173,7 +42548,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38184,7 +42560,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38195,7 +42572,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38206,7 +42584,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38217,7 +42596,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38228,7 +42608,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -38250,7 +42631,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38272,7 +42654,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38289,7 +42672,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38311,7 +42695,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38385,7 +42770,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -38455,7 +42841,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38477,7 +42864,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -38499,11 +42887,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -38520,7 +42910,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -38537,7 +42928,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38548,7 +42940,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38586,7 +42979,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38603,7 +42997,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38625,7 +43020,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38642,7 +43038,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -38659,7 +43056,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -38676,7 +43074,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -38693,11 +43092,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -38714,7 +43115,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38731,7 +43133,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38781,7 +43184,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38798,7 +43202,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38820,7 +43225,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38837,7 +43243,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -38854,7 +43261,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -38871,7 +43279,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -38888,7 +43297,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -38910,15 +43320,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38929,15 +43342,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38948,15 +43364,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38967,15 +43386,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -38992,11 +43414,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39007,11 +43431,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39022,11 +43448,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39037,11 +43465,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39052,11 +43482,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39067,11 +43499,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39082,11 +43516,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39097,11 +43533,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39112,11 +43550,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39127,11 +43567,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39142,11 +43584,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39157,11 +43601,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39172,11 +43618,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39187,11 +43635,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39202,11 +43652,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39217,11 +43669,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39232,11 +43686,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39247,11 +43703,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39262,11 +43720,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39277,11 +43737,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39292,11 +43754,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39307,11 +43771,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39322,11 +43788,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39337,11 +43805,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39352,11 +43822,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39367,11 +43839,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39382,11 +43856,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39397,11 +43873,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39412,11 +43890,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39427,11 +43907,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39442,11 +43924,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39457,11 +43941,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39472,11 +43958,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39487,11 +43975,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39502,11 +43992,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39517,11 +44009,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39532,11 +44026,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39547,11 +44043,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39562,11 +44060,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39577,11 +44077,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39592,11 +44094,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39607,11 +44111,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39622,11 +44128,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39637,11 +44145,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39652,11 +44162,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39667,11 +44179,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39682,11 +44196,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39697,11 +44213,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39712,11 +44230,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39727,11 +44247,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39742,11 +44264,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39757,11 +44281,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39772,11 +44298,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39787,11 +44315,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39802,11 +44332,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39817,11 +44349,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39832,11 +44366,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39847,11 +44383,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39862,11 +44400,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39877,11 +44417,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39892,11 +44434,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39907,11 +44451,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39922,11 +44468,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39937,11 +44485,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39952,11 +44502,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39967,11 +44519,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39982,11 +44536,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -39997,11 +44553,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40018,7 +44576,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40029,7 +44588,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40040,7 +44600,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40051,7 +44612,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "double", @@ -40093,15 +44655,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "line", @@ -40118,7 +44683,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -40148,7 +44714,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -40165,7 +44732,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40176,7 +44744,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -40187,7 +44756,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40198,7 +44768,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -40209,7 +44780,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -40220,7 +44792,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40231,7 +44804,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -40242,7 +44816,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40253,7 +44828,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -40264,7 +44840,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -40275,7 +44852,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -40286,7 +44864,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -40356,7 +44935,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40367,7 +44947,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40378,7 +44959,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40389,7 +44971,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40400,7 +44983,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40411,7 +44995,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40422,7 +45007,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40433,7 +45019,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40444,7 +45031,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40455,7 +45043,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40466,7 +45055,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40477,7 +45067,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40488,7 +45079,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40499,7 +45091,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40510,7 +45103,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40521,7 +45115,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40532,7 +45127,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40543,7 +45139,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40554,7 +45151,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40565,7 +45163,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40576,7 +45175,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40587,7 +45187,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -40598,7 +45199,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -40620,11 +45222,13 @@ "args": [ { "type": "point", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "point", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "lseg", @@ -40641,7 +45245,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint[]", @@ -40671,15 +45276,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -40690,15 +45298,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpcpoint", @@ -40709,15 +45320,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -40728,15 +45342,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -40747,15 +45364,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -40766,15 +45386,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -40791,7 +45414,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -40802,7 +45426,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -40813,7 +45438,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -40824,7 +45450,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -40858,7 +45485,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40869,7 +45497,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -40880,7 +45509,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -40891,7 +45521,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -40937,7 +45568,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int", @@ -40948,7 +45580,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40959,7 +45592,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40970,7 +45604,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40981,7 +45616,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -40992,7 +45628,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41003,7 +45640,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41014,7 +45652,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41025,7 +45664,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41036,7 +45676,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41047,7 +45688,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41058,7 +45700,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41069,7 +45712,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41080,7 +45724,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41091,7 +45736,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41102,7 +45748,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41113,7 +45760,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41124,7 +45772,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41135,7 +45784,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41146,7 +45796,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41157,7 +45808,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41168,7 +45820,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41179,7 +45832,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41190,7 +45844,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41201,7 +45856,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41212,7 +45868,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41223,7 +45880,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41234,7 +45892,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41245,7 +45904,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41256,7 +45916,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41267,7 +45928,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41278,7 +45940,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41289,7 +45952,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41300,7 +45964,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -41330,11 +45995,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -41345,7 +46012,8 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -41356,11 +46024,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -41371,7 +46041,8 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -41382,11 +46053,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -41397,7 +46070,8 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -41408,11 +46082,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -41423,11 +46099,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -41438,7 +46116,8 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -41449,7 +46128,8 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -41460,11 +46140,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -41475,11 +46157,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -41490,7 +46174,8 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -41501,7 +46186,8 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -41512,11 +46198,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -41527,11 +46215,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -41542,11 +46232,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -41557,11 +46249,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -41572,11 +46266,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -41587,7 +46283,8 @@ "args": [ { "type": "tbool[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -41598,7 +46295,8 @@ "args": [ { "type": "tint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -41609,7 +46307,8 @@ "args": [ { "type": "tbigint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -41620,7 +46319,8 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -41631,7 +46331,8 @@ "args": [ { "type": "ttext[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -41642,11 +46343,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -41657,7 +46360,8 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -41719,11 +46423,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -41734,11 +46440,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -41749,11 +46457,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -41764,11 +46474,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -41779,11 +46491,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -41794,11 +46508,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -41809,11 +46525,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -41824,11 +46542,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -41850,11 +46570,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41865,11 +46587,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41880,11 +46604,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41895,11 +46621,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41910,11 +46638,13 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41925,11 +46655,13 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41940,11 +46672,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41955,11 +46689,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41970,11 +46706,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -41985,11 +46723,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42000,11 +46740,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42015,11 +46757,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42030,11 +46774,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42045,11 +46791,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42071,15 +46819,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42090,15 +46841,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42109,15 +46863,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42134,7 +46891,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -42145,7 +46903,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -42156,7 +46915,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -42167,7 +46927,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -42197,11 +46958,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -42212,11 +46975,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -42227,11 +46992,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -42242,11 +47009,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -42257,11 +47026,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -42272,11 +47043,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -42287,11 +47060,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -42302,11 +47077,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -42328,7 +47105,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -42339,7 +47117,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -42350,7 +47129,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -42361,7 +47141,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -42403,11 +47184,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -42424,11 +47207,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -42439,11 +47224,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -42454,11 +47241,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -42469,11 +47258,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -42484,11 +47275,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -42499,11 +47292,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -42514,11 +47309,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -42568,7 +47365,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -42579,7 +47377,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -42590,7 +47389,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -42601,7 +47401,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -42623,7 +47424,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -42634,7 +47436,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -42645,7 +47448,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -42656,7 +47460,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -42678,15 +47483,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -42697,15 +47505,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -42716,15 +47527,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -42735,15 +47549,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -42754,15 +47571,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -42773,15 +47593,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -42792,15 +47615,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -42826,11 +47652,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -42841,11 +47669,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -42856,11 +47686,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -42882,11 +47714,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -42897,11 +47731,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -42912,11 +47748,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -42927,11 +47765,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -42942,11 +47782,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -42957,11 +47799,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -42972,11 +47816,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -42987,11 +47833,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -43002,11 +47850,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -43017,11 +47867,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -43032,11 +47884,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -43047,11 +47901,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -43062,11 +47918,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -43077,11 +47935,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -43092,11 +47952,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -43107,11 +47969,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -43122,11 +47986,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -43137,11 +48003,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -43152,11 +48020,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -43167,11 +48037,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -43182,11 +48054,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -43197,11 +48071,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -43212,11 +48088,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -43227,11 +48105,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -43242,11 +48122,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -43257,11 +48139,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -43272,11 +48156,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -43287,11 +48173,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -43302,11 +48190,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -43317,11 +48207,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -43332,11 +48224,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -43347,11 +48241,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -43362,11 +48258,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -43377,11 +48275,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -43392,11 +48292,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -43407,11 +48309,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -43422,11 +48326,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -43437,11 +48343,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -43452,11 +48360,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -43467,11 +48377,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -43482,11 +48394,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -43497,11 +48411,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -43512,11 +48428,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -43527,11 +48445,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -43542,11 +48462,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -43557,11 +48479,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -43572,11 +48496,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -43587,11 +48513,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -43602,11 +48530,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -43617,11 +48547,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -43632,11 +48564,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -43647,11 +48581,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -43662,11 +48598,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -43677,11 +48615,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -43692,11 +48632,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -43707,11 +48649,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -43722,11 +48666,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -43737,11 +48683,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -43752,11 +48700,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -43767,11 +48717,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -43837,15 +48789,18 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -43856,15 +48811,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpoint", @@ -43881,15 +48839,18 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -43906,11 +48867,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -43968,11 +48931,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -43983,11 +48948,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -43998,11 +48965,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -44013,11 +48982,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -44028,11 +48999,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -44043,11 +49016,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -44058,11 +49033,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -44073,11 +49050,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -44088,11 +49067,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -44103,11 +49084,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -44118,11 +49101,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -44133,11 +49118,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -44148,11 +49135,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -44163,11 +49152,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -44178,11 +49169,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -44193,11 +49186,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -44208,11 +49203,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -44223,11 +49220,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -44238,11 +49237,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -44253,11 +49254,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -44268,11 +49271,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -44283,11 +49288,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -44298,11 +49305,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -44313,11 +49322,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -44328,11 +49339,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -44343,11 +49356,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -44358,11 +49373,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -44373,11 +49390,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -44388,11 +49407,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -44450,7 +49471,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4multirange", @@ -44461,7 +49483,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int8multirange", @@ -44472,7 +49495,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datemultirange", @@ -44483,7 +49507,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzmultirange", @@ -44500,11 +49525,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44515,11 +49542,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44530,11 +49559,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44545,11 +49576,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44560,11 +49593,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44575,11 +49610,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44590,11 +49627,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44605,11 +49644,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44620,11 +49661,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44635,11 +49678,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44650,11 +49695,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44665,11 +49712,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44680,11 +49729,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44695,11 +49746,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44710,11 +49763,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44725,11 +49780,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44740,11 +49797,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44755,11 +49814,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44770,11 +49831,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44785,11 +49848,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44800,11 +49865,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44815,11 +49882,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44830,11 +49899,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44845,11 +49916,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44860,11 +49933,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44875,11 +49950,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44890,11 +49967,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44905,11 +49984,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44920,11 +50001,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44935,11 +50018,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44950,11 +50035,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44965,11 +50052,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44980,11 +50069,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -44995,11 +50086,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45010,11 +50103,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45025,11 +50120,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45040,11 +50137,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45055,11 +50154,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45070,11 +50171,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45085,11 +50188,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45100,11 +50205,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45115,11 +50222,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45130,11 +50239,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45145,11 +50256,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45160,11 +50273,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45175,11 +50290,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45190,11 +50307,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45205,11 +50324,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45220,11 +50341,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45235,11 +50358,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45250,11 +50375,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45265,11 +50392,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45280,11 +50409,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45295,11 +50426,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45310,11 +50443,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45325,11 +50460,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int", @@ -45340,11 +50477,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -45355,11 +50494,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45370,11 +50511,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45385,11 +50528,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45400,11 +50545,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45415,11 +50562,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45430,11 +50579,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45445,11 +50596,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45460,11 +50613,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45475,11 +50630,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45490,11 +50647,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45505,11 +50664,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45520,11 +50681,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45535,11 +50698,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45550,11 +50715,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45565,11 +50732,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45580,11 +50749,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45595,11 +50766,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45610,11 +50783,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45625,11 +50800,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -45767,11 +50944,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -45782,11 +50961,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -45797,11 +50978,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -45812,11 +50995,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -45827,11 +51012,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -45842,11 +51029,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45857,11 +51046,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45872,11 +51063,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45887,11 +51080,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45902,11 +51097,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45917,11 +51114,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45932,11 +51131,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -45947,11 +51148,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -45962,11 +51165,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -45977,11 +51182,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -45992,11 +51199,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46007,11 +51216,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46022,11 +51233,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46037,11 +51250,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46052,11 +51267,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46067,11 +51284,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -46082,11 +51301,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -46097,11 +51318,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -46112,11 +51335,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -46127,11 +51352,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -46142,11 +51369,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -46157,11 +51386,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -46172,11 +51403,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -46187,11 +51420,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -46202,11 +51437,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -46217,11 +51454,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -46232,11 +51471,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -46247,11 +51488,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -46313,7 +51556,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -46335,11 +51579,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46350,7 +51596,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46376,7 +51623,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46393,7 +51641,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46410,7 +51659,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46427,7 +51677,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46444,7 +51695,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46461,11 +51713,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -46487,11 +51741,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46513,11 +51769,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46539,11 +51797,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46565,7 +51825,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46587,11 +51848,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46613,11 +51876,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46639,11 +51904,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -46665,7 +51932,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -46687,7 +51955,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -46713,7 +51982,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -46730,7 +52000,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46747,7 +52018,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46764,7 +52036,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46781,7 +52054,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46798,7 +52072,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46815,7 +52090,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46832,7 +52108,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -46849,7 +52126,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46866,7 +52144,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -46883,7 +52162,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -46900,15 +52180,18 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "precision", - "hasDefault": true + "hasDefault": true, + "default": "1" } ], "returns": "nsegment", @@ -46919,7 +52202,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "nsegment", @@ -46930,7 +52214,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "nsegment", @@ -46960,11 +52245,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -46986,11 +52273,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47012,11 +52301,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47038,11 +52329,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47064,7 +52357,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "nsegment", @@ -47086,11 +52380,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47112,11 +52408,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47138,11 +52436,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -47164,7 +52464,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -47186,7 +52487,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "nsegment", @@ -47203,7 +52505,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -47220,7 +52523,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47242,7 +52546,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47253,7 +52558,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47264,7 +52570,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47275,7 +52582,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47286,7 +52594,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47297,7 +52606,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47308,7 +52618,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47319,7 +52630,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47330,7 +52642,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47341,7 +52654,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47352,7 +52666,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47363,7 +52678,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47374,7 +52690,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47385,7 +52702,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47396,7 +52714,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47422,7 +52741,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -47439,7 +52759,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47450,7 +52771,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47461,7 +52783,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47472,7 +52795,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47483,7 +52807,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47494,7 +52819,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47505,7 +52831,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47516,7 +52843,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47527,7 +52855,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47538,7 +52867,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47549,7 +52879,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47560,7 +52891,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47571,7 +52903,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47593,7 +52926,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47604,7 +52938,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47615,7 +52950,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47626,7 +52962,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47637,7 +52974,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47659,7 +52997,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47670,7 +53009,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47681,7 +53021,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47692,7 +53033,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47703,7 +53045,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47714,7 +53057,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47725,7 +53069,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47736,7 +53081,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47747,7 +53093,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47758,7 +53105,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47769,7 +53117,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47780,7 +53129,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47791,7 +53141,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47802,7 +53153,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47813,7 +53165,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47824,7 +53177,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47854,7 +53208,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47865,7 +53220,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47876,7 +53232,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47887,7 +53244,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47898,7 +53256,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47909,7 +53268,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47920,7 +53280,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47931,7 +53292,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47942,7 +53304,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47953,7 +53316,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47964,7 +53328,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47975,7 +53340,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47986,7 +53352,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -47997,7 +53364,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -48019,7 +53387,8 @@ "args": [ { "type": "tempSubtype(tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -48030,7 +53399,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "quaternion", @@ -48047,11 +53417,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48062,11 +53434,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48077,11 +53451,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48092,11 +53468,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48107,11 +53485,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48122,11 +53502,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48137,11 +53519,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48152,11 +53536,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48167,11 +53553,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48182,11 +53570,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48197,11 +53587,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48212,11 +53604,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48227,11 +53621,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48242,11 +53638,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48257,11 +53655,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48272,11 +53672,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48287,11 +53689,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48302,11 +53706,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48317,11 +53723,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48338,11 +53746,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48353,11 +53763,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48368,11 +53780,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48383,11 +53797,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48398,11 +53814,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48413,11 +53831,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48428,11 +53848,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48443,11 +53865,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48458,11 +53882,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48473,11 +53899,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48488,11 +53916,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48503,11 +53933,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48518,11 +53950,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48533,11 +53967,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48548,11 +53984,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48563,11 +54001,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48578,11 +54018,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48593,11 +54035,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48608,11 +54052,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48623,11 +54069,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48638,11 +54086,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48653,11 +54103,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48668,11 +54120,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48683,11 +54137,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48698,11 +54154,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48713,11 +54171,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48728,11 +54188,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48743,11 +54205,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48758,11 +54222,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48773,11 +54239,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48788,11 +54256,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48803,11 +54273,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48818,11 +54290,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48833,11 +54307,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48848,11 +54324,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48863,11 +54341,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48878,11 +54358,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48893,11 +54375,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48908,11 +54392,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48923,11 +54409,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48938,11 +54426,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48953,11 +54443,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48968,11 +54460,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48983,11 +54477,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -48998,11 +54494,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49013,11 +54511,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49028,11 +54528,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49043,11 +54545,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49058,11 +54562,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49073,11 +54579,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49088,11 +54596,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49103,11 +54613,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49118,11 +54630,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49133,11 +54647,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49148,11 +54664,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49163,11 +54681,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49178,11 +54698,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49193,11 +54715,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49208,11 +54732,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49223,11 +54749,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49238,11 +54766,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49253,11 +54783,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49268,11 +54800,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49283,11 +54817,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49298,11 +54834,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49313,11 +54851,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49328,11 +54868,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49343,11 +54885,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49358,11 +54902,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49373,11 +54919,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49388,11 +54936,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49403,11 +54953,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49418,11 +54970,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49433,11 +54987,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49448,11 +55004,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49463,11 +55021,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49478,11 +55038,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49493,11 +55055,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49508,11 +55072,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49523,11 +55089,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49544,11 +55112,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49559,11 +55129,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49574,11 +55146,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49589,11 +55163,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49604,11 +55180,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49619,11 +55197,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49634,11 +55214,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49649,11 +55231,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49664,11 +55248,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49679,11 +55265,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49700,11 +55288,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49715,11 +55305,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49730,11 +55322,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49745,11 +55339,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49760,11 +55356,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49775,11 +55373,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49790,11 +55390,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49805,11 +55407,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49820,11 +55424,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49835,11 +55441,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49850,11 +55458,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49865,11 +55475,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49880,11 +55492,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49895,11 +55509,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49910,11 +55526,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49925,11 +55543,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49940,11 +55560,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49955,11 +55577,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49970,11 +55594,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -49985,11 +55611,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50000,11 +55628,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50015,11 +55645,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50030,11 +55662,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50045,11 +55679,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50060,11 +55696,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50075,11 +55713,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50090,11 +55730,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50105,11 +55747,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50120,11 +55764,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50135,11 +55781,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50150,11 +55798,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50165,11 +55815,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50180,11 +55832,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50195,11 +55849,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50210,11 +55866,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50225,11 +55883,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50240,11 +55900,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50255,11 +55917,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50270,11 +55934,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50285,11 +55951,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50300,11 +55968,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50315,11 +55985,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50330,11 +56002,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50345,11 +56019,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50360,11 +56036,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50375,11 +56053,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50390,11 +56070,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50405,11 +56087,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50420,11 +56104,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50435,11 +56121,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50450,11 +56138,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50465,11 +56155,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50480,11 +56172,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50495,11 +56189,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50510,11 +56206,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50525,11 +56223,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50540,11 +56240,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50555,11 +56257,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50570,11 +56274,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50585,11 +56291,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50600,11 +56308,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50615,11 +56325,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50630,11 +56342,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50645,11 +56359,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50660,11 +56376,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50675,11 +56393,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50690,11 +56410,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50705,11 +56427,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50720,11 +56444,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50735,11 +56461,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50750,11 +56478,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50765,11 +56495,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50780,11 +56512,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50795,11 +56529,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50810,11 +56546,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50825,11 +56563,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50840,11 +56580,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50855,11 +56597,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50870,11 +56614,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50885,11 +56631,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50906,11 +56654,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50921,11 +56671,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50936,11 +56688,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50951,11 +56705,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50966,11 +56722,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50981,11 +56739,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -50996,11 +56756,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51011,11 +56773,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51026,11 +56790,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51041,11 +56807,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51056,11 +56824,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51071,11 +56841,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51086,11 +56858,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51101,11 +56875,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51116,11 +56892,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51131,11 +56909,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51146,11 +56926,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51161,11 +56943,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51176,11 +56960,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51197,11 +56983,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51212,11 +57000,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51227,11 +57017,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51242,11 +57034,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51257,11 +57051,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51272,11 +57068,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51287,11 +57085,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51302,11 +57102,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51317,11 +57119,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51332,11 +57136,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51353,11 +57159,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51368,11 +57176,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51383,11 +57193,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51398,11 +57210,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51413,11 +57227,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51428,11 +57244,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51443,11 +57261,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51458,11 +57278,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51473,11 +57295,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51488,11 +57312,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51503,11 +57329,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51518,11 +57346,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51533,11 +57363,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51548,11 +57380,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51563,11 +57397,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51578,11 +57414,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51593,11 +57431,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51608,11 +57448,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51623,11 +57465,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51638,11 +57482,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51653,11 +57499,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51668,11 +57516,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51683,11 +57533,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51698,11 +57550,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51713,11 +57567,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51728,11 +57584,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51743,11 +57601,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51758,11 +57618,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51773,11 +57635,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51788,11 +57652,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51803,11 +57669,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51818,11 +57686,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51833,11 +57703,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51848,11 +57720,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51863,11 +57737,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51878,11 +57754,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51893,11 +57771,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51908,11 +57788,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51923,11 +57805,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51938,11 +57822,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51953,11 +57839,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51968,11 +57856,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51983,11 +57873,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -51998,11 +57890,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52013,11 +57907,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52028,11 +57924,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52043,11 +57941,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52058,11 +57958,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52073,11 +57975,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52088,11 +57992,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52103,11 +58009,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52118,11 +58026,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52133,11 +58043,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52148,11 +58060,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52163,11 +58077,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52178,11 +58094,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52193,11 +58111,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52208,11 +58128,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52223,11 +58145,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52238,11 +58162,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52253,11 +58179,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52268,11 +58196,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52283,11 +58213,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52298,11 +58230,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52313,11 +58247,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52328,11 +58264,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52343,11 +58281,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52358,11 +58298,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52373,11 +58315,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52388,11 +58332,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52403,11 +58349,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52418,11 +58366,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52433,11 +58383,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52448,11 +58400,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52463,11 +58417,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52478,11 +58434,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52493,11 +58451,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52508,11 +58468,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52523,11 +58485,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52538,11 +58502,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52553,11 +58519,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52568,11 +58536,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52583,11 +58553,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52598,11 +58570,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52613,11 +58587,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52628,11 +58604,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52643,11 +58621,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52658,11 +58638,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52673,11 +58655,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52688,11 +58672,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52703,11 +58689,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52718,11 +58706,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52733,11 +58723,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52754,11 +58746,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52769,11 +58763,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52784,11 +58780,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52805,11 +58803,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52820,11 +58820,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52835,11 +58837,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52850,11 +58854,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52865,11 +58871,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52880,11 +58888,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52895,11 +58905,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52910,11 +58922,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52925,11 +58939,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52940,11 +58956,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52955,11 +58973,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52970,11 +58990,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -52985,11 +59007,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53000,11 +59024,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53015,11 +59041,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53030,11 +59058,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53045,11 +59075,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53060,11 +59092,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53075,11 +59109,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53090,11 +59126,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53105,11 +59143,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53120,11 +59160,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53135,11 +59177,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53150,11 +59194,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53165,11 +59211,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53180,11 +59228,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53195,11 +59245,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53210,11 +59262,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53225,11 +59279,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53240,11 +59296,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53255,11 +59313,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53270,11 +59330,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53285,11 +59347,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53300,11 +59364,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53315,11 +59381,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53330,11 +59398,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53345,11 +59415,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53360,11 +59432,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53375,11 +59449,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53390,11 +59466,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53405,11 +59483,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53420,11 +59500,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53435,11 +59517,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53450,11 +59534,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53465,11 +59551,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53480,11 +59568,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53495,11 +59585,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53510,11 +59602,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53525,11 +59619,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53540,11 +59636,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53555,11 +59653,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53570,11 +59670,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53585,11 +59687,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53600,11 +59704,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53615,11 +59721,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53630,11 +59738,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53645,11 +59755,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53660,11 +59772,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53675,11 +59789,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53690,11 +59806,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53705,11 +59823,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53720,11 +59840,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53735,11 +59857,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53750,11 +59874,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53765,11 +59891,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53780,11 +59908,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53795,11 +59925,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53810,11 +59942,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53831,11 +59965,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53846,11 +59982,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53861,11 +59999,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53876,11 +60016,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53891,11 +60033,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53906,11 +60050,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53921,11 +60067,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53936,11 +60084,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53951,11 +60101,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53966,11 +60118,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53981,11 +60135,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -53996,11 +60152,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54011,11 +60169,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54026,11 +60186,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54041,11 +60203,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54056,11 +60220,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54071,11 +60237,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54086,11 +60254,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54101,11 +60271,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54116,11 +60288,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54131,11 +60305,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54146,11 +60322,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54161,11 +60339,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54176,11 +60356,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54191,11 +60373,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54206,11 +60390,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54221,11 +60407,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54236,11 +60424,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54251,11 +60441,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54266,11 +60458,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54281,11 +60475,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54296,11 +60492,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54311,11 +60509,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54326,11 +60526,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54341,11 +60543,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54356,11 +60560,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54371,11 +60577,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54386,11 +60594,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54401,11 +60611,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54416,11 +60628,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54431,11 +60645,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54446,11 +60662,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54461,11 +60679,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54476,11 +60696,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54491,11 +60713,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54506,11 +60730,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54521,11 +60747,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54536,11 +60764,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54551,11 +60781,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54566,11 +60798,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54581,11 +60815,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54596,11 +60832,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54611,11 +60849,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54626,11 +60866,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54641,11 +60883,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54656,11 +60900,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54671,11 +60917,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54686,11 +60934,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54701,11 +60951,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54716,11 +60968,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54731,11 +60985,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54746,11 +61002,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54761,11 +61019,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54776,11 +61036,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54791,11 +61053,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54806,11 +61070,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54821,11 +61087,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54836,11 +61104,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -54857,7 +61127,8 @@ "args": [ { "type": "point[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "path", @@ -54874,7 +61145,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -54885,7 +61157,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -54896,7 +61169,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -54907,7 +61181,8 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -54918,7 +61193,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -54944,11 +61220,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -54965,7 +61243,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -54982,7 +61261,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -54999,7 +61279,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -55016,7 +61297,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -55033,7 +61315,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -55050,7 +61333,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -55067,7 +61351,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -55084,15 +61369,18 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -55103,19 +61391,23 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -55132,7 +61424,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -55149,7 +61442,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -55166,7 +61460,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -55183,7 +61478,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -55200,7 +61496,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -55217,7 +61514,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -55234,7 +61532,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -55251,11 +61550,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "float", @@ -55272,7 +61573,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -55283,7 +61585,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -55305,7 +61608,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -55316,7 +61620,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -55327,11 +61632,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "point", @@ -55357,7 +61664,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -55368,7 +61676,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "TABLE", @@ -55379,7 +61688,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -55413,7 +61723,8 @@ "args": [ { "type": "point[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "polygon", @@ -55430,19 +61741,23 @@ "args": [ { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "pose", @@ -55453,35 +61768,43 @@ "args": [ { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "pose", @@ -55492,11 +61815,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55507,23 +61832,28 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "precision", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55540,7 +61870,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55557,7 +61888,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55574,7 +61906,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55591,7 +61924,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55608,7 +61942,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55625,7 +61960,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55642,11 +61978,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -55663,11 +62001,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55684,11 +62024,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55705,11 +62047,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55726,7 +62070,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -55743,11 +62088,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -55764,7 +62111,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55786,11 +62134,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55807,11 +62157,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55828,11 +62180,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55849,7 +62203,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -55871,7 +62226,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -55897,11 +62253,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -55918,7 +62276,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -55935,7 +62294,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -55952,7 +62312,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -55969,7 +62330,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -55986,7 +62348,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -56003,7 +62366,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -56020,7 +62384,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -56037,7 +62402,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -56054,7 +62420,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -56071,7 +62438,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -56088,7 +62456,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -56105,7 +62474,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "nsegment[]", @@ -56127,7 +62497,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -56144,7 +62515,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -56155,7 +62527,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -56166,7 +62539,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -56177,7 +62551,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -56211,7 +62586,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -56222,7 +62598,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -56244,7 +62621,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4range", @@ -56255,7 +62633,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int8range", @@ -56266,7 +62645,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "daterange", @@ -56277,7 +62657,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzrange", @@ -56294,11 +62675,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56309,11 +62692,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56324,11 +62709,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56339,11 +62726,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56354,11 +62743,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56369,11 +62760,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56384,11 +62777,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56399,11 +62794,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56414,11 +62811,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56429,11 +62828,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56444,11 +62845,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56459,11 +62862,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56474,11 +62879,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56489,11 +62896,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56504,11 +62913,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56519,11 +62930,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56534,11 +62947,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56549,11 +62964,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56564,11 +62981,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56579,11 +62998,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56594,11 +63015,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56609,11 +63032,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56624,11 +63049,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56639,11 +63066,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56654,11 +63083,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56669,11 +63100,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56684,11 +63117,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56699,11 +63134,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56714,11 +63151,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56729,11 +63168,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56744,11 +63185,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56759,11 +63202,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56774,11 +63219,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56789,11 +63236,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56804,11 +63253,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56819,11 +63270,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56834,11 +63287,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56849,11 +63304,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56864,11 +63321,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56879,11 +63338,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56894,11 +63355,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56909,11 +63372,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56924,11 +63389,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56939,11 +63406,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56954,11 +63423,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56969,11 +63440,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56984,11 +63457,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -56999,11 +63474,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57014,11 +63491,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57029,11 +63508,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57044,11 +63525,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57059,11 +63542,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57074,11 +63559,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57089,11 +63576,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57104,11 +63593,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57119,11 +63610,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57134,11 +63627,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57149,11 +63644,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57164,11 +63661,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57179,11 +63678,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57194,11 +63695,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57209,11 +63712,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57224,11 +63729,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57239,11 +63746,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57254,11 +63763,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57269,11 +63780,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57284,11 +63797,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57299,11 +63814,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -57320,7 +63837,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -57331,7 +63849,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -57353,11 +63872,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57368,19 +63889,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57391,15 +63916,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57410,11 +63938,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57425,19 +63955,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57448,15 +63982,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57473,11 +64010,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57488,11 +64027,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57509,11 +64050,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57524,11 +64067,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57545,11 +64090,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -57560,11 +64107,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -57581,7 +64130,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -57592,7 +64142,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -57609,11 +64160,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "trgeometry", @@ -57624,11 +64177,13 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "trgeometry[]", @@ -57639,11 +64194,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "cbuffer", @@ -57654,11 +64211,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tcbuffer", @@ -57669,11 +64228,13 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tcbuffer[]", @@ -57684,11 +64245,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "cbufferset", @@ -57699,11 +64262,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tpcbox", @@ -57714,11 +64279,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tpose", @@ -57729,11 +64296,13 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tpose[]", @@ -57744,11 +64313,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "pose", @@ -57759,11 +64330,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "poseset", @@ -57774,11 +64347,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "geomset", @@ -57789,11 +64364,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "geogset", @@ -57804,11 +64381,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -57819,11 +64398,13 @@ "args": [ { "type": "stbox[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox[]", @@ -57834,11 +64415,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "geometry", @@ -57849,11 +64432,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "geography", @@ -57864,11 +64449,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeompoint", @@ -57879,11 +64466,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeogpoint", @@ -57894,11 +64483,13 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeompoint[]", @@ -57909,11 +64500,13 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeogpoint[]", @@ -57924,11 +64517,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeometry", @@ -57939,11 +64534,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeography", @@ -57954,11 +64551,13 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeometry[]", @@ -57969,11 +64568,13 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tgeography[]", @@ -57984,11 +64585,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "float", @@ -57999,11 +64602,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspan", @@ -58014,11 +64619,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspanset", @@ -58029,11 +64636,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatset", @@ -58044,11 +64653,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tfloat", @@ -58059,11 +64670,13 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tfloat[]", @@ -58074,11 +64687,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tbox", @@ -58089,11 +64704,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tnpoint", @@ -58104,11 +64721,13 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tnpoint", @@ -58119,11 +64738,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "npoint", @@ -58134,11 +64755,13 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "nsegment", @@ -58149,11 +64772,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "npointset", @@ -58207,7 +64832,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -58218,7 +64844,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -58229,7 +64856,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -58259,7 +64887,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -58270,7 +64899,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -58296,11 +64926,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58311,11 +64943,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58326,11 +64960,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58341,11 +64977,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58356,11 +64994,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58371,11 +65011,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58386,11 +65028,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58401,11 +65045,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58416,11 +65062,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58431,11 +65079,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58446,11 +65096,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58461,11 +65113,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58476,11 +65130,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58491,11 +65147,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58506,11 +65164,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58521,11 +65181,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58536,11 +65198,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58551,11 +65215,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58566,11 +65232,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58581,11 +65249,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58596,11 +65266,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58611,11 +65283,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58626,11 +65300,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58641,11 +65317,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58656,11 +65334,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58671,11 +65351,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58686,11 +65368,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58701,11 +65385,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58716,11 +65402,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58731,11 +65419,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58746,11 +65436,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58761,11 +65453,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58776,11 +65470,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58791,11 +65487,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58806,11 +65504,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58821,11 +65521,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58836,11 +65538,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58851,11 +65555,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58866,11 +65572,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58881,11 +65589,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58896,11 +65606,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58911,11 +65623,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58926,11 +65640,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58941,11 +65657,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58956,11 +65674,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58971,11 +65691,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -58986,11 +65708,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59001,11 +65725,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59016,11 +65742,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59031,11 +65759,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59046,11 +65776,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59061,11 +65793,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59076,11 +65810,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59091,11 +65827,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59106,11 +65844,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59121,11 +65861,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59136,11 +65878,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59151,11 +65895,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59166,11 +65912,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59181,11 +65929,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59196,11 +65946,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59211,11 +65963,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59226,11 +65980,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59241,11 +65997,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59256,11 +66014,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59277,11 +66037,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59292,11 +66054,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59307,11 +66071,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59322,11 +66088,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59337,11 +66105,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59352,11 +66122,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59367,11 +66139,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -59388,11 +66162,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -59403,15 +66179,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -59422,19 +66201,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -59445,15 +66228,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -59464,11 +66250,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -59479,15 +66267,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -59498,19 +66289,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -59521,15 +66316,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -59540,11 +66338,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -59555,11 +66355,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -59570,11 +66372,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -59585,11 +66389,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -59600,11 +66406,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -59615,11 +66423,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -59630,11 +66440,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -59645,11 +66457,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -59660,11 +66474,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -59675,11 +66491,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -59690,11 +66508,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -59705,11 +66525,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -59720,11 +66542,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -59735,11 +66559,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -59750,11 +66576,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -59776,11 +66604,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -59791,11 +66621,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -59806,11 +66638,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -59821,11 +66655,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -59836,11 +66672,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -59851,11 +66689,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -59866,11 +66706,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -59881,11 +66723,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -59896,11 +66740,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -59911,11 +66757,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -59926,11 +66774,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -59941,11 +66791,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -59956,11 +66808,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -59971,11 +66825,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -59986,11 +66842,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -60012,11 +66870,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -60027,11 +66887,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -60042,11 +66904,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -60057,11 +66921,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -60072,11 +66938,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -60087,11 +66955,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -60121,15 +66991,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60140,15 +67013,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60159,15 +67035,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60178,15 +67057,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60197,15 +67079,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60222,15 +67107,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60241,15 +67129,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60260,15 +67151,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60279,15 +67173,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60298,15 +67195,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -60323,7 +67223,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry[]", @@ -60334,7 +67235,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer[]", @@ -60345,7 +67247,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose[]", @@ -60356,7 +67259,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry[]", @@ -60367,7 +67271,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography[]", @@ -60378,7 +67283,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint[]", @@ -60389,7 +67295,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint[]", @@ -60400,7 +67307,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool[]", @@ -60411,7 +67319,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint[]", @@ -60422,7 +67331,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint[]", @@ -60433,7 +67343,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat[]", @@ -60444,7 +67355,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext[]", @@ -60455,7 +67367,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint[]", @@ -60485,11 +67398,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -60500,11 +67415,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -60515,11 +67432,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -60530,11 +67449,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -60545,11 +67466,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -60560,11 +67483,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -60575,11 +67500,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -60590,11 +67517,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -60605,11 +67534,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -60620,11 +67551,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -60635,11 +67568,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -60650,11 +67585,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -60665,11 +67602,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -60695,7 +67634,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry[]", @@ -60706,7 +67646,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer[]", @@ -60717,7 +67658,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose[]", @@ -60728,7 +67670,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry[]", @@ -60739,7 +67682,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography[]", @@ -60750,7 +67694,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint[]", @@ -60761,7 +67706,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint[]", @@ -60772,7 +67718,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool[]", @@ -60783,7 +67730,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint[]", @@ -60794,7 +67742,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint[]", @@ -60805,7 +67754,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat[]", @@ -60816,7 +67766,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext[]", @@ -60827,7 +67778,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint[]", @@ -60861,7 +67813,8 @@ "args": [ { "type": "cbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -60872,7 +67825,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -60883,7 +67837,8 @@ "args": [ { "type": "pcpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -60894,7 +67849,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -60905,7 +67861,8 @@ "args": [ { "type": "pcpatch[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -60916,7 +67873,8 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -60927,7 +67885,8 @@ "args": [ { "type": "pose[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -60938,7 +67897,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -60949,7 +67909,8 @@ "args": [ { "type": "geometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -60960,7 +67921,8 @@ "args": [ { "type": "geography[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -60971,7 +67933,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -60982,7 +67945,8 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -60993,7 +67957,8 @@ "args": [ { "type": "h3index[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -61004,7 +67969,8 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -61015,7 +67981,8 @@ "args": [ { "type": "integer[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -61026,7 +67993,8 @@ "args": [ { "type": "bigint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -61037,7 +68005,8 @@ "args": [ { "type": "float[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -61048,7 +68017,8 @@ "args": [ { "type": "text[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -61059,7 +68029,8 @@ "args": [ { "type": "date[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -61070,7 +68041,8 @@ "args": [ { "type": "timestamptz[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -61081,7 +68053,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -61092,7 +68065,8 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -61103,7 +68077,8 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -61114,7 +68089,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -61125,7 +68101,8 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -61136,7 +68113,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -61147,7 +68125,8 @@ "args": [ { "type": "npoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -61158,7 +68137,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -61276,11 +68256,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -61291,11 +68273,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -61306,11 +68290,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -61321,11 +68307,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -61336,11 +68324,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -61351,11 +68341,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -61366,11 +68358,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -61381,11 +68375,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -61396,11 +68392,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -61411,11 +68409,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -61426,11 +68426,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -61441,11 +68443,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -61456,11 +68460,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -61490,11 +68496,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -61505,11 +68513,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -61520,11 +68530,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -61535,11 +68547,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -61550,11 +68564,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -61565,11 +68581,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -61580,11 +68598,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -61595,11 +68615,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -61610,11 +68632,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -61625,11 +68649,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -61640,11 +68666,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -61655,11 +68683,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -61670,11 +68700,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -61685,11 +68717,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -61700,11 +68734,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -61742,11 +68778,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61757,11 +68795,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61772,11 +68812,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61787,11 +68829,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61802,11 +68846,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61817,11 +68863,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61832,11 +68880,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61847,11 +68897,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61862,11 +68914,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61877,11 +68931,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61892,11 +68948,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61907,11 +68965,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61922,11 +68982,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61937,11 +68999,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -61963,11 +69027,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -61978,11 +69044,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -61993,11 +69061,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62008,11 +69078,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62023,11 +69095,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62038,11 +69112,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62053,11 +69129,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62068,11 +69146,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62083,11 +69163,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62098,11 +69180,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62113,11 +69197,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62128,11 +69214,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62143,11 +69231,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62158,11 +69248,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62173,11 +69265,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62188,11 +69282,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62203,11 +69299,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62218,11 +69316,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62233,11 +69333,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62248,11 +69350,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62263,11 +69367,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62278,11 +69384,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62293,11 +69401,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62308,11 +69418,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62323,11 +69435,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62338,11 +69452,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62353,11 +69469,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62368,11 +69486,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62442,11 +69562,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62457,11 +69579,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62472,11 +69596,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62487,11 +69613,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62502,11 +69630,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62517,11 +69647,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62532,11 +69664,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62547,11 +69681,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62562,11 +69698,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62577,11 +69715,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62592,11 +69732,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62607,11 +69749,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62622,11 +69766,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62637,11 +69783,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62652,11 +69800,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62667,11 +69817,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62682,11 +69834,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62697,11 +69851,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62712,11 +69868,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62727,11 +69885,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62742,11 +69902,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62757,11 +69919,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62772,11 +69936,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62787,11 +69953,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62802,11 +69970,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62817,11 +69987,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62832,11 +70004,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62847,11 +70021,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -62921,11 +70097,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -62936,11 +70114,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -62951,11 +70131,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -62966,11 +70148,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -62981,11 +70165,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -62996,11 +70182,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63011,11 +70199,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63026,11 +70216,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63041,11 +70233,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63056,11 +70250,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63071,11 +70267,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63086,11 +70284,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63101,11 +70301,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63116,11 +70318,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63131,11 +70335,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63146,11 +70352,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63161,11 +70369,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -63176,11 +70386,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -63191,11 +70403,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -63206,11 +70420,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63221,11 +70437,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63236,11 +70454,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63251,11 +70471,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63266,11 +70488,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63281,11 +70505,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63296,11 +70522,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63311,11 +70539,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63326,11 +70556,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -63341,11 +70573,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63356,11 +70590,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63371,11 +70607,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63386,11 +70624,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63401,11 +70641,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63416,11 +70658,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63431,11 +70675,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -63497,11 +70743,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63512,11 +70760,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63527,11 +70777,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63542,11 +70794,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63557,11 +70811,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63572,11 +70828,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -63587,11 +70845,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63602,11 +70862,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63617,11 +70879,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63632,11 +70896,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63647,11 +70913,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63662,11 +70930,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63677,11 +70947,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63703,11 +70975,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -63718,11 +70992,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -63733,11 +71009,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -63748,11 +71026,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -63763,11 +71043,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -63784,11 +71066,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63799,11 +71083,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63814,11 +71100,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63829,11 +71117,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63844,11 +71134,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63859,11 +71151,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63874,11 +71168,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -63889,11 +71185,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63904,11 +71202,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63919,11 +71219,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63934,11 +71236,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63949,11 +71253,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63964,11 +71270,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -63979,11 +71287,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64005,31 +71315,38 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64040,31 +71357,38 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64075,31 +71399,38 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64116,11 +71447,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64131,11 +71464,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64146,11 +71481,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64167,31 +71504,38 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "char", @@ -64202,31 +71546,38 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "char", @@ -64237,31 +71588,38 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "char", @@ -64278,7 +71636,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -64295,11 +71654,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64310,11 +71671,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64325,11 +71688,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64340,11 +71705,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64355,11 +71722,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64370,11 +71739,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64385,11 +71756,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -64400,11 +71773,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64415,11 +71790,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64430,11 +71807,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64445,11 +71824,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64460,11 +71841,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64475,11 +71858,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64490,11 +71875,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -64516,7 +71903,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64527,7 +71915,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64538,7 +71927,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64549,7 +71939,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64560,7 +71951,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64571,7 +71963,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64582,7 +71975,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64593,7 +71987,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64604,7 +71999,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64615,7 +72011,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64626,7 +72023,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64637,7 +72035,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64648,7 +72047,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64659,7 +72059,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -64676,11 +72077,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64691,11 +72094,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64706,11 +72111,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64721,11 +72128,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64736,11 +72145,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64751,11 +72162,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64766,11 +72179,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64781,11 +72196,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64796,11 +72213,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64811,11 +72230,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64826,11 +72247,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64841,11 +72264,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64856,11 +72281,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -64877,11 +72304,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -64892,11 +72321,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -64907,11 +72338,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -64922,11 +72355,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -64937,11 +72372,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -64952,11 +72389,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -64967,11 +72406,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -64982,11 +72423,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -64997,11 +72440,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -65012,11 +72457,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -65027,11 +72474,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -65042,11 +72491,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -65057,11 +72508,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -65072,11 +72525,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -65087,11 +72542,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -65102,11 +72559,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -65117,11 +72576,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -65132,11 +72593,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -65147,11 +72610,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -65162,11 +72627,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -65177,11 +72644,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -65192,11 +72661,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -65207,11 +72678,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -65222,11 +72695,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -65237,11 +72712,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -65252,11 +72729,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -65267,11 +72746,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -65282,11 +72763,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -65297,11 +72780,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -65312,11 +72797,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -65327,11 +72814,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -65342,11 +72831,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -65357,11 +72848,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -65372,11 +72865,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -65387,11 +72882,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -65402,11 +72899,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -65417,11 +72916,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -65432,11 +72933,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -65447,11 +72950,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -65462,11 +72967,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -65477,11 +72984,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -65492,11 +73001,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -65574,11 +73085,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65589,11 +73102,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65604,11 +73119,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65619,11 +73136,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65634,11 +73153,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65649,11 +73170,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65664,11 +73187,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65679,11 +73204,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65694,11 +73221,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65709,11 +73238,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65724,11 +73255,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65739,11 +73272,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65754,11 +73289,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65769,11 +73306,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -65795,11 +73334,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65810,11 +73351,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65825,11 +73368,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65840,11 +73385,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65855,11 +73402,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65870,11 +73419,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65885,11 +73436,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65900,11 +73453,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65915,11 +73470,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65930,11 +73487,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65945,11 +73504,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65960,11 +73521,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65975,11 +73538,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -65990,11 +73555,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66005,11 +73572,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66020,11 +73589,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66035,11 +73606,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66050,11 +73623,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66124,11 +73699,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66139,11 +73716,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66154,11 +73733,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66169,11 +73750,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66184,11 +73767,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66199,11 +73784,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66214,11 +73801,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -66229,11 +73818,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66244,11 +73835,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66259,11 +73852,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66274,11 +73869,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66289,11 +73886,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66304,11 +73903,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66319,11 +73920,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -66345,11 +73948,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -66360,11 +73965,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -66375,11 +73982,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -66390,11 +73999,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -66405,11 +74016,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -66420,11 +74033,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -66435,11 +74050,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -66450,11 +74067,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -66465,11 +74084,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -66480,11 +74101,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -66495,11 +74118,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -66510,11 +74135,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -66525,11 +74152,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -66540,11 +74169,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -66555,11 +74186,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -66570,11 +74203,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -66585,11 +74220,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -66600,11 +74237,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -66615,11 +74254,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -66630,11 +74271,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -66645,11 +74288,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -66660,11 +74305,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -66675,11 +74322,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -66690,11 +74339,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -66705,11 +74356,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -66720,11 +74373,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -66735,11 +74390,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -66750,11 +74407,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -66765,11 +74424,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -66780,11 +74441,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -66795,11 +74458,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -66810,11 +74475,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -66825,11 +74492,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -66840,11 +74509,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -66855,11 +74526,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -66870,11 +74543,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -66885,11 +74560,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -66900,11 +74577,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -66915,11 +74594,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -66930,11 +74611,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -66945,11 +74628,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -66960,11 +74645,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -67082,11 +74769,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67097,11 +74786,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67112,11 +74803,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67127,11 +74820,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67142,11 +74837,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67157,11 +74854,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67172,11 +74871,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67187,11 +74888,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67202,11 +74905,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67217,11 +74922,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67232,11 +74939,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67247,11 +74956,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67262,11 +74973,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67277,11 +74990,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -67303,11 +75018,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67318,11 +75035,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67333,11 +75052,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67348,11 +75069,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67363,11 +75086,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67378,11 +75103,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67393,11 +75120,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67408,11 +75137,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67423,11 +75154,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67438,11 +75171,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67453,11 +75188,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67468,11 +75205,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67483,11 +75222,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67498,11 +75239,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67524,11 +75267,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67539,11 +75284,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67554,11 +75301,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67569,11 +75318,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67584,11 +75335,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67599,11 +75352,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67614,11 +75369,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67629,11 +75386,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67644,11 +75403,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67659,11 +75420,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67674,11 +75437,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67689,11 +75454,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67704,11 +75471,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67719,11 +75488,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67734,11 +75505,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67749,11 +75522,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67764,11 +75539,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67779,11 +75556,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67853,11 +75632,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67868,11 +75649,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67883,11 +75666,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67898,11 +75683,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67913,11 +75700,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67928,11 +75717,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67943,11 +75734,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67958,11 +75751,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67973,11 +75768,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -67988,11 +75785,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68003,11 +75802,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68018,11 +75819,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68033,11 +75836,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68048,11 +75853,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68063,11 +75870,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68078,11 +75887,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68093,11 +75904,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68108,11 +75921,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68182,11 +75997,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68197,11 +76014,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68212,11 +76031,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68227,11 +76048,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68242,11 +76065,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68257,11 +76082,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68272,11 +76099,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68287,11 +76116,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68302,11 +76133,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68317,11 +76150,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68332,11 +76167,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68347,11 +76184,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68362,11 +76201,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68377,11 +76218,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68392,11 +76235,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68407,11 +76252,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68422,11 +76269,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68437,11 +76286,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -68511,7 +76362,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -68528,11 +76380,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -68543,11 +76397,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -68558,11 +76414,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -68573,11 +76431,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -68588,11 +76448,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -68603,11 +76465,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpointset", @@ -68618,11 +76482,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -68633,11 +76499,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -68648,11 +76516,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatchset", @@ -68663,11 +76533,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -68678,11 +76550,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -68693,11 +76567,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -68708,11 +76584,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -68723,11 +76601,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -68738,11 +76618,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -68753,11 +76635,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -68768,11 +76652,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -68783,11 +76669,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -68798,11 +76686,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -68813,11 +76703,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -68828,11 +76720,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3indexset", @@ -68843,11 +76737,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -68858,11 +76754,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -68873,11 +76771,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -68888,11 +76788,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -68903,11 +76805,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -68918,11 +76822,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -68933,11 +76839,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -68948,11 +76856,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -68963,11 +76873,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -68978,11 +76890,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -68993,11 +76907,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -69008,11 +76924,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -69023,11 +76941,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -69038,11 +76958,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -69053,11 +76975,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -69068,11 +76992,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -69083,11 +77009,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -69098,11 +77026,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -69113,11 +77043,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -69128,11 +77060,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -69143,11 +77077,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npointset", @@ -69305,11 +77241,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69320,11 +77258,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69335,11 +77275,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69350,11 +77292,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69365,11 +77309,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69380,11 +77326,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69395,11 +77343,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69410,11 +77360,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69425,11 +77377,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69440,11 +77394,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69455,11 +77411,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69470,11 +77428,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69485,11 +77445,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69500,11 +77462,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69515,11 +77479,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69530,11 +77496,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69545,11 +77513,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69560,11 +77530,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69575,11 +77547,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69590,11 +77564,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69605,11 +77581,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69620,11 +77598,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69635,11 +77615,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69650,11 +77632,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69665,11 +77649,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69680,11 +77666,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69695,11 +77683,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69710,11 +77700,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -69731,11 +77723,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -69746,11 +77740,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -69761,11 +77757,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -69776,11 +77774,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -69791,11 +77791,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -69806,11 +77808,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -69821,11 +77825,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -69836,11 +77842,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -69851,11 +77859,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -69866,11 +77876,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -69881,11 +77893,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -69896,11 +77910,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -69911,11 +77927,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -69926,11 +77944,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -69941,11 +77961,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -69956,11 +77978,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -70062,15 +78086,18 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -70081,15 +78108,18 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -70100,15 +78130,18 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -70119,15 +78152,18 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -70138,15 +78174,18 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -70157,15 +78196,18 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -70176,15 +78218,18 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -70195,15 +78240,18 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -70214,15 +78262,18 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -70233,15 +78284,18 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -70252,15 +78306,18 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -70271,15 +78328,18 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -70290,15 +78350,18 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -70309,15 +78372,18 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "dateset", @@ -70328,15 +78394,18 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -70353,15 +78422,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -70372,15 +78444,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -70391,15 +78466,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -70410,15 +78488,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -70429,15 +78510,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -70448,15 +78532,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -70467,15 +78554,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -70486,15 +78576,18 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -70505,15 +78598,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -70524,15 +78620,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -70543,15 +78642,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -70562,15 +78664,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -70581,15 +78686,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -70600,15 +78708,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -70619,15 +78730,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -70644,15 +78758,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -70663,15 +78780,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -70682,15 +78802,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -70701,15 +78824,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -70720,15 +78846,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -70739,15 +78868,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -70777,11 +78909,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -70792,11 +78926,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -70807,11 +78943,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -70822,11 +78960,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -70837,11 +78977,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -70852,11 +78994,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -70867,11 +79011,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -70882,11 +79028,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -70897,11 +79045,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -70912,11 +79062,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -70927,11 +79079,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -70942,11 +79096,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -70957,11 +79113,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -70972,11 +79130,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -70987,11 +79147,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -71037,11 +79199,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -71052,11 +79216,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -71067,11 +79233,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -71082,11 +79250,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -71097,11 +79267,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -71112,11 +79284,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -71166,11 +79340,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71181,11 +79357,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71196,11 +79374,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71211,11 +79391,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71226,11 +79408,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71241,11 +79425,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71256,11 +79442,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71271,11 +79459,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71286,11 +79476,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71301,11 +79493,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71316,11 +79510,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71331,11 +79527,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71346,11 +79544,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71361,11 +79561,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71376,11 +79578,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71391,11 +79595,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71406,11 +79612,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71421,11 +79629,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71436,11 +79646,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71451,11 +79663,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71466,11 +79680,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71481,11 +79697,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71496,11 +79714,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71511,11 +79731,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71526,11 +79748,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71541,11 +79765,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71556,11 +79782,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71571,11 +79799,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71586,11 +79816,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71601,11 +79833,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71616,11 +79850,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71631,11 +79867,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71646,11 +79884,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -71661,11 +79901,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71676,11 +79918,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71691,11 +79935,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71706,11 +79952,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71721,11 +79969,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -71787,31 +80037,38 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -71822,23 +80079,28 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -71849,27 +80111,33 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -71880,31 +80148,38 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -71915,23 +80190,28 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -71942,27 +80222,33 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -71973,31 +80259,38 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72008,23 +80301,28 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -72035,27 +80333,33 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72066,31 +80370,38 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72101,23 +80412,28 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -72128,27 +80444,33 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72159,31 +80481,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72194,23 +80523,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -72221,27 +80555,33 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72252,31 +80592,38 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72287,23 +80634,28 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "stbox[]", @@ -72314,27 +80666,33 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -72356,31 +80714,38 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72391,23 +80756,28 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72418,27 +80788,33 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72449,31 +80825,38 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72484,23 +80867,28 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72511,27 +80899,33 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72542,31 +80936,38 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72577,23 +80978,28 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72604,27 +81010,33 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72635,31 +81047,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72670,23 +81089,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72697,27 +81121,33 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72728,31 +81158,38 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72763,23 +81200,28 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72790,27 +81232,33 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72827,27 +81275,33 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72858,19 +81312,23 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72881,23 +81339,28 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -72908,27 +81371,33 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72939,19 +81408,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -72962,23 +81435,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -73000,39 +81478,48 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73043,31 +81530,38 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73078,35 +81572,43 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73117,39 +81619,48 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73160,31 +81671,38 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73195,35 +81713,43 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73234,39 +81760,48 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73277,31 +81812,38 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73312,35 +81854,43 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73351,39 +81901,48 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73394,31 +81953,38 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73429,35 +81995,43 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73468,39 +82042,48 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73511,31 +82094,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73546,35 +82136,43 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73585,39 +82183,48 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73628,31 +82235,38 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "stbox[]", @@ -73663,35 +82277,43 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -73713,39 +82335,48 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -73756,31 +82387,38 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -73791,35 +82429,43 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -73830,39 +82476,48 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -73873,31 +82528,38 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -73908,35 +82570,43 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -73947,39 +82617,48 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -73990,31 +82669,38 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -74025,35 +82711,43 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74064,39 +82758,48 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74107,31 +82810,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -74142,35 +82852,43 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74181,39 +82899,48 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74224,31 +82951,38 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -74259,35 +82993,43 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74304,35 +83046,43 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74343,27 +83093,33 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -74374,31 +83130,38 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -74409,35 +83172,43 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -74448,27 +83219,33 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" } ], "returns": "SETOF", @@ -74479,31 +83256,38 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'Point(0 0 0)'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -74525,19 +83309,23 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "false" } ], "returns": "intspan", @@ -74548,19 +83336,23 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "false" } ], "returns": "bigintspan", @@ -74571,19 +83363,23 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "false" } ], "returns": "floatspan", @@ -74594,19 +83390,23 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "false" } ], "returns": "datespan", @@ -74617,19 +83417,23 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "false" } ], "returns": "tstzspan", @@ -74640,7 +83444,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -74651,7 +83456,8 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -74662,7 +83468,8 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -74673,7 +83480,8 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -74684,7 +83492,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -74695,7 +83504,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -74706,7 +83516,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -74717,7 +83528,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -74728,7 +83540,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -74739,7 +83552,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -74750,7 +83564,8 @@ "args": [ { "type": "int4range", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -74761,7 +83576,8 @@ "args": [ { "type": "int8range", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -74772,7 +83588,8 @@ "args": [ { "type": "daterange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -74783,7 +83600,8 @@ "args": [ { "type": "tstzrange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -74794,7 +83612,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -74805,7 +83624,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -74816,7 +83636,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -74827,7 +83648,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -74838,7 +83660,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -74892,11 +83715,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -74907,11 +83732,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -74922,11 +83749,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -74937,11 +83766,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -74952,11 +83783,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -74978,11 +83811,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -74993,11 +83828,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75008,11 +83845,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75023,11 +83862,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75038,11 +83879,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75053,11 +83896,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75068,11 +83913,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75083,11 +83930,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75098,11 +83947,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75113,11 +83964,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75128,11 +83981,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75143,11 +83998,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75158,11 +84015,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75173,11 +84032,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75188,11 +84049,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75203,11 +84066,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75218,11 +84083,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75233,11 +84100,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75248,11 +84117,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75263,11 +84134,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75278,11 +84151,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75293,11 +84168,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75308,11 +84185,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75323,11 +84202,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75338,11 +84219,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75353,11 +84236,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75368,11 +84253,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75383,11 +84270,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75398,11 +84287,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75413,11 +84304,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75428,11 +84321,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75443,11 +84338,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75458,11 +84355,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75473,11 +84372,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75488,11 +84389,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75503,11 +84406,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75518,11 +84423,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75533,11 +84440,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75548,11 +84457,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75563,11 +84474,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75641,7 +84554,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75658,11 +84572,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -75673,11 +84589,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -75688,11 +84606,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -75703,11 +84623,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -75718,11 +84640,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -75744,11 +84668,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75759,11 +84685,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75774,11 +84702,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75789,11 +84719,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75804,11 +84736,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75819,11 +84753,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75834,11 +84770,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75849,11 +84787,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75864,11 +84804,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75879,11 +84821,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75894,11 +84838,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75909,11 +84855,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75924,11 +84872,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75939,11 +84889,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75954,11 +84906,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75969,11 +84923,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75984,11 +84940,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -75999,11 +84957,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76014,11 +84974,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76029,11 +84991,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76044,11 +85008,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76059,11 +85025,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76074,11 +85042,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76089,11 +85059,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76104,11 +85076,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76119,11 +85093,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76134,11 +85110,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76149,11 +85127,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76164,11 +85144,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76179,11 +85161,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76257,11 +85241,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76272,11 +85258,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76287,11 +85275,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76302,11 +85292,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76317,11 +85309,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76332,11 +85326,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76347,11 +85343,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76362,11 +85360,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76377,11 +85377,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76392,11 +85394,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76407,11 +85411,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76422,11 +85428,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76437,11 +85445,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76452,11 +85462,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76467,11 +85479,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76482,11 +85496,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76497,11 +85513,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76512,11 +85530,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76527,11 +85547,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76542,11 +85564,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76557,11 +85581,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76572,11 +85598,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76587,11 +85615,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76602,11 +85632,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76617,11 +85649,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76632,11 +85666,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76647,11 +85683,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76662,11 +85700,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76677,11 +85717,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76692,11 +85734,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -76770,11 +85814,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -76785,11 +85831,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -76800,11 +85848,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -76815,11 +85865,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -76830,11 +85882,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -76845,11 +85899,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -76860,11 +85916,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -76875,11 +85933,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -76890,11 +85950,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -76905,11 +85967,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -76920,11 +85984,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -76935,11 +86001,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -76950,11 +86018,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -76965,11 +86035,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -76980,11 +86052,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -76995,11 +86069,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77010,11 +86086,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77025,11 +86103,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77040,11 +86120,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77055,11 +86137,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77070,11 +86154,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77085,11 +86171,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77100,11 +86188,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77115,11 +86205,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -77130,11 +86222,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -77145,11 +86239,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -77160,11 +86256,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77175,11 +86273,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77190,11 +86290,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77205,11 +86307,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77220,11 +86324,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77235,11 +86341,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -77250,11 +86358,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77265,11 +86375,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77280,11 +86392,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -77414,11 +86528,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77429,11 +86545,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77444,11 +86562,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77459,11 +86579,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77474,11 +86596,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77500,11 +86624,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -77515,11 +86641,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -77530,11 +86658,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -77545,11 +86675,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -77560,11 +86692,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -77581,11 +86715,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -77596,11 +86732,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -77611,11 +86749,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -77626,11 +86766,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -77641,11 +86783,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -77656,11 +86800,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -77671,11 +86817,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -77686,11 +86834,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -77701,11 +86851,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -77716,11 +86868,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -77737,11 +86891,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77752,11 +86908,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77767,11 +86925,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77782,11 +86942,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77797,11 +86959,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -77823,23 +86987,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77850,23 +87019,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77877,23 +87051,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77904,23 +87083,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77931,23 +87115,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77958,23 +87147,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -77985,23 +87179,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78012,23 +87211,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78039,23 +87243,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78066,23 +87275,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78093,23 +87307,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78120,23 +87339,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78147,23 +87371,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78174,23 +87403,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78201,23 +87435,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -78234,23 +87473,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78261,23 +87505,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78288,23 +87537,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78315,23 +87569,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78342,23 +87601,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78369,23 +87633,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78396,23 +87665,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78423,23 +87697,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78456,7 +87735,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78473,15 +87753,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78498,11 +87781,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78519,15 +87804,18 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78538,15 +87826,18 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78557,15 +87848,18 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78576,15 +87870,18 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78595,15 +87892,18 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78620,11 +87920,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -78641,11 +87943,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -78656,11 +87960,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -78671,11 +87977,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -78686,11 +87994,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -78701,11 +88011,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -78727,7 +88039,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -78738,7 +88051,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -78749,7 +88063,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -78760,7 +88075,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -78771,7 +88087,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -78793,11 +88110,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -78808,11 +88127,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -78823,11 +88144,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -78838,11 +88161,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -78853,11 +88178,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -78874,11 +88201,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -78889,11 +88218,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -78904,11 +88235,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -78919,11 +88252,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -78934,11 +88269,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -78949,11 +88286,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -78964,11 +88303,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -78979,11 +88320,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -78994,11 +88337,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -79009,11 +88354,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -79024,11 +88371,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -79039,11 +88388,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -79054,11 +88405,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -79069,11 +88422,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -79084,11 +88439,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -79099,11 +88456,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -79114,11 +88473,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -79129,11 +88490,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -79144,11 +88507,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -79159,11 +88524,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -79174,11 +88541,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -79189,11 +88558,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -79204,11 +88575,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -79219,11 +88592,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -79234,11 +88609,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -79249,11 +88626,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -79264,11 +88643,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -79279,11 +88660,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -79294,11 +88677,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -79309,11 +88694,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -79324,11 +88711,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -79339,11 +88728,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -79354,11 +88745,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -79369,11 +88762,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -79384,11 +88779,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -79399,11 +88796,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -79414,11 +88813,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -79429,11 +88830,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -79444,11 +88847,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -79459,11 +88864,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -79577,23 +88984,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -79610,11 +89022,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -79631,11 +89045,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -79652,11 +89068,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -79673,11 +89091,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79688,11 +89108,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79703,11 +89125,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79718,11 +89142,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79733,11 +89159,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79759,11 +89187,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79774,11 +89204,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79789,11 +89221,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79804,11 +89238,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79819,11 +89255,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79834,11 +89272,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79849,11 +89289,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79864,11 +89306,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79879,11 +89323,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79894,11 +89340,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79909,11 +89357,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79924,11 +89374,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79939,11 +89391,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79954,11 +89408,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79969,11 +89425,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79984,11 +89442,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -79999,11 +89459,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80014,11 +89476,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80029,11 +89493,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80044,11 +89510,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80059,11 +89527,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80074,11 +89544,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80089,11 +89561,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80104,11 +89578,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80119,11 +89595,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80134,11 +89612,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80149,11 +89629,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80164,11 +89646,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80179,11 +89663,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80194,11 +89680,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80209,11 +89697,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80224,11 +89714,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80239,11 +89731,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80254,11 +89748,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80269,11 +89765,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80284,11 +89782,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80299,11 +89799,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80314,11 +89816,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80329,11 +89833,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80344,11 +89850,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80462,11 +89970,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80477,11 +89987,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80492,11 +90004,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80507,11 +90021,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80522,11 +90038,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -80548,11 +90066,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80563,11 +90083,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80578,11 +90100,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80593,11 +90117,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80608,11 +90134,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80623,11 +90151,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80638,11 +90168,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80653,11 +90185,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80668,11 +90202,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80683,11 +90219,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80698,11 +90236,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -80713,11 +90253,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -80728,11 +90270,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -80743,11 +90287,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -80758,11 +90304,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -80773,11 +90321,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -80788,11 +90338,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -80803,11 +90355,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -80818,11 +90372,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -80833,11 +90389,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -80848,11 +90406,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -80863,11 +90423,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -80878,11 +90440,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -80893,11 +90457,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -80908,11 +90474,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -80923,11 +90491,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80938,11 +90508,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80953,11 +90525,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -80968,11 +90542,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80983,11 +90559,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -80998,11 +90576,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -81013,11 +90593,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -81028,11 +90610,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -81043,11 +90627,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -81058,11 +90644,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -81073,11 +90661,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -81088,11 +90678,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -81103,11 +90695,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -81118,11 +90712,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -81133,11 +90729,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -81207,11 +90805,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81222,11 +90822,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81237,11 +90839,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81252,11 +90856,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81267,11 +90873,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81293,11 +90901,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81308,11 +90918,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81323,11 +90935,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81338,11 +90952,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81353,11 +90969,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81368,11 +90986,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81383,11 +91003,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81398,11 +91020,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81413,11 +91037,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81428,11 +91054,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81443,11 +91071,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81458,11 +91088,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81473,11 +91105,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81488,11 +91122,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81503,11 +91139,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81518,11 +91156,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81533,11 +91173,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81548,11 +91190,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81563,11 +91207,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81578,11 +91224,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81616,11 +91264,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81631,11 +91281,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81646,11 +91298,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81661,11 +91315,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81676,11 +91332,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81691,11 +91349,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81706,11 +91366,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81721,11 +91383,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81736,11 +91400,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81751,11 +91417,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81766,11 +91434,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81781,11 +91451,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81796,11 +91468,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81811,11 +91485,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81826,11 +91502,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81841,11 +91519,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81856,11 +91536,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81871,11 +91553,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81886,11 +91570,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81901,11 +91587,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81916,11 +91604,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81931,11 +91621,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81946,11 +91638,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81961,11 +91655,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81976,11 +91672,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -81991,11 +91689,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82006,11 +91706,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82021,11 +91723,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82036,11 +91740,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82051,11 +91757,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82066,11 +91774,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82081,11 +91791,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82096,11 +91808,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82111,11 +91825,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82126,11 +91842,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82141,11 +91859,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82156,11 +91876,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82171,11 +91893,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82186,11 +91910,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82201,11 +91927,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82319,11 +92047,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82334,11 +92064,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82349,11 +92081,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82364,11 +92098,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82379,11 +92115,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82394,11 +92132,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82409,11 +92149,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82424,11 +92166,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82439,11 +92183,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82454,11 +92200,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82469,11 +92217,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82484,11 +92234,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82499,11 +92251,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82514,11 +92268,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82529,11 +92285,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82544,11 +92302,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82559,11 +92319,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82574,11 +92336,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82589,11 +92353,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82604,11 +92370,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82619,11 +92387,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82634,11 +92404,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82649,11 +92421,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82664,11 +92438,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82679,11 +92455,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82694,11 +92472,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82709,11 +92489,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82724,11 +92506,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82739,11 +92523,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82754,11 +92540,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82769,11 +92557,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82784,11 +92574,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82799,11 +92591,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82814,11 +92608,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82829,11 +92625,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82844,11 +92642,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82859,11 +92659,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82874,11 +92676,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82889,11 +92693,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -82904,11 +92710,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83022,11 +92830,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -83043,11 +92853,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -83064,11 +92876,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -83085,11 +92899,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83100,11 +92916,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83115,11 +92933,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83130,11 +92950,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83145,11 +92967,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83160,11 +92984,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83175,11 +93001,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83190,11 +93018,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83205,11 +93035,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83220,11 +93052,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83235,11 +93069,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83250,11 +93086,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83265,11 +93103,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83280,11 +93120,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83295,11 +93137,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83310,11 +93154,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83325,11 +93171,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83340,11 +93188,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83355,11 +93205,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83370,11 +93222,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83385,11 +93239,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83400,11 +93256,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83415,11 +93273,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83430,11 +93290,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83445,11 +93307,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83460,11 +93324,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83475,11 +93341,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83490,11 +93358,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83505,11 +93375,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83520,11 +93392,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83535,11 +93409,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83550,11 +93426,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83565,11 +93443,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83580,11 +93460,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83595,11 +93477,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83610,11 +93494,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83625,11 +93511,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83640,11 +93528,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83655,11 +93545,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83670,11 +93562,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -83788,19 +93682,23 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -83817,11 +93715,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -83838,11 +93738,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -83853,11 +93755,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -83868,11 +93772,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -83883,11 +93789,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -83898,11 +93806,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -83913,11 +93823,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -83928,11 +93840,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -83943,11 +93857,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -83958,11 +93874,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -83973,11 +93891,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -83988,11 +93908,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84003,11 +93925,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84018,11 +93942,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84033,11 +93959,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84048,11 +93976,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84063,11 +93993,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84078,11 +94010,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84093,11 +94027,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84108,11 +94044,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84123,11 +94061,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84138,11 +94078,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84153,11 +94095,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84168,11 +94112,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84183,11 +94129,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84198,11 +94146,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84213,11 +94163,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84228,11 +94180,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84243,11 +94197,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84258,11 +94214,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84273,11 +94231,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84288,11 +94248,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84303,11 +94265,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84318,11 +94282,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84333,11 +94299,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84348,11 +94316,13 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84363,11 +94333,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84378,11 +94350,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84393,11 +94367,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84408,11 +94384,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84423,11 +94401,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84497,7 +94477,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84508,7 +94489,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84519,7 +94501,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84530,7 +94513,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84541,7 +94525,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84552,7 +94537,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84563,7 +94549,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84574,7 +94561,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84585,7 +94573,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84596,7 +94585,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84607,7 +94597,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -84618,7 +94609,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -84629,7 +94621,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -84640,7 +94633,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -84651,7 +94645,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84662,7 +94657,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -84673,7 +94669,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -84684,7 +94681,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -84695,7 +94693,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -84706,7 +94705,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -84736,7 +94736,8 @@ "args": [ { "type": "intspan[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84747,7 +94748,8 @@ "args": [ { "type": "bigintspan[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84758,7 +94760,8 @@ "args": [ { "type": "floatspan[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84769,7 +94772,8 @@ "args": [ { "type": "datespan[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84780,7 +94784,8 @@ "args": [ { "type": "tstzspan[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84791,7 +94796,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84802,7 +94808,8 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84813,7 +94820,8 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84824,7 +94832,8 @@ "args": [ { "type": "date", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84835,7 +94844,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84846,7 +94856,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84857,7 +94868,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84868,7 +94880,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84879,7 +94892,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84890,7 +94904,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84901,7 +94916,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84912,7 +94928,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84923,7 +94940,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspanset", @@ -84934,7 +94952,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84945,7 +94964,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -84956,7 +94976,8 @@ "args": [ { "type": "int4multirange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspanset", @@ -84967,7 +94988,8 @@ "args": [ { "type": "int8multirange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspanset", @@ -84978,7 +95000,8 @@ "args": [ { "type": "datemultirange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespanset", @@ -84989,7 +95012,8 @@ "args": [ { "type": "tstzmultirange", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -85011,11 +95035,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85026,11 +95052,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85041,11 +95069,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85056,11 +95086,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85071,11 +95103,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85097,11 +95131,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85112,11 +95148,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85127,11 +95165,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85142,11 +95182,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85157,11 +95199,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85183,11 +95227,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -85198,11 +95244,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -85213,11 +95261,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -85228,11 +95278,13 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -85243,11 +95295,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -85264,11 +95318,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85279,11 +95335,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85294,11 +95352,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85309,11 +95369,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85324,11 +95386,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85350,7 +95414,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85367,11 +95432,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85382,11 +95449,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85397,11 +95466,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85412,11 +95483,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85427,11 +95500,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85453,7 +95528,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85464,7 +95540,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85475,7 +95552,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85486,7 +95564,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85497,7 +95576,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -85519,11 +95599,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -85534,11 +95616,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -85549,11 +95633,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -85564,11 +95650,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -85579,11 +95667,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -85605,11 +95695,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85620,11 +95712,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85635,11 +95729,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85650,11 +95746,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85665,11 +95763,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85691,11 +95791,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85706,11 +95808,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85721,11 +95825,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85736,11 +95842,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85751,11 +95859,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85777,11 +95887,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85792,11 +95904,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85807,11 +95921,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85822,11 +95938,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85837,11 +95955,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -85863,7 +95983,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85880,11 +96001,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85895,11 +96018,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85910,11 +96035,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85925,11 +96052,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85940,11 +96069,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -85961,7 +96092,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -85978,23 +96110,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "set_eq(geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -86011,7 +96148,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -86022,7 +96160,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -86033,7 +96172,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -86044,7 +96184,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -86055,7 +96196,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -86089,11 +96231,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86104,11 +96248,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86119,11 +96265,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86134,11 +96282,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86149,11 +96299,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86164,11 +96316,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86179,11 +96333,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86194,11 +96350,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86209,11 +96367,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86224,11 +96384,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86239,11 +96401,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -86254,11 +96418,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -86269,11 +96435,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -86284,11 +96452,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -86299,11 +96469,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86314,11 +96486,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -86329,11 +96503,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -86344,11 +96520,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -86359,11 +96537,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -86374,11 +96554,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86404,11 +96586,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86419,11 +96603,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86434,11 +96620,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86449,11 +96637,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86464,11 +96654,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86479,11 +96671,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86494,11 +96688,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86509,11 +96705,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86524,11 +96722,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86550,11 +96750,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -86565,11 +96767,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -86580,11 +96784,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -86606,11 +96812,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86621,11 +96829,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86636,11 +96846,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86651,11 +96863,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86666,11 +96880,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86681,11 +96897,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86696,11 +96914,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86711,11 +96931,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86726,11 +96948,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86741,11 +96965,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86756,11 +96982,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -86771,11 +96999,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -86786,11 +97016,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -86801,11 +97033,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -86816,11 +97050,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86831,11 +97067,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan[]", @@ -86846,11 +97084,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan[]", @@ -86861,11 +97101,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan[]", @@ -86876,11 +97118,13 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan[]", @@ -86891,11 +97135,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan[]", @@ -86917,11 +97163,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86932,11 +97180,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86947,11 +97197,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86962,11 +97214,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86977,11 +97231,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -86992,11 +97248,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -87007,11 +97265,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -87022,11 +97282,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -87037,11 +97299,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -87063,11 +97327,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -87078,11 +97344,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -87093,11 +97361,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -87119,7 +97389,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -87130,7 +97401,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -87147,7 +97419,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -87169,7 +97442,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -87180,7 +97454,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -87191,7 +97466,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -87202,7 +97478,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -87213,7 +97490,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -87224,7 +97502,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -87235,7 +97514,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -87246,7 +97526,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -87257,7 +97538,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -87268,7 +97550,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -87279,7 +97562,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -87290,7 +97574,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -87301,7 +97586,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -87312,7 +97598,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -87323,7 +97610,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -87349,7 +97637,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -87366,7 +97655,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "double", @@ -87388,7 +97678,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -87399,7 +97690,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -87410,7 +97702,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -87421,7 +97714,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -87432,7 +97726,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -87443,7 +97738,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -87454,7 +97750,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -87465,7 +97762,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -87476,7 +97774,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -87487,7 +97786,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -87498,7 +97798,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -87509,7 +97810,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -87520,7 +97822,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -87546,7 +97849,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -87557,7 +97861,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -87568,7 +97873,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -87579,7 +97885,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "datespan", @@ -87590,7 +97897,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -87612,7 +97920,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87623,7 +97932,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87634,7 +97944,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87645,7 +97956,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87656,7 +97968,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87667,7 +97980,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87678,7 +97992,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87689,7 +98004,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87700,7 +98016,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87711,7 +98028,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87722,7 +98040,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87733,7 +98052,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87744,7 +98064,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87755,7 +98076,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87766,7 +98088,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87777,7 +98100,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -87811,7 +98135,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -87822,7 +98147,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -87833,7 +98159,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -87844,7 +98171,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -87855,7 +98183,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -87866,7 +98195,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -87877,7 +98207,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -87888,7 +98219,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -87899,7 +98231,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -87910,7 +98243,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -87921,7 +98255,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -87932,7 +98267,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -87943,7 +98279,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -87954,7 +98291,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -87965,7 +98303,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -87976,7 +98315,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -87987,7 +98327,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -87998,7 +98339,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -88009,7 +98351,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -88020,7 +98363,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -88031,7 +98375,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -88042,7 +98387,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -88053,7 +98399,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -88064,7 +98411,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -88075,7 +98423,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -88086,7 +98435,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -88097,7 +98447,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -88108,7 +98459,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -88119,7 +98471,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -88130,7 +98483,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -88240,7 +98594,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88251,7 +98606,8 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88262,11 +98618,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88277,11 +98635,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88292,7 +98652,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88303,7 +98664,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88314,7 +98676,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88325,7 +98688,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88336,11 +98700,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88351,11 +98717,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88366,7 +98734,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88377,7 +98746,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88388,7 +98758,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88399,7 +98770,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88410,11 +98782,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88425,11 +98799,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88440,11 +98816,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88455,11 +98833,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88470,7 +98850,8 @@ "args": [ { "type": "box2d", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88481,7 +98862,8 @@ "args": [ { "type": "box3d", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88492,7 +98874,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88503,7 +98886,8 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88514,7 +98898,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88525,7 +98910,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88536,7 +98922,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88547,7 +98934,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88558,7 +98946,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88569,7 +98958,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88580,7 +98970,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88591,7 +98982,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88602,7 +98994,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88613,7 +99006,8 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88624,7 +99018,8 @@ "args": [ { "type": "nsegment", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88635,11 +99030,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88650,11 +99047,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88665,7 +99064,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88676,7 +99076,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88766,7 +99167,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88783,7 +99185,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88805,7 +99208,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88816,7 +99220,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -88833,23 +99238,28 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -88866,27 +99276,33 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -88897,27 +99313,33 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -88934,31 +99356,38 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -88975,35 +99404,43 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -89014,35 +99451,43 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "stbox", @@ -89059,11 +99504,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89080,11 +99527,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89106,11 +99555,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89127,11 +99578,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89148,11 +99601,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89169,11 +99624,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89190,11 +99647,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -89216,11 +99675,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89242,11 +99703,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89268,11 +99731,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89294,11 +99759,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -89315,11 +99782,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -89336,11 +99805,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89357,11 +99828,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89383,23 +99856,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -89416,23 +99894,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -89449,15 +99932,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -89474,11 +99960,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -89495,15 +99983,18 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -89520,11 +100011,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -89541,11 +100034,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89567,7 +100062,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -89584,11 +100080,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -89610,7 +100108,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -89627,11 +100126,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -89657,11 +100158,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -89678,11 +100181,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -89699,11 +100204,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -89720,11 +100227,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89746,11 +100255,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89767,11 +100278,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89793,11 +100306,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89819,7 +100334,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -89836,11 +100352,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89857,11 +100375,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89878,11 +100398,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89899,11 +100421,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89920,11 +100444,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89941,11 +100467,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89962,11 +100490,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -89988,11 +100518,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -90009,11 +100541,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -90030,11 +100564,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -90051,11 +100587,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -90072,11 +100610,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -90093,7 +100633,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -90119,11 +100660,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -90140,11 +100683,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -90166,7 +100711,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -90183,11 +100729,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -90204,11 +100752,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -90225,11 +100775,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -90251,7 +100803,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90262,7 +100815,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90273,7 +100827,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90284,7 +100839,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90295,7 +100851,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90306,7 +100863,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90317,7 +100875,8 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90328,7 +100887,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90339,7 +100899,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox[]", @@ -90365,15 +100926,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "trgeometry", @@ -90384,15 +100948,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tcbuffer", @@ -90403,15 +100970,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tpose", @@ -90422,63 +100992,78 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes')\n -- RETURNS tgeography\n -- AS 'MODULE_PATHNAME', 'Temporal_stops'\n -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION stops(tgeometry" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes')\n -- RETURNS tgeometry\n -- AS 'SELECT @extschema@.stops($1" }, { "type": "0.0", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stops(tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes')\n -- RETURNS tgeography\n -- AS 'SELECT @extschema@.stops($1" }, { "type": "0.0", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timeSplit(tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -90489,15 +101074,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tgeompoint", @@ -90508,15 +101096,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tgeogpoint", @@ -90527,11 +101118,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -90542,11 +101135,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -90557,15 +101152,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tfloat", @@ -90576,11 +101174,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -90591,15 +101191,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "'0 minutes'" } ], "returns": "tnpoint", @@ -90616,11 +101219,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90631,11 +101236,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90646,11 +101253,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90661,11 +101270,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90676,11 +101287,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90691,11 +101304,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90706,11 +101321,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90721,11 +101338,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90736,11 +101355,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90751,11 +101372,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90766,11 +101389,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90781,11 +101406,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90796,11 +101423,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90811,11 +101440,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90826,11 +101457,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90841,11 +101474,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90856,11 +101491,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90871,11 +101508,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90921,11 +101560,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90936,11 +101577,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90951,11 +101594,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90966,11 +101611,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90981,11 +101628,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -90996,11 +101645,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91011,11 +101662,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91026,11 +101679,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91041,11 +101696,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91056,11 +101713,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91071,11 +101730,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91086,11 +101747,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91101,11 +101764,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91116,11 +101781,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91131,11 +101798,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91146,11 +101815,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91161,11 +101832,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91211,11 +101884,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91226,11 +101901,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91241,11 +101918,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91256,11 +101935,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91271,11 +101952,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91286,11 +101969,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91301,11 +101986,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91316,11 +102003,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91331,11 +102020,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91346,11 +102037,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91361,11 +102054,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91376,11 +102071,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91391,11 +102088,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91406,11 +102105,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91421,11 +102122,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91436,11 +102139,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91451,11 +102156,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91466,11 +102173,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91481,11 +102190,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91496,11 +102207,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91511,11 +102224,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91526,11 +102241,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91541,11 +102258,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91556,11 +102275,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91610,11 +102331,13 @@ "args": [ { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91625,11 +102348,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91640,11 +102365,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91655,11 +102382,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91670,11 +102399,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91685,11 +102416,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -91700,11 +102433,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -91715,11 +102450,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91730,11 +102467,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -91745,11 +102484,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -91760,11 +102501,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -91775,11 +102518,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -91790,11 +102535,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91805,11 +102552,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91820,11 +102569,13 @@ "args": [ { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91835,11 +102586,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91850,11 +102603,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91865,11 +102620,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91880,11 +102637,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -91974,15 +102733,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -91993,15 +102755,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92012,15 +102777,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92031,15 +102799,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92050,15 +102821,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92069,15 +102843,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92088,15 +102865,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92107,15 +102887,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92126,15 +102909,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92145,15 +102931,18 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92164,15 +102953,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92183,15 +102975,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92202,15 +102997,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92221,15 +103019,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92240,15 +103041,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92259,15 +103063,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92278,15 +103085,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92297,15 +103107,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92316,15 +103129,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92335,15 +103151,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92354,15 +103173,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92373,15 +103195,18 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92419,27 +103244,33 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -92450,27 +103281,33 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "setof", @@ -92492,11 +103329,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92507,11 +103346,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92522,11 +103363,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92537,11 +103380,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92552,11 +103397,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92567,11 +103414,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92582,11 +103431,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92597,11 +103448,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92612,11 +103465,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92627,11 +103482,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92642,11 +103499,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92657,11 +103516,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92672,11 +103533,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92687,11 +103550,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92702,11 +103567,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92717,11 +103584,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92732,11 +103601,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92747,11 +103618,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92762,11 +103635,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92777,11 +103652,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92792,11 +103669,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92807,11 +103686,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92822,11 +103703,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92837,11 +103720,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92891,11 +103776,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92906,11 +103793,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92921,11 +103810,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92936,11 +103827,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92951,11 +103844,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92966,11 +103861,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92981,11 +103878,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -92996,11 +103895,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93011,11 +103912,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93026,11 +103929,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93041,11 +103946,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93056,11 +103963,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93071,11 +103980,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93086,11 +103997,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93101,11 +104014,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93116,11 +104031,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93131,11 +104048,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93146,11 +104065,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93161,11 +104082,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93223,11 +104146,13 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93244,7 +104169,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -93261,11 +104187,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93282,7 +104210,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -93299,11 +104228,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93314,11 +104245,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93329,11 +104262,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93350,7 +104285,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93361,11 +104297,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93376,11 +104314,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93391,11 +104331,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93406,11 +104348,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93421,11 +104365,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93436,7 +104382,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93447,7 +104394,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93473,7 +104421,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93490,7 +104439,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93507,7 +104457,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93524,7 +104475,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93541,19 +104493,23 @@ "args": [ { "type": "tbigint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tbigint", @@ -93564,11 +104520,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tbigint", @@ -93585,7 +104543,8 @@ "args": [ { "type": "tbigint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93596,7 +104555,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93613,15 +104573,18 @@ "args": [ { "type": "tbigint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tbigint", @@ -93638,7 +104601,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93655,23 +104619,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -93688,15 +104657,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93713,15 +104685,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93738,7 +104713,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -93755,11 +104731,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93776,11 +104754,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93797,11 +104777,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93818,11 +104800,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93839,11 +104823,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93860,11 +104846,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93881,15 +104869,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93906,15 +104897,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93931,15 +104925,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -93956,11 +104953,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93971,11 +104970,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -93986,11 +104987,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94001,11 +105004,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94016,11 +105021,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94037,7 +105044,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94054,7 +105062,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94071,7 +105080,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94088,7 +105098,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94105,19 +105116,23 @@ "args": [ { "type": "tbool[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tbool", @@ -94128,11 +105143,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tbool", @@ -94149,7 +105166,8 @@ "args": [ { "type": "tbool[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94160,7 +105178,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94177,11 +105196,13 @@ "args": [ { "type": "tbool[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tbool", @@ -94198,11 +105219,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94213,11 +105236,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94228,11 +105253,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94249,7 +105276,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -94266,23 +105294,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -94299,15 +105332,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94324,7 +105360,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94341,11 +105378,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94356,11 +105395,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94371,11 +105412,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94392,15 +105435,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94417,7 +105463,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -94434,11 +105481,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -94455,11 +105504,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -94476,11 +105527,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -94497,11 +105550,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -94518,7 +105573,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94529,7 +105585,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94540,7 +105597,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94551,11 +105609,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94566,11 +105626,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94581,11 +105643,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94596,11 +105660,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94611,11 +105677,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94626,11 +105694,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94641,11 +105711,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94656,11 +105728,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94671,11 +105745,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94686,11 +105762,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94701,11 +105779,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94716,11 +105796,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94731,7 +105813,8 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94742,7 +105825,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94753,7 +105837,8 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94764,7 +105849,8 @@ "args": [ { "type": "numeric", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94775,7 +105861,8 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94786,7 +105873,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94797,7 +105885,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94808,7 +105897,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94819,7 +105909,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94830,7 +105921,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94841,7 +105933,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94852,7 +105945,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94863,7 +105957,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94874,7 +105969,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94885,7 +105981,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94896,7 +105993,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -94907,7 +106005,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95013,7 +106112,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95030,7 +106130,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95052,11 +106153,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95078,11 +106181,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95104,11 +106209,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95130,11 +106237,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -95156,11 +106265,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95182,11 +106293,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95208,11 +106321,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95234,11 +106349,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95255,11 +106372,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95276,11 +106395,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95302,23 +106423,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -95335,23 +106461,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -95368,15 +106499,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -95393,11 +106527,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -95414,15 +106550,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -95439,11 +106578,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -95460,11 +106601,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95486,7 +106629,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -95508,11 +106652,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -95534,7 +106680,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95556,11 +106703,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95577,11 +106726,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95598,11 +106749,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95619,11 +106772,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95640,11 +106795,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95666,11 +106823,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95692,11 +106851,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95718,11 +106879,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95744,7 +106907,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -95766,11 +106930,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95792,11 +106958,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95818,11 +106986,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95844,11 +107014,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95870,11 +107042,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -95896,11 +107070,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95917,11 +107093,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95938,11 +107116,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -95959,7 +107139,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -95981,11 +107162,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -96007,11 +107190,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -96033,7 +107218,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -96055,11 +107241,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -96076,11 +107264,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -96097,11 +107287,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -96118,7 +107310,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -96129,7 +107322,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -96140,7 +107334,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox[]", @@ -96162,11 +107357,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96177,11 +107374,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96192,11 +107391,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96207,15 +107408,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tcbuffer", @@ -96226,15 +107430,18 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tcbuffer", @@ -96245,11 +107452,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96260,7 +107469,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96271,7 +107481,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96293,7 +107504,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96310,7 +107522,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96327,7 +107540,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96344,7 +107558,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96361,7 +107576,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96378,7 +107594,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96395,7 +107612,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96412,19 +107630,23 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tcbuffer", @@ -96435,11 +107657,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tcbuffer", @@ -96456,7 +107680,8 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96467,11 +107692,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tcbuffer", @@ -96488,19 +107715,23 @@ "args": [ { "type": "tcbuffer[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tcbuffer", @@ -96517,23 +107748,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -96550,15 +107786,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96575,15 +107814,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96600,7 +107842,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -96617,7 +107860,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -96634,11 +107878,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96655,7 +107901,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -96672,11 +107919,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96687,11 +107936,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96708,11 +107959,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96729,11 +107982,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96744,11 +107999,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96759,11 +108016,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96774,11 +108033,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96789,11 +108050,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96804,11 +108067,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96819,11 +108084,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96834,11 +108101,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96849,11 +108118,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96864,11 +108135,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96879,11 +108152,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96894,11 +108169,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96909,11 +108186,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96924,11 +108203,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96939,11 +108220,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96954,11 +108237,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96969,11 +108254,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96984,11 +108271,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -96999,11 +108288,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -97020,11 +108311,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -97041,7 +108334,8 @@ "args": [ { "type": "azimuth(tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97058,11 +108352,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97073,11 +108369,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97088,11 +108386,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97103,11 +108403,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97118,11 +108420,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97133,11 +108437,13 @@ "args": [ { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97148,11 +108454,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97163,11 +108471,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97178,11 +108488,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97193,11 +108505,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97208,11 +108522,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97223,11 +108539,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97238,11 +108556,13 @@ "args": [ { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97253,11 +108573,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97268,11 +108590,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97283,11 +108607,13 @@ "args": [ { "type": "geography(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97298,11 +108624,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97313,11 +108641,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97328,11 +108658,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97343,11 +108675,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97358,11 +108692,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97373,11 +108709,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97388,11 +108726,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97403,11 +108743,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -97424,7 +108766,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97435,7 +108778,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97446,7 +108790,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97457,7 +108802,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97468,7 +108814,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97479,7 +108826,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97490,7 +108838,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97501,7 +108850,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97512,7 +108862,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97523,7 +108874,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97534,7 +108886,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97545,7 +108898,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97567,7 +108921,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97578,7 +108933,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97589,7 +108945,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97600,7 +108957,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97611,7 +108969,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97622,7 +108981,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97633,7 +108993,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97644,7 +109005,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97655,7 +109017,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97666,7 +109029,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97677,7 +109041,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97688,7 +109053,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97699,7 +109065,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97710,7 +109077,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -97732,11 +109100,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97747,11 +109117,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97762,11 +109134,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97777,11 +109151,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97792,11 +109168,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97807,11 +109185,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97822,11 +109202,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97837,11 +109219,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97852,11 +109236,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97867,11 +109253,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97882,11 +109270,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97897,11 +109287,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97912,11 +109304,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97927,11 +109321,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97942,11 +109338,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97957,11 +109355,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97972,11 +109372,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -97987,11 +109389,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98002,11 +109406,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98017,11 +109423,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98032,11 +109440,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98047,11 +109457,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98062,11 +109474,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98077,11 +109491,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98092,11 +109508,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98107,11 +109525,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98122,11 +109542,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98156,11 +109578,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98171,11 +109595,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98186,11 +109612,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98201,11 +109629,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98216,11 +109646,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98231,11 +109663,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98246,11 +109680,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98261,11 +109697,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98276,11 +109714,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98291,11 +109731,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98306,11 +109748,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98321,11 +109765,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98336,11 +109782,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98351,11 +109799,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98366,11 +109816,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98381,11 +109833,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98396,11 +109850,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98411,11 +109867,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98426,11 +109884,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98441,11 +109901,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98456,11 +109918,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98471,11 +109935,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98486,11 +109952,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98501,11 +109969,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98516,11 +109986,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98531,11 +110003,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98546,11 +110020,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98561,11 +110037,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98576,11 +110054,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98591,11 +110071,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98606,11 +110088,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98621,11 +110105,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98636,11 +110122,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98651,11 +110139,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98666,11 +110156,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98681,11 +110173,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98696,11 +110190,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98711,11 +110207,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98726,11 +110224,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98741,11 +110241,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98756,11 +110258,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98771,11 +110275,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98786,11 +110292,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98801,11 +110309,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98816,11 +110326,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98831,11 +110343,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98846,11 +110360,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98861,11 +110377,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98876,11 +110394,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98891,11 +110411,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98906,11 +110428,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98921,11 +110445,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98936,11 +110462,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98951,11 +110479,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98966,11 +110496,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98981,11 +110513,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -98996,11 +110530,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99011,11 +110547,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99026,11 +110564,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99041,11 +110581,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99056,11 +110598,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99071,11 +110615,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99086,11 +110632,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99101,11 +110649,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99116,11 +110666,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99131,11 +110683,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99146,11 +110700,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99161,11 +110717,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99176,11 +110734,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99191,11 +110751,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99206,11 +110768,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99221,11 +110785,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99236,11 +110802,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99251,11 +110819,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99266,11 +110836,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99281,11 +110853,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99296,11 +110870,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99311,11 +110887,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99326,11 +110904,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99341,11 +110921,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99356,11 +110938,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99371,11 +110955,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99392,11 +110978,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99407,11 +110995,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99422,11 +111012,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99437,11 +111029,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99452,11 +111046,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99467,11 +111063,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99482,11 +111080,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99497,11 +111097,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99512,11 +111114,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99527,11 +111131,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99542,11 +111148,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99557,11 +111165,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99572,11 +111182,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99587,11 +111199,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99602,11 +111216,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99617,11 +111233,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99632,11 +111250,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99647,11 +111267,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99662,11 +111284,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99677,11 +111301,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99692,11 +111318,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99707,11 +111335,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99722,11 +111352,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99737,11 +111369,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99752,11 +111386,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99767,11 +111403,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99782,11 +111420,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99797,11 +111437,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99812,11 +111454,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99827,11 +111471,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99842,11 +111488,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99857,11 +111505,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99872,11 +111522,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99887,11 +111539,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99902,11 +111556,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99917,11 +111573,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99932,11 +111590,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99947,11 +111607,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99962,11 +111624,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99977,11 +111641,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -99992,11 +111658,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100007,11 +111675,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100022,11 +111692,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100037,11 +111709,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100052,11 +111726,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100067,11 +111743,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100082,11 +111760,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100097,11 +111777,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100112,11 +111794,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100127,11 +111811,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100142,11 +111828,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100157,11 +111845,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100172,11 +111862,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100187,11 +111879,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100202,11 +111896,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100217,11 +111913,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100232,11 +111930,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100247,11 +111947,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100262,11 +111964,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100277,11 +111981,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100292,11 +111998,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100307,11 +112015,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100322,11 +112032,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100337,11 +112049,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100352,11 +112066,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100367,11 +112083,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100382,11 +112100,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100397,11 +112117,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100412,11 +112134,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100427,11 +112151,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100442,11 +112168,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100457,11 +112185,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100472,11 +112202,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100487,11 +112219,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100502,11 +112236,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100517,11 +112253,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100575,7 +112313,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -100592,11 +112331,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -100607,15 +112348,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "trgeometry", @@ -100626,23 +112370,28 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "trgeometry", @@ -100653,11 +112402,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -100668,15 +112419,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tcbuffer", @@ -100687,23 +112441,28 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tcbuffer", @@ -100714,11 +112473,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -100729,19 +112490,23 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tpcpoint", @@ -100752,11 +112517,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -100767,11 +112534,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -100782,15 +112551,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tpose", @@ -100801,23 +112573,28 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tpose", @@ -100828,11 +112605,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -100843,11 +112622,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -100858,15 +112639,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeompoint", @@ -100877,15 +112661,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeogpoint", @@ -100896,23 +112683,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeompoint", @@ -100923,23 +112715,28 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeogpoint", @@ -100950,11 +112747,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -100965,11 +112764,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -100980,15 +112781,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeometry", @@ -100999,15 +112803,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeography", @@ -101018,23 +112825,28 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeometry", @@ -101045,23 +112857,28 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tgeography", @@ -101072,11 +112889,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -101087,11 +112906,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -101102,11 +112923,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -101117,11 +112940,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -101132,11 +112957,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -101147,15 +112974,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -101166,15 +112996,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -101185,15 +113018,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -101204,15 +113040,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -101223,15 +113062,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -101242,19 +113084,23 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -101265,23 +113111,28 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -101292,23 +113143,28 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -101319,23 +113175,28 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -101346,19 +113207,23 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -101369,11 +113234,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -101384,15 +113251,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tnpoint", @@ -101403,23 +113273,28 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tnpoint", @@ -101436,11 +113311,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -101451,11 +113328,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -101466,11 +113345,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -101481,11 +113362,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -101496,11 +113379,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -101511,11 +113396,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -101526,11 +113413,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -101541,11 +113430,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -101556,11 +113447,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -101571,11 +113464,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -101586,11 +113481,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -101601,11 +113498,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -101616,11 +113515,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -101631,11 +113532,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -101646,11 +113549,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -101667,7 +113572,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -101678,7 +113584,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -101689,7 +113596,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -101700,7 +113608,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -101711,7 +113620,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -101722,7 +113632,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -101733,7 +113644,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -101744,7 +113656,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -101755,7 +113668,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -101766,7 +113680,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -101777,7 +113692,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -101788,7 +113704,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -101799,7 +113716,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -101810,7 +113728,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -101821,7 +113740,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -101838,11 +113758,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101853,11 +113775,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101868,11 +113792,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101883,11 +113809,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101898,11 +113826,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101913,11 +113843,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101928,11 +113860,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101943,11 +113877,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101958,11 +113894,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101973,11 +113911,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -101988,11 +113928,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102003,11 +113945,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102018,11 +113962,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102033,11 +113979,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102048,11 +113996,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102063,11 +114013,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102078,11 +114030,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102093,11 +114047,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102127,11 +114083,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102142,11 +114100,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102157,11 +114117,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102172,11 +114134,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102187,11 +114151,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102202,11 +114168,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102217,11 +114185,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102232,11 +114202,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102247,11 +114219,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102262,11 +114236,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102277,11 +114253,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102292,11 +114270,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102307,11 +114287,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102322,11 +114304,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102337,11 +114321,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102352,11 +114338,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102367,11 +114355,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102382,11 +114372,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102397,11 +114389,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102412,11 +114406,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102427,11 +114423,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102442,11 +114440,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102457,11 +114457,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102472,11 +114474,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102487,11 +114491,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102502,11 +114508,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102517,11 +114525,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102532,11 +114542,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102547,11 +114559,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102562,11 +114576,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102577,11 +114593,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102592,11 +114610,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102607,11 +114627,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102622,11 +114644,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102637,11 +114661,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102652,11 +114678,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102667,11 +114695,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102682,11 +114712,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102697,11 +114729,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102712,11 +114746,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102727,11 +114763,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102742,11 +114780,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102757,11 +114797,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102772,11 +114814,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102787,11 +114831,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102802,11 +114848,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102817,11 +114865,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102832,11 +114882,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102847,11 +114899,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102862,11 +114916,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102877,11 +114933,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102892,11 +114950,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102907,11 +114967,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102922,11 +114984,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102937,11 +115001,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102952,11 +115018,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102967,11 +115035,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102982,11 +115052,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -102997,11 +115069,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103012,11 +115086,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103027,11 +115103,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103042,11 +115120,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103057,11 +115137,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103072,11 +115154,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103087,11 +115171,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103102,11 +115188,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103117,11 +115205,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103132,11 +115222,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103147,11 +115239,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103162,11 +115256,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103177,11 +115273,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103192,11 +115290,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103207,11 +115307,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103222,11 +115324,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103237,11 +115341,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103252,11 +115358,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103310,11 +115418,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103325,11 +115435,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103340,11 +115452,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103355,11 +115469,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103370,11 +115486,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103385,11 +115503,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103400,11 +115520,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103415,11 +115537,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103430,11 +115554,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103445,11 +115571,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103460,11 +115588,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103475,11 +115605,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103490,11 +115622,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103505,11 +115639,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103520,11 +115656,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103535,11 +115673,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103550,11 +115690,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103565,11 +115707,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103580,11 +115724,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103595,11 +115741,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103610,11 +115758,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103625,11 +115775,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103640,11 +115792,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103655,11 +115809,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103670,11 +115826,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103685,11 +115843,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103700,11 +115860,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -103798,11 +115960,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103813,11 +115977,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103828,11 +115994,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -103843,11 +116011,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -103858,11 +116028,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103873,11 +116045,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103888,11 +116062,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103903,11 +116079,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103918,11 +116096,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103933,11 +116113,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -103948,11 +116130,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -103963,11 +116147,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -103978,11 +116164,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -103993,11 +116181,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -104008,11 +116198,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -104023,11 +116215,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int4", @@ -104044,11 +116238,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104059,11 +116255,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104074,11 +116272,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104089,11 +116289,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104104,11 +116306,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104119,11 +116323,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104134,11 +116340,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104149,11 +116357,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104164,11 +116374,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104179,11 +116391,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104194,11 +116408,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104209,11 +116425,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104224,11 +116442,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104239,11 +116459,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104254,11 +116476,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104269,11 +116493,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104284,11 +116510,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104299,11 +116527,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104314,11 +116544,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104329,11 +116561,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104344,11 +116578,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104359,11 +116595,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104374,11 +116612,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104389,11 +116629,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104404,11 +116646,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104419,11 +116663,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104434,11 +116680,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104449,11 +116697,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104464,11 +116714,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104479,11 +116731,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104494,11 +116748,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104509,11 +116765,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104524,11 +116782,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104539,11 +116799,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104554,11 +116816,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104569,11 +116833,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104584,11 +116850,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104599,11 +116867,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104614,11 +116884,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104629,11 +116901,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104644,11 +116918,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104659,11 +116935,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104674,11 +116952,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104689,11 +116969,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104704,11 +116986,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104719,11 +117003,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104734,11 +117020,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104749,11 +117037,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104764,11 +117054,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104779,11 +117071,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104794,11 +117088,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104809,11 +117105,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104824,11 +117122,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104839,11 +117139,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104854,11 +117156,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104869,11 +117173,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104884,11 +117190,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104899,11 +117207,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104914,11 +117224,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104929,11 +117241,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104944,11 +117258,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104959,11 +117275,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104974,11 +117292,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -104989,11 +117309,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105004,11 +117326,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105019,11 +117343,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105034,11 +117360,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105049,11 +117377,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105064,11 +117394,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105079,11 +117411,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105094,11 +117428,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105109,11 +117445,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105124,11 +117462,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105139,11 +117479,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105154,11 +117496,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105169,11 +117513,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105184,11 +117530,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105199,11 +117547,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105214,11 +117564,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105229,11 +117581,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105244,11 +117598,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105259,11 +117615,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105280,11 +117638,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105295,11 +117655,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105310,11 +117672,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105325,11 +117689,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105340,11 +117706,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105355,11 +117723,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105370,11 +117740,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105385,11 +117757,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105400,11 +117774,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105415,11 +117791,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105430,11 +117808,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105445,11 +117825,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105460,11 +117842,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105475,11 +117859,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105490,11 +117876,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105505,11 +117893,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105520,11 +117910,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105535,11 +117927,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105550,11 +117944,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105565,11 +117961,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105580,11 +117978,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105595,11 +117995,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105610,11 +118012,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105625,11 +118029,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105640,11 +118046,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105655,11 +118063,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105670,11 +118080,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105685,11 +118097,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105700,11 +118114,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105715,11 +118131,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105730,11 +118148,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105745,11 +118165,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105760,11 +118182,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105775,11 +118199,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105790,11 +118216,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105805,11 +118233,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105820,11 +118250,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105835,11 +118267,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105850,11 +118284,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105865,11 +118301,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105880,11 +118318,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105895,11 +118335,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105910,11 +118352,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105925,11 +118369,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105940,11 +118386,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105955,11 +118403,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105970,11 +118420,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -105985,11 +118437,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106000,11 +118454,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106015,11 +118471,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106030,11 +118488,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106045,11 +118505,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106060,11 +118522,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106075,11 +118539,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106090,11 +118556,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106105,11 +118573,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106120,11 +118590,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106135,11 +118607,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106150,11 +118624,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106165,11 +118641,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106180,11 +118658,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106195,11 +118675,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106210,11 +118692,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106225,11 +118709,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106240,11 +118726,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106255,11 +118743,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106270,11 +118760,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106285,11 +118777,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106300,11 +118794,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106315,11 +118811,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106330,11 +118828,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106345,11 +118845,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106360,11 +118862,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106375,11 +118879,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106390,11 +118896,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106405,11 +118913,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106420,11 +118930,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106435,11 +118947,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106450,11 +118964,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106465,11 +118981,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106480,11 +118998,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106495,11 +119015,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106516,11 +119038,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106531,11 +119055,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106546,11 +119072,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106561,11 +119089,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106576,11 +119106,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106591,11 +119123,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106606,11 +119140,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106621,11 +119157,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106636,11 +119174,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106651,11 +119191,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106666,11 +119208,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106681,11 +119225,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106696,11 +119242,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106711,11 +119259,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106726,11 +119276,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106741,11 +119293,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -106762,11 +119316,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -106783,11 +119339,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -106798,11 +119356,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -106819,11 +119379,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106834,11 +119396,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106849,11 +119413,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106864,11 +119430,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106879,11 +119447,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106894,11 +119464,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106909,11 +119481,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106924,11 +119498,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106939,11 +119515,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106954,11 +119532,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106969,11 +119549,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106984,11 +119566,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -106999,11 +119583,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107014,11 +119600,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107029,11 +119617,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107044,11 +119634,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107059,11 +119651,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107074,11 +119668,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107108,11 +119704,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107123,11 +119721,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107138,11 +119738,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107153,11 +119755,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107168,11 +119772,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107183,11 +119789,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107198,11 +119806,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107213,11 +119823,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107228,11 +119840,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107243,11 +119857,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107258,11 +119874,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107273,11 +119891,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107288,11 +119908,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107303,11 +119925,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107318,11 +119942,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107333,11 +119959,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107354,11 +119982,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107369,11 +119999,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107384,11 +120016,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107399,11 +120033,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107414,11 +120050,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107429,11 +120067,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107444,11 +120084,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107459,11 +120101,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107474,11 +120118,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107489,11 +120135,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107504,11 +120152,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107519,11 +120169,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107534,11 +120186,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107549,11 +120203,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107564,11 +120220,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107579,11 +120237,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107600,7 +120260,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107611,7 +120272,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107622,7 +120284,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107633,7 +120296,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107644,7 +120308,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107655,7 +120320,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107666,7 +120332,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107677,7 +120344,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107688,7 +120356,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107699,7 +120368,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107710,7 +120380,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107721,7 +120392,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107732,7 +120404,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107743,7 +120416,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107754,7 +120428,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107765,7 +120440,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -107782,23 +120458,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -107815,11 +120496,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107830,11 +120513,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107845,11 +120530,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107860,11 +120547,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107875,11 +120564,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107890,11 +120581,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107905,11 +120598,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107920,11 +120615,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107935,11 +120632,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107950,11 +120649,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -107965,11 +120666,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107980,11 +120683,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -107995,11 +120700,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108010,11 +120717,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108025,11 +120734,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108040,11 +120751,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108061,11 +120774,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108076,11 +120791,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108091,11 +120808,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108106,11 +120825,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108121,11 +120842,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108136,11 +120859,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108151,11 +120876,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108166,11 +120893,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108181,11 +120910,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108196,11 +120927,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108211,11 +120944,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108226,11 +120961,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108241,11 +120978,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108256,11 +120995,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108271,11 +121012,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108286,11 +121029,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108301,11 +121046,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108316,11 +121063,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108331,11 +121080,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108346,11 +121097,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108361,11 +121114,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108376,11 +121131,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108391,11 +121148,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108406,11 +121165,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108421,11 +121182,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108436,11 +121199,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108451,11 +121216,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108466,11 +121233,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108481,11 +121250,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108496,11 +121267,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108511,11 +121284,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108526,11 +121301,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108541,11 +121318,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108556,11 +121335,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108571,11 +121352,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108586,11 +121369,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108601,11 +121386,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108616,11 +121403,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108631,11 +121420,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108646,11 +121437,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108661,11 +121454,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108676,11 +121471,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108691,11 +121488,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108706,11 +121505,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108721,11 +121522,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108736,11 +121539,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108751,11 +121556,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108766,11 +121573,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108820,11 +121629,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108835,11 +121646,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108850,11 +121663,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108865,11 +121680,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108880,11 +121697,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108895,11 +121714,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108910,11 +121731,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108925,11 +121748,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108940,11 +121765,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108955,11 +121782,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -108970,11 +121799,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -108985,11 +121816,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109000,11 +121833,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109015,11 +121850,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109030,11 +121867,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109045,11 +121884,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109066,11 +121907,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109087,11 +121930,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109102,11 +121947,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109117,11 +121964,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109132,11 +121981,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109147,11 +121998,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109162,11 +122015,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109177,11 +122032,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109192,11 +122049,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109207,11 +122066,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109222,11 +122083,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109237,11 +122100,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109252,11 +122117,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109267,11 +122134,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109282,11 +122151,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109297,11 +122168,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -109318,11 +122191,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109333,11 +122208,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109348,11 +122225,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109363,11 +122242,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109378,11 +122259,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109393,11 +122276,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109408,11 +122293,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109423,11 +122310,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109438,11 +122327,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109453,11 +122344,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109468,11 +122361,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109483,11 +122378,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109498,11 +122395,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109513,11 +122412,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109528,11 +122429,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109543,11 +122446,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -109564,7 +122469,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109575,7 +122481,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109586,7 +122493,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109597,7 +122505,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109608,7 +122517,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109619,7 +122529,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109630,7 +122541,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109641,7 +122553,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109652,7 +122565,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109663,7 +122577,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -109680,11 +122595,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109695,11 +122612,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109710,11 +122629,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109725,11 +122646,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109740,11 +122663,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109755,11 +122680,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109770,11 +122697,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109785,11 +122714,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109800,11 +122731,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109815,11 +122748,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109830,11 +122765,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109845,11 +122782,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109860,11 +122799,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109875,11 +122816,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109890,11 +122833,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109905,11 +122850,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109920,11 +122867,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109935,11 +122884,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109950,11 +122901,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109965,11 +122918,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109980,11 +122935,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -109995,11 +122952,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110010,11 +122969,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110025,11 +122986,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110040,11 +123003,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110055,11 +123020,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110070,11 +123037,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110104,11 +123073,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110119,11 +123090,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110134,11 +123107,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110149,11 +123124,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110164,11 +123141,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110179,11 +123158,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110194,11 +123175,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110209,11 +123192,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110224,11 +123209,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110239,11 +123226,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110254,11 +123243,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110269,11 +123260,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110284,11 +123277,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110299,11 +123294,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110314,11 +123311,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110329,11 +123328,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110344,11 +123345,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110359,11 +123362,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110374,11 +123379,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110389,11 +123396,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110404,11 +123413,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110419,11 +123430,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110434,11 +123447,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110449,11 +123464,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110464,11 +123481,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110479,11 +123498,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110494,11 +123515,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110509,11 +123532,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110524,11 +123549,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110539,11 +123566,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110554,11 +123583,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110569,11 +123600,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110584,11 +123617,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110599,11 +123634,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110614,11 +123651,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110629,11 +123668,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110644,11 +123685,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110659,11 +123702,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110674,11 +123719,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110689,11 +123736,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110704,11 +123753,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110719,11 +123770,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110734,11 +123787,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110749,11 +123804,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110764,11 +123821,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110779,11 +123838,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110794,11 +123855,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110809,11 +123872,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110824,11 +123889,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110839,11 +123906,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110854,11 +123923,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110869,11 +123940,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110884,11 +123957,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110899,11 +123974,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110914,11 +123991,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110929,11 +124008,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110944,11 +124025,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110959,11 +124042,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110974,11 +124059,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -110989,11 +124076,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111004,11 +124093,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111019,11 +124110,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111034,11 +124127,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111049,11 +124144,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111064,11 +124161,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111079,11 +124178,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111094,11 +124195,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111109,11 +124212,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111124,11 +124229,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111139,11 +124246,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111154,11 +124263,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111169,11 +124280,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111184,11 +124297,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111199,11 +124314,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111214,11 +124331,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111229,11 +124348,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111287,11 +124408,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111302,11 +124425,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111317,11 +124442,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111332,11 +124459,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111347,11 +124476,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111362,11 +124493,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111377,11 +124510,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111392,11 +124527,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111407,11 +124544,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111422,11 +124561,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111437,11 +124578,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111452,11 +124595,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111467,11 +124612,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111482,11 +124629,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111497,11 +124646,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111512,11 +124663,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111527,11 +124680,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111542,11 +124697,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111576,11 +124733,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111591,11 +124750,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111606,11 +124767,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111621,11 +124784,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111636,11 +124801,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111651,11 +124818,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111666,11 +124835,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111681,11 +124852,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111696,11 +124869,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111711,11 +124886,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111726,11 +124903,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111741,11 +124920,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111756,11 +124937,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111771,11 +124954,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111786,11 +124971,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111801,11 +124988,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111816,11 +125005,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111831,11 +125022,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111846,11 +125039,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111861,11 +125056,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111876,11 +125073,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111891,11 +125090,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111906,11 +125107,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111921,11 +125124,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111936,11 +125141,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111951,11 +125158,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111966,11 +125175,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111981,11 +125192,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -111996,11 +125209,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112011,11 +125226,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112026,11 +125243,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112041,11 +125260,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112056,11 +125277,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112071,11 +125294,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112086,11 +125311,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112101,11 +125328,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112116,11 +125345,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112131,11 +125362,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112146,11 +125379,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112161,11 +125396,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112176,11 +125413,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112191,11 +125430,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112206,11 +125447,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112221,11 +125464,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112236,11 +125481,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112251,11 +125498,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112266,11 +125515,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112281,11 +125532,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112296,11 +125549,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112311,11 +125566,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112326,11 +125583,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112341,11 +125600,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112356,11 +125617,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112371,11 +125634,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112386,11 +125651,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112401,11 +125668,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112416,11 +125685,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112431,11 +125702,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112446,11 +125719,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112461,11 +125736,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112476,11 +125753,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112491,11 +125770,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112506,11 +125787,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112521,11 +125804,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112536,11 +125821,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112551,11 +125838,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112566,11 +125855,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112581,11 +125872,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112596,11 +125889,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112611,11 +125906,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112626,11 +125923,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112641,11 +125940,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112656,11 +125957,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112671,11 +125974,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112686,11 +125991,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112701,11 +126008,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112759,11 +126068,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112774,11 +126085,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112789,11 +126102,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112804,11 +126119,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112819,11 +126136,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112834,11 +126153,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112849,11 +126170,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112864,11 +126187,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112879,11 +126204,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112894,11 +126221,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112909,11 +126238,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112924,11 +126255,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112939,11 +126272,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112954,11 +126289,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112969,11 +126306,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112984,11 +126323,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -112999,11 +126340,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113014,11 +126357,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113029,11 +126374,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113044,11 +126391,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113059,11 +126408,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113074,11 +126425,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113089,11 +126442,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113104,11 +126459,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113119,11 +126476,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113134,11 +126493,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113149,11 +126510,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113183,11 +126546,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113198,11 +126563,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113213,11 +126580,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113228,11 +126597,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113243,11 +126614,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113258,11 +126631,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113273,11 +126648,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113288,11 +126665,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113303,11 +126682,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113318,11 +126699,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113333,11 +126716,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113348,11 +126733,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113363,11 +126750,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113378,11 +126767,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113393,11 +126784,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113408,11 +126801,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113423,11 +126818,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113438,11 +126835,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113472,11 +126871,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113487,11 +126888,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113502,11 +126905,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113517,11 +126922,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113532,11 +126939,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113547,11 +126956,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113562,11 +126973,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113577,11 +126990,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113592,11 +127007,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113607,11 +127024,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113622,11 +127041,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113637,11 +127058,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113652,11 +127075,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113667,11 +127092,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113682,11 +127109,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113697,11 +127126,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113712,11 +127143,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113727,11 +127160,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113742,11 +127177,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113757,11 +127194,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113772,11 +127211,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113787,11 +127228,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113802,11 +127245,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113817,11 +127262,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113832,11 +127279,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113847,11 +127296,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113862,11 +127313,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113877,11 +127330,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113892,11 +127347,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113907,11 +127364,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113922,11 +127381,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113937,11 +127398,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113952,11 +127415,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113967,11 +127432,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113982,11 +127449,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -113997,11 +127466,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114012,11 +127483,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114027,11 +127500,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114042,11 +127517,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114057,11 +127534,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114072,11 +127551,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114087,11 +127568,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114102,11 +127585,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114117,11 +127602,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114132,11 +127619,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114147,11 +127636,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114162,11 +127653,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114177,11 +127670,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114192,11 +127687,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114207,11 +127704,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114222,11 +127721,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114237,11 +127738,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114252,11 +127755,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114267,11 +127772,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114282,11 +127789,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114297,11 +127806,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114312,11 +127823,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114327,11 +127840,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114342,11 +127857,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114357,11 +127874,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114372,11 +127891,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114387,11 +127908,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114402,11 +127925,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114417,11 +127942,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114432,11 +127959,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114447,11 +127976,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114462,11 +127993,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114477,11 +128010,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114492,11 +128027,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114507,11 +128044,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114522,11 +128061,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114537,11 +128078,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114552,11 +128095,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114567,11 +128112,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114582,11 +128129,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114597,11 +128146,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114612,11 +128163,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114627,11 +128180,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114642,11 +128197,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114657,11 +128214,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114672,11 +128231,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114687,11 +128248,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114708,11 +128271,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114723,11 +128288,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114738,11 +128305,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114753,11 +128322,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114768,11 +128339,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114783,11 +128356,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114798,11 +128373,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114813,11 +128390,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114828,11 +128407,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114843,11 +128424,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114858,11 +128441,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114873,11 +128458,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114888,11 +128475,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114903,11 +128492,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114918,11 +128509,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114933,11 +128526,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114948,11 +128543,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114963,11 +128560,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114978,11 +128577,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -114993,11 +128594,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115008,11 +128611,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115023,11 +128628,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115038,11 +128645,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115053,11 +128662,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115068,11 +128679,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115083,11 +128696,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115098,11 +128713,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115113,11 +128730,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115128,11 +128747,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115143,11 +128764,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115158,11 +128781,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115173,11 +128798,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115188,11 +128815,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115203,11 +128832,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115218,11 +128849,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115233,11 +128866,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115248,11 +128883,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115263,11 +128900,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115278,11 +128917,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115293,11 +128934,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115308,11 +128951,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115323,11 +128968,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115338,11 +128985,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115353,11 +129002,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115368,11 +129019,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115383,11 +129036,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115398,11 +129053,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115413,11 +129070,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115467,11 +129126,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115482,11 +129143,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115497,11 +129160,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115512,11 +129177,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115527,11 +129194,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115542,11 +129211,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115557,11 +129228,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115572,11 +129245,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115587,11 +129262,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115602,11 +129279,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115617,11 +129296,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115632,11 +129313,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115647,11 +129330,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115662,11 +129347,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115677,11 +129364,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115692,11 +129381,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115707,11 +129398,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115722,11 +129415,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115737,11 +129432,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115752,11 +129449,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115767,11 +129466,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115782,11 +129483,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115797,11 +129500,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115812,11 +129517,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115827,11 +129534,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115842,11 +129551,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115857,11 +129568,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115872,11 +129585,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115887,11 +129602,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115902,11 +129619,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115917,11 +129636,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115932,11 +129653,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115947,11 +129670,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115962,11 +129687,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115977,11 +129704,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -115992,11 +129721,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116007,11 +129738,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116022,11 +129755,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116037,11 +129772,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116052,11 +129789,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116067,11 +129806,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116082,11 +129823,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116097,11 +129840,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116112,11 +129857,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116127,11 +129874,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116142,11 +129891,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116157,11 +129908,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116172,11 +129925,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116226,11 +129981,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116241,11 +129998,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116256,11 +130015,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116271,11 +130032,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116286,11 +130049,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116301,11 +130066,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116316,11 +130083,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116331,11 +130100,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116346,11 +130117,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116361,11 +130134,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116376,11 +130151,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116391,11 +130168,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116406,11 +130185,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116421,11 +130202,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116436,11 +130219,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116451,11 +130236,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116466,11 +130253,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116481,11 +130270,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116496,11 +130287,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116511,11 +130304,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116526,11 +130321,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116541,11 +130338,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116556,11 +130355,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116571,11 +130372,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116586,11 +130389,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116601,11 +130406,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116616,11 +130423,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116631,11 +130440,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116646,11 +130457,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116661,11 +130474,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116676,11 +130491,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116691,11 +130508,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116706,11 +130525,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116721,11 +130542,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116736,11 +130559,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116751,11 +130576,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116766,11 +130593,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116781,11 +130610,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116796,11 +130627,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116811,11 +130644,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116826,11 +130661,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116841,11 +130678,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116856,11 +130695,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116871,11 +130712,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116886,11 +130729,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116901,11 +130746,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116916,11 +130763,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116931,11 +130780,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -116985,11 +130836,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117000,11 +130853,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117015,11 +130870,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117030,11 +130887,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117045,11 +130904,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117060,11 +130921,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117075,11 +130938,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117090,11 +130955,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117105,11 +130972,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117120,11 +130989,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117135,11 +131006,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117150,11 +131023,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117165,11 +131040,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117180,11 +131057,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117195,11 +131074,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117210,11 +131091,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117225,11 +131108,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117240,11 +131125,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117255,11 +131142,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117270,11 +131159,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117285,11 +131176,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117300,11 +131193,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117315,11 +131210,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117330,11 +131227,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117345,11 +131244,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117360,11 +131261,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117375,11 +131278,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117390,11 +131295,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117405,11 +131312,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117420,11 +131329,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117435,11 +131346,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117450,11 +131363,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117465,11 +131380,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117480,11 +131397,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117495,11 +131414,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117510,11 +131431,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117525,11 +131448,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117540,11 +131465,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117555,11 +131482,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117570,11 +131499,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117585,11 +131516,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117600,11 +131533,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117615,11 +131550,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117630,11 +131567,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117645,11 +131584,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117660,11 +131601,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117675,11 +131618,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117690,11 +131635,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117705,11 +131652,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117720,11 +131669,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117735,11 +131686,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117750,11 +131703,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117765,11 +131720,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117780,11 +131737,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117795,11 +131754,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117810,11 +131771,13 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117825,11 +131788,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117840,11 +131805,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117855,11 +131822,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117870,11 +131839,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117885,11 +131856,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117900,11 +131873,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117915,11 +131890,13 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117930,11 +131907,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117945,11 +131924,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117960,11 +131941,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117975,11 +131958,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -117990,11 +131975,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118005,11 +131992,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118020,11 +132009,13 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118035,11 +132026,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118050,11 +132043,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118065,11 +132060,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118080,11 +132077,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118095,11 +132094,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118110,11 +132111,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118125,11 +132128,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118140,11 +132145,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118155,11 +132162,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118170,11 +132179,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118185,11 +132196,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118200,11 +132213,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -118221,19 +132236,23 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -118250,7 +132269,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118261,7 +132281,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118272,7 +132293,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118283,7 +132305,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118294,7 +132317,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118305,7 +132329,8 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118316,7 +132341,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118327,7 +132353,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118338,7 +132365,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118349,7 +132377,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118360,7 +132389,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118371,7 +132401,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -118388,7 +132419,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -118405,11 +132437,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118420,11 +132454,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118435,11 +132471,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118450,11 +132488,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118465,11 +132505,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118480,11 +132522,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118495,11 +132539,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118510,11 +132556,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118525,11 +132573,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118540,11 +132590,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118555,11 +132607,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118570,11 +132624,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118585,11 +132641,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118600,11 +132658,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118615,11 +132675,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118630,11 +132692,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118645,11 +132709,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118660,11 +132726,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118675,11 +132743,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118690,11 +132760,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118705,11 +132777,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118720,11 +132794,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118735,11 +132811,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118750,11 +132828,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118765,11 +132845,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118780,11 +132862,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118795,11 +132879,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118810,11 +132896,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118825,11 +132913,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118840,11 +132930,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118934,11 +133026,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118949,11 +133043,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118964,11 +133060,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118979,11 +133077,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -118994,11 +133094,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119009,11 +133111,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119024,11 +133128,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119039,11 +133145,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119054,11 +133162,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119069,11 +133179,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119084,11 +133196,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119099,11 +133213,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119114,11 +133230,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119164,11 +133282,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119179,11 +133299,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119194,11 +133316,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119209,11 +133333,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119224,11 +133350,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119239,11 +133367,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119254,11 +133384,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119269,11 +133401,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119284,11 +133418,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119299,11 +133435,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119314,11 +133452,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119329,11 +133469,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119344,11 +133486,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119394,11 +133538,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119409,11 +133555,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119424,11 +133572,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119439,11 +133589,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119454,11 +133606,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119469,11 +133623,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119484,11 +133640,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119499,11 +133657,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119514,11 +133674,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119529,11 +133691,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119544,11 +133708,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119559,11 +133725,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119609,11 +133777,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119624,11 +133794,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119639,11 +133811,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119654,11 +133828,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119669,11 +133845,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119684,11 +133862,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119699,11 +133879,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119714,11 +133896,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119729,11 +133913,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119744,11 +133930,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119759,11 +133947,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119774,11 +133964,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119824,11 +134016,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119839,11 +134033,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119854,11 +134050,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119869,11 +134067,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119884,11 +134084,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119899,11 +134101,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119914,11 +134118,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119929,11 +134135,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119944,11 +134152,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119959,11 +134169,13 @@ "args": [ { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119974,11 +134186,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "h3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -119989,11 +134203,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120004,11 +134220,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120019,11 +134237,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120034,11 +134254,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120049,11 +134271,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120064,11 +134288,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120079,11 +134305,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120094,11 +134322,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120109,11 +134339,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120124,11 +134356,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120139,11 +134373,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120154,11 +134390,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120169,11 +134407,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120184,11 +134424,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120199,11 +134441,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120214,11 +134458,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120229,11 +134475,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120244,11 +134492,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120259,11 +134509,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120353,7 +134605,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -120370,7 +134623,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -120387,11 +134641,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120402,11 +134658,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120417,11 +134675,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120432,11 +134692,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120447,11 +134709,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120462,11 +134726,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120477,11 +134743,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120492,11 +134760,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120507,11 +134777,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120522,11 +134794,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120537,11 +134811,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120552,11 +134828,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120567,11 +134845,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120582,11 +134862,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120597,11 +134879,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120612,11 +134896,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120627,11 +134913,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120642,11 +134930,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120657,11 +134947,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120672,11 +134964,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120687,11 +134981,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120702,11 +134998,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120717,11 +135015,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120732,11 +135032,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120747,11 +135049,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120762,11 +135066,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120777,11 +135083,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120792,11 +135100,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120807,11 +135117,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120822,11 +135134,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120837,11 +135151,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120852,11 +135168,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120867,11 +135185,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120882,11 +135202,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120897,11 +135219,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120912,11 +135236,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -120933,7 +135259,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -120950,7 +135277,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -120967,11 +135295,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -120982,11 +135312,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -121012,7 +135344,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -121029,7 +135362,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -121046,7 +135380,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -121063,7 +135398,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -121080,7 +135416,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -121097,7 +135434,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121108,11 +135446,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121123,11 +135463,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121138,11 +135480,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121153,15 +135497,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tfloat", @@ -121172,15 +135519,18 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tfloat", @@ -121191,7 +135541,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121202,7 +135553,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121232,7 +135584,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121249,7 +135602,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121266,7 +135620,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121283,7 +135638,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121300,19 +135656,23 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tfloat", @@ -121323,11 +135683,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tfloat", @@ -121344,7 +135706,8 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121355,11 +135718,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tfloat", @@ -121376,19 +135741,23 @@ "args": [ { "type": "tfloat[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tfloat", @@ -121405,7 +135774,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121422,23 +135792,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -121455,15 +135830,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121480,15 +135858,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121505,7 +135886,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -121522,11 +135904,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121543,11 +135927,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121564,11 +135950,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121585,11 +135973,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121606,11 +135996,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121627,11 +136019,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121648,15 +136042,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121673,15 +136070,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121698,15 +136098,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -121723,11 +136126,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121738,11 +136143,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121753,11 +136160,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121768,11 +136177,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121783,11 +136194,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121798,11 +136211,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121813,11 +136228,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121828,11 +136245,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121843,11 +136262,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121864,11 +136285,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121879,11 +136302,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121894,11 +136319,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121909,11 +136336,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121924,11 +136353,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121939,11 +136370,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121954,11 +136387,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121969,11 +136404,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121984,11 +136421,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -121999,11 +136438,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122014,11 +136455,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122029,11 +136472,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122050,11 +136495,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122065,11 +136512,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122080,11 +136529,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122095,11 +136546,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122110,11 +136563,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122125,11 +136580,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122140,11 +136597,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122155,11 +136614,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122170,11 +136631,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122185,11 +136648,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122200,11 +136665,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122215,11 +136682,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -122236,7 +136705,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122247,7 +136717,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122258,11 +136729,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122273,11 +136746,13 @@ "args": [ { "type": "geography(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122288,11 +136763,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122303,15 +136780,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeogpoint", @@ -122322,15 +136802,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeompoint", @@ -122341,7 +136824,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122352,7 +136836,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122363,7 +136848,8 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122380,7 +136866,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122397,7 +136884,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122414,7 +136902,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122431,7 +136920,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122448,7 +136938,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122465,7 +136956,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122482,7 +136974,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122499,19 +136992,23 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeogpoint", @@ -122522,11 +137019,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122537,7 +137036,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122554,7 +137054,8 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122565,11 +137066,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122580,7 +137083,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122597,19 +137101,23 @@ "args": [ { "type": "tgeogpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeogpoint", @@ -122626,23 +137134,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -122659,15 +137172,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122684,15 +137200,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122709,7 +137228,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -122726,7 +137246,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -122743,11 +137264,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122758,11 +137281,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122773,11 +137298,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122788,15 +137315,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeography", @@ -122807,15 +137337,18 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeometry", @@ -122826,7 +137359,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122837,7 +137371,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122859,7 +137394,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122876,7 +137412,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122893,7 +137430,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122910,7 +137448,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122927,7 +137466,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122944,7 +137484,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122961,7 +137502,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -122978,19 +137520,23 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeography", @@ -123001,11 +137547,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123016,7 +137564,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123033,7 +137582,8 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123044,11 +137594,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123059,7 +137611,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123076,19 +137629,23 @@ "args": [ { "type": "tgeography[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeography", @@ -123105,23 +137662,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -123138,15 +137700,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123163,15 +137728,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123188,7 +137756,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -123205,7 +137774,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -123222,7 +137792,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123233,11 +137804,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123248,11 +137821,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123263,11 +137838,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123278,15 +137855,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeometry", @@ -123297,15 +137877,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeometry", @@ -123316,7 +137899,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123327,7 +137911,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123361,7 +137946,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123378,7 +137964,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123395,7 +137982,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123412,7 +138000,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123429,7 +138018,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123446,7 +138036,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123463,7 +138054,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123480,19 +138072,23 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeometry", @@ -123503,11 +138099,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123518,7 +138116,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123535,7 +138134,8 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123546,11 +138146,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123561,7 +138163,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123578,19 +138181,23 @@ "args": [ { "type": "tgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tgeometry", @@ -123607,23 +138214,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -123640,15 +138252,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123665,15 +138280,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123690,7 +138308,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -123707,7 +138326,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -123724,7 +138344,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123735,7 +138356,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123746,7 +138368,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123757,7 +138380,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123768,11 +138392,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123783,11 +138409,13 @@ "args": [ { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123798,11 +138426,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123813,15 +138443,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeompoint", @@ -123832,15 +138465,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeompoint", @@ -123851,7 +138487,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123862,7 +138499,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123873,7 +138511,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123884,7 +138523,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123922,7 +138562,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123939,7 +138580,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123956,7 +138598,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123973,7 +138616,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -123990,7 +138634,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124007,7 +138652,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124024,7 +138670,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124041,19 +138688,23 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeompoint", @@ -124064,11 +138715,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124079,7 +138732,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124096,7 +138750,8 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124107,11 +138762,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124122,7 +138779,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124139,19 +138797,23 @@ "args": [ { "type": "tgeompoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tgeompoint", @@ -124168,23 +138830,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -124201,15 +138868,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124226,15 +138896,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124251,7 +138924,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -124268,7 +138942,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -124285,11 +138960,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124300,11 +138977,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124315,11 +138994,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124330,11 +139011,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124345,11 +139028,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124360,11 +139045,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124375,11 +139062,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124390,11 +139079,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124405,11 +139096,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -124426,11 +139119,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124441,7 +139136,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124458,7 +139154,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124475,7 +139172,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124492,23 +139190,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -124525,15 +139228,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124550,15 +139256,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "th3index", @@ -124575,15 +139284,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -124594,15 +139306,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -124613,15 +139328,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -124632,15 +139350,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -124651,15 +139372,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -124676,23 +139400,28 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124703,23 +139432,28 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124730,23 +139464,28 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124757,23 +139496,28 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124784,23 +139528,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124811,23 +139560,28 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "stbox[]", @@ -124838,15 +139592,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -124857,15 +139614,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -124876,15 +139636,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -124901,7 +139664,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124912,7 +139676,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124923,7 +139688,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124934,7 +139700,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124945,7 +139712,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124956,7 +139724,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124967,7 +139736,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124978,7 +139748,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -124989,7 +139760,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125000,7 +139772,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125011,7 +139784,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125022,7 +139796,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125033,7 +139808,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125044,7 +139820,8 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125055,7 +139832,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125089,15 +139867,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125108,15 +139889,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125127,15 +139911,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125146,15 +139933,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125165,15 +139955,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125184,15 +139977,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125203,15 +139999,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125222,15 +140021,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125241,15 +140043,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125260,15 +140065,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125279,15 +140087,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125298,15 +140109,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "setof", @@ -125328,19 +140142,23 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -125351,19 +140169,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -125374,19 +140196,23 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "SETOF", @@ -125397,15 +140223,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -125427,11 +140256,13 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -125442,11 +140273,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -125457,11 +140290,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -125472,11 +140307,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -125487,11 +140324,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -125508,7 +140347,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125519,7 +140359,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -125536,11 +140377,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125551,11 +140394,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125566,11 +140411,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125581,11 +140428,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125596,11 +140445,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125611,11 +140462,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125626,11 +140479,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125641,11 +140496,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125656,11 +140513,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125671,11 +140530,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125686,11 +140547,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125701,11 +140564,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125716,11 +140581,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125731,11 +140598,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125746,11 +140615,13 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125761,11 +140632,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -125795,7 +140668,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125806,7 +140680,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125817,7 +140692,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125828,7 +140704,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125839,7 +140716,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125850,7 +140728,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125861,7 +140740,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125872,7 +140752,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125883,7 +140764,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125894,7 +140776,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125905,7 +140788,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125916,7 +140800,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125927,7 +140812,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -125938,7 +140824,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz[]", @@ -125976,11 +140863,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -125991,11 +140880,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126006,11 +140897,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126021,11 +140914,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126036,11 +140931,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126051,7 +140948,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126062,7 +140960,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126073,7 +140972,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126147,7 +141047,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126164,7 +141065,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126186,7 +141088,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126312,7 +141215,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126342,19 +141246,23 @@ "args": [ { "type": "tint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tint", @@ -126365,11 +141273,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tint", @@ -126411,7 +141321,8 @@ "args": [ { "type": "tint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126422,7 +141333,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126472,15 +141384,18 @@ "args": [ { "type": "tint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tint", @@ -126502,7 +141417,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126519,23 +141435,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -126552,15 +141473,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126577,15 +141501,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126611,7 +141538,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -126628,11 +141556,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126649,11 +141579,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126670,11 +141602,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126691,11 +141625,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126712,11 +141648,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126733,11 +141671,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126754,15 +141694,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126779,15 +141722,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126804,15 +141750,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -126829,11 +141778,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126844,11 +141795,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126859,11 +141812,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126874,11 +141829,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126889,11 +141846,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126904,11 +141863,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126919,11 +141880,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126934,11 +141897,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126949,11 +141914,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126970,11 +141937,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -126985,11 +141954,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127000,11 +141971,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127015,11 +141988,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127030,11 +142005,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127045,11 +142022,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127060,11 +142039,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127075,11 +142056,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127090,11 +142073,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127111,7 +142096,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -127133,7 +142119,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -127155,11 +142142,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127170,11 +142159,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127185,11 +142176,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127200,11 +142193,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127215,11 +142210,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127230,11 +142227,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127245,11 +142244,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127260,11 +142261,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127275,11 +142278,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127290,11 +142295,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127305,11 +142312,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127320,11 +142329,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127335,11 +142346,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127350,11 +142363,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127365,11 +142380,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127380,11 +142397,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127395,11 +142414,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127410,11 +142431,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127425,11 +142448,13 @@ "args": [ { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127440,11 +142465,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127455,11 +142482,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127470,11 +142499,13 @@ "args": [ { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127485,11 +142516,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127500,11 +142533,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127515,11 +142550,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127530,11 +142567,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127545,11 +142584,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127560,11 +142601,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127575,11 +142618,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127590,11 +142635,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127605,11 +142652,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127620,11 +142669,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127635,11 +142686,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127650,11 +142703,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127665,11 +142720,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127680,11 +142737,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbool", @@ -127701,11 +142760,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127716,11 +142777,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127731,11 +142794,13 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127746,15 +142811,18 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tnpoint", @@ -127765,15 +142833,18 @@ "args": [ { "type": "npoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tnpoint", @@ -127784,7 +142855,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127806,7 +142878,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127823,7 +142896,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127840,7 +142914,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127857,7 +142932,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127874,19 +142950,23 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tnpoint", @@ -127897,11 +142977,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127912,7 +142994,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127929,7 +143012,8 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127940,11 +143024,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127955,7 +143041,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -127972,19 +143059,23 @@ "args": [ { "type": "tnpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tnpoint", @@ -128001,31 +143092,38 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -128042,11 +143140,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -128063,31 +143163,38 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int2", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int4", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "char", @@ -128104,23 +143211,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -128137,15 +143249,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -128162,15 +143277,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -128187,7 +143305,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tnpoint", @@ -128204,11 +143323,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -128225,11 +143346,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128240,11 +143363,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128255,11 +143380,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128270,11 +143397,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128285,11 +143414,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128300,11 +143431,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128315,11 +143448,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128330,11 +143465,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128345,11 +143482,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128395,11 +143534,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128410,11 +143551,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128425,11 +143568,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128440,11 +143585,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128455,11 +143602,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128470,11 +143619,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128485,11 +143636,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128500,11 +143653,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128515,11 +143670,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128557,11 +143714,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -128578,11 +143737,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -128593,11 +143754,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -128608,11 +143771,13 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbox", @@ -128629,23 +143794,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -128662,11 +143832,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128677,11 +143849,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128692,11 +143866,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128707,11 +143883,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128722,11 +143900,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128737,11 +143917,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128752,11 +143934,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128767,11 +143951,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128782,11 +143968,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128832,19 +144020,23 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -128861,7 +144053,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -128878,11 +144071,13 @@ "args": [ { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128893,11 +144088,13 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128908,11 +144105,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128923,11 +144122,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tbigint", @@ -128938,11 +144139,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128953,11 +144156,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -128968,11 +144173,13 @@ "args": [ { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128983,11 +144190,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -128998,11 +144207,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -129048,7 +144259,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129065,11 +144277,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129080,11 +144294,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129101,7 +144317,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129118,7 +144335,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129135,7 +144353,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -129152,7 +144371,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -129169,27 +144389,33 @@ "args": [ { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcbox", @@ -129200,7 +144426,8 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129211,11 +144438,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129226,7 +144455,8 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129248,11 +144478,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129269,11 +144501,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129290,11 +144524,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129311,11 +144547,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129332,11 +144570,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129353,11 +144593,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129374,11 +144616,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -129400,11 +144644,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129421,11 +144667,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129442,11 +144690,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129463,11 +144713,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129484,11 +144736,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129505,11 +144759,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129526,23 +144782,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -129559,23 +144820,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -129592,15 +144858,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129617,11 +144886,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129638,15 +144909,18 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -129663,11 +144937,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129684,11 +144960,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129705,7 +144983,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129722,11 +145001,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -129743,11 +145024,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129764,11 +145047,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129785,11 +145070,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129806,11 +145093,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129827,7 +145116,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -129844,11 +145134,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129865,11 +145157,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129886,11 +145180,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129907,11 +145203,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129928,11 +145226,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129949,11 +145249,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129970,11 +145272,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -129991,11 +145295,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -130012,11 +145318,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -130033,7 +145341,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -130050,11 +145359,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -130071,11 +145382,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -130092,7 +145405,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -130109,7 +145423,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -130126,11 +145441,13 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcbox", @@ -130147,11 +145464,13 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcbox", @@ -130168,31 +145487,38 @@ "args": [ { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcbox", @@ -130209,35 +145535,43 @@ "args": [ { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcbox", @@ -130254,39 +145588,48 @@ "args": [ { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcbox", @@ -130303,11 +145646,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130318,11 +145663,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130333,11 +145680,13 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130348,15 +145697,18 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -130367,15 +145719,18 @@ "args": [ { "type": "pcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -130392,7 +145747,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130409,7 +145765,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130426,19 +145783,23 @@ "args": [ { "type": "tpcpatch[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpatch", @@ -130455,7 +145816,8 @@ "args": [ { "type": "tpcpatch[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130472,15 +145834,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130497,7 +145862,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -130514,15 +145880,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130539,7 +145908,8 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -130556,7 +145926,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpatch", @@ -130573,11 +145944,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130588,11 +145961,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130603,11 +145978,13 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130618,15 +145995,18 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpoint", @@ -130637,15 +146017,18 @@ "args": [ { "type": "pcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpoint", @@ -130662,7 +146045,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130679,7 +146063,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130696,19 +146081,23 @@ "args": [ { "type": "tpcpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": null } ], "returns": "tpcpoint", @@ -130725,7 +146114,8 @@ "args": [ { "type": "tpcpoint[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130742,15 +146132,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130767,7 +146160,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -130784,15 +146178,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130809,7 +146206,8 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -130826,7 +146224,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpcpoint", @@ -130843,7 +146242,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130854,11 +146254,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130869,11 +146271,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130884,11 +146288,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130899,15 +146305,18 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tpose", @@ -130918,15 +146327,18 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tpose", @@ -130948,7 +146360,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130965,7 +146378,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130982,7 +146396,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -130999,7 +146414,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131021,7 +146437,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131038,7 +146455,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131055,7 +146473,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131072,7 +146491,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131089,19 +146509,23 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tpose", @@ -131112,11 +146536,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "tpose", @@ -131133,7 +146559,8 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131144,11 +146571,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "tpose", @@ -131165,19 +146594,23 @@ "args": [ { "type": "tpose[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "tpose", @@ -131194,23 +146627,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -131227,15 +146665,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131252,7 +146693,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -131269,15 +146711,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131294,7 +146739,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -131311,7 +146757,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131328,7 +146775,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -131345,15 +146793,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "trgeometry", @@ -131364,15 +146815,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tcbuffer", @@ -131383,15 +146837,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tpose", @@ -131402,15 +146859,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tgeometry", @@ -131421,15 +146881,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tgeography", @@ -131440,15 +146903,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tgeompoint", @@ -131459,15 +146925,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tgeogpoint", @@ -131478,15 +146947,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tint", @@ -131497,15 +146969,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tbigint", @@ -131516,15 +146991,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tfloat", @@ -131535,15 +147013,18 @@ "args": [ { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "timestamptz", @@ -131554,15 +147035,18 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tstzset", @@ -131573,15 +147057,18 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tstzspan", @@ -131592,15 +147079,18 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" } ], "returns": "tstzspanset", @@ -131617,11 +147107,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geometry", @@ -131632,11 +147124,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geometry", @@ -131647,11 +147141,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "geography", @@ -131662,7 +147158,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -131696,11 +147193,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -131711,11 +147210,13 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -131726,11 +147227,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tcbuffer", @@ -131741,11 +147244,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbufferset", @@ -131756,11 +147261,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tpose", @@ -131771,11 +147278,13 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -131786,11 +147295,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "poseset", @@ -131801,11 +147312,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -131816,11 +147329,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -131831,11 +147346,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -131846,11 +147363,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -131861,11 +147380,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeogpoint", @@ -131876,11 +147397,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -131891,11 +147414,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeography", @@ -131917,19 +147442,23 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "trgeometry", @@ -131940,19 +147469,23 @@ "args": [ { "type": "cbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "cbuffer", @@ -131963,19 +147496,23 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tcbuffer", @@ -131986,19 +147523,23 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "cbufferset", @@ -132009,19 +147550,23 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tpose", @@ -132032,19 +147577,23 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "pose", @@ -132055,19 +147604,23 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "poseset", @@ -132078,19 +147631,23 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geomset", @@ -132101,19 +147658,23 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geogset", @@ -132124,19 +147685,23 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "stbox", @@ -132147,19 +147712,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeompoint", @@ -132170,19 +147739,23 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeogpoint", @@ -132193,19 +147766,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeometry", @@ -132216,19 +147793,23 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "tgeography", @@ -132250,7 +147831,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -132261,7 +147843,8 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -132278,19 +147861,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -132301,15 +147888,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -132320,19 +147910,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -132343,15 +147937,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -132368,23 +147965,28 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeometry", @@ -132395,23 +147997,28 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float8", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tgeompoint", @@ -132428,11 +148035,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geometry", @@ -132443,11 +148052,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geometry", @@ -132458,11 +148069,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geometry", @@ -132473,11 +148086,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geometry", @@ -132488,11 +148103,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bool", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "geography", @@ -132550,7 +148167,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -132561,7 +148179,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -132572,7 +148191,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tint", @@ -132602,7 +148222,8 @@ "args": [ { "type": "cstring[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -132619,11 +148240,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132634,15 +148257,18 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132653,11 +148279,13 @@ "args": [ { "type": "geometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132674,7 +148302,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132691,7 +148320,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132708,7 +148338,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132725,7 +148356,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132742,7 +148374,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132759,7 +148392,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132776,7 +148410,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132798,19 +148433,23 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "trgeometry", @@ -132821,11 +148460,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "trgeometry", @@ -132847,7 +148488,8 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132858,11 +148500,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "trgeometry", @@ -132879,19 +148523,23 @@ "args": [ { "type": "trgeometry[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "NULL" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'linear'" } ], "returns": "trgeometry", @@ -132908,23 +148556,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -132941,15 +148594,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -132966,7 +148622,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -132983,7 +148640,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -133000,7 +148658,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -133017,7 +148676,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -133034,35 +148694,43 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "minusValues(trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "atValues(trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "minusValues(trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "atTime(trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "trgeometry", @@ -133073,19 +148741,23 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tcbuffer", @@ -133096,19 +148768,23 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tpose", @@ -133119,19 +148795,23 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tgeometry", @@ -133142,19 +148822,23 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tgeography", @@ -133165,19 +148849,23 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tgeompoint", @@ -133188,19 +148876,23 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tgeogpoint", @@ -133211,19 +148903,23 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tbool", @@ -133234,19 +148930,23 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tint", @@ -133257,19 +148957,23 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tbigint", @@ -133280,19 +148984,23 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tfloat", @@ -133303,19 +149011,23 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "ttext", @@ -133326,19 +149038,23 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'discrete'" } ], "returns": "tnpoint", @@ -133355,7 +149071,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -133372,11 +149089,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133387,11 +149106,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133402,11 +149123,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133417,11 +149140,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133432,11 +149157,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133447,11 +149174,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133462,11 +149191,13 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "stbox", @@ -133483,7 +149214,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -133500,23 +149232,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -133533,19 +149270,23 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -133562,7 +149303,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -133579,7 +149321,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -133596,7 +149339,8 @@ "args": [ { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -133613,7 +149357,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133635,7 +149380,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133652,7 +149398,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133669,7 +149416,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133686,7 +149434,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -133703,7 +149452,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133720,7 +149470,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -133737,7 +149488,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzset", @@ -133754,7 +149506,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -133771,7 +149524,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -133788,7 +149542,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -133805,7 +149560,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -133822,7 +149578,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -133839,7 +149596,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspan", @@ -133856,7 +149614,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -133873,11 +149632,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "void", @@ -133894,7 +149655,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -133911,7 +149673,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -133933,7 +149696,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -133950,7 +149714,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -133967,7 +149732,8 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -133984,7 +149750,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cstring", @@ -134001,7 +149768,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -134018,7 +149786,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bytea", @@ -134035,11 +149804,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134050,11 +149821,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134065,11 +149838,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134080,11 +149855,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134095,11 +149872,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134116,7 +149895,8 @@ "args": [ { "type": "bytea", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134133,7 +149913,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134150,7 +149931,8 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134167,7 +149949,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134184,19 +149967,23 @@ "args": [ { "type": "ttext[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "true" } ], "returns": "ttext", @@ -134207,11 +149994,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": true + "hasDefault": true, + "default": "'step'" } ], "returns": "ttext", @@ -134228,7 +150017,8 @@ "args": [ { "type": "ttext[]", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134239,7 +150029,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134256,11 +150047,13 @@ "args": [ { "type": "ttext[]", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": true + "hasDefault": true, + "default": "NULL" } ], "returns": "ttext", @@ -134277,11 +150070,13 @@ "args": [ { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134292,11 +150087,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "text", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134307,11 +150104,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134328,7 +150127,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -134345,23 +150145,28 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "smallint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -134378,15 +150183,18 @@ "args": [ { "type": "cstring", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134403,15 +150211,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "oid", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134428,7 +150239,8 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -134445,11 +150257,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -134466,11 +150280,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -134487,11 +150303,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -134508,11 +150326,13 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -134529,7 +150349,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -134540,7 +150361,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -134551,7 +150373,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -134581,7 +150404,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -134592,7 +150416,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -134603,7 +150428,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -134641,7 +150467,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134652,7 +150479,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134663,7 +150491,8 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134674,7 +150503,8 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134685,7 +150515,8 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134696,7 +150527,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134707,7 +150539,8 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134718,7 +150551,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134729,7 +150563,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134740,7 +150575,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134751,7 +150587,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134762,7 +150599,8 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134773,7 +150611,8 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134784,7 +150623,8 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134795,7 +150635,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134806,7 +150647,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134817,7 +150659,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134828,7 +150671,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134839,7 +150683,8 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134850,7 +150695,8 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134861,7 +150707,8 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134872,7 +150719,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134883,7 +150731,8 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134894,7 +150743,8 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134905,7 +150755,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134916,7 +150767,8 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "SETOF", @@ -134933,15 +150785,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "trgeometry", @@ -134952,15 +150807,18 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tcbuffer", @@ -134971,15 +150829,18 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tpose", @@ -134990,15 +150851,18 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeometry", @@ -135009,15 +150873,18 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeography", @@ -135028,15 +150895,18 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeompoint", @@ -135047,15 +150917,18 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tgeogpoint", @@ -135066,15 +150939,18 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbool", @@ -135085,15 +150961,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tint", @@ -135104,15 +150983,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tbigint", @@ -135123,15 +151005,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tfloat", @@ -135142,15 +151027,18 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "ttext", @@ -135161,15 +151049,18 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "TRUE" } ], "returns": "tnpoint", @@ -135191,7 +151082,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -135202,7 +151094,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -135213,7 +151106,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135224,7 +151118,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -135235,7 +151130,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -135246,7 +151142,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -135257,7 +151154,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -135268,7 +151166,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135279,7 +151178,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -135290,7 +151190,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -135301,7 +151202,8 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "textset", @@ -135312,7 +151214,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "ttext", @@ -135378,7 +151281,8 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135389,7 +151293,8 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135400,7 +151305,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135411,7 +151317,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135422,7 +151329,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135433,7 +151341,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135444,7 +151353,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135455,7 +151365,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135466,7 +151377,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135477,7 +151389,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135488,7 +151401,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135499,7 +151413,8 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135510,7 +151425,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135521,7 +151437,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135532,7 +151449,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135543,7 +151461,8 @@ "args": [ { "type": "datespan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135554,7 +151473,8 @@ "args": [ { "type": "tstzspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135565,7 +151485,8 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135576,7 +151497,8 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135587,7 +151509,8 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135598,7 +151521,8 @@ "args": [ { "type": "datespanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135609,7 +151533,8 @@ "args": [ { "type": "tstzspanset", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135620,7 +151545,8 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -135642,11 +151568,13 @@ "args": [ { "type": "geometry(Polygon)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135663,11 +151591,13 @@ "args": [ { "type": "geometry(Polygon)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Polygon)", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135684,15 +151614,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Point)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135709,15 +151642,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "geometry(Polygon)", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135734,15 +151670,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135759,15 +151698,18 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135784,11 +151726,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -135799,11 +151743,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -135814,11 +151760,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -135829,11 +151777,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -135844,11 +151794,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -135859,11 +151811,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -135874,11 +151828,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -135889,11 +151845,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -135904,11 +151862,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -135919,11 +151879,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -135934,11 +151896,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "boolean", @@ -135949,11 +151913,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -135964,11 +151930,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -135979,11 +151947,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -135994,11 +151964,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -136009,11 +151981,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "timestamptz", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -136067,15 +152041,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "intspan[]", @@ -136086,15 +152063,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "bigintspan[]", @@ -136105,15 +152085,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "floatspan[]", @@ -136130,15 +152113,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tbox[]", @@ -136149,15 +152135,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tbox[]", @@ -136168,15 +152157,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "tbox[]", @@ -136193,11 +152185,13 @@ "args": [ { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -136208,11 +152202,13 @@ "args": [ { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -136223,11 +152219,13 @@ "args": [ { "type": "cbufferset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "cbuffer", @@ -136238,11 +152236,13 @@ "args": [ { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -136253,11 +152253,13 @@ "args": [ { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -136268,11 +152270,13 @@ "args": [ { "type": "pcpointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpoint", @@ -136283,11 +152287,13 @@ "args": [ { "type": "pcpatchset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pcpatch", @@ -136298,11 +152304,13 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -136313,11 +152321,13 @@ "args": [ { "type": "poseset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "pose", @@ -136328,11 +152338,13 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -136343,11 +152355,13 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -136358,11 +152372,13 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -136373,11 +152389,13 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -136388,11 +152406,13 @@ "args": [ { "type": "geomset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geometry", @@ -136403,11 +152423,13 @@ "args": [ { "type": "geogset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geography", @@ -136418,11 +152440,13 @@ "args": [ { "type": "h3indexset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -136433,11 +152457,13 @@ "args": [ { "type": "th3index", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "h3index", @@ -136448,11 +152474,13 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bool", @@ -136463,11 +152491,13 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -136478,11 +152508,13 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -136493,11 +152525,13 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -136508,11 +152542,13 @@ "args": [ { "type": "ttext", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -136523,11 +152559,13 @@ "args": [ { "type": "intset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "integer", @@ -136538,11 +152576,13 @@ "args": [ { "type": "bigintset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -136553,11 +152593,13 @@ "args": [ { "type": "floatset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -136568,11 +152610,13 @@ "args": [ { "type": "textset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "text", @@ -136583,11 +152627,13 @@ "args": [ { "type": "dateset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "date", @@ -136598,11 +152644,13 @@ "args": [ { "type": "tstzset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "timestamptz", @@ -136613,11 +152661,13 @@ "args": [ { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -136628,11 +152678,13 @@ "args": [ { "type": "npointset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "npoint", @@ -136738,7 +152790,8 @@ "args": [ { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -136749,7 +152802,8 @@ "args": [ { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -136760,7 +152814,8 @@ "args": [ { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geomset", @@ -136771,7 +152826,8 @@ "args": [ { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "geogset", @@ -136782,7 +152838,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intset", @@ -136793,7 +152850,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintset", @@ -136804,7 +152862,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatset", @@ -136821,7 +152880,8 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "intspan", @@ -136832,7 +152892,8 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigintspan", @@ -136843,7 +152904,8 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "floatspan", @@ -136865,15 +152927,18 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "SETOF", @@ -136884,15 +152949,18 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "SETOF", @@ -136903,15 +152971,18 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" } ], "returns": "SETOF", @@ -136937,15 +153008,18 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" } ], "returns": "SETOF", @@ -136962,23 +153036,28 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "int", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -136989,23 +153068,28 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -137016,23 +153100,28 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "tbox[]", @@ -137049,23 +153138,28 @@ "args": [ { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "integer", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -137076,23 +153170,28 @@ "args": [ { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "bigint", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -137103,23 +153202,28 @@ "args": [ { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -137145,23 +153249,28 @@ "args": [ { "type": "tbox", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "float", - "hasDefault": true + "hasDefault": true, + "default": "0.0" }, { "type": "timestamptz", - "hasDefault": true + "hasDefault": true, + "default": "'2000-01-03'" } ], "returns": "SETOF", @@ -137203,7 +153312,8 @@ "args": [ { "type": "stbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -137225,15 +153335,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137244,15 +153357,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137263,15 +153379,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137288,15 +153407,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "trgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137307,15 +153429,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tcbuffer", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137326,15 +153451,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137345,15 +153473,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpcpatch", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137364,15 +153495,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137383,15 +153517,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeompoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137402,15 +153539,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeogpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137421,15 +153561,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeometry", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137440,15 +153583,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tgeography", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137459,15 +153605,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137478,15 +153627,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tbigint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137497,15 +153649,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tfloat", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137516,15 +153671,18 @@ "args": [ { "type": "internal", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "tnpoint", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "interval", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "internal", @@ -137541,7 +153699,8 @@ "args": [ { "type": "tbool", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tstzspanset", @@ -137563,7 +153722,8 @@ "args": [ { "type": "intspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "int", @@ -137574,7 +153734,8 @@ "args": [ { "type": "bigintspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "bigint", @@ -137585,7 +153746,8 @@ "args": [ { "type": "floatspan", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -137596,11 +153758,13 @@ "args": [ { "type": "intspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "int", @@ -137611,11 +153775,13 @@ "args": [ { "type": "bigintspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "bigint", @@ -137626,11 +153792,13 @@ "args": [ { "type": "floatspanset", - "hasDefault": false + "hasDefault": false, + "default": null }, { "type": "boolean", - "hasDefault": true + "hasDefault": true, + "default": "FALSE" } ], "returns": "float", @@ -137680,7 +153848,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -137702,7 +153871,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -137724,7 +153894,8 @@ "args": [ { "type": "tpose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "tfloat", @@ -137735,7 +153906,8 @@ "args": [ { "type": "pose", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float", @@ -137757,7 +153929,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -137779,7 +153952,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -137801,7 +153975,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", @@ -137823,7 +153998,8 @@ "args": [ { "type": "tpcbox", - "hasDefault": false + "hasDefault": false, + "default": null } ], "returns": "float8", diff --git a/codegen/output/MobilitySparkConnectExtensionsGen.scala b/codegen/output/MobilitySparkConnectExtensionsGen.scala index ff5635bb..c3c5bbea 100644 --- a/codegen/output/MobilitySparkConnectExtensionsGen.scala +++ b/codegen/output/MobilitySparkConnectExtensionsGen.scala @@ -28,10 +28,10 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) case _ => StringType } private def inj(ext: SparkSessionExtensions, name: String, arity: Int, - argTs: Array[String], retT: String, udf: AnyRef): Unit = { + argTs: Array[String], retT: String, udf: AnyRef, defaults: Array[AnyRef]): Unit = { val builder = (children: Seq[Expression]) => { val n = math.min(children.size, arity) - ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity), dt(retT), children, + ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity, defaults), dt(retT), children, argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) } try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) @@ -52,91 +52,132 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) } def apply(ext: SparkSessionExtensions): Unit = { - inj(ext, "Ymax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmax) - inj(ext, "Ymin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmin) - inj(ext, "Zmax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmax) - inj(ext, "Zmin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmin) - inj(ext, "aDisjoint", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.aDisjoint) - inj(ext, "appendInstant", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendInstant) - inj(ext, "appendSequence", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendSequence) - inj(ext, "asMFJSON", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.TemporalUDFs.temporalAsMfjson) - inj(ext, "azimuth", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointAzimuth) - inj(ext, "bigintspan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.bigintSpan) - inj(ext, "convexHull", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointConvexHull) - inj(ext, "dateN", 2, Array[String]("String", "Integer"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dateN) - inj(ext, "dates", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dates) - inj(ext, "dateset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tstzsetToDateset) - inj(ext, "direction", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointDirection) - inj(ext, "eCovers", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eCovers) - inj(ext, "eIntersects", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eIntersectsTgeoTgeo) - inj(ext, "eTouches", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eTouches) - inj(ext, "endDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.endDate) - inj(ext, "endInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endInstant) - inj(ext, "endSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endSequence) - inj(ext, "expandTime", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandTime) - inj(ext, "floatset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.intsetToFloatset) - inj(ext, "frechetDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.temporal.SimilarityUDFs.frechetDistance) - inj(ext, "geometry", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.STBoxUDFs.stboxToGeo) - inj(ext, "getX", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getX) - inj(ext, "getY", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getY) - inj(ext, "getZ", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getZ) - inj(ext, "hasZ", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxHasz) - inj(ext, "initcap", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.textsetInitcap) - inj(ext, "insert", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.insert) - inj(ext, "instantN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.instantN) - inj(ext, "interp", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.interp) - inj(ext, "intset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatsetToIntset) - inj(ext, "intsetFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.IOAliasUDFs.asHexEWKB) - inj(ext, "isGeodetic", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxIsGeodetic) - inj(ext, "lowerInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.lowerInc) - inj(ext, "maxInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.maxInstant) - inj(ext, "merge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.merge) - inj(ext, "minInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.minInstant) - inj(ext, "minusMax", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMax) - inj(ext, "minusMin", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMin) - inj(ext, "nearestApproachDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.geo.GeoUDFs.nearestApproachDistance) - inj(ext, "numDates", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.numDates) - inj(ext, "numInstants", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.TemporalUDFs.numInstants) - inj(ext, "numSequences", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorUDFs.numSequences) - inj(ext, "numTimestamps", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.MoreAccessorUDFs.numTimestamps) - inj(ext, "numValues", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.SpanAccessorUDFs.setNumValues) - inj(ext, "sequenceN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.sequenceN) - inj(ext, "setInterp", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSetInterp) - inj(ext, "set_contains", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setContains) - inj(ext, "set_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setIntersection) - inj(ext, "set_minus", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setMinus) - inj(ext, "set_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setOverlaps) - inj(ext, "set_union", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setUnion) - inj(ext, "shortestLine", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.DistanceUDFs.shortestLineTgeoTgeo) - inj(ext, "span_adjacent", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanAdjacent) - inj(ext, "span_left", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanLeft) - inj(ext, "span_overleft", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverleft) - inj(ext, "span_overright", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverright) - inj(ext, "span_right", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanRight) - inj(ext, "startDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.startDate) - inj(ext, "startInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startInstant) - inj(ext, "startSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startSequence) - inj(ext, "stbox_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.stboxIntersection) - inj(ext, "stbox_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.stboxOverlaps) - inj(ext, "tCovers", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.TempSpatialRelsUDFs.tCoversTgeoGeo) - inj(ext, "temporal_after", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalAfterSpan) - inj(ext, "temporal_before", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalBeforeSpan) - inj(ext, "temporal_overafter", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverafterSpan) - inj(ext, "temporal_overbefore", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverbeforeSpan) - inj(ext, "temporal_teq", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.teqTemporalTemporal) - inj(ext, "temporal_tge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgeTemporalTemporal) - inj(ext, "temporal_tgt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgtTemporalTemporal) - inj(ext, "temporal_tle", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tleTemporalTemporal) - inj(ext, "temporal_tlt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tltTemporalTemporal) - inj(ext, "temporal_tne", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tneTemporalTemporal) - inj(ext, "tfloat", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tintToTfloat) - inj(ext, "timestampN", 2, Array[String]("String", "Integer"), "Timestamp", org.mobilitydb.spark.temporal.MoreAccessorUDFs.timestampN) - inj(ext, "tintInst", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalToTInstant) - inj(ext, "trajectory", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tpointTrajectory) - inj(ext, "twCentroid", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.twCentroid) - inj(ext, "update", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.update) - inj(ext, "upperInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.upperInc) - inj(ext, "volume", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxVolume) + inj(ext, "Ymax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmax, Array[AnyRef](null)) + inj(ext, "Ymin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxYmin, Array[AnyRef](null)) + inj(ext, "Zmax", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmax, Array[AnyRef](null)) + inj(ext, "Zmin", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxZmin, Array[AnyRef](null)) + inj(ext, "aDisjoint", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.aDisjoint, Array[AnyRef](null, null)) + inj(ext, "abs", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MathGapUDFs.abs, Array[AnyRef](null)) + inj(ext, "appendInstant", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendInstant, Array[AnyRef](null, null)) + inj(ext, "appendSequence", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.appendSequence, Array[AnyRef](null, null)) + inj(ext, "asEWKT", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.asEWKT, Array[AnyRef](null, (Integer.valueOf(15): AnyRef))) + inj(ext, "asMFJSON", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.TemporalUDFs.temporalAsMfjson, Array[AnyRef](null, null)) + inj(ext, "asText", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.asText, Array[AnyRef](null, (Integer.valueOf(15): AnyRef))) + inj(ext, "atMax", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.atMax, Array[AnyRef](null)) + inj(ext, "atMin", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.atMin, Array[AnyRef](null)) + inj(ext, "atStbox", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.atStbox, Array[AnyRef](null, null)) + inj(ext, "atTbox", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.atTbox, Array[AnyRef](null, null)) + inj(ext, "atValues", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.atValues, Array[AnyRef](null, null)) + inj(ext, "azimuth", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointAzimuth, Array[AnyRef](null)) + inj(ext, "bigintspan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.bigintSpan, Array[AnyRef](null)) + inj(ext, "convexHull", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointConvexHull, Array[AnyRef](null)) + inj(ext, "cumulativeLength", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.cumulativeLength, Array[AnyRef](null)) + inj(ext, "dateN", 2, Array[String]("String", "Integer"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dateN, Array[AnyRef](null, null)) + inj(ext, "dates", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorAliasUDFs.dates, Array[AnyRef](null)) + inj(ext, "dateset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tstzsetToDateset, Array[AnyRef](null)) + inj(ext, "deltaValue", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MathGapUDFs.deltavalue, Array[AnyRef](null)) + inj(ext, "derivative", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MathGapUDFs.derivative, Array[AnyRef](null)) + inj(ext, "direction", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AnalyticsUDFs.tpointDirection, Array[AnyRef](null)) + inj(ext, "douglasPeuckerSimplify", 2, Array[String]("String", "Double"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSimplifyDp, Array[AnyRef](null, null)) + inj(ext, "dynTimeWarpDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.temporal.SimilarityUDFs.dynamicTimeWarp, Array[AnyRef](null, null)) + inj(ext, "eContains", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eContains, Array[AnyRef](null, null)) + inj(ext, "eCovers", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eCovers, Array[AnyRef](null, null)) + inj(ext, "eIntersects", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eIntersectsTgeoTgeo, Array[AnyRef](null, null)) + inj(ext, "eTouches", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.geo.GeoUDFs.eTouches, Array[AnyRef](null, null)) + inj(ext, "endDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.endDate, Array[AnyRef](null)) + inj(ext, "endInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endInstant, Array[AnyRef](null)) + inj(ext, "endSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.endSequence, Array[AnyRef](null)) + inj(ext, "endSpan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.endSpan, Array[AnyRef](null)) + inj(ext, "expandSpace", 2, Array[String]("String", "Number"), "String", org.mobilitydb.spark.geo.GeoUDFs.expandSpace, Array[AnyRef](null, null)) + inj(ext, "expandTime", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandTime, Array[AnyRef](null, null)) + inj(ext, "floatset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.intsetToFloatset, Array[AnyRef](null)) + inj(ext, "floatspanset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.intspansetToFloat, Array[AnyRef](null)) + inj(ext, "frechetDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.temporal.SimilarityUDFs.frechetDistance, Array[AnyRef](null, null)) + inj(ext, "geometry", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.STBoxUDFs.stboxToGeo, Array[AnyRef](null)) + inj(ext, "getSpace", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorGapUDFs.getSpace, Array[AnyRef](null)) + inj(ext, "getTime", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.getTime, Array[AnyRef](null)) + inj(ext, "getX", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getX, Array[AnyRef](null)) + inj(ext, "getY", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getY, Array[AnyRef](null)) + inj(ext, "getZ", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoUDFs.getZ, Array[AnyRef](null)) + inj(ext, "hasZ", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxHasz, Array[AnyRef](null)) + inj(ext, "initcap", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.textsetInitcap, Array[AnyRef](null)) + inj(ext, "insert", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.insert, Array[AnyRef](null, null)) + inj(ext, "instantN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.instantN, Array[AnyRef](null, null)) + inj(ext, "interp", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.interp, Array[AnyRef](null)) + inj(ext, "intset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatsetToIntset, Array[AnyRef](null)) + inj(ext, "intsetFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.IOAliasUDFs.asHexEWKB, Array[AnyRef](null)) + inj(ext, "isGeodetic", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxIsGeodetic, Array[AnyRef](null)) + inj(ext, "lowerInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.lowerInc, Array[AnyRef](null)) + inj(ext, "maxInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.maxInstant, Array[AnyRef](null)) + inj(ext, "merge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.merge, Array[AnyRef](null, null)) + inj(ext, "minDistSimplify", 2, Array[String]("String", "Double"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSimplifyMinDist, Array[AnyRef](null, null)) + inj(ext, "minDistance", 2, Array[String]("Object", "Object"), "Double", org.mobilitydb.spark.geo.DistanceUDFs.minDistanceTgeoarrTgeoarr, Array[AnyRef](null, null)) + inj(ext, "minInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.minInstant, Array[AnyRef](null)) + inj(ext, "minTimeDeltaSimplify", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSimplifyMinTdelta, Array[AnyRef](null, null)) + inj(ext, "minusMax", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMax, Array[AnyRef](null)) + inj(ext, "minusMin", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusMin, Array[AnyRef](null)) + inj(ext, "minusStbox", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.minusStbox, Array[AnyRef](null, null)) + inj(ext, "minusTbox", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.minusTbox, Array[AnyRef](null, null)) + inj(ext, "minusValues", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorGapUDFs.minusValues, Array[AnyRef](null, null)) + inj(ext, "nearestApproachDistance", 2, Array[String]("String", "String"), "Double", org.mobilitydb.spark.geo.GeoUDFs.nearestApproachDistance, Array[AnyRef](null, null)) + inj(ext, "numDates", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.numDates, Array[AnyRef](null)) + inj(ext, "numInstants", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.TemporalUDFs.numInstants, Array[AnyRef](null)) + inj(ext, "numSequences", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorUDFs.numSequences, Array[AnyRef](null)) + inj(ext, "numSpans", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.SetSpanGapUDFs.numSpans, Array[AnyRef](null)) + inj(ext, "numTimestamps", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.MoreAccessorUDFs.numTimestamps, Array[AnyRef](null)) + inj(ext, "numValues", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.SpanAccessorUDFs.setNumValues, Array[AnyRef](null)) + inj(ext, "scaleTime", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.scale, Array[AnyRef](null, null)) + inj(ext, "sequenceN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.sequenceN, Array[AnyRef](null, null)) + inj(ext, "setInterp", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalSetInterp, Array[AnyRef](null, null)) + inj(ext, "set_contains", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setContains, Array[AnyRef](null, null)) + inj(ext, "set_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setIntersection, Array[AnyRef](null, null)) + inj(ext, "set_minus", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setMinus, Array[AnyRef](null, null)) + inj(ext, "set_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setOverlaps, Array[AnyRef](null, null)) + inj(ext, "set_union", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setUnion, Array[AnyRef](null, null)) + inj(ext, "shortestLine", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.DistanceUDFs.shortestLineTgeoTgeo, Array[AnyRef](null, null)) + inj(ext, "spanN", 2, Array[String]("String", "Integer"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.spann, Array[AnyRef](null, null)) + inj(ext, "span_adjacent", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanAdjacent, Array[AnyRef](null, null)) + inj(ext, "span_left", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanLeft, Array[AnyRef](null, null)) + inj(ext, "span_overleft", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverleft, Array[AnyRef](null, null)) + inj(ext, "span_overright", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverright, Array[AnyRef](null, null)) + inj(ext, "span_right", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanRight, Array[AnyRef](null, null)) + inj(ext, "startDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.startDate, Array[AnyRef](null)) + inj(ext, "startInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startInstant, Array[AnyRef](null)) + inj(ext, "startSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startSequence, Array[AnyRef](null)) + inj(ext, "startSpan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.startSpan, Array[AnyRef](null)) + inj(ext, "stboxFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorAliasUDFs.box2d, Array[AnyRef](null)) + inj(ext, "stbox_intersection", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.stboxIntersection, Array[AnyRef](null, null)) + inj(ext, "stbox_overlaps", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.demo.BerlinMODUDFs.stboxOverlaps, Array[AnyRef](null, null)) + inj(ext, "stbox_union", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.SetSpanGapUDFs.stboxUnion, Array[AnyRef](null, null)) + inj(ext, "tCovers", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.geo.TempSpatialRelsUDFs.tCoversTgeoGeo, Array[AnyRef](null, null)) + inj(ext, "tempSubtype", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.tempSubtype, Array[AnyRef](null)) + inj(ext, "temporal_after", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalAfterSpan, Array[AnyRef](null, null)) + inj(ext, "temporal_before", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalBeforeSpan, Array[AnyRef](null, null)) + inj(ext, "temporal_overafter", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverafterSpan, Array[AnyRef](null, null)) + inj(ext, "temporal_overbefore", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.PosOpsUDFs.temporalOverbeforeSpan, Array[AnyRef](null, null)) + inj(ext, "temporal_teq", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.teqTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "temporal_tge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgeTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "temporal_tgt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tgtTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "temporal_tle", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tleTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "temporal_tlt", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tltTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "temporal_tne", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.BoolOpsUDFs.tneTemporalTemporal, Array[AnyRef](null, null)) + inj(ext, "tfloat", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tintToTfloat, Array[AnyRef](null)) + inj(ext, "timestampN", 2, Array[String]("String", "Integer"), "Timestamp", org.mobilitydb.spark.temporal.MoreAccessorUDFs.timestampN, Array[AnyRef](null, null)) + inj(ext, "tintFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.npoint.NpointUDFs.routes, Array[AnyRef](null)) + inj(ext, "tintInst", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.temporalToTInstant, Array[AnyRef](null)) + inj(ext, "tintSeq", 1, Array[String]("String"), "String", org.mobilitydb.spark.pose.PoseUDFs.tposeSeq, Array[AnyRef](null)) + inj(ext, "tintSeqSet", 2, Array[String]("String", "Timestamp"), "String", org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.ttextInst, Array[AnyRef](null, null)) + inj(ext, "tintSeqSetGaps", 2, Array[String]("String[]", "String"), "String", org.mobilitydb.spark.pose.PoseUDFs.tposeSeqSetGaps, Array[AnyRef](null, null)) + inj(ext, "trajectory", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tpointTrajectory, Array[AnyRef](null)) + inj(ext, "traversedArea", 2, Array[String]("String", "Boolean"), "String", org.mobilitydb.spark.temporal.AccessorGapUDFs.traversedArea, Array[AnyRef](null, null)) + inj(ext, "trend", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MathGapUDFs.trend, Array[AnyRef](null)) + inj(ext, "twAvg", 1, Array[String]("String"), "Double", org.mobilitydb.spark.temporal.MathGapUDFs.twavg, Array[AnyRef](null)) + inj(ext, "twCentroid", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.twCentroid, Array[AnyRef](null)) + inj(ext, "update", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.update, Array[AnyRef](null, null)) + inj(ext, "upperInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.upperInc, Array[AnyRef](null)) + inj(ext, "valueSpan", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.AccessorAliasUDFs.valueSpan, Array[AnyRef](null)) + inj(ext, "volume", 1, Array[String]("String"), "Double", org.mobilitydb.spark.geo.STBoxUDFs.stboxVolume, Array[AnyRef](null)) + inj(ext, "whenTrue", 1, Array[String]("String"), "String", org.mobilitydb.spark.demo.BerlinMODUDFs.whenTrue, Array[AnyRef](null)) // multi-impl: per-row arg0 MEOS-type-tag dispatch injMulti(ext, "SRID", 1, Array[String]("String"), "Integer", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSrid: AnyRef)), (org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointSrid: AnyRef)) @@ -160,7 +201,6 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // the differentiating arg, e.g. atTime on the time argument): // aDwithin -> ['aDwithin', 'aDwithinGeo'] // aIntersects -> ['aIntersects', 'eIntersects'] - // abs -> ['abs', 'tnumberAbs'] // always_eq -> ['alwaysEqBoolTbool', 'alwaysEqFloatTfloat', 'alwaysEqIntTint', 'alwaysEqTboolBool', 'alwaysEqTemporal', 'alwaysEqTfloatFloat', 'alwaysEqTintInt'] // always_ge -> ['alwaysGeFloatTfloat', 'alwaysGeIntTint', 'alwaysGeTemporal', 'alwaysGeTfloatFloat', 'alwaysGeTintInt'] // always_gt -> ['alwaysGtFloatTfloat', 'alwaysGtIntTint', 'alwaysGtTemporal', 'alwaysGtTfloatFloat', 'alwaysGtTintInt'] @@ -169,30 +209,16 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // always_ne -> ['alwaysNeBoolTbool', 'alwaysNeFloatTfloat', 'alwaysNeIntTint', 'alwaysNeTboolBool', 'alwaysNeTemporal', 'alwaysNeTfloatFloat', 'alwaysNeTintInt'] // angularDifference -> ['tnumberAngularDifference', 'tpointAngularDifference'] // area -> ['stboxArea', 'stboxPerimeter'] - // asEWKT -> ['asEWKT', 'tpointAsEWKT'] - // asText -> ['asText', 'tpointAsText'] // atGeometry -> ['atElevation', 'atGeometry', 'tgeoAtGeom', 'tpointAtElevation'] - // atMax -> ['atMax', 'temporalAtMax'] - // atMin -> ['atMin', 'temporalAtMin'] - // atStbox -> ['atStbox', 'tgeoAtStbox'] - // atTbox -> ['atTbox', 'tnumberAtTbox'] // atTime -> ['atSpan', 'atSpanset', 'atTime', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset'] // atValue -> ['tboolAtValue', 'tfloatAtValue', 'tintAtValue', 'tpointAtValue', 'ttextAtValue'] - // atValues -> ['atValues', 'temporalAtValues'] // bearing -> ['bearing', 'bearingToPoint'] // ceil -> ['ceil', 'floatsetCeil', 'floatspansetCeil', 'tfloatCeil'] - // cumulativeLength -> ['cumulativeLength', 'tpointCumulativeLength'] // degrees -> ['degrees', 'floatsetDegrees', 'tfloatDegrees'] // deleteTime -> ['deleteTime', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset'] - // deltaValue -> ['deltavalue', 'tnumberDeltaValue'] - // derivative -> ['derivative', 'tfloatDerivative'] - // douglasPeuckerSimplify -> ['douglasPeuckerSimplify', 'temporalSimplifyDp'] // duration -> ['datespanDuration', 'duration', 'tstzspanDuration', 'tstzspansetDuration'] - // dynTimeWarpDistance -> ['dynTimeWarpDistance', 'dynamicTimeWarp'] - // eContains -> ['eContains', 'geomContains'] // eDisjoint -> ['eDisjoint', 'eDisjointTgeoTgeo'] // eDwithin -> ['eDwithin', 'eDwithinGeo'] - // endSpan -> ['endSpan', 'spansetEndSpan'] // endTimestamp -> ['endTimestamp', 'tstzspansetEndTimestamptz'] // endValue -> ['tboolEndValue', 'tfloatEndValue', 'tintEndValue', 'tpointEndValue', 'ttextEndValue'] // ever_eq -> ['everEqBoolTbool', 'everEqFloatTfloat', 'everEqIntTint', 'everEqTboolBool', 'everEqTemporal', 'everEqTfloatFloat', 'everEqTintInt'] @@ -201,37 +227,24 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // ever_le -> ['everLeFloatTfloat', 'everLeIntTint', 'everLeTemporal', 'everLeTfloatFloat', 'everLeTintInt'] // ever_lt -> ['everLtFloatTfloat', 'everLtIntTint', 'everLtTemporal', 'everLtTfloatFloat', 'everLtTintInt'] // ever_ne -> ['everNeFloatTfloat', 'everNeIntTint', 'everNeTboolBool', 'everNeTemporal', 'everNeTfloatFloat', 'everNeTintInt'] - // expandSpace -> ['expandSpace', 'stboxExpandSpace'] // floatspan -> ['tboxToFloatspan', 'tboxToIntspan'] - // floatspanset -> ['floatspanset', 'intspansetToFloat'] // floor -> ['floatsetFloor', 'floatspansetFloor', 'floor', 'tfloatFloor'] - // getSpace -> ['getSpace', 'stboxGetSpace'] - // getTime -> ['getTime', 'time'] // getValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'textsetEndValue', 'tnumberValuespans', 'tstzsetEndValue', 'ttextValueAtTimestamptz'] // length -> ['length', 'speed', 'tpointLength', 'tpointSpeed'] // ln -> ['exp', 'ln', 'log10', 'tfloatExp', 'tfloatLn', 'tfloatLog10'] // lower -> ['bigintspanLower', 'datespanLower', 'floatspanLower', 'floatspansetLower', 'intspanLower', 'intspansetLower', 'textsetLower', 'tstzspanLower', 'tstzspansetLower', 'ttextLower'] // maxValue -> ['tfloatMaxValue', 'tintMaxValue', 'ttextMaxValue'] - // minDistSimplify -> ['minDistSimplify', 'temporalSimplifyMinDist'] - // minDistance -> ['minDistance', 'minDistanceTgeoarrTgeoarr'] - // minTimeDeltaSimplify -> ['minTimeDeltaSimplify', 'temporalSimplifyMinTdelta'] // minValue -> ['tfloatMinValue', 'tintMinValue', 'ttextMinValue'] // minusGeometry -> ['tgeoMinusGeom', 'tpointMinusElevation'] - // minusStbox -> ['minusStbox', 'tgeoMinusStbox'] - // minusTbox -> ['minusTbox', 'tnumberMinusTbox'] // minusTime -> ['minusTime', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset'] // minusValue -> ['minusValue', 'tboolMinusValue', 'tfloatMinusValue', 'tintMinusValue', 'tpointMinusValue', 'ttextMinusValue'] - // minusValues -> ['minusValues', 'temporalMinusValues'] - // numSpans -> ['numSpans', 'spansetNumSpans'] // radians -> ['floatsetRadians', 'radians', 'tfloatRadians'] - // scaleTime -> ['scale', 'temporalScaleTime'] // scaleValue -> ['tfloatScaleValue', 'tintScaleValue'] // set -> ['floatToSet', 'intToSet', 'timestamptzToSet'] // set_distance -> ['distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'setDistance', 'set_distance'] // shift -> ['floatspanShiftScale', 'floatspansetShiftScale', 'intspanShiftScale', 'intspansetShiftScale', 'shiftScale', 'tstzspanShiftScale', 'tstzspansetShiftScale'] // shiftScaleValue -> ['tfloatShiftScaleValue', 'tintShiftScaleValue'] // shiftValue -> ['tfloatShiftValue', 'tintShiftValue'] - // spanN -> ['spann', 'spansetSpanN'] // span_contained -> ['spanContainedIn', 'spanContainedInSpanset'] // span_contains -> ['spanContains', 'spansetContainsSpan'] // span_distance -> ['bigintspanDistance', 'datespanDistance', 'floatspanDistance', 'intspanDistance', 'spanDistance', 'span_distance', 'spanset_distance', 'timeDistance', 'time_distance', 'time_distance_spanset', 'tstzspanDistance'] @@ -239,43 +252,33 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // span_minus -> ['spansetMinus', 'spansetMinusSpan', 'spanset_minus'] // span_overlaps -> ['spanOverlaps', 'spansetOverlaps'] // span_union -> ['spansetUnion', 'spansetUnionSpan', 'spanset_union'] - // startSpan -> ['spansetStartSpan', 'startSpan'] // startTimestamp -> ['getTimestamp', 'startTimestamp', 'tstzspansetStartTimestamptz'] // startValue -> ['datesetStartValue', 'floatsetStartValue', 'getValue', 'intsetStartValue', 'startValue', 'tboolGetValue', 'tboolStartValue', 'textsetStartValue', 'tfloatGetValue', 'tfloatStartValue', 'tintGetValue', 'tintStartValue', 'tpointGetValue', 'tpointStartValue', 'tstzsetStartValue', 'ttextGetValue', 'ttextStartValue'] - // stboxFromHexWKB -> ['box2d', 'box3d', 'nadTgeoStbox'] - // stbox_union -> ['stboxUnion', 'stbox_union', 'unionStboxStbox'] // tContains -> ['tContains', 'tContainsTgeoGeo'] // tDisjoint -> ['tDisjoint', 'tDisjointTgeoTgeo'] // tDistance -> ['tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber'] // tDwithin -> ['tDwithin', 'tDwithinTgeoGeo'] // tIntersects -> ['tIntersects', 'tIntersectsTgeoTgeo'] // tTouches -> ['tTouches', 'tTouchesTogeoTgeo'] - // tempSubtype -> ['tempSubtype', 'temporalSubtype'] // textset_cat -> ['textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText'] // timestamps -> ['atValue', 'tstzspansetNumTimestamps'] // tint -> ['tboolInst', 'tcbufferInst', 'tfloatInst', 'tfloatToTint', 'tgeompointInst', 'tintInst', 'tposeInst'] - // tintFromHexWKB -> ['avgValue', 'memSize', 'minDistanceTgeoTgeo', 'nadTgeoTgeo', 'routes'] - // tintSeq -> ['tcbufferSeq', 'temporalToTSequence', 'tnpointSeq', 'tposeSeq', 'trgeometrySeq'] - // tintSeqSet -> ['tcbufferSeqSet', 'temporalToTSequenceSet', 'tnpointSeqSet', 'tposeSeqSet', 'trgeometrySeqSet', 'ttextInst'] - // tintSeqSetGaps -> ['tcbufferSeqSetGaps', 'tnpointSeqSetGaps', 'tposeSeqSetGaps', 'trgeometrySeqSetGaps'] // tnumber_add -> ['addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'tnumber_add'] // tnumber_div -> ['divTfloatFloat', 'divTnumberTnumber', 'tnumber_div'] // tnumber_mul -> ['multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'tnumber_mul'] // tnumber_sub -> ['subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tnumber_sub'] - // traversedArea -> ['tgeoTraversedArea', 'traversedArea'] - // trend -> ['tnumberTrend', 'trend'] - // twAvg -> ['tnumberTwavg', 'twavg'] // upper -> ['bigintspanUpper', 'datespanUpper', 'floatspanUpper', 'floatspansetUpper', 'intspanUpper', 'intspansetUpper', 'textsetUpper', 'tstzspanUpper', 'tstzspansetUpper', 'ttextUpper'] // valueAtTimestamp -> ['tboolValueAtTimestamptz', 'tfloatValueAtTimestamptz', 'tintValueAtTimestamptz', 'valueAtTimestamp'] // valueN -> ['everNeBoolTbool', 'tboolValueN', 'tfloatValueN', 'tintValueN', 'tpointValueN', 'ttextInitcap', 'ttextValueN', 'valueN'] - // valueSpan -> ['tnumberToSpan', 'valueSpan'] - // whenTrue -> ['tboolWhenTrue', 'whenTrue'] // width -> ['bigintspanWidth', 'bigintspansetWidth', 'floatspanWidth', 'floatspansetWidth', 'intspanWidth', 'intspansetWidth', 'width'] } object MobilitySparkConnectExtensionsGen { - private def call(u: AnyRef, m: Int, a: Seq[Any]): Any = { - def g(i: Int): AnyRef = if (i < a.length) a(i).asInstanceOf[AnyRef] else null + private def call(u: AnyRef, m: Int, a: Seq[Any], defaults: Array[AnyRef]): Any = { + // fill an omitted optional arg with the canonical SQL default, not a null pad + def g(i: Int): AnyRef = + if (i < a.length) a(i).asInstanceOf[AnyRef] + else if (defaults != null && i < defaults.length) defaults(i) else null m match { case 1 => u.asInstanceOf[UDF1[Any, Any]].call(g(0)) case 2 => u.asInstanceOf[UDF2[Any, Any, Any]].call(g(0), g(1)) @@ -283,11 +286,11 @@ object MobilitySparkConnectExtensionsGen { case _ => u.asInstanceOf[UDF4[Any, Any, Any, Any, Any]].call(g(0), g(1), g(2), g(3)) } } - def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => call(u, m, Seq(a)) - case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b)) - case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) - case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) + def fn(n: Int, u: AnyRef, m: Int, defaults: Array[AnyRef]): AnyRef = n match { + case 1 => (a: Any) => call(u, m, Seq(a), defaults) + case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b), defaults) + case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c), defaults) + case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d), defaults) } // route by arg0's MEOS type-tag name to the matching type-specific impl private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { @@ -298,9 +301,9 @@ object MobilitySparkConnectExtensionsGen { case _ => dflt } def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a)) } - case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b)) } - case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c)) } - case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d)) } + case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a), null) } + case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b), null) } + case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c), null) } + case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d), null) } } } diff --git a/codegen/tools/extract_named_surface.py b/codegen/tools/extract_named_surface.py index 855d8392..dcf84d3a 100644 --- a/codegen/tools/extract_named_surface.py +++ b/codegen/tools/extract_named_surface.py @@ -33,12 +33,16 @@ def split_top(args): return [a.strip() for a in out if a.strip()] def parse_arg(a): - """One arg -> (type, has_default). Forms: 'type' | 'name type' | '[name] type DEFAULT v'.""" - has_def = bool(re.search(r'\bDEFAULT\b', a, re.IGNORECASE)) - head = re.split(r'\bDEFAULT\b', a, flags=re.IGNORECASE)[0].strip() + """One arg -> (type, has_default, default). Forms: 'type' | 'name type' | + '[name] type DEFAULT v'. The default literal (after DEFAULT) lets the registrar + fill an omitted optional argument with the canonical value, not a null pad.""" + parts = re.split(r'\bDEFAULT\b', a, flags=re.IGNORECASE) + has_def = len(parts) > 1 + head = parts[0].strip() toks = head.split() typ = toks[-1] if toks else head # type is the last token before DEFAULT - return typ, has_def + default = parts[1].strip().rstrip(',') if has_def else None + return typ, has_def, default def parse_sql(root): funcs = {} @@ -46,7 +50,7 @@ def parse_sql(root): text = open(f, encoding='utf-8', errors='ignore').read() for m in CREATE_RE.finditer(text): name, arglist, ret = m.group(1), m.group(2), m.group(3) - args = [dict(zip(('type', 'hasDefault'), parse_arg(a))) for a in split_top(arglist)] + args = [dict(zip(('type', 'hasDefault', 'default'), parse_arg(a))) for a in split_top(arglist)] req = sum(1 for a in args if not a['hasDefault']) funcs.setdefault(name, []).append( {'args': args, 'returns': ret, 'minArity': req, 'maxArity': len(args)}) diff --git a/codegen/tools/generate_spark_registrar.py b/codegen/tools/generate_spark_registrar.py index 03228d03..5b9c4108 100644 --- a/codegen/tools/generate_spark_registrar.py +++ b/codegen/tools/generate_spark_registrar.py @@ -75,6 +75,12 @@ def impl_routes(spark): names = sorted({sn for c in fn['c'] for sn in meos2spark.get(c['meos'], [])}) if len(names) == 1: single.append((fn['name'], names[0])) + elif len(names) > 1 and len({impls[s]['primaryMeos'] for s in names}) == 1: + # several Spark registrations (bare + camelCase) of one MEOS op: single op, + # bind the identity name to the impl named for it (else the shortest name) + pick = next((s for s in names if s.lower() == fn['name'].lower()), None) \ + or min(names, key=len) + single.append((fn['name'], pick)) elif len(names) > 1: cats = {category(prim2ctype0.get(impls[s]['primaryMeos'], '')) for s in names} # arg0 distinguishes only when impls differ on the FIRST-arg category and @@ -96,6 +102,29 @@ def impl_routes(spark): else: multi.append((fn['name'], names)) +import re as _re +named_by_name = {fn['name']: fn for fn in named['functions']} + +def scala_default(v): + if v is not None and _re.fullmatch(r'-?\d+', v): + return f'(Integer.valueOf({v}): AnyRef)' + return 'null' # absent or non-integer default: fall back to a null pad + +def defaults_arr(canon, arity): + """Fill an omitted optional arg with the SQL default ONLY when the impl exposes + exactly one overload's worth of args (impl arity == that overload's maxArity, so + positions align); otherwise null-pad and let the impl's own default hold (the + impl may expose a non-leading subset of the canonical args).""" + fn = named_by_name.get(canon) + ov = next((o for o in fn['overloads'] if o['maxArity'] == arity), None) if fn else None + if not ov: + items = ', '.join('null' for _ in range(arity)) + else: + items = ', '.join( + scala_default(ov['args'][i].get('default') if i < len(ov['args']) else None) + for i in range(arity)) + return f'Array[AnyRef]({items})' + lines = [] seen = set() for canon, spark in single: @@ -106,7 +135,7 @@ def impl_routes(spark): fqn = f"{d['pkg']}.{d['class']}.{d['field']}" argts = ', '.join(f'"{t}"' for t in d['argTypes']) lines.append(f' inj(ext, "{canon}", {d["arity"]}, Array[String]({argts}), ' - f'"{d["retType"]}", {fqn})') + f'"{d["retType"]}", {fqn}, {defaults_arr(canon, d["arity"])})') dlines = [] for canon, names, routes, default in dispatch: @@ -153,10 +182,10 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) case _ => StringType } private def inj(ext: SparkSessionExtensions, name: String, arity: Int, - argTs: Array[String], retT: String, udf: AnyRef): Unit = { + argTs: Array[String], retT: String, udf: AnyRef, defaults: Array[AnyRef]): Unit = { val builder = (children: Seq[Expression]) => { val n = math.min(children.size, arity) - ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity), dt(retT), children, + ScalaUDF(MobilitySparkConnectExtensionsGen.fn(n, udf, arity, defaults), dt(retT), children, argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) } try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) @@ -194,8 +223,11 @@ def apply(ext: SparkSessionExtensions): Unit = { # Companion object: the shipped ScalaUDF closures live here so they capture # only the serializable UDF object, never the (non-serializable) extension. f.write('''object MobilitySparkConnectExtensionsGen { - private def call(u: AnyRef, m: Int, a: Seq[Any]): Any = { - def g(i: Int): AnyRef = if (i < a.length) a(i).asInstanceOf[AnyRef] else null + private def call(u: AnyRef, m: Int, a: Seq[Any], defaults: Array[AnyRef]): Any = { + // fill an omitted optional arg with the canonical SQL default, not a null pad + def g(i: Int): AnyRef = + if (i < a.length) a(i).asInstanceOf[AnyRef] + else if (defaults != null && i < defaults.length) defaults(i) else null m match { case 1 => u.asInstanceOf[UDF1[Any, Any]].call(g(0)) case 2 => u.asInstanceOf[UDF2[Any, Any, Any]].call(g(0), g(1)) @@ -203,11 +235,11 @@ def g(i: Int): AnyRef = if (i < a.length) a(i).asInstanceOf[AnyRef] else null case _ => u.asInstanceOf[UDF4[Any, Any, Any, Any, Any]].call(g(0), g(1), g(2), g(3)) } } - def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => call(u, m, Seq(a)) - case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b)) - case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c)) - case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d)) + def fn(n: Int, u: AnyRef, m: Int, defaults: Array[AnyRef]): AnyRef = n match { + case 1 => (a: Any) => call(u, m, Seq(a), defaults) + case 2 => (a: Any, b: Any) => call(u, m, Seq(a, b), defaults) + case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c), defaults) + case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d), defaults) } // route by arg0's MEOS type-tag name to the matching type-specific impl private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { @@ -218,10 +250,10 @@ def fn(n: Int, u: AnyRef, m: Int): AnyRef = n match { case _ => dflt } def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a)) } - case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b)) } - case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c)) } - case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d)) } + case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a), null) } + case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b), null) } + case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c), null) } + case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d), null) } } } ''') From c40b9cb258cfff7f90fab1438414397aad739cab Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 6 Jun 2026 08:39:19 +0200 Subject: [PATCH 14/14] Dispatch on the differentiating argument and apply per-impl defaults Generalize the multi-impl dispatch from arg0 to the first argument position at which the type-specific impls differ, peeking that argument's MEOS type tag: atTime routes on its time argument (tstzspan/tstzset/tstzspanset), duration routes on its span argument. The concrete type for a generic Span/Set receiver is taken from the MEOS type-name embedded in the impl's primary function name. Each dispatch route carries its impl's arity and SQL-default fills, so an omitted optional argument of the chosen impl is filled with the canonical default rather than a null pad (duration on a tstzspanset supplies boundspan=FALSE); boolean SQL defaults are emitted alongside integer ones. The named surface is regenerated from the pin, so speed(tgeompoint) resolves through the dedicated Tpoint_speed wrapper to tpoint_speed and binds to the speed impl. --- codegen/input/meos-named-surface.json | 531 ++++++++++-------- .../MobilitySparkConnectExtensionsGen.scala | 124 ++-- codegen/tools/generate_spark_registrar.py | 167 +++--- 3 files changed, 460 insertions(+), 362 deletions(-) diff --git a/codegen/input/meos-named-surface.json b/codegen/input/meos-named-surface.json index 9464b9de..1bcc6c1d 100644 --- a/codegen/input/meos-named-surface.json +++ b/codegen/input/meos-named-surface.json @@ -1,6 +1,6 @@ { "source": "MobilityDB SQL catalog + doxygen @sqlfn/@csqlfn chain", - "functionCount": 1284, + "functionCount": 1285, "functions": [ { "name": "NearestApproachDistance", @@ -13358,12 +13358,12 @@ { "type": "int4", "hasDefault": true, - "default": null + "default": "0" }, { "type": "int4", "hasDefault": true, - "default": null + "default": "-1" } ], "returns": "text", @@ -13380,12 +13380,12 @@ { "type": "int4", "hasDefault": true, - "default": null + "default": "0" }, { "type": "int4", "hasDefault": true, - "default": null + "default": "-1" } ], "returns": "text", @@ -14679,17 +14679,17 @@ { "type": "int4", "hasDefault": true, - "default": null + "default": "4096" }, { "type": "int4", "hasDefault": true, - "default": null + "default": "256" }, { "type": "bool", "hasDefault": true, - "default": null + "default": "TRUE)\n-- RETURNS tgeompoint\nRETURNS geom_times\nAS 'MODULE_PATHNAME','Tpoint_AsMVTGeom'\nLANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n/*****************************************************************************/\n\nCREATE TYPE geom_wlof AS (\n geom geometry" }, { "type": "wlocalOutlierFactor(geometry[]", @@ -14704,7 +14704,7 @@ { "type": "float", "hasDefault": true, - "default": null + "default": "0.0" } ], "returns": "SETOF", @@ -17312,7 +17312,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpatch", @@ -17334,7 +17334,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpoint", @@ -17362,7 +17362,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpatch", @@ -20953,7 +20953,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "floatspan[]", @@ -20975,7 +20975,7 @@ { "type": "date", "hasDefault": true, - "default": "0" + "default": "'2000-01-01'" } ], "returns": "datespan[]", @@ -20997,7 +20997,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "0" + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -21063,7 +21063,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "floatspan[]", @@ -21085,7 +21085,7 @@ { "type": "date", "hasDefault": true, - "default": "0" + "default": "'2000-01-01'" } ], "returns": "datespan[]", @@ -21107,7 +21107,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "0" + "default": "'2000-01-03'" } ], "returns": "tstzspan[]", @@ -30993,6 +30993,14 @@ } ], "c": [ + { + "pg": "Edwithin_trgeometry_geo", + "meos": "edwithin_trgeo_geo" + }, + { + "pg": "Edwithin_trgeometry_trgeometry", + "meos": "edwithin_trgeo_trgeo" + }, { "pg": "Edwithin_tcbuffer_geo", "meos": "ea_dwithin_tcbuffer_geo" @@ -36498,7 +36506,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tgeompoint", @@ -36530,7 +36538,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tfloat", @@ -38461,7 +38469,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "floatspan", @@ -38483,7 +38491,7 @@ { "type": "date", "hasDefault": true, - "default": "0" + "default": "'2000-01-03'" } ], "returns": "datespan", @@ -38505,7 +38513,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "0" + "default": "'2000-01-03'" } ], "returns": "tstzspan", @@ -38805,12 +38813,12 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" } ], "returns": "stbox", @@ -40147,7 +40155,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'km2'" } ], "returns": "tfloat", @@ -40491,7 +40499,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'km'" } ], "returns": "tfloat", @@ -40609,7 +40617,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'km'" } ], "returns": "tfloat", @@ -40837,46 +40845,6 @@ ], "c": [] }, - { - "name": "h3_latlng_to_cell", - "overloads": [ - { - "args": [ - { - "type": "tgeompoint", - "hasDefault": false, - "default": null - }, - { - "type": "integer", - "hasDefault": false, - "default": null - } - ], - "returns": "th3index", - "minArity": 2, - "maxArity": 2 - }, - { - "args": [ - { - "type": "tgeogpoint", - "hasDefault": false, - "default": null - }, - { - "type": "integer", - "hasDefault": false, - "default": null - } - ], - "returns": "th3index", - "minArity": 2, - "maxArity": 2 - } - ], - "c": [] - }, { "name": "h3_local_ij_to_cell", "overloads": [ @@ -44638,10 +44606,6 @@ "pg": "Tpoint_length", "meos": "tpoint_length" }, - { - "pg": "Tpoint_length", - "meos": "tpoint_speed" - }, { "pg": "Tnpoint_length", "meos": "tnpoint_length" @@ -48800,7 +48764,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpatch", @@ -48822,7 +48786,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpoint", @@ -48850,7 +48814,7 @@ { "type": "boolean", "hasDefault": true, - "default": null + "default": "TRUE" } ], "returns": "tpcpatch", @@ -50879,6 +50843,10 @@ "pg": "NAD_tgeo_tgeo", "meos": "nad_tgeo_tgeo" }, + { + "pg": "NAD_tgeo_tgeo", + "meos": "mindistance_tgeo_tgeo" + }, { "pg": "NAD_tnumber_number", "meos": "nad_tint_int" @@ -61660,6 +61628,18 @@ { "name": "points", "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false, + "default": null + } + ], + "returns": "geomset", + "minArity": 1, + "maxArity": 1 + }, { "args": [ { @@ -61698,6 +61678,10 @@ } ], "c": [ + { + "pg": "Trgeometry_points", + "meos": "trgeometry_points" + }, { "pg": "Tcbuffer_points", "meos": "tcbuffer_members" @@ -64126,6 +64110,18 @@ { "name": "rotation", "overloads": [ + { + "args": [ + { + "type": "trgeometry", + "hasDefault": false, + "default": null + } + ], + "returns": "tfloat", + "minArity": 1, + "maxArity": 1 + }, { "args": [ { @@ -64151,7 +64147,12 @@ "maxArity": 1 } ], - "c": [] + "c": [ + { + "pg": "Trgeometry_rotation", + "meos": "trgeometry_rotation" + } + ] }, { "name": "round", @@ -67377,6 +67378,10 @@ } ], "c": [ + { + "pg": "Temporal_segments", + "meos": "trgeometry_segments" + }, { "pg": "Temporal_segments", "meos": "tsequence_segments" @@ -80100,7 +80105,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80127,12 +80132,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80211,7 +80216,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80238,12 +80243,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80322,7 +80327,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80349,12 +80354,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80433,7 +80438,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80460,12 +80465,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80544,7 +80549,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80571,12 +80576,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80655,7 +80660,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -80682,12 +80687,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80777,7 +80782,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -80804,12 +80809,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80888,7 +80893,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -80915,12 +80920,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -80999,7 +81004,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -81026,12 +81031,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -81110,7 +81115,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -81137,12 +81142,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -81221,7 +81226,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -81248,12 +81253,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", @@ -81355,12 +81360,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -81451,12 +81456,12 @@ { "type": "geometry", "hasDefault": true, - "default": "TRUE" + "default": "'Point(0 0 0)'" }, { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -81556,12 +81561,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -81593,17 +81598,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -81697,12 +81702,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -81734,17 +81739,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -81838,12 +81843,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -81875,17 +81880,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -81979,12 +81984,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -82016,17 +82021,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82120,12 +82125,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -82157,17 +82162,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82261,12 +82266,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "stbox[]", @@ -82298,17 +82303,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82413,12 +82418,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -82450,17 +82455,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82554,12 +82559,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -82591,17 +82596,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82695,12 +82700,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -82732,17 +82737,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82836,12 +82841,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -82873,17 +82878,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -82977,12 +82982,12 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -83014,17 +83019,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" }, { "type": "boolean", @@ -83119,7 +83124,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -83151,17 +83156,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -83245,7 +83250,7 @@ { "type": "boolean", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "TRUE" } ], "returns": "SETOF", @@ -83277,17 +83282,17 @@ { "type": "geometry", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'Point(0 0 0)'" }, { "type": "timestamptz", "hasDefault": true, - "default": "'Point(0 0 0)'" + "default": "'2000-01-03'" }, { "type": "boolean", "hasDefault": true, - "default": "'2000-01-03'" + "default": "TRUE" } ], "returns": "SETOF", @@ -96214,6 +96219,10 @@ "pg": "Tpose_speed", "meos": "tpose_speed" }, + { + "pg": "Tpoint_speed", + "meos": "tpoint_speed" + }, { "pg": "Tnpoint_speed", "meos": "tnpointseq_speed" @@ -99110,6 +99119,14 @@ "pg": "Pose_tstzspan_to_stbox", "meos": "pose_tstzspan_to_stbox" }, + { + "pg": "Geo_timestamptz_to_stbox", + "meos": "geo_timestamptz_to_stbox" + }, + { + "pg": "Geo_tstzspan_to_stbox", + "meos": "geo_tstzspan_to_stbox" + }, { "pg": "Geo_to_stbox", "meos": "geo_stbox" @@ -101003,7 +101020,7 @@ { "type": "interval", "hasDefault": true, - "default": "'0 minutes'" + "default": "'0 minutes')\n -- RETURNS tgeometry\n -- AS 'MODULE_PATHNAME', 'Temporal_stops'\n -- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n-- CREATE FUNCTION stops(tgeography" }, { "type": "float", @@ -104499,17 +104516,17 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" } ], "returns": "tbigint", @@ -104526,7 +104543,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "NULL" } ], "returns": "tbigint", @@ -104579,12 +104596,12 @@ { "type": "interval", "hasDefault": true, - "default": null + "default": "NULL" }, { "type": "float", "hasDefault": true, - "default": null + "default": "NULL" } ], "returns": "tbigint", @@ -105149,7 +105166,7 @@ { "type": "text", "hasDefault": true, - "default": "'step'" + "default": "NULL" } ], "returns": "tbool", @@ -107663,7 +107680,7 @@ { "type": "text", "hasDefault": true, - "default": "'linear'" + "default": "NULL" } ], "returns": "tcbuffer", @@ -135689,7 +135706,7 @@ { "type": "text", "hasDefault": true, - "default": "'linear'" + "default": "NULL" } ], "returns": "tfloat", @@ -137239,6 +137256,29 @@ ], "c": [] }, + { + "name": "tgeogpoint_to_th3index", + "overloads": [ + { + "args": [ + { + "type": "tgeogpoint", + "hasDefault": false, + "default": null + }, + { + "type": "integer", + "hasDefault": false, + "default": null + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, { "name": "tgeogpoint_typmod_in", "overloads": [ @@ -138935,6 +138975,29 @@ ], "c": [] }, + { + "name": "tgeompoint_to_th3index", + "overloads": [ + { + "args": [ + { + "type": "tgeompoint", + "hasDefault": false, + "default": null + }, + { + "type": "integer", + "hasDefault": false, + "default": null + } + ], + "returns": "th3index", + "minArity": 2, + "maxArity": 2 + } + ], + "c": [] + }, { "name": "tgeompoint_typmod_in", "overloads": [ @@ -141279,7 +141342,7 @@ { "type": "text", "hasDefault": true, - "default": "'step'" + "default": "NULL" } ], "returns": "tint", @@ -144410,12 +144473,12 @@ { "type": "integer", "hasDefault": true, - "default": null + "default": "0" }, { "type": "integer", "hasDefault": true, - "default": null + "default": "0" } ], "returns": "tpcbox", @@ -145447,7 +145510,7 @@ { "type": "integer", "hasDefault": true, - "default": null + "default": "0" } ], "returns": "tpcbox", @@ -145513,12 +145576,12 @@ { "type": "integer", "hasDefault": true, - "default": null + "default": "0" }, { "type": "integer", "hasDefault": true, - "default": null + "default": "0" } ], "returns": "tpcbox", @@ -145566,12 +145629,12 @@ { "type": "integer", "hasDefault": true, - "default": null + "default": "0" }, { "type": "integer", "hasDefault": true, - "default": null + "default": "0" } ], "returns": "tpcbox", @@ -145624,12 +145687,12 @@ { "type": "integer", "hasDefault": true, - "default": null + "default": "0" }, { "type": "integer", "hasDefault": true, - "default": null + "default": "0" } ], "returns": "tpcbox", @@ -145708,7 +145771,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" } ], "returns": "tpcpatch", @@ -145730,7 +145793,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" } ], "returns": "tpcpatch", @@ -145789,17 +145852,17 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" } ], "returns": "tpcpatch", @@ -146006,7 +146069,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" } ], "returns": "tpcpoint", @@ -146028,7 +146091,7 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" } ], "returns": "tpcpoint", @@ -146087,17 +146150,17 @@ { "type": "text", "hasDefault": true, - "default": null + "default": "'step'" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" }, { "type": "boolean", "hasDefault": true, - "default": null + "default": "true" } ], "returns": "tpcpoint", @@ -146542,7 +146605,7 @@ { "type": "text", "hasDefault": true, - "default": "'linear'" + "default": "NULL" } ], "returns": "tpose", @@ -146804,7 +146867,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "trgeometry", @@ -146826,7 +146889,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tcbuffer", @@ -146848,7 +146911,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tpose", @@ -146870,7 +146933,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tgeometry", @@ -146892,7 +146955,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tgeography", @@ -146914,7 +146977,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tgeompoint", @@ -146936,7 +146999,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tgeogpoint", @@ -146958,7 +147021,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tint", @@ -146980,7 +147043,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tbigint", @@ -147002,7 +147065,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tfloat", @@ -147024,7 +147087,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "timestamptz", @@ -147046,7 +147109,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tstzset", @@ -147068,7 +147131,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tstzspan", @@ -147090,7 +147153,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tprecision'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n-- CREATE FUNCTION tsample(trgeometry" + "default": "'2000-01-03'" } ], "returns": "tstzspanset", @@ -148041,7 +148104,7 @@ { "type": "bool", "hasDefault": true, - "default": "true" + "default": "FALSE" } ], "returns": "geometry", @@ -148058,7 +148121,7 @@ { "type": "bool", "hasDefault": true, - "default": "true" + "default": "FALSE" } ], "returns": "geometry", @@ -148075,7 +148138,7 @@ { "type": "bool", "hasDefault": true, - "default": "true" + "default": "FALSE" } ], "returns": "geometry", @@ -148092,7 +148155,7 @@ { "type": "bool", "hasDefault": true, - "default": "true" + "default": "FALSE" } ], "returns": "geometry", @@ -148109,7 +148172,7 @@ { "type": "bool", "hasDefault": true, - "default": "true" + "default": "FALSE" } ], "returns": "geography", @@ -148466,7 +148529,7 @@ { "type": "text", "hasDefault": true, - "default": "'linear'" + "default": "NULL" } ], "returns": "trgeometry", @@ -148705,7 +148768,7 @@ { "type": "timestamptz", "hasDefault": true, - "default": "'2000-01-03'" + "default": "'2000-01-03')\n-- RETURNS trgeometry\n-- AS 'MODULE_PATHNAME', 'Temporal_tsample'\n-- LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;\n\n/*****************************************************************************\n * Restriction Functions\n *****************************************************************************/\n\n-- CREATE FUNCTION atValues(trgeometry" }, { "type": "minusValues(trgeometry", @@ -150000,7 +150063,7 @@ { "type": "text", "hasDefault": true, - "default": "'step'" + "default": "NULL" } ], "returns": "ttext", @@ -152096,7 +152159,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "floatspan[]", @@ -152168,7 +152231,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "tbox[]", @@ -152982,7 +153045,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" } ], "returns": "SETOF", @@ -153116,7 +153179,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" }, { "type": "timestamptz", @@ -153218,7 +153281,7 @@ { "type": "float", "hasDefault": true, - "default": "0" + "default": "0.0" }, { "type": "timestamptz", diff --git a/codegen/output/MobilitySparkConnectExtensionsGen.scala b/codegen/output/MobilitySparkConnectExtensionsGen.scala index c3c5bbea..02116d79 100644 --- a/codegen/output/MobilitySparkConnectExtensionsGen.scala +++ b/codegen/output/MobilitySparkConnectExtensionsGen.scala @@ -37,15 +37,16 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } } - // One SQL name over several type-specific impls: dispatch per row on arg0's - // runtime MEOS type tag to the impl whose receiver type matches. - private def injMulti(ext: SparkSessionExtensions, name: String, arity: Int, - argTs: Array[String], retT: String, - routes: Map[String, AnyRef], dflt: AnyRef): Unit = { + // One SQL name over several type-specific impls: dispatch per row on the + // differentiating argument's MEOS type tag to the impl whose receiver matches. + // Each route carries (impl, impl arity, impl SQL-default fills). + private def injMulti(ext: SparkSessionExtensions, name: String, dpos: Int, retT: String, + routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): Unit = { val builder = (children: Seq[Expression]) => { - val n = math.min(children.size, arity) - ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, routes, dflt, arity), dt(retT), children, - argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + val n = children.size + ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, dpos, routes, dflt), dt(retT), children, + children.map(_ => Some(enc("String"))), Some(enc(retT)), Some(name)) } try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } @@ -107,6 +108,7 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "intset", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatsetToIntset, Array[AnyRef](null)) inj(ext, "intsetFromHexWKB", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.IOAliasUDFs.asHexEWKB, Array[AnyRef](null)) inj(ext, "isGeodetic", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.geo.STBoxUDFs.stboxIsGeodetic, Array[AnyRef](null)) + inj(ext, "length", 1, Array[String]("String"), "Double", org.mobilitydb.spark.demo.BerlinMODUDFs.length, Array[AnyRef](null)) inj(ext, "lowerInc", 1, Array[String]("String"), "Boolean", org.mobilitydb.spark.temporal.MoreAccessorUDFs.lowerInc, Array[AnyRef](null)) inj(ext, "maxInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.maxInstant, Array[AnyRef](null)) inj(ext, "merge", 2, Array[String]("String", "String"), "String", org.mobilitydb.spark.temporal.AccessorUDFs.merge, Array[AnyRef](null, null)) @@ -141,6 +143,7 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "span_overleft", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverleft, Array[AnyRef](null, null)) inj(ext, "span_overright", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanOverright, Array[AnyRef](null, null)) inj(ext, "span_right", 2, Array[String]("String", "String"), "Boolean", org.mobilitydb.spark.temporal.SpanAlgebraUDFs.spanRight, Array[AnyRef](null, null)) + inj(ext, "speed", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TemporalUDFs.speed, Array[AnyRef](null)) inj(ext, "startDate", 1, Array[String]("String"), "Integer", org.mobilitydb.spark.temporal.AccessorAliasUDFs.startDate, Array[AnyRef](null)) inj(ext, "startInstant", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startInstant, Array[AnyRef](null)) inj(ext, "startSequence", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MoreAccessorUDFs.startSequence, Array[AnyRef](null)) @@ -169,7 +172,7 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "tintSeqSet", 2, Array[String]("String", "Timestamp"), "String", org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.ttextInst, Array[AnyRef](null, null)) inj(ext, "tintSeqSetGaps", 2, Array[String]("String[]", "String"), "String", org.mobilitydb.spark.pose.PoseUDFs.tposeSeqSetGaps, Array[AnyRef](null, null)) inj(ext, "trajectory", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.TransformUDFs.tpointTrajectory, Array[AnyRef](null)) - inj(ext, "traversedArea", 2, Array[String]("String", "Boolean"), "String", org.mobilitydb.spark.temporal.AccessorGapUDFs.traversedArea, Array[AnyRef](null, null)) + inj(ext, "traversedArea", 2, Array[String]("String", "Boolean"), "String", org.mobilitydb.spark.temporal.AccessorGapUDFs.traversedArea, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef))) inj(ext, "trend", 1, Array[String]("String"), "String", org.mobilitydb.spark.temporal.MathGapUDFs.trend, Array[AnyRef](null)) inj(ext, "twAvg", 1, Array[String]("String"), "Double", org.mobilitydb.spark.temporal.MathGapUDFs.twavg, Array[AnyRef](null)) inj(ext, "twCentroid", 1, Array[String]("String"), "String", org.mobilitydb.spark.geo.GeoAnalyticsUDFs.twCentroid, Array[AnyRef](null)) @@ -180,22 +183,39 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) inj(ext, "whenTrue", 1, Array[String]("String"), "String", org.mobilitydb.spark.demo.BerlinMODUDFs.whenTrue, Array[AnyRef](null)) // multi-impl: per-row arg0 MEOS-type-tag dispatch - injMulti(ext, "SRID", 1, Array[String]("String"), "Integer", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSrid: AnyRef)), (org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointSrid: AnyRef)) - injMulti(ext, "Tmax", 1, Array[String]("String"), "java.sql.Timestamp", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmax: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmax: AnyRef)), null) - injMulti(ext, "Tmin", 1, Array[String]("String"), "java.sql.Timestamp", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmin: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmin: AnyRef)), null) - injMulti(ext, "Xmax", 1, Array[String]("String"), "Double", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmax: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmax: AnyRef)), null) - injMulti(ext, "Xmin", 1, Array[String]("String"), "Double", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmin: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmin: AnyRef)), null) - injMulti(ext, "asHexWKB", 2, Array[String]("String", "Timestamp"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.temporal.TileUDFs.getSpaceTile: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandFloat: AnyRef)), (org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.afterTimestamp: AnyRef)) - injMulti(ext, "hasT", 1, Array[String]("String"), "Boolean", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHast: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHast: AnyRef)), null) - injMulti(ext, "hasX", 1, Array[String]("String"), "Boolean", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHasx: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHasx: AnyRef)), null) - injMulti(ext, "intspanset", 1, Array[String]("Double"), "String", Map[String, AnyRef]("floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetToInt: AnyRef), "set" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setToSpanset: AnyRef)), null) - injMulti(ext, "round", 2, Array[String]("String", "Integer"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxRound: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxRound: AnyRef)), null) - injMulti(ext, "setSRID", 2, Array[String]("String", "Integer"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSetSrid: AnyRef)), (org.mobilitydb.spark.geo.GeoAnalyticsUDFs.setSRID: AnyRef)) - injMulti(ext, "shiftTime", 2, Array[String]("String", "String"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxShiftScaleTime: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxShiftScaleTime: AnyRef)), (org.mobilitydb.spark.temporal.AccessorUDFs.shift: AnyRef)) - injMulti(ext, "span", 1, Array[String]("Double"), "String", Map[String, AnyRef]("set" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.setToSpan: AnyRef), "span" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.spanToSpanset: AnyRef)), null) - injMulti(ext, "stbox", 1, Array[String]("String"), "String", Map[String, AnyRef]("tstzspan" -> (org.mobilitydb.spark.geo.STBoxUDFs.tstzspanToStbox: AnyRef)), (org.mobilitydb.spark.geo.GeoUDFs.tpointToStbox: AnyRef)) - injMulti(ext, "tbox", 1, Array[String]("Double"), "String", Map[String, AnyRef]("numspan_timestamptz" -> (org.mobilitydb.spark.temporal.TBoxUDFs.numspanTimestamptzToTbox: AnyRef), "set" -> (org.mobilitydb.spark.temporal.TBoxUDFs.setToTbox: AnyRef), "span" -> (org.mobilitydb.spark.temporal.TBoxUDFs.spanToTbox: AnyRef), "spanset" -> (org.mobilitydb.spark.temporal.TBoxUDFs.spansetToTbox: AnyRef)), (org.mobilitydb.spark.temporal.AccessorUDFs.tnumberToTbox: AnyRef)) - injMulti(ext, "timeSpan", 1, Array[String]("String"), "String", Map[String, AnyRef]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxToTstzspan: AnyRef), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxToTstzspan: AnyRef)), (org.mobilitydb.spark.temporal.TransformUDFs.temporalToTstzspan: AnyRef)) + injMulti(ext, "SRID", 0, "Integer", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSrid: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.MoreAccessorUDFs.tpointSrid: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "Tmax", 0, "java.sql.Timestamp", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmax: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmax: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "Tmin", 0, "java.sql.Timestamp", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxTmin: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxTmin: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "Xmax", 0, "Double", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmax: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmax: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "Xmin", 0, "Double", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxXmin: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxXmin: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "asHexWKB", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.temporal.TileUDFs.getSpaceTile: AnyRef, 5, Array[AnyRef](null, null, null, null, null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxExpandFloat: AnyRef, 2, Array[AnyRef](null, null))), (org.mobilitydb.spark.temporal.SubtypeConstructorUDFs.afterTimestamp: AnyRef, 2, Array[AnyRef](null, null))) + injMulti(ext, "atTime", 1, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzset" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalAtTstzset: AnyRef, 2, Array[AnyRef](null, null)), "tstzspan" -> (org.mobilitydb.spark.temporal.AccessorUDFs.atSpan: AnyRef, 2, Array[AnyRef](null, null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.AccessorUDFs.atSpanset: AnyRef, 2, Array[AnyRef](null, null))), null) + injMulti(ext, "ceil", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatsetCeil: AnyRef, 1, Array[AnyRef](null)), "floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetCeil: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.MathGapUDFs.ceil: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "degrees", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatsetDegrees: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.MathGapUDFs.degrees: AnyRef, 2, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef)))) + injMulti(ext, "deleteTime", 1, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzset" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalDeleteTstzset: AnyRef, 2, Array[AnyRef](null, null)), "tstzspan" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalDeleteTstzspan: AnyRef, 2, Array[AnyRef](null, null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalDeleteTstzspanset: AnyRef, 2, Array[AnyRef](null, null))), null) + injMulti(ext, "duration", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("datespan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.datespanDuration: AnyRef, 1, Array[AnyRef](null)), "tstzspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.tstzspanDuration: AnyRef, 1, Array[AnyRef](null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetDuration: AnyRef, 2, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef)))), (org.mobilitydb.spark.temporal.MoreAccessorUDFs.duration: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "endTimestamp", 0, "Timestamp", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetEndTimestamptz: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.TemporalUDFs.endTimestamp: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "floor", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatsetFloor: AnyRef, 1, Array[AnyRef](null)), "floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetFloor: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.MathGapUDFs.floor: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "getValues", 0, "java.sql.Date", Map[String, (AnyRef, Int, Array[AnyRef])]("dateset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.datesetEndValue: AnyRef, 1, Array[AnyRef](null)), "floatset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.floatsetEndValue: AnyRef, 1, Array[AnyRef](null)), "intset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intsetEndValue: AnyRef, 1, Array[AnyRef](null)), "textset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.textsetEndValue: AnyRef, 1, Array[AnyRef](null)), "tstzset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzsetEndValue: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.AccessorUDFs.tnumberValuespans: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "hasT", 0, "Boolean", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHast: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHast: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "hasX", 0, "Boolean", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxHasx: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxHasx: AnyRef, 1, Array[AnyRef](null))), null) + injMulti(ext, "lower", 0, "Long", Map[String, (AnyRef, Int, Array[AnyRef])]("bigintspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.bigintspanLower: AnyRef, 1, Array[AnyRef](null)), "datespan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.datespanLower: AnyRef, 1, Array[AnyRef](null)), "floatspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.floatspanLower: AnyRef, 1, Array[AnyRef](null)), "intspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intspanLower: AnyRef, 1, Array[AnyRef](null)), "intspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intspansetLower: AnyRef, 1, Array[AnyRef](null)), "textset" -> (org.mobilitydb.spark.temporal.TransformUDFs.textsetLower: AnyRef, 1, Array[AnyRef](null)), "tstzspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspanLower: AnyRef, 1, Array[AnyRef](null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetLower: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.TTextUDFs.ttextLower: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "minusTime", 1, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzset" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalMinusTstzset: AnyRef, 2, Array[AnyRef](null, null)), "tstzspan" -> (org.mobilitydb.spark.temporal.AccessorUDFs.minusTime: AnyRef, 2, Array[AnyRef](null, null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.RestrictionUDFs.temporalMinusTstzspanset: AnyRef, 2, Array[AnyRef](null, null))), null) + injMulti(ext, "radians", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatsetRadians: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.MathGapUDFs.radians: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "round", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetRound: AnyRef, 2, Array[AnyRef](null, (Integer.valueOf(0): AnyRef))), "stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxRound: AnyRef, 2, Array[AnyRef](null, (Integer.valueOf(0): AnyRef))), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxRound: AnyRef, 2, Array[AnyRef](null, (Integer.valueOf(0): AnyRef)))), null) + injMulti(ext, "setSRID", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxSetSrid: AnyRef, 2, Array[AnyRef](null, null))), (org.mobilitydb.spark.geo.GeoAnalyticsUDFs.setSRID: AnyRef, 2, Array[AnyRef](null, null))) + injMulti(ext, "set_distance", 0, "Long", Map[String, (AnyRef, Int, Array[AnyRef])]("bigintset" -> (org.mobilitydb.spark.temporal.SetOpsUDFs.distanceBigintsetBigintset: AnyRef, 2, Array[AnyRef](null, null)), "floatset" -> (org.mobilitydb.spark.temporal.SetOpsUDFs.distanceFloatsetFloatset: AnyRef, 2, Array[AnyRef](null, null)), "intset" -> (org.mobilitydb.spark.temporal.SetOpsUDFs.distanceIntsetIntset: AnyRef, 2, Array[AnyRef](null, null)), "tstzset" -> (org.mobilitydb.spark.temporal.SetOpsUDFs.distanceTstzsetTstzset: AnyRef, 2, Array[AnyRef](null, null))), null) + injMulti(ext, "shift", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("floatspan" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspanShiftScale: AnyRef, 3, Array[AnyRef](null, null, null)), "floatspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.floatspansetShiftScale: AnyRef, 3, Array[AnyRef](null, null, null)), "intspan" -> (org.mobilitydb.spark.temporal.TransformUDFs.intspanShiftScale: AnyRef, 3, Array[AnyRef](null, null, null)), "intspanset" -> (org.mobilitydb.spark.temporal.TransformUDFs.intspansetShiftScale: AnyRef, 3, Array[AnyRef](null, null, null)), "tstzspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.tstzspanShiftScale: AnyRef, 3, Array[AnyRef](null, null, null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.tstzspansetShiftScale: AnyRef, 3, Array[AnyRef](null, null, null))), null) + injMulti(ext, "shiftTime", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxShiftScaleTime: AnyRef, 3, Array[AnyRef](null, null, null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxShiftScaleTime: AnyRef, 3, Array[AnyRef](null, null, null))), (org.mobilitydb.spark.temporal.AccessorUDFs.shift: AnyRef, 2, Array[AnyRef](null, null))) + injMulti(ext, "span_distance", 0, "Long", Map[String, (AnyRef, Int, Array[AnyRef])]("bigintspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.bigintspanDistance: AnyRef, 2, Array[AnyRef](null, null)), "datespan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.datespanDistance: AnyRef, 2, Array[AnyRef](null, null)), "floatspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.floatspanDistance: AnyRef, 2, Array[AnyRef](null, null)), "floatspanset" -> (org.mobilitydb.spark.temporal.SetSpanGapUDFs.spansetDistance: AnyRef, 2, Array[AnyRef](null, null)), "intspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.intspanDistance: AnyRef, 2, Array[AnyRef](null, null)), "tstzspan" -> (org.mobilitydb.spark.temporal.SpanAlgebraUDFs.tstzspanDistance: AnyRef, 2, Array[AnyRef](null, null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.SetSpanGapUDFs.timeDistanceSpanset: AnyRef, 2, Array[AnyRef](null, null))), null) + injMulti(ext, "startTimestamp", 0, "Timestamp", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetStartTimestamptz: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.TemporalUDFs.startTimestamp: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "startValue", 0, "java.sql.Date", Map[String, (AnyRef, Int, Array[AnyRef])]("dateset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.datesetStartValue: AnyRef, 1, Array[AnyRef](null)), "floatset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.floatsetStartValue: AnyRef, 1, Array[AnyRef](null)), "intset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intsetStartValue: AnyRef, 1, Array[AnyRef](null)), "textset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.textsetStartValue: AnyRef, 1, Array[AnyRef](null)), "tstzset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzsetStartValue: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.AccessorUDFs.tfloatStartValue: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "stbox", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzspan" -> (org.mobilitydb.spark.geo.STBoxUDFs.tstzspanToStbox: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.geo.GeoUDFs.tpointToStbox: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "tbox", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.setToTbox: AnyRef, 1, Array[AnyRef](null)), "timestamptz" -> (org.mobilitydb.spark.temporal.TBoxUDFs.numspanTimestamptzToTbox: AnyRef, 2, Array[AnyRef](null, null))), (org.mobilitydb.spark.temporal.AccessorUDFs.tnumberToTbox: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "timeSpan", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("stbox" -> (org.mobilitydb.spark.geo.STBoxUDFs.stboxToTstzspan: AnyRef, 1, Array[AnyRef](null)), "tbox" -> (org.mobilitydb.spark.temporal.TBoxUDFs.tboxToTstzspan: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.TransformUDFs.temporalToTstzspan: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "timestamps", 0, "String", Map[String, (AnyRef, Int, Array[AnyRef])]("tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetNumTimestamps: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.AccessorGapUDFs.atValue: AnyRef, 2, Array[AnyRef](null, null))) + injMulti(ext, "upper", 0, "Long", Map[String, (AnyRef, Int, Array[AnyRef])]("bigintspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.bigintspanUpper: AnyRef, 1, Array[AnyRef](null)), "datespan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.datespanUpper: AnyRef, 1, Array[AnyRef](null)), "floatspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.floatspanUpper: AnyRef, 1, Array[AnyRef](null)), "intspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intspanUpper: AnyRef, 1, Array[AnyRef](null)), "intspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.intspansetUpper: AnyRef, 1, Array[AnyRef](null)), "textset" -> (org.mobilitydb.spark.temporal.TransformUDFs.textsetUpper: AnyRef, 1, Array[AnyRef](null)), "tstzspan" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspanUpper: AnyRef, 1, Array[AnyRef](null)), "tstzspanset" -> (org.mobilitydb.spark.temporal.SpanAccessorUDFs.tstzspansetUpper: AnyRef, 1, Array[AnyRef](null))), (org.mobilitydb.spark.temporal.TTextUDFs.ttextUpper: AnyRef, 1, Array[AnyRef](null))) + injMulti(ext, "width", 0, "Long", Map[String, (AnyRef, Int, Array[AnyRef])]("bigintspan" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.bigintspanWidth: AnyRef, 1, Array[AnyRef](null)), "bigintspanset" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.bigintspansetWidth: AnyRef, 2, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef))), "floatspan" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.floatspanWidth: AnyRef, 1, Array[AnyRef](null)), "floatspanset" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.floatspansetWidth: AnyRef, 2, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef))), "intspan" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.intspanWidth: AnyRef, 1, Array[AnyRef](null)), "intspanset" -> (org.mobilitydb.spark.temporal.AccessorAliasUDFs.intspansetWidth: AnyRef, 2, Array[AnyRef](null, (java.lang.Boolean.FALSE: AnyRef)))), null) } // multi-impl not arg0-dispatchable (all impls share arg0 type; need // the differentiating arg, e.g. atTime on the time argument): @@ -210,16 +230,10 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // angularDifference -> ['tnumberAngularDifference', 'tpointAngularDifference'] // area -> ['stboxArea', 'stboxPerimeter'] // atGeometry -> ['atElevation', 'atGeometry', 'tgeoAtGeom', 'tpointAtElevation'] - // atTime -> ['atSpan', 'atSpanset', 'atTime', 'temporalAtTimestamptz', 'temporalAtTstzset', 'temporalAtTstzspan', 'temporalAtTstzspanset'] // atValue -> ['tboolAtValue', 'tfloatAtValue', 'tintAtValue', 'tpointAtValue', 'ttextAtValue'] // bearing -> ['bearing', 'bearingToPoint'] - // ceil -> ['ceil', 'floatsetCeil', 'floatspansetCeil', 'tfloatCeil'] - // degrees -> ['degrees', 'floatsetDegrees', 'tfloatDegrees'] - // deleteTime -> ['deleteTime', 'temporalDeleteTimestamptz', 'temporalDeleteTstzset', 'temporalDeleteTstzspan', 'temporalDeleteTstzspanset'] - // duration -> ['datespanDuration', 'duration', 'tstzspanDuration', 'tstzspansetDuration'] // eDisjoint -> ['eDisjoint', 'eDisjointTgeoTgeo'] // eDwithin -> ['eDwithin', 'eDwithinGeo'] - // endTimestamp -> ['endTimestamp', 'tstzspansetEndTimestamptz'] // endValue -> ['tboolEndValue', 'tfloatEndValue', 'tintEndValue', 'tpointEndValue', 'ttextEndValue'] // ever_eq -> ['everEqBoolTbool', 'everEqFloatTfloat', 'everEqIntTint', 'everEqTboolBool', 'everEqTemporal', 'everEqTfloatFloat', 'everEqTintInt'] // ever_ge -> ['everGeFloatTfloat', 'everGeIntTint', 'everGeTemporal', 'everGeTfloatFloat', 'everGeTintInt'] @@ -228,32 +242,23 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // ever_lt -> ['everLtFloatTfloat', 'everLtIntTint', 'everLtTemporal', 'everLtTfloatFloat', 'everLtTintInt'] // ever_ne -> ['everNeFloatTfloat', 'everNeIntTint', 'everNeTboolBool', 'everNeTemporal', 'everNeTfloatFloat', 'everNeTintInt'] // floatspan -> ['tboxToFloatspan', 'tboxToIntspan'] - // floor -> ['floatsetFloor', 'floatspansetFloor', 'floor', 'tfloatFloor'] - // getValues -> ['datesetEndValue', 'floatsetEndValue', 'intsetEndValue', 'textsetEndValue', 'tnumberValuespans', 'tstzsetEndValue', 'ttextValueAtTimestamptz'] - // length -> ['length', 'speed', 'tpointLength', 'tpointSpeed'] + // intspanset -> ['floatToSpanset', 'floatspansetToInt', 'intToSpanset', 'intspanset', 'setToSpanset'] // ln -> ['exp', 'ln', 'log10', 'tfloatExp', 'tfloatLn', 'tfloatLog10'] - // lower -> ['bigintspanLower', 'datespanLower', 'floatspanLower', 'floatspansetLower', 'intspanLower', 'intspansetLower', 'textsetLower', 'tstzspanLower', 'tstzspansetLower', 'ttextLower'] // maxValue -> ['tfloatMaxValue', 'tintMaxValue', 'ttextMaxValue'] // minValue -> ['tfloatMinValue', 'tintMinValue', 'ttextMinValue'] // minusGeometry -> ['tgeoMinusGeom', 'tpointMinusElevation'] - // minusTime -> ['minusTime', 'temporalMinusTimestamptz', 'temporalMinusTstzset', 'temporalMinusTstzspan', 'temporalMinusTstzspanset'] // minusValue -> ['minusValue', 'tboolMinusValue', 'tfloatMinusValue', 'tintMinusValue', 'tpointMinusValue', 'ttextMinusValue'] - // radians -> ['floatsetRadians', 'radians', 'tfloatRadians'] // scaleValue -> ['tfloatScaleValue', 'tintScaleValue'] // set -> ['floatToSet', 'intToSet', 'timestamptzToSet'] - // set_distance -> ['distanceBigintsetBigintset', 'distanceFloatsetFloatset', 'distanceIntsetIntset', 'distanceTstzsetTstzset', 'setDistance', 'set_distance'] - // shift -> ['floatspanShiftScale', 'floatspansetShiftScale', 'intspanShiftScale', 'intspansetShiftScale', 'shiftScale', 'tstzspanShiftScale', 'tstzspansetShiftScale'] // shiftScaleValue -> ['tfloatShiftScaleValue', 'tintShiftScaleValue'] // shiftValue -> ['tfloatShiftValue', 'tintShiftValue'] + // span -> ['floatToSpan', 'intToSpan', 'setToSpan', 'spanToSpanset', 'spanset', 'timestamptzToSpan'] // span_contained -> ['spanContainedIn', 'spanContainedInSpanset'] // span_contains -> ['spanContains', 'spansetContainsSpan'] - // span_distance -> ['bigintspanDistance', 'datespanDistance', 'floatspanDistance', 'intspanDistance', 'spanDistance', 'span_distance', 'spanset_distance', 'timeDistance', 'time_distance', 'time_distance_spanset', 'tstzspanDistance'] // span_intersection -> ['spanIntersection', 'span_intersection', 'spansetIntersection', 'spansetIntersectionSpan', 'spanset_intersection'] // span_minus -> ['spansetMinus', 'spansetMinusSpan', 'spanset_minus'] // span_overlaps -> ['spanOverlaps', 'spansetOverlaps'] // span_union -> ['spansetUnion', 'spansetUnionSpan', 'spanset_union'] - // startTimestamp -> ['getTimestamp', 'startTimestamp', 'tstzspansetStartTimestamptz'] - // startValue -> ['datesetStartValue', 'floatsetStartValue', 'getValue', 'intsetStartValue', 'startValue', 'tboolGetValue', 'tboolStartValue', 'textsetStartValue', 'tfloatGetValue', 'tfloatStartValue', 'tintGetValue', 'tintStartValue', 'tpointGetValue', 'tpointStartValue', 'tstzsetStartValue', 'ttextGetValue', 'ttextStartValue'] // tContains -> ['tContains', 'tContainsTgeoGeo'] // tDisjoint -> ['tDisjoint', 'tDisjointTgeoTgeo'] // tDistance -> ['tdistanceTfloatFloat', 'tdistanceTgeoGeo', 'tdistanceTgeoTgeo', 'tdistanceTintInt', 'tdistanceTnumberTnumber'] @@ -261,16 +266,13 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) // tIntersects -> ['tIntersects', 'tIntersectsTgeoTgeo'] // tTouches -> ['tTouches', 'tTouchesTogeoTgeo'] // textset_cat -> ['textsetCat', 'textsetCatTextTextset', 'textsetCatTextsetText'] - // timestamps -> ['atValue', 'tstzspansetNumTimestamps'] // tint -> ['tboolInst', 'tcbufferInst', 'tfloatInst', 'tfloatToTint', 'tgeompointInst', 'tintInst', 'tposeInst'] // tnumber_add -> ['addTfloatFloat', 'addTintInt', 'addTnumberTnumber', 'tnumber_add'] // tnumber_div -> ['divTfloatFloat', 'divTnumberTnumber', 'tnumber_div'] // tnumber_mul -> ['multTfloatFloat', 'multTintInt', 'multTnumberTnumber', 'tnumber_mul'] // tnumber_sub -> ['subTfloatFloat', 'subTintInt', 'subTnumberTnumber', 'tnumber_sub'] - // upper -> ['bigintspanUpper', 'datespanUpper', 'floatspanUpper', 'floatspansetUpper', 'intspanUpper', 'intspansetUpper', 'textsetUpper', 'tstzspanUpper', 'tstzspansetUpper', 'ttextUpper'] // valueAtTimestamp -> ['tboolValueAtTimestamptz', 'tfloatValueAtTimestamptz', 'tintValueAtTimestamptz', 'valueAtTimestamp'] // valueN -> ['everNeBoolTbool', 'tboolValueN', 'tfloatValueN', 'tintValueN', 'tpointValueN', 'ttextInitcap', 'ttextValueN', 'valueN'] - // width -> ['bigintspanWidth', 'bigintspansetWidth', 'floatspanWidth', 'floatspansetWidth', 'intspanWidth', 'intspansetWidth', 'width'] } object MobilitySparkConnectExtensionsGen { @@ -292,18 +294,24 @@ object MobilitySparkConnectExtensionsGen { case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c), defaults) case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d), defaults) } - // route by arg0's MEOS type-tag name to the matching type-specific impl - private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { - case s: String => - val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) - catch { case _: Throwable => null } - routes.getOrElse(tn, dflt) - case _ => dflt - } - def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a), null) } - case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b), null) } - case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c), null) } - case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d), null) } + // route by the differentiating argument's MEOS type-tag name to the matching + // (impl, impl arity, defaults); the default route handles temporal/unknown tags + private def pick(args: Seq[Any], dpos: Int, routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): (AnyRef, Int, Array[AnyRef]) = + (if (dpos < args.length) args(dpos) else null) match { + case s: String => + val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) + catch { case _: Throwable => null } + routes.getOrElse(tn, dflt) + case _ => dflt + } + private def run(t: (AnyRef, Int, Array[AnyRef]), a: Seq[Any]): Any = + if (t == null || t._1 == null) null else call(t._1, t._2, a, t._3) + def disp(n: Int, dpos: Int, routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): AnyRef = n match { + case 1 => (a: Any) => run(pick(Seq(a), dpos, routes, dflt), Seq(a)) + case 2 => (a: Any, b: Any) => run(pick(Seq(a, b), dpos, routes, dflt), Seq(a, b)) + case 3 => (a: Any, b: Any, c: Any) => run(pick(Seq(a, b, c), dpos, routes, dflt), Seq(a, b, c)) + case _ => (a: Any, b: Any, c: Any, d: Any) => run(pick(Seq(a, b, c, d), dpos, routes, dflt), Seq(a, b, c, d)) } } diff --git a/codegen/tools/generate_spark_registrar.py b/codegen/tools/generate_spark_registrar.py index 5b9c4108..6f546f00 100644 --- a/codegen/tools/generate_spark_registrar.py +++ b/codegen/tools/generate_spark_registrar.py @@ -33,43 +33,65 @@ meos2spark.setdefault(d['primaryMeos'], []).append(sn) # C-FFI param types -> receiver category, so a multi-impl SQL name can dispatch on -# arg0's runtime MEOS type tag (meos_typeof_hexwkb) to the type-specific impl. +# a runtime MEOS type tag (meos_typeof_hexwkb of the differentiating argument) to +# the type-specific impl. idl = json.load(open(os.path.join(HERE, '..', 'input', 'meos-idl.json'))) -prim2ctype0 = {} -for fdef in idl['functions']: - ps = fdef.get('params') or [] - if ps: - prim2ctype0[fdef['name']] = ps[0].get('cType', '') +prim2params = {f['name']: [p.get('cType', '') for p in (f.get('params') or [])] + for f in idl['functions']} +# every meostype_name string, longest first for greedy matching of the concrete +# type embedded in a primaryMeos name (e.g. temporal_at_tstzspanset -> tstzspanset) +TNAMES = json.load(open('/tmp/tnames.json')) if os.path.exists('/tmp/tnames.json') else [] def category(ctype): if 'STBox' in ctype: return 'stbox' if 'TBox' in ctype: return 'tbox' if 'GSERIALIZED' in ctype: return 'geo' if 'Temporal' in ctype: return 'temporal' - if 'Span' in ctype: return 'span' - if 'Set' in ctype: return 'set' + if 'Span' in ctype or 'Set' in ctype: return 'spanset' return 'other' -# meostype_name strings each impl's arg0 category answers to (geo serves both -# geometry/geography; temporal is the catch-all default; span/set take the -# concrete source type from the *_to_* primaryMeos name) CAT_TNAMES = {'stbox': ['stbox'], 'tbox': ['tbox'], - 'geo': ['geometry', 'geography', 'geometryset', 'geographyset']} + 'geo': ['geometry', 'geography', 'geomset', 'geogset']} -def impl_routes(spark): - """(tnames, isDefault) for an impl, by its primaryMeos arg0 category.""" - d = impls[spark] - cat = category(prim2ctype0.get(d['primaryMeos'], '')) +def ctype_at(spark, pos): + ps = prim2params.get(impls[spark]['primaryMeos'], []) + return ps[pos] if pos < len(ps) else '' + +def impl_tnames(spark, pos): + """(tnames, isDefault) the impl answers to at arg position `pos`. Concrete + receivers map to fixed tags; a Temporal receiver is the catch-all default; a + generic Span/Set takes the concrete tag embedded in its primaryMeos name; + a non-WKB receiver (timestamptz/numeric) yields nothing (cannot be peeked).""" + cat = category(ctype_at(spark, pos)) if cat == 'temporal': return [], True if cat in CAT_TNAMES: return CAT_TNAMES[cat], False - if cat in ('span', 'set'): - pm = d['primaryMeos'] - src = pm.split('_to_')[0] if '_to_' in pm else None - return ([src] if src else []), False + if cat == 'spanset': + pm = impls[spark]['primaryMeos'] + hit = next((t for t in TNAMES if t in pm), None) + return ([hit] if hit else []), False return [], False +def dispatch_for(names): + """Pick the first arg position at which the impls differ and yield a usable + routes map, then return (pos, routes, default) or None.""" + arity = min(impls[s]['arity'] for s in names) + for pos in range(arity): + routes, default = {}, None + for s in names: + tns, isdef = impl_tnames(s, pos) + for tn in tns: + routes.setdefault(tn, s) + if isdef and default is None: + default = s + # this position differentiates if it routes to >=2 distinct impls (or one + # concrete route plus a temporal default) + targets = set(routes.values()) | ({default} if default else set()) + if routes and len(targets) > 1: + return pos, routes, default + return None + single, multi, dispatch = [], [], [] for fn in named['functions']: names = sorted({sn for c in fn['c'] for sn in meos2spark.get(c['meos'], [])}) @@ -82,23 +104,10 @@ def impl_routes(spark): or min(names, key=len) single.append((fn['name'], pick)) elif len(names) > 1: - cats = {category(prim2ctype0.get(impls[s]['primaryMeos'], '')) for s in names} - # arg0 distinguishes only when impls differ on the FIRST-arg category and - # at least one is a concrete WKB-peekable receiver (box/geo/span/set) - peekable = cats & {'stbox', 'tbox', 'geo', 'span', 'set'} - if len(cats) > 1 and peekable: - routes = {} # tname -> spark impl - default = None - for s in names: - tns, isdef = impl_routes(s) - for tn in tns: - routes.setdefault(tn, s) - if isdef and default is None: - default = s - if routes: - dispatch.append((fn['name'], names, routes, default)) - else: - multi.append((fn['name'], names)) + d = dispatch_for(names) + if d: + pos, routes, default = d + dispatch.append((fn['name'], names, pos, routes, default)) else: multi.append((fn['name'], names)) @@ -106,9 +115,13 @@ def impl_routes(spark): named_by_name = {fn['name']: fn for fn in named['functions']} def scala_default(v): - if v is not None and _re.fullmatch(r'-?\d+', v): + if v is None: + return 'null' + if _re.fullmatch(r'-?\d+', v): return f'(Integer.valueOf({v}): AnyRef)' - return 'null' # absent or non-integer default: fall back to a null pad + if v.strip().upper() in ('TRUE', 'FALSE'): + return f'(java.lang.Boolean.{v.strip().upper()}: AnyRef)' + return 'null' # unsupported default literal: fall back to a null pad def defaults_arr(canon, arity): """Fill an omitted optional arg with the SQL default ONLY when the impl exposes @@ -138,19 +151,26 @@ def defaults_arr(canon, arity): f'"{d["retType"]}", {fqn}, {defaults_arr(canon, d["arity"])})') dlines = [] -for canon, names, routes, default in dispatch: +def fqn(s): + x = impls[s] + return f"{x['pkg']}.{x['class']}.{x['field']}" + +def route_target(canon, s): + # (impl, impl arity, impl SQL-default fills) so the dispatch can pad an omitted + # optional argument of the chosen impl exactly as the single-impl path does + d = impls[s] + return f"({fqn(s)}: AnyRef, {d['arity']}, {defaults_arr(canon, d['arity'])})" + +for canon, names, pos, routes, default in dispatch: if canon in seen: continue seen.add(canon) - d = impls[names[0]] # arity/types shared across the type-specific impls - argts = ', '.join(f'"{t}"' for t in d['argTypes']) - def fqn(s): - x = impls[s] - return f"{x['pkg']}.{x['class']}.{x['field']}" - rmap = ', '.join(f'"{tn}" -> ({fqn(s)}: AnyRef)' for tn, s in sorted(routes.items())) - dflt = f"({fqn(default)}: AnyRef)" if default else "null" - dlines.append(f' injMulti(ext, "{canon}", {d["arity"]}, Array[String]({argts}), ' - f'"{d["retType"]}", Map[String, AnyRef]({rmap}), {dflt})') + d = impls[names[0]] + retT = d['retType'] + rmap = ', '.join(f'"{tn}" -> {route_target(canon, s)}' for tn, s in sorted(routes.items())) + dflt = route_target(canon, default) if default else "null" + dlines.append(f' injMulti(ext, "{canon}", {pos}, "{retT}", ' + f'Map[String, (AnyRef, Int, Array[AnyRef])]({rmap}), {dflt})') HEADER = '''/* GENERATED by codegen/tools/generate_spark_registrar.py from the canonical * named-operation surface (meos-named-surface.json) joined with the MobilitySpark @@ -191,15 +211,16 @@ class MobilitySparkConnectExtensionsGen extends (SparkSessionExtensions => Unit) try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } } - // One SQL name over several type-specific impls: dispatch per row on arg0's - // runtime MEOS type tag to the impl whose receiver type matches. - private def injMulti(ext: SparkSessionExtensions, name: String, arity: Int, - argTs: Array[String], retT: String, - routes: Map[String, AnyRef], dflt: AnyRef): Unit = { + // One SQL name over several type-specific impls: dispatch per row on the + // differentiating argument's MEOS type tag to the impl whose receiver matches. + // Each route carries (impl, impl arity, impl SQL-default fills). + private def injMulti(ext: SparkSessionExtensions, name: String, dpos: Int, retT: String, + routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): Unit = { val builder = (children: Seq[Expression]) => { - val n = math.min(children.size, arity) - ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, routes, dflt, arity), dt(retT), children, - argTs.take(n).map(t => Some(enc(t))).toSeq, Some(enc(retT)), Some(name)) + val n = children.size + ScalaUDF(MobilitySparkConnectExtensionsGen.disp(n, dpos, routes, dflt), dt(retT), children, + children.map(_ => Some(enc("String"))), Some(enc(retT)), Some(name)) } try ext.injectFunction((FunctionIdentifier(name), new ExpressionInfo(name, name), builder)) catch { case _: Throwable => } @@ -241,19 +262,25 @@ def fn(n: Int, u: AnyRef, m: Int, defaults: Array[AnyRef]): AnyRef = n match { case 3 => (a: Any, b: Any, c: Any) => call(u, m, Seq(a, b, c), defaults) case _ => (a: Any, b: Any, c: Any, d: Any) => call(u, m, Seq(a, b, c, d), defaults) } - // route by arg0's MEOS type-tag name to the matching type-specific impl - private def pick(a0: Any, routes: Map[String, AnyRef], dflt: AnyRef): AnyRef = a0 match { - case s: String => - val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) - catch { case _: Throwable => null } - routes.getOrElse(tn, dflt) - case _ => dflt - } - def disp(n: Int, routes: Map[String, AnyRef], dflt: AnyRef, m: Int): AnyRef = n match { - case 1 => (a: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a), null) } - case 2 => (a: Any, b: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b), null) } - case 3 => (a: Any, b: Any, c: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c), null) } - case _ => (a: Any, b: Any, c: Any, d: Any) => { val u = pick(a, routes, dflt); if (u == null) null else call(u, m, Seq(a, b, c, d), null) } + // route by the differentiating argument's MEOS type-tag name to the matching + // (impl, impl arity, defaults); the default route handles temporal/unknown tags + private def pick(args: Seq[Any], dpos: Int, routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): (AnyRef, Int, Array[AnyRef]) = + (if (dpos < args.length) args(dpos) else null) match { + case s: String => + val tn = try GeneratedFunctions.meostype_name(GeneratedFunctions.meos_typeof_hexwkb(s)) + catch { case _: Throwable => null } + routes.getOrElse(tn, dflt) + case _ => dflt + } + private def run(t: (AnyRef, Int, Array[AnyRef]), a: Seq[Any]): Any = + if (t == null || t._1 == null) null else call(t._1, t._2, a, t._3) + def disp(n: Int, dpos: Int, routes: Map[String, (AnyRef, Int, Array[AnyRef])], + dflt: (AnyRef, Int, Array[AnyRef])): AnyRef = n match { + case 1 => (a: Any) => run(pick(Seq(a), dpos, routes, dflt), Seq(a)) + case 2 => (a: Any, b: Any) => run(pick(Seq(a, b), dpos, routes, dflt), Seq(a, b)) + case 3 => (a: Any, b: Any, c: Any) => run(pick(Seq(a, b, c), dpos, routes, dflt), Seq(a, b, c)) + case _ => (a: Any, b: Any, c: Any, d: Any) => run(pick(Seq(a, b, c, d), dpos, routes, dflt), Seq(a, b, c, d)) } } ''')

    05t%u!;F( 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 z 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%0ALaZsSM{Z>p5p^j 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 LoOT?$tT;@V@T=wT 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

05t%u!;F( zApQVb!)w?YUXz_%+!vwZ7bm8HnthWJmyy6m5*=Cpnt=%%RC(*6CAEcBq}J@DUGx2G zWT#pvD?;LF*i+xel$FB?339n&C9QhxQl1(oE~yw59r zmF9KyRhsvo1uv=e*9z+R6{zi2zrliR#*jT+UZ|Pa4vdVH92u6R47U%mil9S~9;ECW z96&@5OcD?n<~|0EvcXGm8XOiVoKIHX1qh!(q(Z|4S&@H?rz3VgRT+SRx~HoHU#k=)xyBgK9%jX(eI;3?N8_P`UT zi2wP61o!2rV7r586-8W+4(i z4!U8vrE~sJwD?Msb6R9LRVz(Sc(90LKfW17^Xraq<|uKNUg#)s{^%!S$)oYCYyTkb zCaec47Cx=yi0A+%XRpYoL#%t(ZgQ527L+%3aieU%WaVGNS5emzNQZSp#Es`a6^sRs zWxq5L4u&4$o?aeSwOU5l=Ny2>3`gnebfAyK1Jk1J@bluDlxz5s_njngVA!r?E%Mi7 zcT?thY7P?RP+m$dXv%astU*lo{7UUuEKFTRp;ApGrjon1=RD1Rc_lP*sffb!A7zo7 z@_X44?y`5{m4nUaMUL=nT{vd9VBaqL?3a~e;q_?nhwqXkwBg(AW3uOosuMV;T~w4u z`8=UrsS+qCTJ$OZkUGPwD=)b?e6pzZ#RJja{CDNV_ctl8T;FBgb?jw(HNl09+nypE zMs`+%d4mEtp0uM~j*rrp41lmfve#d7lxN{L!vof>*>e8GOs3!?XJ^7tls}xX>VIGq zD&f_o+E=6;J^G$fQ-$k#8qGC$J5nY2F;Eg$a+bMF?i7x(kz)7UBjJNq_vora0s2y64u_0QpY zW5KvsX~)Z+?mE2a>0R|hj9yt&H6mKv?b4QxCm|sLv*^d`{B$R#^JhY}9O%m6} zi;8sPEsZNS(zdW*haZVPpZhwMp`JQp#6y%?4O2{@pcVU)6~dZTG}hfMscCiW*AQ%o zU$HLy2-C8{1!MPncN@#pBv$&yg=Yjx-&fv#qQDsXGS?6o&TWhT^E5TG9m$uCQxO0J zeG4JQNuyndT&_!9#ke{e%A~;HT+;r6pul+}8ebISD>W-B+MhUzWq6#RrJ$>*Sp>*TQ7AOrBA3nA%w#!DIpyc8I9T&zazC>dTpM|RWWnb zHT(pvs!H?)Tqd=}dmM{3qwKizzS!rAw?gWv_1?T9*EmmAA8mjG)kj*5vL?xyg1}U% z%U!2>y;7)1IG%OsW6#1}?rm!CzOvB_EEE;>K_Ia2lTqH%H|Pn&(G*es~kM0-q@Iyqm8ysSC^a-K@- zvPyo4FS|?@N)rWI>%6-z)LczjKj5#+&X+m}>(0sR4sr#ou*YrxnGGbe-N@>7<@Zq2 zo?i>}+w6&GMd3?Wzh!wT4A}~D_Cez`-&ety?BAoXxx|?Pt@?H~s|Q)C4o(!ZYO}u! z-6a2s;5{BSk(^fJ{`i+5JY{@}VIyP^8ZLsnKKZCbc{|Xr6|KoSt^_?f-+KBsw|7U^?tod#B z%ucj*b=uM@xR$baY_r=56_NUSN$P7UUsY2F{-dd{&T!fp^R;#`?kh2O+wc9fr!rB9 zNK?b844H_@-ZwtmMJDOFHR$L&P?Pn<*um!)zupXkv_1Z)?g=7L!+5e$Qe|vh^4*CjdX91BqK?z-ZC`vpzaAbfBsa zi9^*V*Gt=PFg?oXyTg75d{stJdb~KlBtEB5hIKs^CV$yy#g_YUVfOEF$=~A}fPx4j zm6MpK#>nZm=;(Qp#4Hjc6D796c3FD;GL_ACKKdMfB}0o{iYxF*; ze6QJ;sCloZ-6NRqWD>a~ex1j< zqT8W|XxAm>b(lR^wUUR!-E=nk6Mrzrnm!;{%E?JfsBGPz|MaJG_4=+e0`*7FEb(rh zV&w$zlFaaX*Q0F0@G{z+scX;F`@Q(x)|3B?>g07Hb3>p$Il5%-&O80y?Yh}8x8by? zone%20_lyimLJZZJsZw_7Pj){+CY6`v~Ep11((dO42a;I68Ad4yTy&i+Ipk3K{q!; zF^?Anex}zSJwu2Dhv!b(UyDcT8i)>ilzL9H<^9@jYifVaeHf~@!McLSO>sRN$w^!C z6d6OMn?j}QuC?;6=l@TG)}ZhIBHJ}3p7T@OSW`7MTuD!kCXr!L!nTA<%}v(z{r$f6 zk9?K_TsL)zVeGY*rp>5Wk{)>ux(V4T^ILYY;y}>`kGnJA z+Z1VYV9m#v^xkD|NPk`me-CPo{nRBIRkC)0%IN=+FMCZ z_%h-HjnaC8I(RTUN`5Q7KEz*|F@x%(c5VaVI5t-e#FfI&$0hPNJxQmYYYSe7?$NL#x1Z3JY zxP=lFj11+#alvfa|5bo_zC)Vz1=ZNUStm-4tI4UNN(}F_I`+)BRNTQ%$*I1+i@F;O z%X1n&Aor~TY+CFgsxr6Ak!H<{G61V+g4u~_n^yAyH3v(@q1tRV>q2EMLT!3|_ZdPu zWp(lvsP7tG;@zeQNqm^Q+zonkKV?6rY^Zd73C`J&bBa>swrWL#N6%rj6x@uDi(km8 z)9_03@?wbQDCR@&crR4S?Z0bF%(qL-b$wyf znUNZG3Py0AbNp@wy0&AJvdmKSx=OGrv53w%^jp8yGoj^D;jS!(+EbhrKGlFJU2P(p zeDDdG9%~BQLrMsrRd^yufz%+TlYBopQK0fxG6m38J(zA}J(k6@qK$@N{0>D6)!pcU zVead~Y@IXkfzh>R*Ch6n=vecX9`8dE=5e6~@27^j3HAdCKn5c7Y%-$AZtR*FE@ypf%L@Bw>TDNztcH1~sQbLXnAj*=8Z1756Z?RSiN! zICSIMo}pKD3LVWqg#{?R{;>GyanC|`{ey$`D$xy8MqWyMO8-mDwLxpt<|oh(aWQ)2 zzCdX`AstdEE31o)pmQ`1PJ|ekTX(09m^}+T?JwwxSz%dSE$veavQhZ@s-t)DrY+g8 z#0=IkE(oCAsJEV0fpmoy`!S8`(R#NOp~dhLr%d_jYG}!K9l9^q)VPvO&TGZXis-ti zT(^FD4RVz^=)tiXFI7*-OV*vds5Pmj#G2XNvo3Y@U6(fXSxtnHHbv_^Qf*A+rBLY> zzqv!N{}KXJ#0%jDaiXj5g8sgQ{&wK<;Wu}BlkOcXg4PqcXMB6SPv@)#W-fiXN~npvhKm(}GC1{1wa#tO5>`Db(pR*@$Qm9Cj} zn`D!vLoq5*F}qftA(-rK;*4nxEYZ4f*yF^_$Qn;hrXzAiis|CvHeNAa<%!;lGiO0m ziljgoWurQ=7~*RAnMlE(vRX97hc#!loh!Rgl!BWd8KrcB0kcj{e7u|E(;oZEx4yj1 zZ)R;I6Vq&%m%h&vmHd?-bI?Ed+nn_}f8}3do(OVP$16nGSu)R&Q;n*FLIhIS`BKrE zH~`k9>G#qnnR3k%#bXK?(r7T~2hv8?bpATX01O=g<$sL`<_2uW{tvOBqa|^KJ|pEN zX7TGc2fgprT!|&1I{Zgljt|k%fO)9sJSYAma#_)s@EmQ`p$RR~gX5#e2Rx9Uyr75v zwN*bRxbcH-^N{m#{^=Bt+T*RfpJ}V=th}jJU4LZE<=Z5lQDJZBgYOK98pX!n5m!}<<3+ErBkLE>ZzxH(UIn~D>s@zO^iqbCSk z+A4R^RpDETLRw6O52}cE4w$bu_k&k3w3E$LDr>7kw2PnCT^XTcU`K^t;s)0 zepX_0x~Fo|`Qcler{v~y0O`zEb3gbHl%l(}RROoTo*JS@0or{6v~|g$+Nyb&Q5U<- z!zui@jFkk)S~;e+s>RB=Dta`hd`Dt3*%f@%A*?l@W5?!%kd_z;MfsRGQ{`|8>l?K2he6&`*aj_;DCFC1}vEq^a@2dM(bo_G>Uxr!rS)qxiPpqL~DfTaEY?^H~A zL|SYJ%rz*Tvs?iSoz11f@U=xb{GHuAne#ly?*Nv0suX^n^vbRxtvZv{nNCk}2e1%A zZw3GSR$?pIk)kKQaLDaum5bGp8tuF+k_0IO<~B)25EG$S=`%vstU(!psxO^}A15=+ zq39BA(RSK0Rx+UO?zZj@LwgSUg4Lv<@R(seb?7rdIIUn7+wSVCD8z0^A z$etZPJj3LmuoV``epic4BxmKMv0C*QRb&A)94n{<2r8#2SsT(>2dJ!K55xnSmKkz( znB6=%n=W8S@<~%v_9w2DBJ>AVReom=*<6)uuYR+bRfQv-j_rY!(s}+>m{Hl?P|K|5 zsBBQ=A9?aRwwuufyz9Vzc5_trHJo@xAK}++Ml1OtHKtOVqcyk4SI&2g+Oh_bZ_K9p zjTu$Pot?qkGNKi(>W@@E^cAj$M;#CPc5Bbp35X7m8Y-;|xmQP2m$egR0enL47s{ioThuqR4fMn_1U_2y2NB zGB~+O&{=4V4b|#s*JTkD`D?@kPFr3~rnds#w@^C#N!dT!hgcF2;AMWQ7eI@|MyTcN zHb423UVTK-xfR^O;^34hTJ8dqNhxxe76FykI(6)0q>bjySHb&}jLLjERC!k9-KoVdM znmD&&goJ1k)FXu6pvtcE%J)Ogm8=T{&^{XU9!(5jaOwRdO2b)(nNy(btsO0k7JEvd zy&UavPC=r8%qI#QC1swfN|*)Kz9K!=2rb~-Y>31CZta=6L>|T8NHV!By4E6*Jt37m z96F#AQ3_^*f1E<1j4x4cu70!8dq|E_i_LfW927SRl+L*JivRAU#D2!BSrX-zf?^8g z-S0lcX{YsTlEgB~)~mWVg8tglJ7~bCgFzHktCTBIw=j^iGg)1fK$>%^~;4 zy6;%XoYjQO&=hq~+m}Z?3UVB1sXs*<9SdhAl?f8lk{dLT`OG=<`Q1XGoUM)MUH*$ckkX9}}^S zQEN;7#4P#E{bpxk6;C1a&Zgms5TFvksFzNX4RJ$}f0e0DFS(j5grO)gkL%`s`elg2 zHQHZh%WvNA5f5t2lbB2KNzN~k-RdIBAJOhr3XK<9vHp_71ku8VGuM6+CE9yDM zY~;*!qB8L?VLT5Aurkfoj8XD1m4|$Jz&&KfneuQu50Lt-f;l{lmWO#f6vBzU z^0GhGM}hpD>S?$T(k1ZR|1^#Pj<-=Ror zY@HmW-Y%`qA-bRR0Q2~|bn$$1ZFD!~E>Oi9+yf37zHN~-W-H1FgL!>z0ik7!o!s@J2P6SPII38$($Cg(2N zBGHyz`nGV;(h;7!Y=kdjCm}~{_ zMjm@{n>8(Wtd)0_Ze5Ez`ipDbJKXDG5ryvc?k*V*ceb?{zAkO4k79%=_7sRz^fJPn zl5UJ;q0((wqYIu0`~uc%1y94B1FLwEf0c3o`aBOoD{!7+T?YkWm=EeKBaJ)4`m?5p zT!3vQoCDisPX8Ne=@DJ-yOCAHBsJ*X9CB|Cx*6QD$U-CTbYC~OPr$U= z>2ciYWWai&Ko%T2>rNJ?_1Tpdy9lvc+ChDKO>Cmd0A?7z1gkRbY0D?bcF{b95AY)` ziZvvTC{`8YtJF5?>V=qfKdI7+UAl?}J)u1n`3dn7t0cc!7qrSe3S|eU20vhJ!1qO@ z&3cJSDrM}zGgmX3jAe+l8F~4BDAElmU}{_Tur~nup%hc z_jp3?J&s)VD1Exo&HizB1;9QfMInA6tgVq&hdPR5-B5;EB{B~uww@x)^7CmUx*N!@ z=~q)F5-uOQecLswKOf90rCrA=m5J*Y@L>tzXKn;dWG#Wo`r!<@a$_4_`@~JKx3q{= zH)%%cPQ58MQVCHazQjZ~$C~G74BYy14;zW{?4V_MIM3~eZf?R(K{Y|b5HmK1oeFpv zG@n)=;|gJ0Vs2Lf;KLH<>uAPTxW;SF#k za^CY5_Oi!Vli_^4`V{M{cl!r)8NQ8?R>E#uKapaZ0g`Q$<))?!>5K#Ypmz_-_~Qv| zHJ9uoNw==<_H7Oi65P~%TeND4-fWbv=QUt*kI=?|c@;P4y%mTyNx!{L%zh}nmfH0>tKND8AEFr$0vf9Z?g7T_Wi*>M)$oik35dEzmTF*`U zSO?<{)JjZ`xYmbDxI%~TIN0g!g6>a~=K#xLm0h5~C@PRCjDF;=n2%hxTSsu%Wl*HOo@vbW;4b)-_C?XgnNV5>xqXeneqe}#a zC6oC?x1nqiA+38*H?;=Lw%N6lwdMaD`*RYNiGY3UUKK=pl<`L8%-avintOHJe;_|F zM*8aObV62(uP#BoB8`MQEV1r69_Yy|O^lT$2+;sxWT^U|P$?!(XZ!49pQ!qW5Z>TG z_SIwj2Z$g>t;6VEAlmBYI>7G8n`zF2(LgS1oLYGVsKPzUv!195dCMgvpcd!m`K2i6-Ytm z>Lg)h%%N{{`Dt<_d`LH+D3IMG#$a4HgbA+LI*^eto>G2ya#ebtf}p@`%1l3UM)yF> z3R#Tq6@f0be8ukJrODHu9=#%RlsGt7xb2ZYQAT_7btW!bSVH1r^7ZcLbPO9$b|(^2 z6OVXZ$=L<#tVjpRZv%vW!i*kA1*$M{x4Wh)qA(HGLll&lghXJgxfNjUWtpfJk5Rd( zFF)}(j8O>)B~U|7d|4g6BFB=im<*$oi!4{W1gan_s)#&B{a%ll9_Qm;ts>hv zHi4K2;%%bX8q!Xv^p!%qAf@K~fV)X(Zpp1uB?-B3ChIqnm6?Uq3ChDQU-&KZ9l{U{ z`LnWZjO@|PXQdiYO>$T~f+5Wuq(BFeUjl7!}%>i zvIn(-)}l>(HI@ZRkB0E`VW?)Cl5AF~7 zc4&*=mNx=|;ZpBg`^W}ayRVd;0v>?5<_^{K-xXps;ZK4*UFCK3JYiB|I&C3q+Asvd}2~5;9<+X_rN35+F6)Z`*e$haTQj zkS?+2xD!9847mOWe(b-)l~_M7#|y{dmlwl~L@c6*q0DFU<}tR!xk3+hzO|Y)k*7fE zv;q(3v;sp+4XueM8*|rpauH8GhgCt#qj3RxRhN?CmU>ivBJ0H$Z&L6?6YGF6Imn2% z0llRHy+?6K^5KtS!uek*O3PR+Z@$~nupWbW`s`-v5+caQ8HIh0;6k+~xkrjeHr+);YY z%7;&O#c%M0=YzsPI___z`)kVQsCYe$WAP-ZoCTj#o!-&(8HaE>VgfLZN@GQzactsl zG&K}2PqJxbC`&Gs%A!42TB65+rA!N!J}10U$uwMsOTNX?1kFvC8|e>vZs=7jEvkGde2 z10SLd0|?I}il)CTgZAVjj7rEdSi)Jt;Z#=dr$z4VXnb*dY8w#p9wP3+C( zLTN7AfCUyCrE!nLpkiY0Q2A;uZ?4FXa4M~Q^<;StmbP3Kk8Kh5rN!Dv086wbpURi` zqn?0_Xo8XIhfv`oUHJ$x0dps^def&Z0SQb|51xnag{ag zJb;Ejj8cIGeJ$GJXXuYJw}$VD4XV$JYe*AaH9MdKPz`~x_MqW7E_PSq=6dr?!}n*E zbLl^2G$><&?)?(TC~*z%wK7~w?4cD(rSmSS1^}#xC)dg*+7}g-kG7oXJ?yLKi^i&5wLy>2Qd3#xiYrEc3tCWtgW*?3I`Ti_>uIq~6?( zMrl-94wy6^mBw`w#<+U;3VPb>C?SJ(?nUhxcX`o&j(Lw!DsjSP&?lt^Z4T>e^a2ey z_^T~{TpCMm?xnv(p(01;J8|q{LwdWJ1`wkW^Cc9PUha&D*nKq>YtyNFktgW;fk&7YN( ztFFSez?!(Q2e8Yzk-z|uAS3qwAvL%n2X(^ZBHR0YUsS9FkVF#dqtYj}9CgR6g6xv` zQX#=$e2CxNn9L)p`{tttf`RXeZb6drIp#*+p+{`9DSFVo;C43W$s8q@@><=#;93zs zE^^?r2NB|^-}m=MgJ`<|~CUNAKe9|u~@ioG& zOAlc=7qC*5qhWAwOllH;gA;MzXIf0I@g?|Vr#yE}!z(hjaS3X6$>mRyvE zXMCy93f5!Nx#&@M`M78z!>|@Dkj@FlSc|n9o@vX0tJ)E*4fpruhL3O@YM8@R$3dV< zzzp0w`&!7;Ke!v@&6X{@a`N4i)K!W0O@u;Wr3{}O7oiM2C5TN8%$tLhz5a~CBqa1mkXaIn|+m&^6&~B*o6YpAD$`SKDeuu+ev*7HApZ23l zwR?hntEhwR(SLNHwm{D;Q}F@I5!xnRM$#wP>xBvpWMLM6d_LXxe{|=SOGkj zt%q2v_OWOWH0uNL@L-<8+;r@f3zWFD#=BLlbLx*6zfb-h>K|M)@P&-75wqJU~!JJ(2 zPGH>MH2)CWTTrEpzS3yTGx@0cmFgp1w};X-r@$>=FOY8+rVEfWRmT2gm4Yib*`3x8Fh>@q z!MyWH)LT#oQMht--<8=~bQ%2;HP!Hvv&(bvNgwVPnN|#x#}Ydnx?wdVc312-jE{RD zoH*FB@yljS!yKA?n^RdHB@4!-f%vV?NO##q&nq;J5*d22BlNLeQ- z>kezT)#G5AwUgP=7TyZg=*?H=f-!Oy&p##s;pJ`FZp042s8&$eb+tA2a!^IKHr!%o z8&(O+fQ|XI_Ij%oa=$Kxj4gYO6_B3%tKhP;yV;QJ%?$c%ZQ){JcwNl1r^nWjnRDQSDx}GTR=XSV0RwKPr;vDZ z!wHNVxhx@ym|lI25uYR)l5G3ANFt8130t<`A4S{B0tSGdCl(=vo1}<-gly zm7$b)iz#hHZ85TPL9RQz0!Fh=oe!9d+Ea`YzL8lbmTE4g#0Wx+QGA{3M*Z4k%$Yf` z?Ys}W@m==K6?kjB$wtRne^UtVh`&n72RhqX4?5F+D*41^=Hf8d9H+J+=6vM|T73w; zLai*sYL*hBQIzk3Mp?-OxKYBE*BP>LD;b{Hj{eMnmy803Hyk1OzrON8p)6TQh$=Dk42nTn^JFZqvW%kn7CO z^bAcrOyWr4-Qlx);LXw(l)UL|gquIC*!!nU=MOj*|F#h?VLq?SO*{bf8Bn5#j-yUa z1b9bz5Z&vR@e-Ka7+}j>)zS63#Pj5$_diefo&`5o`ajD_pVKG3la7YsmnDwM$<6dt z#q`=(kv4aAd|{pYGq{VN@l6Mo&$3~Xoi;wB`U+4}ur3M(u17F>xgrgEb`nQ55s z8D%@g;L%<^3m|zvh;_qE8~%QX_*;p(RITQDG@vl!>T zXP>T`mYXv%&y}AH!@EX{NkC-rhq^pn7gxV_VXw>m5m`vY_P$$S0cVqm`*cNLAQ$+A zFRZ*AT>p}L-s9(8cIRNo0W}BdS$5&W&HxYHD8G;*lJ+@>*b)aCKfL#p{ebvMVSqbt zHlWn}+mrtWW&A*%Y)otQ4^v3V^*}!Oc@I88bel^Dr>?rCGq6Y1=090{S^P$I4@RgZ zmZhkd1My*jI9H#Dm&9*n(yb{3uxV9#pw#^r92e|Q9Ry5rhY2&A#K0^$u9yFs+oMTQ zYzfC~W)00bv(en)pRm8WLD!yGEi5!VvLyCNc$<9zJ>VjMj?{GliL-cTf7An&Q$#$7 zKPs?`^pk!io9*MU&E%2v>^JJK1LN+*1N=$zt7!Ld?P+dV-^bukyF%m2Se2P z*;Pl2xytha4?7pv+~y+o{O&_@>xz&GSGsQBHVQ{ml*(8eOD+TF415fpt?Roxl5$hB zi!!IMF>j}2X8%6<4;f|#8>|!5Tg4F08t>lBv2XlqnX+`<*2nin^op1?dr=U&X5A(G z!EW;=b#c1(;wEE-ciSH(`%2GUYPdIlz0e3%Xy?S`+ZKNKt;yz1bO-D87T1G!eRX2) z`mR&Riucb3);)l7D5$>0tRQ%VTS^~_WP!3tImho z)BDMwH8+=wj_$hz6Ca4yo5Zj_%c%dDO>9zIHN?9qlDCq$lVG}1sl7g1*152Tbqcnd z_aCC@{c9XQzw|W`Cjbn6pu<|e5W0cS2}6D1Niac_wk%xfjbx*Jhj@~+j}eE$$P9^4 z9l2hFhd;Ry9#|}XlBs@2{f_rk)Ke@Q#=SQ`@31y@6E^`vI%&mcF(qbfn62H&m8i4$ zy@{NK^~tUH-^jEi-|3+zk^ci??-MfDNTl_5ZglQvTQyD%n!O80YA8jr?K?OOfM&Ir z8-|7aYVX0fdID!G_%O*o*$n@h9hDR7p*oXX(*2~%>HdZcr~4oC-naYOqMuTjA=D`m zQ)ETA&Y8RYGGYULs`|wB2og%wSMo!=Q!+=7^-I}RAM-djPGMQCay7Hr;GbbVoS|lI zLc5);LAsV1lx^8A-7F!}e1^+@hh$!|S0Jki{9&MZ|;un9vtl) zti@)M8a5{8yvd5M1sissumKW5n zdsEr2vBGB`zs9=r?5|{NI;eMaAQJ=1(VP0Y?Dj=p8+5MTGv#7wHqMV^c(cqw_#3RWR z=XKw$ppde_i7Nw~Y7Qis>fAwhAMX!Vp1)RGB=*U&uegB}PUO{_ib`CsEv#TBgcQ5G z`^)d>Q&lO6T~oN7AjCqBd*+V@moYnPTc?}D4lBuWR=wQ+UD9`8YCEt=iEY&LimC@< z6-kuJ-aD){Z0|>n?>ppM_#Py@Bl!pB=ZIE5deRVwgy_Pku+x?E79W!VOn;Non<+>K z#_gZa-R{%hq&u4vVz#T+SJ{S;p{<3&7hdkP`<}GhLdpHKn~-)7((b#oNi~IZC{@Wh zRHATM*-XGfSg+MiDRCBGoOi4$HkpUb&u&oeK_V-3?9hy@xb|_Q3_e1m@$bd;SBE9z zK6r&S_9rXFzn!m#xtM5-ZhmGS#$(unJ8$(m1IuP>WG$=KO4+?xe%F|q{`g%G+2pRu78n zvr$w4ce-$NCC?}|#Qt#T7Cs;XZIx>HcFOm%UG>Q`rXqLU3!dvWx58T69QytBeIT(g zD-H(LdV|s=>v77*IQ<_qm&T}QZE{&}pUp!ZAKqYY(Tqb9gjco@YMgcfLkpPoa#$?< zS2r;da*x9$xu3rBtvBC%6Tc%Y@OB2Qnf-|jYHm*sb>=r(#{pZLyJiX&8*hit^`jCn zH*;MLr?~sip4-sQ^t;z$CRd!jF|q|(mCWRfY(*=2lA(OvQ*vIj+i!k&OJWQi0k7?| zdpcBoFW4011_H^gPe%=}7InGKNmnpeYiXhG&^G%NG=iAVUcUs`z+#3gMhVE$wBKa! zLmMLJY0C`ken!E1&tk|5a{*>yn%}^g*^fpqJ1hK&Y_w4lv}rLp1QNH1apBQoNG)+7 z9M+F%NoM%_Oy7@gLxN3TmQX9FYhD{;kc{$KGNFD^WFGAf7t9N?OP?2AKUkbI5d<*U z;(m!vvHoCDy|#gar?2%z!AUTD46PLRZ3TFV0qyPfubub{u`(c*kg!9w*oj;!zCzk# z=knKp&FRhkg?P*vxq9?+5BqY_cK02$GavM74r9vDel2G@@2BNYm9%6P6*%*ssu2|u zHRdJ%B4bo>%s=WGqZ**{i=v+>19Dv9nNm$T(mIVG-h=~U)J(^+sV1)HnKScDojoOA zo7lolV<74Fo$@23d_@%D|M?pSyW-ADtw8D?!+h-wRFF; z%A}|=!nlZU;^$xeKHrnC30ElwumVDcr9)Q_vEbBznnNTI>cjeTa*d zm*cs1A#aXDkb~VQ1gOd${0+rDs(4nV#^*40%2Pl!g zK28@Mg>FX5RiG4 zU7q64sR1Trv0{E4JP;dx2M?U}>XM#!7C4q~)F~(#5m!+uqF+Q9bx+A52`$Mim82rr zWrUSLeqFmPwURA&=ocMI5*RgzG*zsBx|GPiZC^-EX+X&a@68|Klsk7Y;w5#DtvCCn z;!u8*y!oG*lbhxI{xjKByu;>K*_}*^PtU9BT85j%qvuw2Jp=6|xokb>dgitkWsa%uWTV(h5CJQe5pLKaCMc;`Jnl8zrx~bk zy_~&A`2b8pwQ7+z469mPazwD?6kj+hgqDx`Q{+rcFoiE&Cx)UDuP8|JB>Ot{D>u(n zm=5)d1`Am>fk&L6+CRY~Q4}nRtA}-|re0Aw{n$LQRC|@H)DrQ_VH2Oq@ubSZvLn`U zOCFVPzT*{hpy-NHcyta|+n7fa5ppR!Rxlo@EfJp$e|!pXc3TVUfOFy*QfAlkJ@JUj z9HS~}s8w4c_9#jNUdR_E%Yn?!cXJbsWOMJ#5LF1{FhGo;dt6)kAP))oqxhTDBaD@v zYc;!3ttpbJ#r5%cMtKt5@YOW>XUMwAFV1jr=s?A}bNEiE1j{40MTjf9lg&P#Q%zOu{+I3^MzM4J zWexwzlDu_TuZd{}CSF9Fsgv&kV#eV2|4+U@@Q~lCod8bb%!Pyf_m7PDA)=|o6hJi9 zHz!KmoAvrcc1hVf0SPTf>mH^bwZ+hwd1~3FTj4(S`*X{>1T4{pf%R?K-cHl~Z-U_b zNjjvxh@I&Ev*~^PM;YST?}psd`$ww=ml~J8@`h6FAH>w)g4*>&m?)$%vCnoIOa8PL zMsJihqm6T%#zny*L2WvT#KA@GP9Pd@gW1W83TE?leT}o9V`)lr4Ew4-FyQ!w@u{fn zd|BZG{BZMJd~jqy@RC8d@)|D2jSX?~v!r}#Gn%s|lPdp^L%xzk>%#L$u{Ti@T8cX* z6r*|GxvHkDZ}Br*yEkhK8MTu$c^tG|Jzky5^U(Lz^9}hd<$I(mbMp9j)*_zRmdbH7 z`@yVD>eW+_USfcm>lPZ_zQ4cgR&`dc&zexD->To181?)K61vzU92hR9uuz^Y;o)F> z!~4SI27AW>wG<%^`WnI~+27)Cl^21;n#q@_s z0cS6&9In0MnHn&+w6D(As;82*vI|4PSHSc3)#x}jBEebLzgzXuF=in=<^_!Hhmc9^ zT?yMWwtx;rOp%}FA!KHogzHRnk`uTEI9@Y2yNZ6ydr8e1=tM)<3rM(ce}S7;uV`PL zAO2PkKOvp7AdcZupCSjPOR;~^6RAHxV0|y6*|WkU*no*_RQXj=24{gE;7Kq)Q)g>H zC6BrlR&=%d7qCGeVNKb>?)<5`;>zxei?t`3i?gxP4oamc(5{w#G8DPmSWxK*<+{VN3k0B*UX`Z-(@QSQk>!xyourMFs%DA^*MI27CRrvaGbWK zCQFFERz=nMD9mcU1XFaaUPYjx6#L~s*jW2)vDzx9A{4e z@U`fA77hUJDL~s_;I7F`K_}i1qdNyMkpU%>_G{GxdK=fGPpIXl7}Z&`TdrhIL*-Pb zlt9HPwN-%N05Q^%y2imzQVN+wx4uFa@WN(wWUG+sBBx8(@(QZjFR-NPHFEnl9dytN z>|6k45G~J|4>TA?CS@?yNe*%3JOM?Ji%4VQl%Xx}Qa%Re$M!5$m%l)U{3s^`pj%g} zvd9MOzAeR-$UBdfD+(MF&I0+xfD@?#&&-um1naE}XUt&77oTL;CS*B9c(|7AT`<{YKpvdN=Yx z0Ya$PF0KNE-%P@u@b5y_y_o@D>wTvsmQgBAA1U7r@K+KA&cNMF+Mid-oRvuJ6AKiW z54Zd0xjm7M(&5B)U~A956AAU5)DRMr)Q4h)ABAE|(yTl+6MVYGjl95*va$le` zZw_H7x+Ck}bLtC?Z^5Q?xvEjmf6T%IAEq6R~~hfZLn!(pN0Fj+f+ zlip6hQhY&+9_8$rPR0Z!9KM>SPhgYctL4z=h*T9#QlrC^k83fxXeCXr4T--}mzd5; zRf%67rzxgvg z*ECGr>Z+e1LE?VMd53IS)VW7ziMB+>6YVV3mdXY<>#qKE(=5(Q zDL#r_@yU5XYjU1dBQkbY1Aods6Y13`-HZuMpgt|lA3XyJlJFrS#~bzCqrL0BZyVOt zIo?j`*bTYXYyJAgy1O$U9vQ^cw9Rebz~(zq2XZ)YU^6yS89#YZ=T6O2jvm5q=<8C8 zTxy@qc(OL7dpKXp*2-PXgrn}6FLwS>d&~>RG!;I>u|`ujx3kZ6^nCV%XhG%bM5Xy~ zR43xlqPBYcnw|o?A2;Qo7E`AjsUJ=i8;+E0a%oDYbRJA+s_=fsL;LW!Gbhn(W^Mw8eaC3-U{VP?GH1iAfB$e0pRQ?!Gs+C81 zP<=@JgC_?*NGWXf-Ppq2 zE&J`rE7*#n)WrYkLV>STEcUOFXXQd{>%vF5YEtb&(9r+tX?C)U`kWEy#F4+SV>jcF zG0C>;^BaxQwi^QRkq5;a)q01!{5hBs@m1u zNhYCVyYV)ec81PXtcQ}PrTHsG=V0Gi=T^BNBll$OmApCa4cXyOt}^{!6>7_ICdN9n zy@{QSlB0+qs`Tb1=9j|RP7`hf@#5HbMBSfDbW7x``_rIPFzzY9l-8^dzo{%Dw(O>su~?96)rS}i2#ZS#Yl%4}7lyA@ z?<6rAa%Ds}Wa!Gy@9JjHS2FBWi;*SLsj=Kjbgeb{L>rmAA<3I ziSP0YzL{G>oavo#rGQQEn%#nH27btLs0#rWJNsjYgJZ)C_?qPlI7TcLoKY(zQ$9SY zTfC5Cs+^Ns-O5%!2uPGRlJOSTgq_&wD7-;C7&5nF4RtfhV6iTos;cC{NIy)H2Z~)G zeMMS zA=lDtdmhf#G&_9eZPGEDxnq)KJREYJ*^m&Q@LK6MOCG^9$a03%9ls0fR;-|iDZZ+^ zLK<^|dSD4)uliKgs4_2;`a;|lG7K9~4@QRBcJ~eu`w-iDn=%{xXMU8}PNNRJ;KrT} zup^QKMW{sISqH>m^U>V{qn!h_>OZLsXbKCpSe#e;Qz%*b#DzV?S99n?-F9ggoi8v$ zU94bw9w^7)R^-zjZuFJ>+KVDi;e0;gavS_Bm%R5a0Iu{?GI0dB~iz z&%Ug^_S$Q&z4qE`6-*4tWHP<`Tx3>V23i7XVtAQTInp1U$dF`f53*K?v!#Hv@B}6? zBvxtu=80++xb)2cjtY-U!(xsc?i7(x#X7^Jf+Xf5>qK(@0or^Wb9L#wTIO7A*pnEy zBto!P-2jFWC7R{X>n4`v)2US&f}3=UR=9?Dj~N!bccJ#4Ym)g2{RaweGW$@WaNaq> zc`^BNs;=UISgLM+Lg3^u>-5TB;dsnO zwP^swND24w)}70No-=0hxa3p$Yh4Q95JN=3My?!(STvGSp{VWmgf(J-(&ioDvpCWc z|8@*RR(NN6xNER>zoesXJ>M^kAopk3vvq$OuP+I|o5&~Ro-X*+Y8!cl%!kP|o?y>q z>=-<&NAkyf@rOdj_N|>?kr3}AY{5X12XSiBodN7}Lqmx^97s>NoN~}`jg;XC1tOFA zdcVA~6KlR)5Iqirm}}p+7dUO{dOkXgAl#B~h^wI*l4PEavbTl-GB7#AM}{ucR%LlI zYVawzSG%`^#%16^R=4#lA#RD=!>r`Y#wKspRhwCu1xzFd=*S+JtW{y>hnZ>1ibznb zuXY$uN5K!U!nCCeYJnaXXKZHomhSHB{8zxLjPD8K1{SNo3kUq2QOd_qcQ}6gjRxyH z_QISuLy|oK$i0?0fM1Z)YC&7Ud5*nY#LE61?#j^af3`P>jP+Z6ane}Fhu9&l$AMIf zdC0K|Pdy7x&Je~}X z_ApE6l27H)TE=&$U9#AGQ<=5ZibqQ()NFRdc%fM~O~E7UW8l$@SlJOg9xPBKB>p9w z_7wuBP-DDH+{sX@ztcpq$CIN)WTv|W2~1AmC7;SyU#~j(vG#*Pp#}4AKA~iXA=lof zFsp{ho^L5FdHAPAp60VtXHqNhY&LH;i?tr5nv{}ENq1(?QI*X7j!NdJN+gdpjY7|VGu30S6g*CoquZRUayA2RwH0ONaV)90^LU;_{4a^xpcIBj({jRD8k-E?TbxT= z2yIy|YCx3Qnf9??t2*}6Io#EPEfsC*r0+nQpIumaOG77d7*wnV?oJRg1&zUxVZH_& zI{Ut@ZS%)6j`PPJNK=Qq_uA)vjdJd1#sXfHfrv(2*xLZ-(GVa6V*+vb)8noF^o>sD zr}R%wZ|ojQr)*v#1)Tnkz@rTPliq-pe7`XhH)s#5js}gH+%Ec5YJREn{|;-Lf$YD- zT6@O-4_NEA);rS;G3;R_F0dbUkRgkX@GvyyLVD&&4px(vq&m2zLMrHRO698sOa8_Q z-!5M#Y0Oh41q5w1fEHPxYOp00JIyL5$*Bw*UZGyp&OE4nl47c~#*L$_(;98B!78e$ z-{|G9x$xXNPfmP>$s>AT=|Twh`hHuSbJqSmsg2tan?3w#e?r}{68N0v<*_|RYL<#a z<^sjYSe3H!A{*o@3?5Ku{6 z53A)4RZi?j-QgoBdM}rEV`}#3wz{Jz%({S2E?wi2i^W6Lbv5#nB(p`p49%o^*-XjG zRx5F{<({a}N62_DB)2KiWSf&eB%QwKoV-htGdxDG%DHl{StqZGsl_)j>pD@glU^nY zCr2t3sRqhnhY?ZEERm$km^i9F)RrfJ_Xqe4&zD>v2(B7YoWmII4}T6hpQqr?d}x#$ zyA!~RBcxI0Gh3yp$Lx&h)^X$sH}=aE?Xk53T8_WusAXNcP&p>v-;1Clx4+6LILQ5X zRAg6;aqpDf9igHVC7Y`V&?0|E&(B~0(qr<3g}*}H9>yqM*)-;!$nE}FSX2^QD2OY3 zTg4!Ev;^tRUiMT8X4Zp#A#kYZ&H8krY)!v82$#wesgW+0EojiW1iX5WyJb*EgRthkKcZE{N_~B9KS^Noi-xx-%u1`>$8G|&06h0X+(@E(72(yF?Pw;_*%6!mQC?> zL1T*`Jj=9@82lDm&xu?5cs%V&3R( zM{kw1KjtoVpJ-0>_6+mdjkbc~ILaGl(pIeYVTe=q3dLe?75No)cC4pA@Q6F*i^C)2 zs`s5YtLw3m#y<4gRS`U(h!a`U%LT~o_!+w!y_S7OAuukcKDQ2u)A%@5i&j`^mHQ~} zp)`?{Qd4~gfvs?xz|QO`a_UjMGuU2m&1c>dBw|Y}H~zkh)vPtYc*E}KUK_}IRf{bh z=rVT3sfIrv|IEzkOok==1!|}c@`eu|uhlMPItecFTu@!mqf>H$Lz&)T3MVj$yefW_ zxpTAw$oP zg>GQ+7$Ju5t~-P#WeXX?i!#!+$eTQw6;qB?K1Ke`mlO($TuzF;nK!SJEs$K8WZshM zE+3-fdj;W7Iv^fwIro>F_;R1{(bYH&Kml(}0Fi zPkhB{jlO}UC)|m8c>vv9>F8P-v~Y&>T3nqvd<>tf8;{4AXU5{vWMn6y`e;12HFtMk zdmTV79Y;07GX%@4EfJs+_E&n0br%1a#>b=Elp0wvXBnsvL%19am_8yB)8SFd7B@10 z;sGklw_c|M%TrK^Vm+?^kxtS#LDF_IwsWgd&i9zK5h_)}p=i{@ov_#w)yja*V3q7` zTrA3?N68E_Tn=03F2DTa+(CY<2dLVq(kUj%(y(PrcC0SXJVBKmU z;{&%6A~>piq@afKbNEkH%oVDVkUb6n?lfN|8AR=nTHhx~)vjiTi|@8t=UQtc$w{CC z=NL3NI7`r$d8pg2BO0hn(cwtYEvHr0*9WPjM_7wl!s4(#Pbn8jr}Qex;Ok`ts6eT2 zzC!j(koRIrxWhrGtUodM@phaKkMlu`OjmW=6thZ_q>?gM^))9I74IT;y8t-quPdwu zk^gNB%Z5`*{8G?HrHRSU$S%h)Z^7%d(X3C@U}Vk-YB5Y&5ZyJjh&O;gOBy1o@+iR{q8)%TX7_ zoJ!%-9;=nC&N~_1dU99Ei#p;LL7O1A+R}rF@=i|KRI57mSQ$1jdbS?BJ=e@+>*8#@ zuk)^QH{M7OH`7LZ&&}oHZRRDIf5=wmaVk=K?m~!0P)?ZEQ7YWRa1vyXeTB&9B8{j4 z(PKZrd)SY%>|J-{C)|8Hde_~pCIk|syCqcuBZ8y(;#R=0WyZ1eMVMGtbU^fu3)M>3sPM4!LgM&4hHB-8Mb6+;D`kWJ}Q4+ zbaFx}njDvkEcBpCc4a%fkXA)*joiwELTOMa>T)Rld z1N#0jcLRE`ih6pH#a=J`v$$1LpL|-4N00DVdULP-La5CXVGS^c{%P*f^xbS#*hb`- zrx!wpa%=3q;jA;51C?pDr}7lSbW+@>Vfj$v6~9lvpaKjV{3>2$(e%ojWlbD|C!vCI zBGvLs$Hm2tur$;I-4k1THrbv&EX;CU3a=vnIk^AuNOTxVJ4$Mj!-M%0fc(PW=SX7WzvSskq2tJ zbS?588e#3h)0phipch%Bri(jW<7ln~kM*@;+{~>f7FM~M1f*lUld_zvQS)U6e*8VT znQUK;`k>Li8nw6Hxf+$8d^PGFQj@PnEx?Pxu^tPQtY}wwwidrL)mx!Mu|uUW0hiyP z&Jff5JoB{%o1VS}`lDgZ2ncsb26$`|z&;0He~$p4@gD#l&ONc21iL`&KNes$stl$8 z{u4NyLhC0Y{3>-2myi`jVBrM0nOSr}k%Lw%HW;bBNKY5|jr2RyDsSKhnR|zP;QR&~ z-QhLzd-g_es{z8fdd{%iNZS8~Y!`NXG&-;!7e_X+MWIM-g=hbkl9M)AFT*m0&T6`d zZKpvmHC@xR+Cg;XKZEJT8^zfh6JWKjRv-_2ULibZNDJ@(8<@5i3*o6Qm`V5ON{x4H z%O@)f5aa8sqFeFT3V8jl%TeT6FO&;jILQQ{Njct0LVRHAoO(jz$QW&g?6(rS zxjRtyAVF&84Qp&Fi!muvJMNu?L;VDm;i4CCS8+i|?aN{a(INbd4|gYK3PV_*%V_vemT2v4>a} z*+^psE2Le~L=A&UW3QK#$dq=LXbN=qRzCA`0L1-G}2<=Gx2(973FyEf}8|M1B7kcY<0@M&v z$4EPN6c?+U-#v=%4C;|d3E_W;(85fz zRx6Pva4d1hhv@-GRd~y!B;a8F=N zKTXITihlM1y-PpGF(Ywr)MAqmu>@Tbf#H(ij@kM^Mw9DXdWr`39L44kMaCuhi2 zD`k+*Zgdt3t|MRB?;_F|B3hi@NIhE=7rGBO*h64~$cy(8nckKcOQRR89xp&}5!v=m zb?0Q{Tzp)O3OVqxfU%L9E)HKm5&0&|>}{`pk&D?uJMts-gb!xHK!Dn8R>z2(kg`hvvgyPNK(*a0bAZVWujN(C$H3QqE(X0T* zT9|X?Z5*(SA`jZ0{=~Opod|ahKrh6D=!ZpEF>MA}Ueb!C5WadLm$KAL0Hx{9)o znqMAB)zR#N+J>sSJ`IN4p8uL-hh16Rp*AFxMKq%TJ6({kLjHl0bHGuk92bP4G(MvJ@vz%p#( zuyiCirWV-%K*}Jk81W6JUn~3iKU&dTQP;kDtlCs^;3 zq~KJB%s4sGB26TPw;vq6RSZ=hUK^YJn-i>m+9j#fBaKMvDJNKuslpLj0kfP4IVSaT z)^oT>=t{KA<-6Hn74Ft*pOtzGG0OX^JjjKgKky)##?=&h>_}0;s8&-5YTl$q8>z@l ze(mfgSs8r2#B-T)5ej2GFSGDp;u%U5buhbr-{;Nt9CZmPlVTYQVj1`Py$lD0K1NUq zHQL^1Up|p1>j|uqzhR^);{vNlDgQP}p zn=rmiiZgw!G8HQ7O?Zmm*QDT46l_<2W#&UzYo`J?3Yz#%;PQ_Jj-;1|2yk+d(7~UJ zj}k9jPOVjGl{d+#pQ4(x!PNj)U_A?1Md%Vp={ZZLy}#;BdMapQCDapWsrXV@WQr&= z8Z~XKS|upkcoS@uRO}aw2za>yp7zsAWG2)G_^XP0JQ%_7=jFlDv&pJ>AVI}aFfJp> z`IRVaYsjj$BqIBEtwKziuBgQ+2NAE3w!L(eP|0?)PYAEC{Vji;X49nEw3kojuk{v- zyRBbI#-~%#uS#C%lmu>%vU0JnF#Lj&vY(8Xo4QM`0KQa$q~Blmrs#a zuT-rH3j|N})0R!0@%!8JGA8!;U8cq@XUL7D^)!A{RNjQxtlfVC(EfMhCkwN(9I>b7 zdL=m9{h1ic*vD4|M!>gQkm-WRQJ6CftXU|VcbIpuQF8j|l|Fi39>ia(DycrVpRUS9 z(dqot67tlI|FG$_`njI_c^&DgbUGW%{&)Qp2CS^DtVPgRoS(RAGWeaS$+FDf%oPqi z9p*Zok*h)gRs1;GU#!mO@e0Qil|qiNJbE%KvtnIuPi$Iz^$B;e_)L&;*vSqOamBHT zR_g`!6(hXJpJS{W$-;S;JkI9Pna?lh3fAsK0<`JT9+e-)-+L4vUsAKChLTJ)F4#E> zxl5BS(_`{NKCZZ{1`EMWS+>25y^P0dQG%zcr^j~wsfgYAer0AWzWZzv#XbzdOn4s4 zyW51^a?P2WuIPx&5q_eWP|E^_lxW}WC*ddh!(BEO!L|D5lF<3VuLW2Zz{ z(&L9i^tQ(jQMv>>9oYJeO|H-XUHuMg;a%`gU)k4)_#16V?WPs7KS#ec4x3Bbde@Q#NuRV`J5qZu{a=OdMj{3nS-r>3-xx z(t34l@f&z2gV-~8?Jci7%6nGgo#O=9LgGDJ-U+$r=2sEvauI8neSwPGt|QlaU#Yu+ zFX@`$G~7WM9dcxDE;yb2D6U&D5}VJXjvwdmnf-HkGS-I=cHdJGK6v<^K=|On%IfgJ zLseIC2G79+`-5K$#v^&XxnGQ~!|M>%cdiyT#MNYV<5Bq>v~-T@-ThU(|1S0(P^=5@8DDmN0M)m z#;ZJATPcjbf)jSG08YwPhXLxO%-6(VUbfr(W1@nQ)T%02mXc;ydM9boOLJ>CEItmk zpnDH}RsKZUDo&fkUCi`(M%iKe8|RssOL{r*)&N2r-tYHN^-$89JSfK&dGUFz@JLr| z2a)NC{O7vh?Ydg>pDX!$?9y9&x5`A^JlDl4zczYq zll;G7CMW7=XKm~!FpjZVRqmf&Vyv5CydlFHGTw^bk!6lgR5YFgJcZ{oNmCIFkV)|p z8vVXXZGA?xHD6Z^5L~+MoE zAmynoD>^A(c4EaHtqq++{im&GqXpSnkX68VLwiu@k0dC~d4dM-Rtt3Ivl-5q4rUpS zkLh(+#c>*^!AnV#-UwOtM0O(*W%5Cf>iCI?v^a{=Nu$#WO9>P`OYga850)xNDnILo z5R?#KuyR(rFmW6;wze;R>0cNoENF+>J_NfS@4D!;Tm*n+A3>7Jm8ozS7sujw)1?>s z&vjwBSKK4?w_F+Tah!^-Oi8mRO$lk?!`_wCX>V0Nf3%WK($%Fo^w}ox(-Xzwoj#tl zV>?~xb%6#@(){mgvL|n*ArL7 zdlH{t50aK(6!s{d3m#mSaa*EHeC)1Hq{X{2g|uV4vB!p1UEIEfNhIS}Tg<~M#*qA~ zOGQuFU6O+*p=TUd;O_z$wyDRW6tKWB(d0H%4mP@K`4U6jXOcT4K|C;U7bECyvK6(V5`!j46|b z@3-vr>9HwUO;dVl=z{#}aq#QF?kJ|clX@Krw~@HSjo zY|>upJI~M$Yb!2K!{d{+SGA}5?$D0Mfh|YD7LkDxerTI*i#HE06NSGT9*EwU8;H*0 znCv=EtQKZ5SxzM&(QTa0Ud;1QuaH{gGl(+W1$*2J2ZVJ*{s`@@ET&4i6+6$kw7W!t zmpy=jf=d9PI~2<_itwatY-=!wc3>HY+ci2c9PN!?)8AQ2D>zGD_w(N5=VXohYay)! zc9nT5IdF5J8yN+NJ_qwfO4=rXc+7K8k|65j4zSP2*1c=RP`sAoO3WI$>~TMhiv>#L z4pO-NH56sng*;;N3=GmDPaRtVGBskED>9`W1VSVX<;TO=#`435QNRTBuU**3V}sQ1 zVX}(<=VVy^mY}tTz7%$riU}Mkf-crZ;2ffV<|{zzcv0FC6%<9{AIT5a42C z(^M}cj>)E>`-xOWr>#D~;P5{NrE(sAIk;?y3adoCZEU0PuJMdaEORn-1Pr{QXaT|_ zO8iYcEPgeVY6oYaPmlGxlOOSXT}9oL3@n{nAeVE_^O#RyNOtXYG7by|HK?(uJWEv{ zDi|7yDQx5AY~Y2|5ikZ9m}O6jY2jcz$$_=41ZNUZ5_vHy9e5*o&Ee!DkDUDtl|!)Y zP#gmn0KJBs{gxP3iQI$jm-Wlu-1T_BMAP5!cWmLON&IeSo*>Ez8$|`?C}}&&!;Lg94~mKvJ?q|PNV#&% z%2HKDn_UIcz}Vg2ikwcNy)4|Sv@fZ2mMXZl^6ZuDJ!ty_7JM>Ou8wl%YPZb3fp%fC z+nAIN)SkzjhB70v99rUrf8KJy_uGew=PhoylPlV{JCqUlS z<9NV;MX(}BvGMXl$WJ(gcx))C-B2~kUpI=1<^_y&>vzsNc61q$tH`TGjsvEEVft6f zy=i8x(ZHLU1nbdIa<4PoI6@}7QBDbEk1dYWzfh$O8QtOeGcGnbg1yPWnz|R zO-aZV!exdd`#Iy^)O)&)hdIRqe$u-seWWl&M=semdV`tyN0#rG2HvWn95P_%N0C@D zU3ST;R&G4YsNBIXbPlystwY}qwKEfz?uVGFAS`iGa-myAnK5=FmCI6c21ZzYisu;~~YH``t!LlL&@1C zyP0yAD*N$mW>~c(%Y&WKp4dB8#=(;DbSL9gc1EXHt7u1Aq&j>@);Eb91_{%g->|HS z00|O1j|g87uQ)Y;VB@{eTH8dosN{7-n?BzJ`s~MkBm8ArxM_ry zDYPD!pNNxSi9XBSzt|p)2pBAkaofD*g3qVan4uh%RcNu%SYns~V~-k{#fKek8sAbbfO>6Q) zapJa*&O~I`=r^+)p<`@sS{4{-GK;pYYK0iJ8o`qT#wK(=WP9%rK6m}I#o4a^I_qN= zVZ}9n&18T?pbz0a$R7TV5B(h zU&zXuY|jgte3|W|tKXRrf{!P#jelQOnxyYTdicH~>HFbJk1CHwaKoKv^S54Io4b=} zC+9UR=!3H`8$YA#)nVQvxMU)&7!*lf?Kkebl4m6%jT`9QP~kuH!VUtTJvc@YxY=<$ zd*AX-2|IH)Y+|yu;^qq(RJmHR*>T1sm!3pSTAVep=I#rRjIJDn=hyGyq)F0i4u8LL zCVxj)j#9#6Z0yO$!8c=>`SPQc?3Ud#%Cv;oV754jZ!yhh|zHE7?{w zTf4s&H0j#v^{ho3G3pZ&SbV$uSXY7C`pw$j4`FglL;C>kQ%=q!91%g_>MN%ej~`w& zHCQg8MbDRT!@IinVS8M)wJALYi<7UslC))bwj-5*p#2R}A{4&N%)R(vfkm0rrYY2GkT z{ycUOC)J0y9|_lIE=`vX2m<8}r_(Qx*GauZyt4aeodWX62m1P$OD8cJsLB}%;BiaG z<5bmDd%^3MlvbySucEG0OSXy&(!M;2o~GdHc@~!0RTC_^sAKmxXuQ{yo`8uAJ;O9b znRMSqxe#s_i)ivb8Y-GywYug`FXBX?tNkVB#E;lRG6WZy{W#GPeY6^fw5owYB38>d znBh*LH7zoPE~X5`W<^yJ95q(*dvJQ+KNx}V*P|GLJ_~2k@AItRlOkw)^>n+FRokrx zWSCY=^jfBXX4skq^IWbL%8XHS6R^&O)~?3V{2I*ITpqr2vV$@eVA`3l37@QZV~u7G z`q}a9$j1)gM`s~h5>&WD2nm8mcwV+{w`ZVBJUpFgXLV>=nTe+I&3^} zNfTv4)~40)dA!?pR(;c)`LE^2d%(iQoX3dopNmItP0XiY^qg%quZl^Jr!rrUy;{SQ z#Qykvgfh+Q7a0F+CrMi5AZ?1!>o5GcdZS2#@*F;ri`xeI5*_(tT5)Ugv(@_{?|ST~ zk5Y5{=>TW*`{;`TSmE;uJS{}z9y#9GL`dLhT1}mTqiQRsCQY^KS?q8!3XCE99u)8P zwE~?aacZaak1coJrsF)K|1TbQ-ewn!()$0F6K0ijZb7lu|4*Vpka9N{lxh8+ZFSzb zg{$>{aXW88R{z_YY6&hvSBzim;@9}CfQX=zjji~XF#nU_bqrsk^+p4MLtm}G(t$`lv{RznS>)kPPR1crn^ zfAQr%JS1+)fs9#ok#3AZqE@prP>@HMI^v*0Ip(j=v`w_L{NN#qbrvhcDVD6)(rysm zo&^sjj3<-%capkdoH>s&{&DN8K9K^!*tK451t$II_arplEmE%LLQmyd^CI#QKAmH^ zF+3Gh;yFO6#<+|y4-AI{%iA3AeXFZheCy;lC)jW(Jz#KhkWmndj;h_dc!E4)6d3Y; zs~dTYd9wcCW%}T0U+vPjs-an?8v=-`KyJ28E)YSbk&{haM-10jd(Ia(L^1-K+OxG4 zet>C!@m2OK%3rt}=KxK2>}>KfsX!E5WjVWAo5Mtlu~H&B{kq{uiwQCD{)sXJ0o`u6 z{ei^%cH$+ekdsP;vYq^fqUSOc88}J50rNLhRC{D7F78W&$*qL>3mInnAX^^SR?JcU zN5K{uE3f4w)qYKOu{yKY?LS<{c6m}h*u4~tvslq;=9GqRW(Z1ZIfFYQ|wY;T$} zay@1+Q;@NiftcLuDR0$S9tPEPaSDTS217Y?ks83r=bR#M>7CA+F_XkQSZ*g*`yH46-rzpB^tyW@p z5e>XD*B|X|d{DT>cBd$;%WvRee}}m~U3yXC2}rE5l<{}=XCn6y`5OSQXXx=Cn4vwm zTktaCC^(%6q~==D*f?;8eA_vI?p4TXb@d%+$J0xoj1rG>f9}-(6ldxdbIp>t1N5Kv zM0-?9luw5=Fh?{O7c*r;v?X(p$`y(hgvaooSwyq=>j^izHCnl9~9__AT z`Pe5wX4H2s^-1@exPn$kfo|)FlbyEzkRVHGJB_^UZ7y7?-@d$f%?(fa=YNxsOiVmN}ahRgXPfP~$-xoy{NJU@jW(jjsPz{~Jb`y(QBW zGWnaQ!QrVLehb}xWp4=q%0F$z45$opE6gC;MZyw$ORRd5lOq$hhp>|&mrTk*NTi&fV?8q=j?B3U{9CLFi3c8of zS>`;h`LVN|1sVm~K*1uR$1HsH*2r<=nHVN2XVqw4@`;el_B8~Xgk8>s$r^7FL|R)h z0`a!8gzIQp-53S7bCa{F<%4kX2hIA!J?p8cZUnI)bI%ea5c zV#6SXbXLL+j-n(;rMlz6QPl2+&f|PIrJ0gdQJ=%zRbP{v%UHT}X;Q9Cl`8`W;IljZ|h(NroC=0SM7u_m&t7@lqt9`lGY5ViRqX)%AcA07pwnS3Bw_ z(RGHqj;o#*Zp0hXtgQBHYyS*)`+Ad0k$P=4D6#Ra+KcMB ztfpv_Yo7w3=q1_V19S1~3BF)UAE0_NT9Sycz0Tqk~gvjv4EGnMb(?!J%o#vO2zqXRe z9bm3LPDYu%c(t+lRHWcBk|fI{vdFmvr#?3lYx0dWNU#!LIhW;#O~bNZlg%Hl&gSt! zDX~?U0y09yRxxn(=J6bYfO@OjC0?!_a*2+hXO(@RxeqB|aOlC&m&j;TlXc=k+`m_6 zT&Uf*MDQF%n2QY@jF7&D6`|Yw`~yVY=>cZwe+rJJ(Hqj1c<_w;28 z1=V);tJ)1JtA%TTU{G0ooc?HFMCHAQ;2PPWysw-}sv8OlnS?n}xS5S{rl1q7rXW`u-gQADe!{2=je}kDzhgDC;SjV=jye#xBF7 z@T?sFtK!Ij2s*juu%Cgf)l5yXX02V#4h?w#K8HB;4_=bw;qW1%J={U#R+vA_OXhE$ z>&Gi+i7_kJnycn^jTBR3WKKnHaa)si{IR=xb(?j|88!yK)y5FBNQ)F}(me)VW)dC_ zB=$gjCZ*euT8HR>$gGPn5G=T<)Y#5lqu9X0_xpLwb$b;iZZaAhb`JHnhPQitt&H?i zK*4QumQ1UkF>M($N#f$Zth$rRv7a-c36rJf|gcYy#tSSzFVqS_E?6RWL*c63&B6sDAoHUXaX(6AD3>?{9eGvet zQL)4=EpjTXT2B4ufor-`Lsin1<0)o5pk66vjc175^#|s!)&m{cXpt-f_a8u??us*3 zk;+;OOS+hGtfCRc)Rv69Sj9`7OM+FYnvT#GV-g!{$&?z%GyLG1u>iVU3xJFSevj7(V+!!f3q?av-SL%puFCa(evp*Awt$ryr^c zIII0)s*jI9OB&Lr^=jO{)gHYz@*pF4<<4UxCNGMWl#m$v!M8Z4lJ&tM|_B3p+gK+;BR-}h)?W{)lO6<9Za^B-Yd4EkJH zPgOMyJg)`gpk)5BaxNg5OQo`B)I0@|H=#AoA_8IULHsM)Y+h!t^#KHNY+=Y{rF1#q z0OZtDXu@+?{iCUM{8H+Op5V+TwXLA!$wsk*6nruo=+*6}z#`rJCcQ4`^4M%&s(N3WI&Yyj%O zuxA7Sxg2&vQWbwoRAIaGhQw_Xw5LH;5(9P#`A#ViC*+$|@f1Rq>oW;LzLdA<;)j4(3^EfTXr{TvE?GmO^`oYNF2dS z31DmCM-~ScwvU;)3D{cY4VNcLlk8PVichlVcl4d@BBsV;0k0$C2;#{UP{z-1h^KeI|C@b;*@rQ)qtlHzz< z$Xic%TZk)QXH+thYS&Y0AAfA^XQkAB(owa`eq8wON!0ER^gh<@1i(AwEfwH*Bql{qO@rX5w~15TA`NmYI?%jo7kG$NrX^L@ z&WfJs@<;NP+U1Rs6z}pYyeYfnI752MfpC=t)> zG82`)Cb{Ay@v175!V>?QQmHuZN+t=}gbT_aOR92FN|ir6w#r#4RR)i$@^PoiU{aOC zQmQ=h*eWwps@%`|n+&BpoA>WXbi7U0=y=E1sTDh=4Acq(Xia?uG@Ezmb&-}n-%{bmAZGmj*t9BE-k&oJ_}!Bh?*OD(vj_J?h#QF0TlZI zNeZt=)TD&JmTi4Xa;(xzTv zzkiOu@cn$&Qc|W7~ZVnubBtu&$ ztv$mQ$o+2aNcnz}e19P6drRu~1H<@U$&N)uOSOI{7?QZD)@(Sp{qzk_4vhk7w>3-c z>c*Z3AfxLQ;*8B|cVRw5Wym2i7}5W9a=|42&qo%P4&zGbgSaaucJZA3jWy?BB*f`5 zM?G?kd=i?gdCSd%y@kHldI@#RNwORmf5izP)?nt<*YF*m_3<~+KPK0g(^GxF`G2kN z8nd2LWCh<^f$uWl9KE6a0$Zqc;@w(SF$= zQQ~25>X5uYcH6I+$5W_%gTT$Puji)TJsS1T~!CinV-Kdx^MfqE681) zN_9}S7JIN*kr;8oeY;H!9^NFH{-*H3g$n|hExM;>``&R*&G3@$RFh+ldS7^e*mkV& za_kT(%E44AP;i!~eRy17q4Zg(+W++-c@4Vck(|Lnc1{%Us7pc^?1!)ujE%e=f>OcS zN{u5no;XcLT_;>;a_?wacDRd!gP#Jf(aLgBi*d2(_;oB7rzS+-so3zhzy9@XE|_$3 zpmN|eUqdV-XzXd&p5|*%`$sL%GP=#be{v=lI2yhgYU~X+rU~DRjh*+YQe~obIuUwD z$22+fsa}->N4Gu20>c^kHtpd?G>_&%IuJc6}CPZ zhvOWXodxqBrqqq7_RJAnQx+40upGQ_bY`qI^GISeA!J6=wL_9Ce*yZ$j?~WuF9C^(kT%blc0?|1DGRg7-2&xb zV35`fKqa1n*uw$f`Mia@Mo`&RYh@!p@NN0w8j2rwkHa1+5D9d-!`-R^Ek#7976?;H~5nv;Qy+>mDt4C z{k?%F>2K8SZiX?9u&BiuNxfYOv$Afa6`413yRY_iM#Il2<DX?Ht>X){W3D<| zCRZyu#EP~X=gpg^2C(aN-^N(>L*5O(7REL<)=Rb4IOd^K-#9ID`LXq#CH4JK)z|VX zH{z7I%iA=66TZ$yw;2tJvbEZg^jTG9bSn9r8@1+8U!ygUbVXNAI~On)k8S5h`fa8q z!7c7-Y`D)f-u1m%@vca9s=+3EDh+TO6G6^t%-Cc7nN`K6V}-_W*ZBx-aESz-jJFh~ zUJ*U+avwV1L?0?BESLRrJ6a`Hs9Zjw2h&Jpz6z4Zfw(6=MoY=KLS9VVYj?&cE@3{& zXBOe#X%meih2|EhlwF8Pb?{O9vi+pV(K(>aw*6q2RTcQK|mS|pcbG1MIYi7+tc zbCbDEt}`h!DU3ughZ-e^0K>6{NX%z#MW?LB=3Gpy)RLTzq3KSM9EVFp4dY#58z_#4 z3$HM5?ImVA9G{vQ+ijNdy8PNqR4(cU;vRQ{#F%(&{w=AMZm@oyjpaZ|r7b(=YGU@M)Udp(RSry^~=*vSX3uViav#51~a9=8^5r#Wf$O zxftH-MgI4;SwS+Wj)j2N9l;l$Pjt+nMVnxqjT|CZV@Epinrpxe0w{BHjqKAhY? zYZ#f;3L-5lV;C`U*?Y7xhtUu#E}wu%g+sLQ5LjID7~K{=@>}gO8GB)1 zzeNWz24giVa&5QP`w11=32twHkX>9BOtku zu0`Hrb73^ri5(E_9oRy@wdYy^a+sxzR%CUKFg)=-$!>(%HS9U(COXvG=nSK*4??(4 zf9Q^{xmdI-2F8rd=FdqLIy;ucK4Tz+#GEO;QEvB0z&Axiy;bAzBfz^F@Z=g47wA_B zl32pE=Qg_FH&`PoHYoF^jcy;*7%E1#S(%z_Gy4HWGW#0IM#|dCANRaaHTqC5XGByp z_E^029*sA2yszmkG73tR+MZ@0dOWvL4TBB<<}FS;f1=LhcGiOk>kiuSN3#nYs^g9Z z3C2c_79l&UuY9dwFE4%Y&&QUr$lK^o&n>XF!(J6!T`artk;o-KBk`MOlSV?&e>P30 zOfMNfa~--*mI#+`V2=(_yVDE)>&~kX2FVG&VZGt5J=Mug|BBuSVaEm@UWHWps1SiP z{oDsfHN62un!%%+u1Rj%S&!a1kkal9x82^f>oSot8gsd0;OM4~z~0S|mGNp)F9#+! zCGxx5&$+4XNd#Pl;ztme-1a=rB-(oi4@N0i9YIF()}z}~0YdCW7ml3N-oHCj`d3AJ z!bLOUv~U~>1#1^PK?XP%SgNwvXf3-747$>4lGNwhSg|pW`Npi6y1BQ<+hDb!<&vV= zHphY8{JbFekgyvsjw*&WbfwvB=jSeaeinqqiK&^=6m)oczcW`l!`iUFk)`uYTC&A0 zYmHm{*5u+#Ma32ysQv9ITKwIXqp-F>ur^Ma?k0`WZLGTqTC5Q{%pIp^2)dj^j}pI9 zjngi)baCkW*w6#PEp^HCIP~b|S4#6MbB~$|yXjNBd50dyq_(@BEHYj>@$tGEO`UZy zh&g&?xat;Rsn!U!60ix5m+(mmxlXG(aIWeA%YGfxQ;x+0tyTwIPdYVNjbRHr3VRH# zd~bt{;Q=Trv=b{S$p~8$O$So zo}G2&QCUxttfD;hH*ud0KO0%^vIxFO0*x$N!MMj}c0*qx&&WyJL$|{8sCmy(P2hz?N!aoGm~K1&{+J9+Ia!cC1=XQKTzFC_r-`H@jODS)C%ih+u zFpQ0D;F4q9fg{O@Z9U4AFnjk{ z_QBDRq}hHlooQ4Ch`v_q3?W;(EzX;ay|jxm`U=Yu02;aQmqZ;}q_^PI89p|T5n(%V zIvE4T72i>GXuS<%Hf!7(+#$SyRJVq>{B4h4Mr!%*OZj5AyiK3n*8J}B>u^_-)c!On z?{Uk!?SCOFK%4+;lHspRE&qb#EN@a?{p;y<#faHJZzq+$EkRfqc; z;~RA5`8O&Et5}Y$6F|PbaCK|TM2V@Fzh`v9DN?q8v5bej^}c4K z%X*k$q0t4I;V-!xgWUczdZ3rTWprXVR-xi|tNjuRm4^8ZbBzPO2CSU5+U=Z7TQAs! zCuah&DtteMN4H7rn0me&E!GT~%OX-EIIA3CRlN;TlD5HkcXXStsiH}AD8>+3yC8lCfYu}_vfE3Xn^F^hl)YMq{#_O-Y z?(0Oir9HQaK|CX_?6Qu>@WY-y^4ZqI$S_y5*-9m#Fq)K_1%%uH9ByV5Xm*VC25Z>- zJ#&4#VUi_sg3hvG{ho)8HrYj@lC*B3+b;VW&%L-~*;fV%C!2j;Macv|EUxL!UwE=! z7r*hPJ<+K>R3GQJqwAB^?emr=?r4>1D|&JN>4c}yZ|?`)t)^(Yy9DuduwMCBt$Wdi zbRO33|BPh02{RI5N;f{kiMefY;$RUVl#wJ>c~m z^L);c!Q7ml@G3XD6kgr0H3F-`>w9G`UPZ|xcwNr%kMh89MG`h2CBKbLv5L?M9E+DR z-S|RLpP=OtCHCwD5BX$(K%3*l=Tc;ZEPU^Y5G&A9b0>6?>?_p4$u5lldC7@oELZ)W zUwd)nx0<4G1gJ^1I?)~a&t1t|DiaRaC|4+B(cKs1?n6bVH(?MhBi=& zQ7Mxn!pkM7SaygAVlUnbpD@0THqi_+;{L#OV`HfwwZi%t$yBXe1f7+iGy&{sGerR8J`x;w647K|&i!&fIhVCVa ze3PrU3>0-=*3%^>_tEaL=5>j{<_s!9u%H|W0I__ds#ek6RL&w?{!8GZO1;d5!Z zG$uJh1g23rRIE8@%M)%GWyhUcdK|BuQ;lwGj|e@1Fp2Tr<=|`fTd3$}x(Ktqtn3rS zO$(N9&@U`%5!C5Rx}^`=eG*T(w7kKuu%^F!_|5-`^k4Y;--4^UyX$Y;d*2zJpm#U4 zv4cu6a<|V>TDh&McYKB*)v)vAK*dhaC;Kw}#yi}kCEz2vzi$br5^VTpWUyh^$dZa~ zL3Tjy@vTonQDA;2XfE*`F7bX{VthSWd#UK$pz($twzBX#_LE-Vy4O6zpMjUH9!ec4 z@$N4%_ET!i`DFi*3=P@6!NM->-m75?emo|WaI<$wmypPU>u_+mO6VeBd=f0@KK65s z-$R`>37#uJj*6C1-g_51Km8OAZA=NUgfLbEth zoOp=KNaYI(Z7+&R;LdNE3rq2B43>lR`ZSvi9#iEVGH97+OwT+*@jeUABWQr!z`C37 zrRDW;I;dA!?4fr&P^j_uht~-~1eV_5Nj?)^?l%s>0W2?AQ1s7r+{4NwLR&G^JWn0+ zTf!ouqas@?M`HC5-zU7iKQPma`O#mQPuhwr)FtuA)~YYH6}Uubpv?Zjwcf1Cn@87c zEBecIhz6ChYky!d$y4RVdwA!l`SpEo@2#zF^R@nH3+RfyF7nGxN4|oT9w5Q|3zDs@ z(bcerEXCPr@dvcn;AJ0vGkaF4G@t#p+#wpMOC_O=8|a4ehT$|1}3kR-K~2 zgSnowxaA&A|~`ZJ{Jcm&ha7`JT#91N@x#A`(^cK7p4Stgv|O*kZBp_JF@# z*jUmVg}kbP)<+c4R$K+#jot`;)V8Siwfh5;f&EJ$BY29F#fD5W+E`p5SnMm3{R=9` z0UL`~NRF^IN*6Tt!9mXk-PiJ?%^))L+EIv{M1pxON}H7B!p0_YmbT&&8?FtN)3p_< z`Zzv4Qdey3{{$2G97sj&FDiVFs2bpQN^liYn4rFsI&11RN)1wcy(GhN*7>MK?e*~J?=y@}kx=l=IfQG4ekC8c zd73f?K>XB1f17%Z?111FcwdF3dC>2_z^2e^q8*6msu4)J`15J9Jq+_hHGnv<=nVc; zP420Q#3DsIbTQr#qL29#dY9S~@X*d@!Y@T$E#D~uiO~^0Qoe9#_;6a)$+3)!q3h)v zg_mStfswAqCZ#E14s;AgC^G+zh6>;d*H`0pHDiDy=oQ<$x2E(_3d+Lui$4t-Uy(oP zd*_l^(HZ8mO4-y?Z^w#|CA7ydR7!fZokjS-CId1#dTqdnNira*%-SJR^)6{#E zlZO2h!o-rVwq%Hy_i%v<8N*F4327R_M6+1^K2V_Z%jsXS=8F`R@vQkCD43&uA1=6E z{XSMuqkf+(SgwAbDR^A{a!*wKzEV)nuO5pO>{h=bxfy#`d*lV_39ZsD`IxUhqQ*qH z%)(MYgv@N|s$|MDUzKx?Xy%(Jer2M@#y(sGtw+Zp(VWn=uRDBjU}ayfu}XKKoHar# z=F@*umsle_Q%#-v@d!ybSNfAC7q2H%;S(F;(wemmQQMXK{vZA4W386Q)oOe)-204x z&LS|fX3{O=SVxMv0jDDfi+_+jcYO4^^}a9C&sp>0qd{X+kP}5rnmQ0rS&cg{*1cVr zD-6|rjdWx7%|7NKQtb({>y=ZqI^TPLo>W+V_JevXd%WI3*jIIQL}V&Touo=_9kb%S zdx^B=H~LGdiZ;(rZa$=YHznn6=sJO{#-NHeI|i5E$Vrk9{j*BNf4lNe5;P9`aS8G7 z86jgmboaJ+kSUehgK}?IuY08K4>MO@yyJVpj<4}gqTp}nI-R<;+NmO!80MNQZyJUl z5AL}Ci3B}Hue3VO*Vo$Kn^Z4*jQG0ZU5PwR& z=AvPGY?a_wgh7^K?LN7+tai@qP2%!Cgf!>9AsBVxENUkUs45cl*2hcDqZCrSE8o+O zlYh+>GI(Co3XmiIy?Ii;G^aOD8m^{W^CX$P9)RcSp!!fE?;h)XUPQi)W}fyJIrbW7 zZA9m|T;g>osuD*do2TjJAB(*wH^QB*&3X3Lrb_cit8&6e`c_|PuPZ^vbBOAoC5x_| zZtrKbW$Q?B_B8LWjj=(@4+} z!5{kZukYP`uQGd>Kv6ZWEbw9h2s^O(Rc+hiXRM(LS2c729eY)dB|h}xe94^|LD^Qp zFWwDySfxxx(KzO{Ot*QrG+T^lTvT#ede_4BlwTeSXDv&OYn%}DT~V27D9 zM^pKbUa?U)kTEkObW0)!;=`%@cK(+^4b;C!Z}=ob_wCVRV}6RlIXNL?X`DV7aVF~8;=#ah(`nV{>vZ~Q4^ruL3M{2?r%jeuQ)0@fA;;$A-cj2Xc27-^@@kS&V&3$)z?LrbIA_Eh5yUS$#QARidTIG8&y=UcR?|yOB4P$_6+k{>TxT z)ca(qP?K8KI4ydSs?z*TytdKQ#)SveHAbU9Hn}@iv|bS8gOqprn!VfXnc=_IGAZKD z5B&2P-73h5s?HzY<#j^-IIEJl)X$2JSB;wI+KsVoGuQqAOh}md4`^^=tmv?`g>p0C z>kfE#OpFCCI1+B|g%6=LtrVqgax@O>Mg>5PDnS5~Lo=qC?_7p0e+DTE4AeHDr=B!H z)OvF!jTw#N*QIbv^*P2zzV%BE&t>hXF2e`R)ewz+?uzdmv*GYiiR56y2DsO-R@I3c zg968c;mz?n)0{e~t<|k>@$-_^n*hWtvhz!iHvzS1Zwo)HHUhrSnDG_$!-5YLum{ff zt=-fvqlWUZg-ie64}P?bT=ECD+%uq)T=4 z5<#Hf`1)$R52x}soYN$rHFlW~#H%|!QC*^@#VZ1_TarqMSB@*=MRw6y-`YUoXVni% zgEZ!F)5Ln06m`b!)k%~Oh;Q&Oja`gdU*t zev1IV&wTd#awJX=+eu8}=Jw|0s`_X(@)5Ce5Lx?~8zqb5W%cT{GRvSxJ$hS?KH@gA z-IHP7L=HK%rwT;oMWPrn-@*M`EaO>`u-Tp1hUbcZ;%tG#eWd8MQJQLG-$kA>iZ@bo9xvK*WOWtKVt7zo_^e^$4c@;(R=c6?^Zd9 ztqIY$OpoeZNmi+E*CnxB#GPwAAr4548St)>yui}a^>9fJyWHft2aIao33prmJ$lYs z%LJx?AjmwtSA^`6toFY-`E384iv76o=IPOD?DH37l}2v>?y9UH)~wNMJVD>TOMM-e z#xjZo_Nlh~5QjfnnkRiwLHr2Ci$X*?(P3VwfKV*9BrD|G!#0f*9BQLtWCY!~NA(7G zZRQ++3wdvlvCeau8L@qw@!n?Ek9PaRhQaR7NT)w?RF&2KIOk0c{zdFg;D2EP|NCwH z=lmD=uaWj>Na24>0{>MG#5>H@1KC}9OC0KqUrkW!>^3te4sRU)_w4Br|MoWF|0}$$ zqy7`Tf6x8j;GHAoQ|aXmyuqc=iz53GQ$&`q=}b;X1|cO7J1?iNIK#d(yYghUi(Zhf z*3VRb*fM1rI@8r{jlc4pQoZ=tB<4`7sYUmm!SI-onFVdAnZTO#bhd z6nSak|90Z}aTjLzdgPdO{6E0|Px=2E|KH{RN91Yd|LZ*0^ZPcx#E`wRjnINB#vi{D ztGs1lzrETI$Z=(6+4SC?wPog>pY0>e;FXzvUaxZd8!B&{8qID(8%$KhoIcCZUQdnX zHgRl-inFlmZmqEM?h#4yjLJV)!qMiWD;erqG8~`a7b1+I=fHa&z~-DlmW>N4`P;bQ zmcoX6D&$iv_uWu5t<*^K8#-Vb+el>M@;5himBuo7*c%jwGDUm!=mmf;&d|LJ2Spd5xZcPKgz^Ss^9iF-H#C}y zU4kh<&=|#Kg@7@YdN;uX$~SK6wCmg5Lw)O#Wv=L~JVjh`<7SSSY`O7)ME274=yh;s zRFQIohX?PsL$QGpr#^unJ(^y#XppuLUxHjxw zN#$8;7o#V!H;0c#%d(=yd7KN5wE10lZC0r8Tdnp|h8Kp&u7cW35nZU^d4YjYzroC9IM*x*!a-ym*YeSC%+7N_kt7k-KkFw z%|p>eS?Z=kOe)9BB`+AueGjkIb=2qfm-y&4)q^zc{#@!KWYCmBmz8HkO1<0t_B}Kg zA4G1#G2G``?N{uMxx|+hEZn8l{#{<8gSqx7tFem$omAIvcT)L0ab#Hgj4Hntr^~Nt zwdc~P+_Qv1?~~)kVjMl)&U#ix=!E^1kLn=n=Qgsm+PlcxUK_nheP)^?!t_UZbwh#K*@(@LbQD5~B3lT8cfwC;ZYw|#oy*E1SlO<{` zlSYpf72|L;-P}o1^d3?X;pF`Tl|@84wX7=HD}g^(zB9j-Y|*=NRC%PGtF2E+Vf_yp zoleLwX>ySs)q+d}^h=>objU|bMCJSgM6sXbFiv@T`RKh`f9x4T(SiLhP+F(V{*bfL zx@jkdOqk=b)7_7F6w}k@X}7<*JrpbI4@X`QiiO@b*?6|-(Sb{;)F0lVF}?QDQ%{g? z1daYvV`DDXjRC=E8G5YS_k1x=TMSi)jM;rVL&nL0*tP8Dre(8(Uc6VuU-A=D3F22xeRM)|}dJo_C|`C`W!sduUv*kmYYiwBaK;@U0|Nf=3B?gUgAc{ zu6>9#thcBA8Hayy(TTwTesQuXyL&*7-E|~@8#A~$oz`O$$sn_dZTS_VZwShveit}Z z`+(?>J~d1_PCRwvicZd9xX&!A9i=iKQ(#8V>ILWGEr1h*Iie-MN$fSEV+w*%QJ&A0 z5z}5O&Jw$|+OOx4LD!aLW^ih2m_V1!*>WhBUCeFGhELLo2cg55@bQj1CR`6XF6l(W zQ)O~QwFlG4Rid+S8YeQ!MJ*ye6~WH{fFm!_=jApV^oaG4?Wl*6Yw- zseig}v)*tx9o3vkGuh(qx%}(GEn2KdRM4@&EnHx`4pA!S99Fo&UkfgH$!HA43Y2mo z=-tYiZbBXX(}}80A)v!Wc~nE3I6ZnhY`iQ-d&!>_iUxD^@*_sWCX;oy8WTV88Ep76 zJ$ADt$S$e(gn;w;-<$tJ&5C|SkZUAimL%|!a}vKFlF0LHK3ti(lmk=9H*?V$5+C}yi~<#} z^zMQ=%t0|D!&9ly!*C&Q<)crCHqY$iU@`*)9G~S*52&Rw!2%`-nP42@KP}ew*X!eR79x~Z}a4M0e z=`j-pI-x|SfA4vRoJc{cb%2U=agr1?(27x}BJ*={>U?t%Oy*$(vhFz3C!9jgqxSWJ zwFUb+GZv;{4qk@UmSdur5Q({K=oAJ9Fk81I28FFvUk-%2QJi?)XAVc_4d8IpxwwU- z!gH~McWc!$P{(<&Vst!mRZG6kfp=c2{B3pDQ(F|nLZp${o4=LU!d z^$r}Db>pU+qE-^w1JgS(2yblv1S;UjH5K%zKZl&BrWVtV5f9A~c}rL5*fo_EMm$XK ztZIeNsJ^DM&Mj`{AmVIYYxpI+|zeeBrTQEw_+{slZfm5#<|uoNzHvL&xwi`yn}|WD$&McJ7My6`%3iQObNnH5 zPl;a_OWh2B55})KXi*I&mZvUO`G_KHD&FRa+bABds9Y_v% zMM_H#X`?VE;^`9>^ANunJDxyO?fS&O2~R|m>!8W^a6bcaWWFq-*TakMeQ!rNCHwOD z^8(w6z4N0L0K`04?TMzwZE%)=>jaY%wVlvrbeI(8Cb`@Vc?Ms&)mSZXa2c8|iB_vrdotts@%r0{^srn8?5CUDRCtof zZRq(QXQZYK{b8+~IJ91eONg+vLyadL<46804BxDuFY3Wu0#JnEIh+cbSdLM_r;#5Q zKL6hOym^qH6?F?sXtfRp7e>y5sF$#qr6kbde0aQHpiys3M>4y0s^q1$hMy!p(icF1 zowgW7lY-rQAVoNN*02W_SY>VL*r;L-&AI?-9g+DPm8SP{-r)$jFICASzC|~X@(SWC zj?1cD{CkIeXf}Iqi?mP-A-CU}3!iG98l1pEHn)oxP4a{wMR@Pzy{C3V0_j=V%lvze ze^1cpOnifsPATUnQU$85Lmq?*IWh%tsTE1WTGa@X1TX9ByK(D|lir>DdjkuAuzd(N z^>5e|3y^t-(&0~`R*swNlh{)Dw6t1;0yR$rt64RzG7y5|U0?;P_*WMMS?v;urt3}B z0se70sX{O~eH(%vj$ow6-6TD2mEIswfr`ucHw5;4B0yS|Ra!rW z(8ShVw+ofHP}@t!{RSDs>*e`_1!1ddE$a!`6rt+{XnOXCt$A&{*9mZf;$gi6JtzvK zb>)=ypyb=g!*@w+1Foj3(%lpt)L|#;wcn2aX<{&ILQe%r3)!0LYi8M3qxs{5T6w6_vM_*{i!?0a1W9)YXw(#A`AC2J`RJl7AZh&+Mw#`h`?y=-r>T&`x5O&dpG(OW5tT5Nyi+Q8m_3T+4kV>f+aVuJ@ueDMkZIx|@ALt?R3 zwP$+@>Nf+v)2)AMkowus!AmR1_aap>-Rs*~iNQ^7Lo=C>NR=l?CgTixRMy7BVhxBg?hvm#=@2M2TD+wn!>Hhs<5x!%w8 zk-0Iz7HtU7Nv17Te7ka2X{FF}MC)mh*&THVObb@BKu}WY0DV@Mi zuyK^W@>4p&Q<_|`BDX(SP$ycY$MNS1R@xV|(yn5qU8$9}fR*+?SZNKcvdO3f3x!6PX49Je-rt?LjFcK|GkC$Z)=qW|XpC|_EU_>|sQgCiP(O9v+e zlR6gSh=z)#{`hg|8*D+E2)<&&Z;YR=uguzrhN`7I6R+!Sl-@=y-Imyze5Kgnp13Bv zj+qxJZ1j5O_Or3V zgfDHVFnX>8F}3PZfH3u-yJ7yiw;N+ZVCihNVlbRVN?p7#P1mJ!5V4W@?_N zCYH|72bNjEhX(VZjsVkUa^e>&3p%BJG7U4CPSdA4dd^jEL}&9Lvw*fRNo&lC(Y#C6 z*TCE(sroFG23 zdvO(yS7_JHQ)gZj8XnmgTwKbZ$rX!_Go@yXBBG18PpnlZM(lmS9JaLml>Ics=$k%> zxb(Q&?5#o^d-QS)fx07 z<%eE!ctrs|;3PQNTGhX%>w!SxT56l+3*(P$2rgE6vjH1(TBWa7@)eFTOt`&Hw!5Hqv`U=#xPr1z7Jfw` z$%$jmkZ<>Qd{w7LMQX3F3?%w-?i;_QFeJ9Q6#E*eEUQIm!7!*E|GF9CTLI_aPJ}&T zud`N_Jb*(!owK$`y4e-{OvR~W34bpYzJQ)izRz{=QL+%7a^wRz4AmI{f8*sJ4=7q~ zYP9#7Ajr<=n;8t-DPp|AY8`^&U!#_9dnaymm`u0Ud_eHbbcnIeQ@cucXc4UK7(h6}ML{p+g=s@@{R zoGBgEIwyFQr~ut>*jji0oclfFV}c@GpjsvSGRR&`}1Kd@mrC`#cF>kpfb-0R8xF8S8-9bUUt4If`$VIaGi%AM)6 zS&=q&JA0^0n?6iJSX=cMW|eUTcE362xgWTHVA)&YB@Xoxqe?`mqgouFmsrM%o@q{h zZ%=va5$kN1CNLeXP_BFiK{lN0UNHLrhfAKGfH~-OJF`UV%g}}7_g8vD_H4$M({t4$ z%-ZA{F7Y%~5Mf57jxXo#>y*=#hPrX%&>YF=_aQjfW z;%Ik_B7u#!^#=nKfe;DwJFvz*o~nUIR63X{s`$34lf{G_rZQ5_Dc8dtYfbI;%Q@Br ztn4E=P4~`=5c(EE`Vrh}|FZzefATkQvxSA#a`WOw;ne&6yo(bm7kTDJx{?RDCyizJ zSq~X8xugr%RNgG{?#*~5`Qv$@Z(`g z!gjg|=@w^6ogQHo>kkpItkU!Jg!}`!Or2GV2%z*9QolON4PPcE@OPY^K!3SnT09iw zxcvL#Ys=F7KEguw_JveEB$z*iu$H=^Scs~-X0(# z!q}14o#=-j@uJJwdHyuv6wAdrkCP%;dm@q6TKLSFc_e!4)2s3fs?3y|WOsh1(jQ9M zA2<_;x%-ZFWt*WoNab$%w*^T${kYJcUXWyt>k8*Ok~r6MWh)*iPSkR8_Y+5|NTsTr zofr4ktrK+ODCfe0ibg4G9$!ryF0MbzFG?cNpbb|T%GreWQ& znyyIquE@amVm0fd!wyGk-jCM29YZ4n`!no$P|A^~C zk@nrikzoja*EH31G@;NxEQ7^+u_-XDOO>gD?#QrRkzp@HYj}RUsireJYl9Y+5;sYWJ8 z!}dgny%?*(Mf$p?8d5ezYPPcXn`-bIg;vR~038ZMhi!`4n`6T|7(lFs(QJyU&(B2L zvwUL!+i(g&J7mrV=x$`#w%D+jnufjDgc*NLMj)!$M;`!4tfnJsZv>e1gy`?Pg0W#w zH4S^FiHe79i9UP;pGo>hkCgMFBSr52k(#$7)Ux_Q?>~v&fqKm*N+8=A_&$$V!ZRfi zf$BZD;K9hiE~X{&xaIv98%75(r+igLn`0saH_e{QkOX5H1q}q$c=|0%gGGw?7-5Ri zg9a-deVF!FRb6Ztb?YS%8Q5XUqA=V;*{%pP@A+`zlPQa53DO_&lwBT-KvWIm9lx&T zzsRue$iPnag7|+|w($?zX|MQbXME$^TFJp7asHCFn-$HWEUjU&MrR_kxw40a+QZ)r ze|KdjfdI_@7V^z+Sh+U4KV|Q%S1-L=)n3tLDG_+42v%J$F&$G;x#e6wT%KMoOu=Wea;ng>*-vg$K;1KuktP|Y7 z`El%XtGn_&Q^}o@59F_dD-JdesEZ$$d4p(oX8&i7A4+F?GkD(uhV}W5ICVh# z;r`IIfH_ReNVmQrpL)_IIlDAPGpu zO2}bjZ8IB{u!uDw$G7y_e=cACt2pR7cDzIK-+$G&{@nQf%I^nia{d1ykvxxWzxR9U zW52(VFMrF&e*cfk{~=%g(!S+0j}l?Hpg)xpe-`0q-1U+@qfdVC`}90~jz9C` zzW>8#^W{(J^F1^})QzXWX$&I3df4BCFtpUrN(iUU79ltaBRG3Q2n??`c#~5??Qa#M zhKUV6s!hw^pQ6846O$rO6Rq5$#}%r|BO1Xc&*`=(Yr~uQ%R@_Ln;!U2nM8U%;ExaD zlHD?lvkcY0a%<(K1MJRZ&y;aftb5yVEQf=Eb*klHyFY%y!FIB4^(kvxc@*`#^sPf6 zo-QhhR^iZG#o@cR-nJHK7RFLW#$IqbzJua z=eu-)tQO!n|S?BjcfaizaP{lB+O+UR~fh}4)-BzTN3V6wSiQx+fxAVFL2 z;8}@xo^G0U={a-J%UBwV*?-RQ^tTsOtVoeKR8DZ)eAw)#2BpxEri5zxit{K$ohtq zP%_JuF-LFWBc-|Uy*6uoLq26PGu-yYhvTaDw-+gGqH^}0H9DtrdRQ~%Z_VCg(8*~| z!$tDOg$~hax&vcym*@97w}7AZDNc5?o)f1#hoCpL%Jw?)C+-&Mm_1j9dd}GM^-b2m z%Qa8JG*LwZ$}w_Hi`7mU*{Bc;PA$QBwNpZZ7Ip2;M0IYFAs=^AwAGt2@w~H?1UF+G z<7d;Qc+_bbE(CVi`4c|F&30Mil#)?N8%e6S-;Ubb!uBh(A%5m!uos%cC2{Z9;gim- zX~U*B{$4-BM{~AY@>G+Dx7T}_8+y#5fEmHb&KGDA#gW>#5+?(JoZY-BZ<6EK_U>@L zL3QdxSp6cKiCf;M6A#h}x-d8M_Thf$*8{I!YqfCdCcm}v66fG%9~bcWgwSf?LGH`9 zeY$4*r1Y($i?~cXIA1#w^{o%3{FP)167C{Y`%9)ihP)g{f zMZBx@;^Jr;)-x)+=ycs2OulBJy!?W+n$048G2(m4+4vBgRM(|Kof(|9>VKx69ru`i z{_8;(GRO84znn#$&#GMgQ(ZW?KzG%jq^^YiQ}^z4+2uJcD72pHi)uNS0LNIjnHbIF z7M3Q$8@v=1&EQkVY3#Rxcp|AuLFUH=Kobns;HBw{MnsdZFmbrJLP%%Ds=3PS#Fhi3 zg(tRD*mpQm-R;|-e3d*;A`ObYinW|k}-l!HM0lQV-8gFHQ(cfUXM>ykLCPBMk(0k2F;WK3@wK_K|+IU z&rMpU!L-D=r}{VaXGgFlSnM5Wj}aE5#}`gtUtG+>521>$Eil!XyU9F~X0c?Z>9SOKKpkao7*1i~Q&t&DiYMA=NTMP4QE3=qZ!bsGz!d|Jz~dD_ z&3TUoWlRv*P{#=%#_Ia;JxkE8{GvayK?!i;W|oERt1&pkK<-pk>sfg`rair(jw_MY z3NBNShG836fFg7HureqKxVq&w?e#Y0HL<>KD8>SG!djKJci?RCs-_ef zrt}vBpdQ2cyppv6n-2AI=k_1UmWD#f*L)};M(qZ4S$Czw=M~Gq$9RD0h^GB(W7XW@ zeVH!`@%8q@_X+(tF|&}2IlSAOzx$n!?{{%Vj&l0suK*q>)$ehBOqru#%SbVqxV#Xy zwlVT-y`PcgAp7t!kPT#hCM=Qf4}fw$pR2z6Lwkn@Q+to%0lw*@9RocNb_G)j7~>}c zLL=gIK6jr7#LP6zsednp1&Cn1z2J1zrZrbEz|vSnBzr!P^(NaVE0!-TSt$B! zjZ059rEX+Nu-%0JrFq!odm{>6;FM@Dmt0>tCW^XgtoF6|bX}UpXeEYIH_%ahMC@_W z%Z+c_hk140rmqa-L)dT58$9Dmgt1&|#v+C8pY5ZIDDhX*)yz3&O6yFY%VX6~X3n5J z=v6#xHl@E7z-}WrDeZql&8fdtvf)zaonKM2`l$iJU`r4Bj`D=;D^3T=G^H!8D2!`= z%&PARvA|!$F|#8DT2LXygSefG`qo*i*VJq$)glRcP>uF*_5h z-kA9*<0?QY5T2sjda0N#^d2haUcgi*$x2SF;;nb#^WL z6E*T%Tuwv3Pb@b`gCzjkd~=1)L_Cj#a8ZqrqszHfdsM{9{PO14a>alhR&#X+ z*ZUG*HnnhV`Fqp4d-%kPi@~Gw3AoA7%QncO&GZ9jwAVl9=Q;t2XjGO+Z^c)sjdh{Hxo}3-Y;xjxOlJ7=j)D65``-IP? zs=!J$Mj38Q!Pyx045EdzPLl0F>wQ40_XyO=#}?UYJ)VVQE~DAU+5kPtX|rlbe_`A+ob(~LzLitn}X96yq+u}bFoPXfK`R?rBsvpKoWC<66_yZCN|3Y5QxnF-P z`vWAw1^CHYIb#5qpI1sCZ#(@5JN#C-9r|!%0M#t3-aJ+$U#;NL<^LL)@70e=EDIo&lWQG|>sU|rdc{+$tPT7%nR)bm!3(%6N@&CmnBcqs~$ zjpdI>;l%wat>qI)41bTp%I-??v;VZhq^!<46i=X?p@77n6ukRsl=|u(o z(f3GtasZ~|XC8r%RsCQirN_9WRl*Q~$)9bT6ouBoAM7g~WBRucwrNi3i zY5idRT(gDTgRIsE!LJ4m+*MIGuv$(b!I<(KHV=NQz?%;FI_lF`7B|gDEcsf=rD;D_(sQL_iv5!*fSO6s zrRne~M)gEiH%2Mn%Oat#(b0EHR5-iks5oR7J*1l@9<-}e)D)`9*UOX9Bv1h_4I zoIJnLXy=FBSxCH=yuHkqz{8O28dROzB?DNu8@bN>0V6g8H@~}_eet_gs_LPByyqIO z%7~xpjdR|hN`IJ3;kF*D127S1fM9(*gDle`|*wd^jK z)rvhwg-DvM3CiXVRlSIlDT&J5>c0ft)P?UzWpF<|dE+vTi> zh30q^qI)~P$zwIezKzh9Vzk3uPeuGP?b38Ctn@G?}cxmEdzPTH**3RiL`4YB~ZI;~18eA>Uj zUIv5ih;t@&#?p96qRtDcldF`FW;s)UFFQuHCYHV$8tX`Wj<#51z&Rhe5!MzHg>Bfu z&NAMs`qBVty8at88B5PE7w4>k9-$l)_cU=|$sT^Jn^o6+L$-=WYBvSS$B){;%8$G~3_PiJ5%m%z^uK za&l${26oyL{RU7uecaGhhQY$RQvb%7oAIoZ7!#`}TzS}});Yh-r~ElHk1fr)Yra4! z&aZH)^;HU1CT*1SHShiO%!MZJa{7%tZk<@_iJKxx*1URbwcg2IO1}9)$XvxV2brXH zmsyum#!QdDEH1`b&332$74Fm%sIH*h-w*EFt}oZFV4L|@s-mBoN=1)^$ZeHlWWA61 zfv?DOYTwKMillD}coK(eAu=F3X7m$Bz?|Y?Yvq@TS{!Ka2@dQM2^ku=mTO+9{q^HR z?SDQVGBW-db4o%*q8OWZwv!GA^G9UF=ddlp1dv&R5C`tg;d(qDAKXCbBtu_%M>QN0 z=ga5~a`%UTjo(f{j2p^~p97V?CovRZinD+kw1GkzPVHI)*|WeB+}VvUg}u(db+HSR zYp?Y#qoKKGrWdR*z7zL42OjY0a87L2`hMscsBdpSi_ua3EY17YWv&yv(xYc3bQc(Z z!9v6Lesl*jQD7g=g1k^fo(VhuKmgvgJrwe4xG*C3b(sF`IosUyv{J==&c391VG{*Z z4)Xa~qpazkm-#ztPF61ZZB>bA63Fyd0>Z0YS6ES@$Ao7Wv~Em%N?uw_`z}*GeXFk+ z{y^>XEHSbqcS1bL>*HHi%WmE!COYc{Ei|LN8k~({=9QTDT)EjAikO;pPsi#9SS!WO zZuy}av4Zna-Meya$T|s*2*mpN$yWoIq>6EA=tv3q(Ri6SMjOXJH1}F(Ui&i<<$Z1Z zS>*0`?fv$loRA|u?d0Oeg}cM);e(sz?~b;=QOx+P){#tv#@IW&j4MN}6FD6hlK;^| z^6CAE7_ga}$eyb|4BiU0@5Pt%Uc$?U+TSd8qRb$)A-G!3-lC9-zy@bB^?0orS1n&8 z0W{FkQw}>n{po=tq2;m40SH^-i05q_nXGpA6(EuQ%9T(U0!ii+)28TQN$~LK9r~lD zXZln#$AQEty)=I~eNAz3z3=s=`LE+xr8tBuPAJ`2HSC%l&aYn<17%$ZF}y$ixu#SC zVlI9b0-dRc+g~Gg_7cd_QG}xzgUsXu=cAt-IKrM7z$&-r=4Iu&7r1_YIg*?g$%6pU z^+SvCbnoe)^W_udf4}>$BmX)8_!ExNdEhA(E@&Vx2{gi`LUG`05Z#_Q@aEekvm&<Lyt6*_H-+-fuzfSKWFqz62%!EwiRZsbIA!h=HCvpw7rP=!;}0p2Ih_t5 z&ilwYg$D6A#y*?(<=j4d?pett+cFEOAXonPeaqi0xUJBn;fk?G^2+3EAE4TeAtmxh zC=WBA&i3at95QK9m4{g-_^W~!judYU&JpYFt0m4f)u>=a_9D|>Q|cyZEK<*2Yt=h_ zB$rWy_yv;7YbpcrSx3n(4@q{}J>SSK|A1$m7?hh+Lr-$@%d>cP<(H`i8nfh=uRJ5n zM8<3Rm{HhK=qU9XN1cZy!kkCL^=Kh!$W4s*;{}+z0G%1|g!G_4umFmh($^?@(>e{? z2rujHn@@*)^GS$lty;rItFJlIeKe=6>hCTO`jUP)a?cqv*dQ&ul{Yj7W2}nRM?y z@(J=x|8@Uo<(WDUJ(*@NWt~QV35!Y0!Ne6g0q3{#emeg>d1e`tFKrVe&zx~hZXZ0^ zt#xvYJoDH2`^z!%%=50L?0*$`=F4nocmMyj^2}$c$>4deNyb0+UntLf!mH=Mi9GWR zgHiv_%QL?tESDaAng0BDl4mAg4aNsa1XyvfG2k=qZhFspt!K#(EoBHUkkVIUN3yf7 zkc0Y{$P?QS`}6WZUH{z|7oY0=uaYmKIo(&jh&;Co*JpT>Lx$^*pSfCm2l3%f>V97g z6O;&)xXu~+|!jQ zNiosW$4DD{;V(YmS7GuW$Z2~!4{jE>Hr^n!6vNcBJ7IE_+M8HL%&4YQI-*+?%D_+X z81^*^L+OdZB<6co7(dj;eM(NBjyDrg+1hMtelz+|3b%`}J!R2jgtqUP2ZXj?HxCGH zujL_>T%a zKW46TGTSz!dt34{+YaHwTn)YAT8bjA&GA!1sYwX#;$Jomc-E<-HPH_0a`l zu8=pU8@a3GB(`Qwo94G6?v%u~BXh3qX@&T{?|E@fC@;7aHOXAk=Eam3KH6YU!r zZg8BLIxU7^vIAkQ%WV!i2djIzt`ZzVNEH#dL7qZyB&MThOc2J?zRv!Wz zBwotNYj=G!C$9~*x$@cw^0Az}whwB4nl&x4QyHcpV%Fb&wDh*G^i})G$ZrKGiCQ5s zf{|0UN0P4*VQ&q7+Lsj-#RJX*4@=&(MqNuIs?(ZxCAr)`bMl~^|5&OjmlW7)xs&~o zliyM=+6cE+N{ZWb%I;|Ljl<3ts1;STpb_G}>0C(7t~?i0fnq1jG=)%o1z2mGRU5Z@lCJZyxiMy!fNbwN_>vY)fHns7=R z^}Qr1?R8qI4FTu)gFYiotv4dmhM;q0F2QedlslONUJipqKyYKoL0|eycvO$6X5uT7 z4xh_-qv`3v(Bs;~a(mRqUu?Y)=}F4|FK+@m&cx#wWwiRGn03krg_rNX4ixuX!U_FXlkSn8OWyMepeMH3r*V$cY zYS~-6iS>BAN2LzSAJRiOx(n&lK`x!z$^If}NC`^t^8?OM+;Sv$1`!&=i=7x0;{-#l z5ISXv+fd?`iWeL#^>z3z?QJ7Ej)(8LVW_;Bu*P>FMqXAXSRg1O{K8#3x!n`s6_T(YhM4T24eryDs* zsvTyMzPR~w``N_{F2%(}7&2x(2B^?2uHT!Sc=sUUU3^6wofgrsJ-+m<{f&6{X{%LJ zoqW}AM7yu@ETlB)QML7-5$%4T632>mM@qDN?k9+L!)1ohlc?9ocEf%-hCn9SQ?SX* zy{a4IwG2#OLv&ktx$eNcTo?A`#el^)!p@J&SoNwryZ(B~b$?bM*A*1QNJK-p1(}>4 zHv)mKb1UG@NpjgPh)siuOQS^7fFw@123NSNiTUm|4Pqe!nSMCt+as)fqUroKl>HYdkDGDWIQP<#=WJT;`h?5RS;1{^fr+=7Y8*bcan!&H1w(G1r2eUFcXYk8DjT14Hx@tIwZpePg-WRGqkla~aV%swGQJ+!%I&EtL9f;G=)WASw~jtKIzdf5zCR4 z)x;lX*dN8e2VTiBkPDk(V%Ka5r5ehksmoXr!U%R*do*x{`l_p9s)bFp43|{)EdftyKkUCjrfi5BM{QiJQX>20wmx%9R@9 z!vTz<78!5jBfG3Sr3IX7ya-*qsQsi)*B61BY$sE<%NOI@GJqueGSs*W6^t=Nl6b2N zKLlITGkiR%(qa5Ffs^pJ zFTQ3*tY7-M#27xxmEUXf7)b7U@5p=qI#U0{zgHO%!<+j?v;2Y{YCewNCl+2Ke8SVF z<_Y{}7LB7mMU`5!=z>tPzQ~uY0dB~2CZ%qD4Gs!6L&hQ4zp%mp>-p%|VNN>#qUIgh zfc(*qd~)HrvrY7%oYA7M;T;s=>SozTbM7emy0eBpmDZKDLXmo2SKZHsIcY z1+jquhVLcX!*<&mD$^gg{X9J%!BiC9O+V*zk80U1t8m|jyKh0g%}>=6DJFhv&31`v zTC`1+Gl<IUbvM@+S*qJGYEdP}b5%ih^@GaGpG z_MKNI@kH;}f8r~h&9!IhO#C|gs7r4edw-*!uBxq;uYz1*N)8=|Ptn_1qim`NE+0@d zu0Qv?^!U*{qJX&DS<6kCCLpDZFhu%vfV&QS{$*d$<6{^Zr?B(U!{kDHiCw6XKh-2& zbA8SBC_B!DUo=%5O?H4#ux42jaGF>YA>W!Pans&F`|2fuC~VIi6|3H1f(QPF3Uy5> z-%u~Z3M#M1RR>C3_woT+jQ0xXp&xT!+hFo9%O?k%pY(uR~fGa9ghDzvQ5S(2<$_5RNGiIWZY8M7yqmTzKb5#<|oNG)?08$V$p!z~V ziW{l1juZhXH+`eoKL$P@H_(abFdsco!pSs0wSkdprjA)G%gqF)M@J_coW1h0UZs!) zD`{CuA(?v^Re=IC_HCGf>KNNjY1h#~H&1yoT1-2Z(zPsREaz792~1coI$_A=f9S85 z6RsmT6sIx^a0KXC`i#n=gW5~FM^!ggMeX;P@7su$Sy7J}FV1iVHKoTb&z_YtT2Cp-O=BZANb-^vHbASf$W*R_f>Y#$_C)z`ilC!W~0 zPwIr$C!Od-w!erXD-3%j`_26NV|&^gQv;)RSNh&jdsqMFWnZ`5g}+;{!v#z$Pg2wd zXGD@84YKZ%-J*d9SF;)Y`I+YrVWm^=dr{8;3$ju2og)5lO}DQrlH7xt(gyy~ySt^Pi!ooYX+TkQ{zd;1^KCt{)5DwL z)X622xx2X8OBxS{syES=y~)>Z>e@on=3HA z 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%0ALaZsSM{Z>p5p^j z_*lNZoehB@cNv*YHGHbj^US zys4q`$!q$vdVzWOtx4_oIch3YZ9QbiC=n&bwsCbfX7Ds;+vuG=Hvx}SxBi^>YAI`N z9_dyOeC%AuSLm;Ya*_6?G=2J$tX!NuH$BK8-M&#`WXrUdp2BOve6sIN=V_JYNCqP!qe>W+)aO*-%tDb5@jT|a}ei} zSjDSev-}3p2`XPANYMjnXKi{p_k!`}=kIg%Jf(TiVY>OJG=;rbc~Hs!_pP-cD;x-%%$Qz!#iccDBJZFj4#=(R0dJBVP-rR&)j6?n7~nrJ{$-6(u@d zkjI#H6;l|Xa}9P3Eg>YccjkG;*MLD2IBx%Id&On5vi6EkK$pNM+{RvUKqC#c@srBZ zN97Q3>uhJ+)ZhipMjuDagmRsP(ZJ++k)%hEqeJ?5HXWf7EG%^%>QC&HBa?^n$dSo8 zI2h+_6fZ*xLqe%|@jQD4gtC@N_d~+h?8mRe`t@mBv}Ruofp_6nzQsRk1kfQ0?@@1ZV&AW&yF$Sc7Bu5#5eR! zcK>YEj`3?pHywS%j?o2NO;5}Am$ge=#gb$xk%w8k#5w@DgXh~~bUIr#T~)E*ghc(*wn4CTesj?R}CH?3_?UOcyN4xU?) z7n`sB56g>j8vGB-i@UKB(8WV`IOW z?dhZUdco!YtM&zErF#>L+h;c(OE_HJbUnc_0bCmJlawp{r>i$K6)AC>7V-F|LpIK?1jZ4jnB8v z=H$75rH?-C%KxxF8clSJHnD-21NfHq+5egUz3j7nX*bYEBR~Et`|S7jzi&?;{mcjd zSM||1JZG%wcN0Q=bf=%2$iB-j{ylxP?5)yAAN&igNLzbrsF%*Sw{EGIz8VD2+FLK- zLS}$aFTH+qd+X56?X4S8zO?nfAIQ{XZ{^UMXKej`{`c#N=l$pU=)m6U{O|MZty}TG zmp=N`D;!p}vA6!G^wD+C+HC)s|NUluA^-oRkIuK>zLnk$=907Deoz1Vd^;}w%I)~y z2m0uvjdlGq`|bDhzu$Kfe6U@8bay>*`shuY+iy(^4R*I{zkNHAuaC~tLCe?P0?kej z;>-@Xd~-e*)`4^WX8pHxNq=P@3ELbd13v_FZ!zCruSwho{S>Z5=fsU!t^BJh!gR;U z82`6XWRdPp7yMcCw=Re7h6onSL)V7Sk}yoV}_ANE->?QpK}nz~v) zv;Ee$U^aol8^T`RVy?GoL_Gh^zo9nsCV#2OvNBj^XcxD0i9d;_ro@}ZyU8KNiRxm% z!=jLL>2y>*B@Q)T>rKEW&@J zF$k-<$amEhcj;|YI~UTh(*ppHIe5LE(j7)7#uJ@1586BkBYl_HF~iq216wsQvm{x##(DVqWtD)jtvpIGNLTfE0pP%^)ou;}Kj_=}9{g6px1*fPP;?1f4r;p_D)O#$!%DV}C(sKv? zs!MH9L8h-abbC3w4p@QEG>0 z^;OXz0hn}ZSzr3cxL`Hr$-%UYVs)0e%Bs95@*DZj`Ktx*HkQ`{|Z_sIM64(I(@KR%Om z@_il1SnXgPe-f;WKU$aEhBxbfow?s~Zb?;KB8^d*s5Z7wV#K6Fu9Ul~>5GfgW9dK7 zIYsLb>Pu$8CAXq4sd(yp=}X3-bXFqv5&QY6ixQ;J$j;a4OE51u``SMO``R6s$$6ul`dRXC->Q8rsGF5% zUkmGIHPfEdB{@IkFdyG`(DF9sH8-Dtzr+Lknu;cEZeRQ23GMuz+g;=AYp^o2ubqDy zTfX^X)0eykribl)5BpmB<=p$Zr6AqG4RqyyIByMU!))(VhW57=tYDUoFXbX@f7^e- zrJC|PRVwre{mRmDbKKj!u2+_RWbJT@->k)AX)I0h;}&+fr|BR;Qk(`TLmNAs>XxzY zr^yc2=XbT_MfoVZ-cgyx6yWw(UJ8}3h`rh`q3@=B?c$c8E+|z7w6H;fbZnx_Z*hoo_qtxO8z_F z$$yWqZ_=NL7A`Thgg*$OHYALv;}|bzgrZ(X7QHFHf6_|nrGif9z)iRTrNg9_?ls+ znrZww>4kwzYx)Hd$gusa+~#uHBawMc=kQh-y;G+zhVoCAuVm#ouSxQloiNVV50mG- z<`eaW$YZ`(M-BtYc22C5L|2&&XDm+d$IIb(qQls)i$qp}v@wa5ZDPZV{PX|F+mkL( zL`~o<)eQbJ(a30{F*iLVLOR30{=+;nv+(JV%)}3e#3(V@_M6ry!PZw2zkB_n>#O!pv(&K9#?;WK+&_pRmnw z0keECM7>kAnP7U$hlAJyWwX>lIs-SkS*#mE1ktt}mZ|H+grnoXb2(!E;imk9b8O1L z{sUz7wxxOV{RH_iB&#>_Zs6Ro%KrxsT!c>iYQS|qR_2n#2MD)8vK5tnJjcI+u>vMEo=fwnPQcf5`E-ugYxqBn739_dxp^lT z9k~~P>i+mqK^4fezUeAL7lBWhReCdlU495j9e4OZ{0ESP){I&wapZWb5 zrBH1%7)}ha64#OLdL`9!pD`i)CLV9_dxW72el1(V?*pb2!0!$H6#T+dQcdDJcGmdM zg&u?wb%kPh7a&0nEj<@}wV(m?F{%tE^^Cvv_ks6K{8*|2kh_bjbp9=5s-S4HvhFqi zo?Kc;nb-A7P~~Xjpic3s%7#{0_B{|rzdvhC2Tz>O#!d}BvsU|i8gp84mUa!f*ENdl zHp}xHltH6+cL9!K2DAK~w-*fh??pQ{Lf6X4jE$~O>XDd5eUE@Dd`pYvb1my7r7--1 z{EbwvJEk`c$pO$DULfkdtqR_B4)<$Di?v@}S|asLR{l|q!m5PtbWb=fb>&wfSuX}n z<7|4a|7Vfoz$=m}dM*|C?uyQ>8CBR+8(G@AG?Z_v5kp(z{mnn{K&2l%zMnXS*L0_8 zuU7fx#cFE_xa6O-b|XJs=7~o;0avoxRS%>f&Gi>TD|tz-!JL*Ef8%w%NqN|bm;3_3 zNuFM}aAgwW%lr@oM@J=bILpr)dYG7=K8~R)KM#>`{nwq#8R?53sOj1Mjx@st4d6=( zRV~z)_uDS=CRg_uZHjtFiQ;#$oHvfN#qG{3e%JT41%iyBXBt^`ae^;$Yz?4j7&bc# zOh1P6X=t!2WOTvSxr{Tj+{94XDbvOn5njP-6fIei_)KkrJk$*EgOFaVWC)hv=TZ2s zl0)qJf?M{7NmvQ-Nyx*dqvt2y1UOg!UO1>D#XDEeHE^K=N$0_TgN}`a@Be_(tTG*ScKy;j|T8i zf1#f6P7%yoLrl4fPcx0O$J8b3ZJi%sQ^fy3#x8Us^}o#AoL0t5T zz0;o%o@e`&T|x2{R5%ZE+JuwzVe>%3UOYPFNFz=|Iefv_A|Gtkl}1_oJAcC*QaztM zKV-cP_kRo9v7Ygu~ zYOq(NrKJkZ7?9o_={&tZjj$aV_&&7Bh(|DD9zH&T5xhWb9=A&D7O(tTH~+-VFn|49 z$Vj>T_2WO62E?DgCmM^Y(xIju=~rkTwIp|!ev#rpUQ+=-l2@@Chgh`!7dm>2cKZ6^ zwr|t>{7&{2eo|hRyOs*8X#%1EHOWf6z0WSalpiB0SNMn020G>9Ty8&ZguF27E{{t5plQ zxnE1do>2wsfOowKBdwjXX=}XWTh@Bl?mX_4LJeu~pUzdG)H0eHn&IzS-rjim0Q;VX zR*bIl%39V`QA2d}d3tf!YW3%HXWGopqpQ84N^w4%uTNUZ*E6%@yO^_CPjew8jr8{S9 z;DGiN_GxuurP%;0GYDV}TKQ<>#z;Li+c%gQK-s2as&m%8N5smnReb3+-3=|PN~~6s zzyphcWk^-4T&q=+0V!oRkH_q<(O$16Ll`QT0m&a?%oy$MKye#YAL{Er`udt6X{)_n z9Hd2`?vL+e301F_#d0{|$3TfU$faS2D*!#4v2)P%hqrx^@CH{f# z#oE#m*A*{LVH*|ry}}1YmP0pepxED7=qv^cdy)=2NSl7%D<*Q;8DzRY(7jP5?b(4G zWB_0Xx@2Zv^OHtcR{7f~NYqxdn~plEo^PEaRYCtJ&k#)kC2lzqdGPp?k3ei`?-~F|`!74*D_Kh~Kj4&lSS=B<3qT+C= zrwY;8xx$dz$Oc}eQe&CdeF($Tq=I(1Ir;Ac~v3&!nB zt+%RCK-7q2yhH0eZVcpxGpQ}-^DKN|ro}ZCA9zg{a98yQF1CsXyMQ4Vs!kxb@*;oz zh7N35p)#0fmTM0Ty}3)BA|W=HX`?wkm$IGhFmR_`3V9 z@xs!|NIXeveaT&3;$6QhLr7mCS<&PK@cMxf4zH^WuZIkUr%GC7yZq@a+b#|6g>qi- zOZE6Q9t)d)zK%-XcK{I?X~Cb=;2n3gM$R}*z zL&Cu?h_ic?# zSE?r?&~6+qxlK3}%3sL}SAr~Q?H#H1uCI;E3(w(!|Hf%Ht|Ng4jUUSe`4d~z(16T= zHZFxKSyias^zv)<0;-fqYAvf#nJDmffY;PhUnVis8|vx>sTAbNR^+d_%_Qqd0X~6( zBTuJH;E7sao?~2ZQqm@sOet^8kX*fi5kmxLM_et1-`k#`(nDg?QOQB8{W0%IAaYbs z6mKRweJbd$zAo=51M;=gRA3@8i`Um6Qugp$zmnuRLngy!!Iw>(xi1(`AlGO814e-Q zF8KvPW-Gzn^ezkleSg&S7QBa4h)l(SIyeD*Ku8&{WafrGLfe@n*o^uBfnVwK*<4=p z`FiKos^mx{$ry6`$LI`*XuLhloFTbBeLeqFC6DKoD6cF~GW-_aGXh%Ql(|J+B(LMB z9e+qq?hl^alDRX0o3qjFi(bmjuSV-vrS#CN#Cc-Leslc3U?U)?9*9z5%m+2l6zatu zPwh!GS!Wk8it8BaX8K$0rlV!;8q_g9a8T#?f!?GI?6e|(6dyt)2Ayo1;+YEJp%f)M z9S7HhEm^_z%7XL=_BQ-0J@!lc%Tl-Gb%8z(e=OCP!rrqozrfTEuR$WLz|?aKA+;(n z#UWUJf?!PJ#?Ia?34S+j+{SBe;)h7wM3NMMdR>LnGq^{sA>ffMH#DD-g}SO&cx-qc z6uX%TClKMk=sEZIob7^;w%PtZzoJfs>K!pZKULka;HX5^SE`3#Wr$wNoN4VeulPl& zsl&e=Y~-QGv2@nBMQtlZ%%uiTKFr=(eGH<)ySe?*0Jl*^qMd{hJMs^3D__Bu>#CM& z5YVbhU=5N&I4LSO6{vqWp%8@_YH1HQ-4zVEYoa&uT zEY*9F@7)3xD&xFtjT0<Z zfJH2|K5(VV*eriMuG4|S__9F7bql6Yw8JRj&~VXde1M<4UF|rXnS4&#D#W`nLg7|h zRjK5ozp`cBckvNH>wSO9&U-0@Z#J*}T*eL)TQ(v*%*F=Va{P>`VZpfH){~TmrlYU= zsXeQ9&zjH|$^sDT+peW4-g7=ygDZL0--$QP{Nws<`~ES!pKf4fc_^%987cEh=6qWb z*+E!`0dO&#{gfyF3`|3A6O{hY4y#=Os&|9(8?hF}wYC;_Cs~VM&BgG4*12$K)9CSP~m4^U8AnHg=PC((XKMoK7tf zD-bq_m+@MfBk8Dw#`Iru#qVDe@+@z?S$U264M_2FA!X4)x)Dvfa6W)r)dn z?M@?^d)36-Jtl=9TaG~`wO z?tLQ4wSKAFr%VFy{xo>jnP=&fcmjpI@)QY6gMSQ#w5nF$90h_L$}{d}bv>rkRf z_~49XLJAbqzs1CXNe}`#)GA!eG+P-kb{qDLo7BbNZDkgLk!{59@1`;Q;oDIcumK(J_8r9c0K3{9ZHe3w=F=fFa`40Q=-&<-aALg}@FfN&GszsqS=C{G{3yT*?eQmL ziVRJwe;37)^VB+n6flK50@Y)Da`y^SSY-0W$AF*f{QwR-+8BHO{29Q-R% z9{Eo)Y?%$g8-Fch&%8}N7KcAFBbOYz#nk=%crBplh6ky^FCS@hKXC#CW~R9%`$s}R z0*mPq{~ic3rYFt%XJV0u+LjWbj~^bye{+a7lDkB9ikC%R+nI2+e;j?Y$Na!|g&c*I z%qTn0avnpMk2=Zb$sC{RZyRqe1B5Qmbo1iJOZ3qRFFwz_>)it_fRm{&c@ z+T_W_HKR6g;+?CCUbTsNnZt7YktK~4qgk4J<*rdG+sDtu4&ptzzBck!tYUS%$m`x2 zN_L?vWD}|ni_om0h8rNt2&C$dT0F2t8 z`jH#I8PPXF6*B%8NN?JkUw^A|Zt-CTuVk0TuRD$#=uO6r)5?A=sY$$VplVb1=$UmO zL1H>7B;w>lSnl^+-Lb$vy`1x~5!%4d2m@FVnr#v0WPS0L4PEFO%1j95`QUu!tgQ$c zCdJmP9^IBC0z9^&Yd>biLAfY0ET^CN;PMq&_?cWwSpPAUzY>f2&L%y*reb!S_FDbZ zR&^{mI?-n(2E*t;Qf-WR&B?hvXtEA%TT!MtPy8G`(WruiA9I=ldXFJTG+t8>v3f+v z8BAVq*Ss}jCcc%@QDeRm2m!N+C+@RK=((6Xg%C`(#lOMkj|07kuu6gsJfdU4OC`F3 zXdl4E+NgI)HPfHrb+_Mj#a{PVaTLQ{6ydgyDEI_k=g?ICUIvyJfjLJ9p5A+G6=&F@ zXyOAqE&WX`0=s2ZlpB!NFh$+w8Z3TCRTQqNr=BeIUwVe$Q251k3YljNUutF-mhx#q zHP#diFRk$dYtRR2QXK2@-5Y}S4d0KVEb6Tfg@Kb{D>d9G(hWW7qaT^)fun0^RZf?d zK58v|Hmk2V(VKK~FXW(xZ#u^J7}vewn@D_U!#5r3e>@_6JWD+>bvX64#_c#FZSMcO z7K}*W!-D0$_a?myho4o|u^{m-BxG=%&Ly+pCXGXME*ZgEHfS)h6j09D{zyo_8&HXO_S8Lv0&bx#I(Q(r8bxXaB_sa`Wks+x6VmPU+xoH(wbJ zS@z=no%x#AhVz<#3oW{-#j)k}|M^j>jyBt${j_WGm#)QOc6*iol)K%mx_jkJXubaf zc%#j2x!?GV#HRJa@+**4MPw%G{2)uq?M#*66ij%l{3LvczmgL#b>|DetcPh5t|l-= zTcB9(60AwP_{bXF>MTRIMLW8spcL<0H@lUf{S1wz$AC(Z6zGk{@$4iUkA}7p%+-*Z zFJe*URC0TkA20Xs-@%!N<27sr?&`lvJAja3^zVibAgQ2b?GTKPk>^mZ6w z5^$Hbjzs=c>VQGX6T4F5vSQ8H?Nf(G5<{Rt`z;dHgHle6tV@iga^|NUeZikMV~LKS zOlDyK$Js{|i7LEQ$v^&Kyb?TrEO_qvGkSa&`Wq&myaokKYkWWRT!@#Hzh~=)2g(wB zk0bukAd}T7;I)eBW0w2-sL|v##co9Dow&@KqRv~dYl{bE0Vq>}-cYt?*T5?APEBH)SZdI#44grur}P`R9ia3%1Jx-vr9hUB{1o;;YKTxs z@0PfFp;EAsoBUIXw*ue>YpIbU>GC`nis9ry8dPvenO2*9_B(7%iFe8u*kJ|Cl2*QN zZO0Ov6DbVt7f%PL5}d5CN0mq+LH#wVKGsw$@fzQuaXcD^Bx_&%PTFHidklvO^q6U# zCSHpryS~oIW(K3CAZe^(PJCaz%6K%G6Dm3u3`xdcq)NY17hd!3;FhIW`5I{wVvH?WXD&6g&EtW4YO0A<3 zeO9;ehlD)4=>-$J{>N&TeLUna0e_W0kiRT-Y)hx#28~0H+SC`%!v*a>@#clmp%PEf z6`z=R1$4kD*s1BLE(NoX=xR-v7B2n+WHM&lIu8Mjzr1rU?>LjjTf7H?B(Hw80PSle z{tNf6ze|Vk&>*=_5qvS7v4@wS$XupdNPDNv;s2$WD&FRQ>~Uo?{2$usO72hb^YFvr zOoUuKhHWWobw1I7I>nyA0fpK1&YL*(>`fQx>PJeFlyF+MjQ`(J!24ATY}mD*^}F_(RR0d%{fNi2CLgo5yf zml<|#YS0^~*_Ry=>i03tJGb{oc^bH>|Ee~!tQFvh4+LRqFY+{-2TG>+TFFfu#NVbR z;Y*kYZ`?U;eBHC~3fhqdEE}zID;IUC(-w;R&I{TJ?G590Ry(m#J?@M}*0e4IUd~TF zsAFM^G9V`{O|QaXS-$0XD9AsE2sQZ^=Hws6W7JlB>+(Mt1XZY8<96+GSSm)rT>nS8 zq|_>*+CFTk%$#sNlpox+|6crk+K*Gds{^Z2KRffP+Oa0{*Td!Ad)wf491DP2UpgF| z$-cpIup84A)hh|xr!}_@A`d~FQyYIW*Pel%A)9^TLE6JUu|W-$1#~m8Iv|vuCQCF* zrdlYWFBdJLkScoBCPfZoZYc9I+$z%$It&D~fdq`YD%b8YS=n9g?X33^`h{`&Sz`?i7USlp$9 zb4&a_!TIh0&J$ERyRrcLk=3=G8-G~b??D%LQ-5pb?(&xDc{GeYkXYpOhtRN>wxj8g zkd6QRF0KGg5C0@22zQ3}n$9wJgblE=W(`C@E%KicX-`aRdawR+I9U06lKc;qDH>+L z^BjIf6Q?ux_+n@;8d7pePpAC#%tF5(G8Bxbeu;rsg+TcX;P}SUlMI$SD>uHQl2@CDxiG<8ku(TT#9Vx<5A74j^g2IOWJ`rrHw z>CaW@I}Eg`O{~^@F}2C{lSG7NZQ@g_0)mNpLzvMb%n;SY|I74YVgEO~eI9QDQN;+P z;H8*w9omy1OvTaPy5tFLGHqHwRh``4(&0<XN;J@;IaD0XM<3fcx1G71TsNkG6iCThHp``LxfO z;#)eaOP)ph9J*F=Aw=$bY^ulSMDU^NJb=a$~Jc%2WwCkCQX?@Vew)VLH%9+5HS0_d5cmpR0?! zPM|dO{&EnHLXlO;gH;pm=d~f+(+S?k|1fKR>?=RW=Cir0Afmd8WnS|U47CpFfQ{xt zONh>P{LDEizUDOtaYn3SUE+NfGNhk0VRh#AWo>eOo?t5lKddDWeDZQ?xK38M`CkN-%Bw7B7 z%uf09Om%ywl1QnF z5|X!_XR&o$j|)aD`GWZ%vfKA#3qy$T1t<3tn++!-T%zmbmnQiNz1`v<@KCaX2|cN9 z*JHFq_PI3{dAW62z8v;DQ6R@+y{6lAk?J}RLJ#e%Ni1Q%)+DVCt2g0g9;)sJ6gzIM z_4{iq@9phGbu$KSGoVpG0Pcu-#;vEN_JK|m`Kh%|J~;u{vdA~{iEzMt zJRZ}9)NW#Kh)kIs=m#z_@Ns+3Yi!_!Sn^k;`kU}URb(FW9u!U^rqO?JUo%f(m%zi& zzk@5h&EhS14stA6Eb@=$q$Ww04*!br9ErUHI+fg1Sa2n!-xVLtbG)Neh}>7URHaL-Lq6Bd3mc0#(DZ@FIUVy{)g z&ti_Q?Enz7o<5zqI5ySwHPb6_4mlO40PvwsQ3ixn*nT*m;TlChJVCQ6tGQXcOc1Bh zO{f}{FfLFRkUGw%RWs$jG{l@dtkOL=GlHp!VMd;LozleO7g-Q9^eh-j=g487)+IjICOJ-Oi{VD#qbF_| zA7CL=1|{MH6y7RM!WPrA!WjnW>q>LCOt)xLndjW@W6w?c z9N)VDXVcdK5wRCWWRpP(Wu`VV2@Y2n|FP`@e6nZi7eTfHIn^0=Es`^6U+%zL@chyb zTuQwgBsGGKrIm@b<#Q8jP^+OGM|CA(tIR(WYNswLQDUtS?67r;asZ|s)5?sX{VKU1 zIuolPkYX+C!_>cz%x#i$2}TU4ORDG3Gd8_J8is%B2PgomN(UjO z{6&K+)?F+_@+zw&{sY}t0aB~A+>Zkx*M6_J*R*<5T8P`b?pmGB?&K4%wWt-qDK1afB_<4U@QEzL(TtTqHh_QfqfEr5Jlr6Yz&VBBfX3(r@ch zrEhu7^&qc~4)&~tpnli;wb#4x#kX_gx)^09rp_~S@|El0UHa3={Qc>qYM_R9{m*Pa zg!B8G=%MB&So(X>j)N>vZI<8}(mz{Py%QnJcwv7$de;Eq$V*pmg@Hg&TeQI;G89VidaVDAwLTAcy}T}1uD3F zJzg-l_~9l`3=(R`suCX}H&$^bD={$$-R<8>?`L@arnD2su0dplh7?ycl`6E%Yy2($ za>~NR?-N&#*@Svq@btL|gn8p}eDq}N@A$gJmzkvaUQTX#R&vW*>)nApQ=wIu7r~+Qf$P_XtID3L^SBe)&|>d zF^mC6zzIbK72zBrf&+-C@f-A8V0&&e?PA+O?}{SJg%j0zJLe z3@zfWiNYDii#05$Ax9(fHz*W93cLvi+Erg5rhbw4D_+B8i(-?7<2VFvJh8sKI1BwE zul?-vg#kZ36k0qqUcSQu((60XvXXCKZ&}GIrqHmG=$&CDd(&Dz+Q^2tfv48afW+yX zLgWa%S#F;{l)W1}!hKWl3IpuOz=tgOZ#afQ*1A7v>l=nUvi}>Aoq%uQsw?eS12msT zRx4%!U3B8&oZ~|^i7P@m)$XgDSDm;xQjvwx8rJW+YbdL}d@s%* z60vSs;ripV>OM+Ahk4KO78U}M#k+t2pVz$u5x6LVXg5aN@Hqb@GX+U}1Y+n2>IbmN z=w9$N%$!D@RivtQH+W;I)W?H63r*D#RymLxUb0HlHNZPN*lGHCwR$p? z$!Yw+$Ta^n(`{MqBS{qnnX?v_YNX*eQuT|xA#8fBJvH?_EzS!0!Bu>;m(+hVef_jr?#p@c^dWPuKZ&K@?7QfJ+>%hJ-K^Ju+ zG-+nc8V5sC{D8_nNbr|BN@=rphY8-aRNS^ypLpirB7lsP_L?d_vP zF()gv&S5^+c{z__vuaL>ML9ieJKL(tKD&Oo7$?hdaKy&CrtXrh-sr**PjF$2y~DBh z;G_0!99!f4@FnwxD4Bv}!9H)XvCs3f$;f@uQ?ykmEm1MNUv8F3Cxiyp=YBuYNW)P2 zr_;V^FU6lpbbwP5w><`AHX$;wiDyApcoztAJG?djB`%d5M*rlMT&~a7g8X4}irD6t zpo*O{p{x59riIHk5Z%H%=^9xb%aBCFxrceC+qQ;Hzcw$j9r=b_M)f;IHF0cu`uwDk zhY@G*;j`yFYT0BCkTyAU#&wnX;_mFwyt0{kn;-egMpJlJ{brIbe1QB0cHUd08GIgZ z(l&W}VXPu~;w-1J-VkQ?-Hd9V8)d4M(d}KPD63{xI^SxY=hr*rX;=u)2m@`e+&}(S5~-f1rg`N$p}xiK0q_c^lO zsE&HobW4_cTA$H)$Ee%Mi*ibHl6%I0yoNyqA-}ijOrtVuIepnDuq?kHI^;{Q#r|w< z=)bs27}H`9B#9k|U6R5?=OH06bodhrrREhHym%9Hlc?y~*PQuBRqse!F9J5U?O9p= zSN5Gl)w>ScUEO#i*^Paby}wDWB%$;goBp&(_r8bP0zex1-Gj8AsQ9)0{wd%69jGd7 zKfLiKwY1z8zQJaiOQzO&;uo1esyM*(vvePu$+em8QccfE>5-^7-+r2|a;`12;R}te z^wZv^*O%A~m#R!XWisg3w9h3X8nXfda=>aQu3$TcL1C?J@W$7|+a2AswXO$e^wSn9 zYx_l;oFC#z7-M(L<-OxosDl<%gBRkb0FewNXZNW%`p6s|nss7su^OVWhl=W{6Op#O zi21BSvc|%v#{C4~;k4v^T_Yss4euH3@rf@jmD%o8)xQYdd-H_7aSz79{Mw>U=z4LM z!=GewcI@EM&e(fQ%@7R?k;gt{6!=bW9D_}`0<^|;w@^!0YT49GP0O4a+Os7+bi$7q z1^-O3M(zfBQI(i#R>Nr9nZS2oIB!NNWcwF&=a~&P2Y;58*n}~9j8CpL!We#oX6r3v z#W=l@xFaw>jq-0{Wprv;vce>To~jtJ`PYF?A?dr@3q3fb-nlF zi_&0tia&(MW2d^6HSzvMB`ct=oZfh=Nli8o->dh0B0sGUE%S)NqU!NIB(uCNZUsO)u%1-%;lxLF=1?S7@%fKH`+ejZHE@|S6er}}c@B=FIZD}sFXaS(it?5iwgX#XXNGRF zXWciQB_g-OyN)eWLh>f>O~@Y8Z8rbDs8K9|e9;g?%X4^ql_tKtgVR{ZE?LgeNCCen z94{=Ed}7?9o_tEmyJhsKaUlhCAoyE;gVY|_x|yw)`Tm1w?`rP}{pv*eJ+i^f)OBSK z7lQopyc8jxZt}nq+-<5_?H#;`JpjVZv^P2`XH3sqyz}9h!;6RPy(@eI3jb~GNlrv? zz;qhty)%H?OO*iJdw(BeOmC{IcybdAnD*B2PAkB++3D2^6uP$5Y+#t1y z`<|e{iK50H7)7SX?`LBOZbpyxZ@YG%+1tFid$ZXjDy~0N($qma6qoYDL}b|4Pfm+Bq0Z z&5q@j!{cuTcJ$&)m}KVveCB_LxAx{FVjg!<8ZmD*%w&sq$gRR1agc)jU%_dMu6vMI z-wVulT<%$Wn28uB+WX@*wotK29I3yE`7RSE-qd2<9NSh zDXd^%pt+b9^4RA@G`;Wd!pL;wRv9D7te3g>o@cn#?hwg<*Z<0|rgs_htuxy7UM+6@ zMBvaWIiGZKTMyig(fG#Lpe$-Xdtn+7BnrG^gQtA2Z}3#?^)gS4c|Sd{ z{~u`ff4|7EIG66l{$Hl)n=`R1hQJx}#<`UnEBpfT99^-{~10#y!V%NC43Q^#i<)uZw}Dc-+Opfw&L2bpeX*S)PTWHldO z&h2PcB@oADO^@+7zamnaSY8sM{;j)7Mafp0Ra!JmXOLB#DkGaaj? z+n;ZE%~p}Rrls4B1mZoVZ;8^0g$CAny$r0s>jD&BV=SzRTkNNG`t*VU=X&oN6*BWU zHh9YSE)Aa02bd@3@iZR%EkQ$7L3)8VFnG%MN`j|i?@;qZnFDwbF7B-liPF_QO}~CP z$n@)Cb)q!r#5Z@^PUL$V^u&F|Hm`r6$y=(ty9Ifd1bGX*xv5gm*;3cpQkU2k+VUy& zCZH3#-jXUcGgWG8@Ko%@Z21aXzMn1slFI*{^49wx3v|-zHR_3|3tevZ*8~9RukuV# zA5%|7m91c^DmX3ZKo^qygP2W5_x1t1W2z-m$@sjp$)+xDy2Dnoo?m}|O?jg9Npg~} z-ol};DkPw~QhsMsPPZw0DP=vqNz(@L?LV;>zMP)@udx?CfX-O{=3liJ?n+G>Z&FYC z-?bO+6x8#7#9sJ(kVhNbzuR8;Z5TjM`X>FLd;O2H7tZiUG=4pka7mO{%l^JT*L$+F z5iZ0lc$?nYfxSTxfN_y_VRZEQu#5<(1lJIL+v8oY?v@|h>@nig@D@6k!!2rAPc7|~ zbyvNZtl*r1O%1@pQpjLzxZ#iRA#%SbG@8O*$w;PA*~t`~_pKn4?7T4Mex7=(NA~|K zPP#kWd0h&#kvhK^t`~ZYy^J;X;ym%6Dyul8*p^~gO6KHw7N22c|)M{+DYTehX+-;`b!>xVKuT8&Y-xF!F#-wJy z4hGMC9=pOepA$t!MX&ocY~H+2a|5S~IP6+z0lw7UE*18i@_2xYnC~=}(g6gx5lHYx zNMGR0m_Ztxw{v8V=0|g~oI9GsA8k$mEHz;L`mcn0Q10soLXG+rPi zkT`21dU9+T=FYeu>06TS2Incdg2?8R-jPgU_f=ggvBL1!nm4H(t(|YYSn`z)oXJ<^ zwgg!pC964yorL`u=>mX&=jp-TW6}75^5~|YMpf*`_!Erh=j_Owrm&F(Dp85+oaH^I zX$0(CFp60ePTN9tlPwe$cOiANiKwzvta7p&BK~Rvr;Ako86b)F$wJx1qe!!yp$OguMTTd4E1 z-8soYXS-hdqnZe89cO%-beMXEPSl3`*|yzeQ`pV#Zo;M>1u*Sl7ZxnC8xgQ7btZsC zlyEUQ@LS-*{A>eW1Ew-kH0?x+8LUALQ{6_-*=&Xo}vmAutjkfR5@6oyuLL9v5Ibs z0T0^3F^oW3LtRTPRUv25-hS|0W@R)pJ{WU#jR`o0j(dC18oj?l`2GaR@hNi0c%H%v z2$-e@{=?T~TYZ2_=uIMdI-Brg^rG%^G=HGBhcCfD$_ax)RTi19XjWlh<(y2XU<`jFZdNv%4r+Wnje3NWDM zvJ{}!3nHrmn`>~7A%x6cwZrCXW6E0g8U2=-&!lQu-YX$>n5yn?y-78tKTqs&D9K~QxRv@ zgf*izw=IFCMVc4k}+4pYz? zlxy1}n}viF!{ZFh>giO3LmW(*WKY01Yzlq(WhLiBF=x#ov5wA7-1>hOsnqDOQ|uFS zwwTtsnaH%nl@($aZ{hzUCclwfW=1*+zSrKLlQp3~UC3t$=PhFrmeYT*S8kkqA=0e* z@|C{iGm3YE4;!=)S+Y-$;3oUh!_VWgoG~nNeoOa4NkxvhVIR=uDRm zmKr;ka!b7OQR!=>&U0q`#da=te^LZAYFsHeGs%R)JqK^nb8!98@R)QkUYPhjD-URQ z`KOugB=Y(PXTVE>cA>Ym1B(m#@CCoP@s?-BcGK#>oN@dp(cOL$CFgNq2O;UN<KE3#KK#MN$^_Hj@iptd} zwY}vb<7)c2S(ipQUB3^c^9B3)7EK#t!%Rj5qLN1pB_dAmPDS2~OHI&7lE`GzxGHm) zP@@y48pWO;2Lg7z8(niKHo#ac7L@12j**6MdN%M#l%BG8u4LV3e1$zwaJ%Da8@{PP z9>w;2-5)whlrqcR;=V~2;NrZ;pWdN448Ifb*Z*Dlw>+rl|A_pX5XQk%6(;Es_Ba0yf7x7v`K5Ea(VhP+ z`S;9ZARd-z?(4gYnA%HTSg%Gp*axD_NtC?Z8h1C(xCVWX&Yoy-#2dOwN@shFq~m&H zgR|Ouo0D{C<8Mk(?XB|;t(V@+D5ZJO)?+)uERt}1CpQuWqeEY0O6F)P!^;;p5@)|}C^E4s$QUk;GsKwhK17{$83Xo*jwKJ2`fvZp1 zf|#*7S%T?6jr*w`_A0ufss3~~5pm?@uFXIpZ*k>r1jnw-*T^;Q5hcxfn$_OBI=DXo zoWWy-Edo4f_f!V_wdM`>?_RPExrt(Eq`)=f`OgD(R{aVPJD(4h=x0}c~ zvD4xM8D0%XMNybuuCtZ?1a}E@?tD;R4%w4$^tjva_A_jp>~}H!5BB-_PH#SVTaYI? zOuo9gT5cGP@?UV~&>a(y>yuE!noy!9J6kI^I+CzwAM2=Klz4nRv+3rqvFqIY>#SdA zokb5%8x}t6RBh^&HHjzyobR>F0_F`1E9K$Xc$8TKoa%f9GSqf8$Z*Vdc6;;(?ILRg zaxajQ6wKm}fdpqlMlQ)|9(QQuX7ETP=XoSPILS#_3Xwtly*qJ>}Pt(PdW(V`68< zJMi}uIQ{_m_2iNMDuDk3hYS9}8}RQ@%~+|}z<;6OzY0EUfrWn^@p~czdtKcuC>VAn zEj)ovm8Nm8XR@P><3MxxtCKlzW2A|Sm-Z5!*NJ57HezKzlj28cxH8}WDDxfj2cX4Q zI@lII^9AHKR9IV3!JT1H5^TcM&b#Gq!+{UtX5zIvEo>3| zK7XXRpZpQnv0y)fZ~LaDMu>2FcP}!zyxYk^PX=Y?K!gAsdk^CJieyD&ZAD1j>59-o zk!{b@^MY($i@Ye=0xyq08wpx&q~825elXT$Y920 z?-l;2hVID?_-*bLZjpt1qVs-?hs9MZvufc@PH?}uP`KUQ!lobSv!u&9n08a~MYNu( z-4)e|n%7v@YZQDjQPF{F>1mR0a%Rjk^-V$%S^g4MXl?6leKy`kuBq=L>ubG@oVD(P zYTT@GkKMk9G^R^%!oXD;f1qUl_F_78ZEtjBpC_ZC58FNq;PexFXbkv)W$SJxT>uaq z)wA*zuQP})IL@ZYG#rifZjukR_S1oXD0M{%+2n3fjdP&eim9FQ_e9@jqiWYRCHW^b z1L()zvi=kPh}620{?(S_eoky^gZLVENqntVSQPoq(^Rdyu*St2XiMwgym6=rSi92< zWVLpW++xV!@OEU-_FHz+MvpcW$fh*X#|zAE_ag38=h~t~=|`P4_YgQ^HwcLFuf5c4 zCo*}Le+|x?S14dWpQma=Tf%LhRUwkgHrUeTq<6a0Sfpmq(iNYQ=<|7v`x*OH;Bbeg zNT&AaYDMAs6P2>RuytQMUyK(dysZOUBu(5*!kNy04h$ z=?yz+-~OveT=5BF7uM>WJeVPW&lJ3qJ&jGRig(A4epRdv$FX!yE|#+TQSOjR&F4nV zXO-MP>+TQu4$Wr`j{HsIDNqX*$)9vyt-I1ck+y1q4xt7{2}EmSdnwlc9<@MJ9``d+ zw)A7EP+89GuOQKzyrKBCiE~SP$D4ky z_HO?=8;|vX*Qy7_M4D*o_0g$u9%4t+DLI-Bb~KOE1+V4HRB;L|y(rngQ*8epBiV#l zrGGz>ujAxN?-R5Bz454yr!z^q_OHdG>Q7Do6Y_PRpq}JD@gE+K>N;T+H1OXoUvKHC zwOaa=e*UxM>mc5*6_%`nt}}ZqJ}*DAqbi9G7i7Eo% zIx}2a)Xva}n2Lc5vc%&Qck6$BH>TR+kAiylqCh0hxftBzu6mY){ibd^u=Lo*t#TS= z&S%eEPq3{w)A|y%ekAY4@W{`n{LbaNkZO4Vr%};XtiWeWZh<*@X%FVfe}~c8eK^_P zd!*U+-r$K+snOafR61io-Z1iFo_9VMzFRei)A;GLU&-cxE0^Bm$sDNbC`q!<2JfvN zMuMTFszjDSDo2sN9D8EAV4FGe`L7a@nb3fyo85m-c)raf%eoFB5 zw?#UUQ#>PC*6IwZnP2_W^Ah{WvDkS<Y>{vT)*-!KI zvNK(^lWRDcj$Gh0xHe(AGhO1e`F6u?YK&oT#8R9(0u19orJa}?(UfC6!d%Mvpo{o` zPRV#3>tV1`it^sLm(IgH>; zP3bbH;WPweS)9MXNGw)TD&!P3RtUQ_NdZ3Xt}8c z=y?K7Zd>fy+c$X)3b+Z zvBevFvcXcdb@$acGu5Q{?g$1qvPsZ+IQ;O^*d9rXgiSD`f-n4kneQ}p;1!wxBWv7c z-}G-#9kb|%T_3oCe83d=^E55?1j|r`eaQwb|Is_mH`3A3yTDW8;3fIU@z8BF!>Fg_ z1?n5FSz9^28-GE@PtB@1vNGSfp->pZs3zUZ=s52l2T(Pnm0NcZ-p2?C;M)c8_E^dv zO}W&K!-wdFZ9VU#1fdCW*x)_@#H%-QBwoE+>ng~n#kWlPY5~~t%ktHp)R~l8oJI_C zX(3a-dTS<2S&|i}JF%idb0lx#@JQ}L&^nL%@w#E3A^9q|sY4)N?a;!C6E5a-!~@A! zlJBVIQ-3enO2VJocyMP&Y&^JAA}+vu)8ArzbSqOmicP4B7a>Qjja?~6$T$7BOa`{3 z3xc?9*q^MD{mId2veWSdtUSEXY0?$1TsK+c665bjfMguH6rUzjf+C*J##pDM1eMT! z!g!+GpxYz|TVe;)5-$<42&EJ8qE;h6B`UsStW5sZpE3E*gH?v!Yu@wy`}8_naD(YF zS|fCWg@MdvWGx)~C4E)O#v|JLJFLi#`=(>o3l|7%iPGau)wEH^gZGSDxL9bM#xME% zwx#aVA(k&&?ZmwyQmiw&DL*`(I3rxJ4s@03VK-)0mi{HH=p#-6Xcm{&4e(`u#CY*| z+BLSnxk@_G&6(K|RwE}HC#C1vciG0PHmj%%uU~N*?&p(?tHbVxRArVrEuEYgwJ{50 zYtLJQsASt{YF6Clx(67^(HhC%wb{gDiyc$43KO-#d`aOe+~J2=#`6S__9PoJ>4(e$ zk*^PY9v_ji59>aV7}j6INmLXW0C`(K0Z!Q`70p|BO6!Ej9g5$WyVPo+KanA1+TV z3V{v(3*@N^^&?TbHH)ABD0vFyq|-Qr?LWgXjF?g3jhmMV%N{981BQeOPD0=NV8pd6gMY8dp&fX;h$ zFF{7eq?xw`@srR$$3Bk6&qd9?Dz-8T9m5&y6<9;GaZJI{G;HLK-R-@WiVF!14l7LV z^y<*&aN8QKvj}lit3-Ykk|-L#jM~sX9-$X@PWJJdMJP!79;^vvk3~WH2Fw-_qXN03 z2EAa|o{UcxbQFN3S^-FELamwcN8~w8APc8ahbNKvQAQ`*lV^IXz&W3_V#X#oKtrEN z$RAwc%e*FbH)w2l-~|Ov!*{&Y#;+nERdxJ|MF0^W!96Cv_V+!82%^iP&V%#Dzf|3D z?Yos(v}4&i@7Y_$qAfO|{o>cQRC`_;coQm+Gvk`G)!>vu~YeJD?(II>yjg}kcL9E#@!QygmAxm+w_@qN31SMK_#p#9@T3-bS`%@7mAMZzHj(QC@LD6w zN8)o?Z^kY;c0wGR|rJ9X4imhF8~weHjFgr)Gsx()&vkH?R!+5Pv-vtMCZ9;8d&maIKJApK6`H2{<76AC+-$ldaNPL{i& zHbIzIXeC$Y?yM&p2bJvqOigI9JSV{CAU>{*b~Fas0u`<|>ow^zQSmW#B0|~txR_l8 zc$M^9hi-?W-Dk`!TYSs$PBQPpK>xhlY`C^|U>p1bI zb|U7RNoa_MR%+XzzbSo|)PBUhHQo?!@a(=#hy=8ZyW0CKdD>+{NB(wnrauM(*t@y^ zpv5HVtJ}@YQ+y!IK9(A86@IpCv-?TPJ{-?PMGy5m@uu}0=+7Rcjkv*U1*SHwaePFi zvDO>4pW&7%)X+|&qb##ZR_h^HC9i4yz0RNHJpXK*TBpgz_NY|wIoAKHPSZfTZ0^#w z>sj{*TY27`Z)M2y7lH@!2atRQUC>b{9Yj9EyFlIivw>etf(X?m&3`Xo5JtzrIgkzU z%-vGL<~VMm$oE(dtQqZ0Sc@S>kCoe{z#3b+#{LqFZ>-+AIj0#F(vFWtJEJi%ShZ}l zvwg{EXEoZCv6OB7gpi(fkh8Jaq>f*S(7%IJ`;uc{rY_N5As=x0(>6W>#GN^(cV)>K zYQUv-)zcO>3*6~IHJ6{SOK%pn9um+u_U*hGCXNfct@q=vSYn2Be&93?qdxX4a5~o7 za9u&DZiT3`w6pPk-kaoXv7uqK_m6_yv@WVdk-?GLjFm>1dh9!)rxY23-{pf{mhE+5 zvoiae(aS~W(GU2DD~YfMlC{oH($m1drbe+J zHoYGudm7s<&}-DaV^JCJk1Q}73Q_B_EdwP`I=!D;{orSu*P{mr6X`78)x>yZnqTub zQGW!74|PHt-3pdvjCjFz<04oT*8{g#co4#Vqe9r5BV(sYW;-T?J(FO^qhs7ViIKsi z`WslzVD!QgRMrN;$AaLaUu7wP@vHf56~f~(G5&oJek}I*qe;*@Sut~?gH?2jWe4$w6N!}Iykw8 zP0(DTMPXAkJ~Pav{}l8<`i#u`2#xz+)LVJZS7ynho5(HtM!M3&USZp16MG%2!WWov z!Vi>?rI=;ib*;>;^S$3skjeN0@sKxtM-C}wP28GMMTJiB%Sm{J6B9x*oQ#g#YVa6F zJyJ@XhI#I?hBZCkT+=WwcQ=%Lo1^5b-`?~3)$aD?+liv$G=4&*-vZf9&0jl*&Hozb z0b)m(s_xV{7n4800fOb`9MuZeUSDf{tjX>arRtK2sq0Df?I zRI>G@b%eO^o}RBo#&8yRXTXmmI$>+kE|%Aa=96>Lue zTc|PKRhY6hY$K$^ZCZv<>kn@<_K)J*bPte(wUQM^YhBWomfHMBPR^z!vwx1{Vvb-+ zO=v5wuFy5MMu_+3#uV9M7ulEGbdWlcs8TQ@B^LW4A+v=4V`x-_+vS4@_f7B8w287} zSa7enR0s4eUe*o4HL?^k>bFX-bCC4eG@aOBSYf_L8@6Z14l>tQtA4M)E#FM0mZ~h_ zpUDPOCqoo8!#Yzi@MBn1CbF#dF%ShZr3l^Um zsGlfktO-pg9-?95yDX2*)KK#LG9VfB;LxZrPZ9SMeOl7=TTB@HwfE39kQ0=d#5Qj8 zekDK>W8f>JiCp>yEk2|%CHg+hCld`eMPJhA%?+OqH>>Aj4w(tS$-425mm#Y#eif8Hw6Xvo05CY#f^NEn(ZeSCj$6sx`I!DqYx^?7yhd2H}`eUABj zdGL97@OhRwJukg5_#6&C-=!m9F6<0G9~ON6WHg>{e=yb&!TrX027gn+mwYm$`i%!#3Zt7_fqLB~`C3TOB*NY90+|>l#t1a6S zD`73GEsFfTAKf#dFugCdQJNDthF15Ax8r_u)Cm7XC|!&*+f!pu?6%DY#YVrDqK}D+ zE59_~PUBna67n2q-%r&0^J>sb1fctt3DJjl^}&Mf4f_ej$${*o-it~Juxekwg~Sy9 zAHeNdO{(Cw&fwJ*}~Y~5ih+vH8e=*y7(*`P6CWD2t^7(0)ZzvHH6Q8d@sCil~J zRp~{NMFxRl!p&zJgPkHa!O-j_&=?yT>zX44zZUP*Yj+~o{k#i;q+>`jBzQo$;fG98 zT@hsHMutpMT`4Nv&-79FK6@N1!oZ)svfa+~!SR;<2#m8Z?KdcSANa2i*Xx6Y>qPqr zxGwz)xL&H16kNxWxHDWw@GS$bT?b~s^#oHH_IQ||8MsO=Z3oxCT^U3{fQosO8dTP~ z$p`EfFW35a@@&ov7~OEvq3Mv>Nd~mrNYkdd+B@I~3)-!d(-*26IQH{81WBt%N`jWK zuyz+z*-!e~vM-RKJ!shlaU@Q{*E1t5x>y&B!niTrpp*AUDiCg1Qe?OoiyOtb z$7$G&CqSN!W8KLcS>_kN%+?gtQ}?{cIZnL`hwn6DuONL$|CFdWheGUnhf&PG*KqO? zQJjkWFU*R*_1t8UG^TZ8oA2@g@UC zF3)cva}s{)?wvMYV*}p}0xSNaXanRKM%WvEIGu(-^qZ6-5bFaht_YI4ktB?KH3D941CHQ*k27^DBw3z0+ z7ide}+4DC9Fj|B@m@HS>EGLj9IbVs2YwX9v_~_qDz9gRHw_5z?d+Sqz@AESN4*30w zUY^v8a3l68ui(XZ8^Md)^fkbXZp7Kn&^MZWg4>Uf1ub3}*2)`nj6samQc}yMz-hdU z;fQ;x#(vjOwV5n3gB@UZfE|5nQrPjpREr&J6>1xvvye=hu(nW)mx%SqbD{f9{ty%Y$FZF*yq8kGF7nuiR0 z^NLN~UUS_~@a?rA>0y$75#JsQGS!pmCzR934|ZqrdV(;_%Mi;{Y>HiNmi%2}qCh0pyZSj6zD4(4Q4x!$E>tS#8Vdrpn#icsrwJUDhXv2!O#nmm2bGqX zDsPBBSo(8<{RE!;{Q*H6`tkr=gPFD81s{H=4|dk3o5Gur zO&;99tW8u(Fl$chD8qNy`HG!w=E}+>{f;toW%jodM8Zz6O~j7U%Tej-52boOVFUXE zyscM|QGN2>1$r2D*9HCdxE7F6nn}H!Q5u106<~>&Z9zILE{e2`)QTo`l-FLoTe@m=CLTNZZdUu zA`WS2fnvfpYMY|gJhi6gpW&8*RP#!(U5J+La2j+=u7-zBzjWqWr2a%jnSrAYs0+L; zD7(xyVTy@ys_rl~-`|m%=ZtnDs>T~+8q>WubV`G*jt|bS2`#BE8_a;WsB7+E%mV=5 z$jurz{U);QW?g_7S{6=pEieO)y1Qsl29yH=P}<=&9cWexGXf_ZZKuIvUeq6r`JWF3 zV@~y;+4ey3V#vhg4K|Y(ejdS7AkQ}-&kkB2tavIH4DJ^+?F;>_9A#it(e)F-s`ShZ zSS@`qfR)+s4V+{tYS+2(d^(ieG67(3uXyugPAWLZDE5A5%E8Q-J=TD&y2Idn|1Dd% zk?z5EG}GF8HA;CVtK#>jyyocCpghM1W_~CtC2c@ofKkbcG?e^?3p>Ez;D2;*R^35z z05e)xPd2mK-hrvm!~YyBdX3kado~MXVlScwm-REs2iu>(r%(pPv-u z{5kHH)pDA?o~OYIoc@y}Q*d7ySxbxik^S;aGu;}9up{v6)Pd><kpN2L`?PGoeWIvSd{va%^_k9b6+K>U1&TAxOQdu(EMu z9bv1dc5i6g)tNB`UYAXEJOFdIr7T2J>xCF$BB6=%xZHs!tB%vtFbP=~3HII)mPZL?WpovDy?b{v#Cp-tLYZWvGV+8|YEbg==N`~Fwe&S9?- zE2I?uP_*J?L&X4$UOEWcE1)8E%c_+nzf{|v?UtyEN!`xQfB{jFR1j_8nMXIKP??+ zHaCgaBrTEdisK(CF(dSCfI>-}!h)M@qDzgBq+Uug2RQ3Dk{qkQ9oeAV%@%v$ybn))EACl`sr z_6pSX-u8h%wgKCNArG9z|4FMlz)Hciz&nfpDB73|vaksosQW5*5;iW>@v5RecLnYu_G|^RMpF53D3fRn`S4tz6cGtbefcLfo zd7FWVpZyyYYqlMy2>m2!G$8O7U24wh&G<34D~D!IYHz+ld>4((Y1#vAxQbpE6zyh< zVi)&vu-_A@q|m$I9%~%b`do6o2j$n(bCvHQeGyInZIo%cb!Izw=4kOhaa<-m&x1a- zhv)lu{{lSEwMcH^>2mQxhoycKxSNmbalSv;X%PPTNu`ix2z#QvZKL@f1F&|4lsr zNYe`Ern9L;0UeH0yr6HrZIbc<;;fMZB2p**R4v{?5o7p6Po2iW0)@hEloc@;8Pu71 zh|Lq`3VkQQSb5_fgi^aLt+OSkWa2fYv%G`ajYHu|+t0&k|Md&=P*1PhkE3fa4&DE# zaU7rKKQx{^qqJ%9?!P2+Jf{sxk7t5F6O1QTW5=?n-B{Kh!8XlUUVyf7MXK?xJ(1bwknbd1y|4b+O|A6KU*3asdYasWCJdmM$n8!$VJMW-z0Jx?B)~tnSJ3W zyLmLTujR?gQhTLk?t*=667{9}`qQm)nEwt0&d6JdipSs5{FiQc+s;4McNV_l4m6{U zWQG4MT}lS%!ep|8U;~4E8lrOTK`yP~--B}mwrbtW&aXmNRh9kVH0o+1ErMsIX)}vC z>gE)AXH;^Wi%&Gm8KrC8GWcNHc*M5x?$aP~m8oze#I2YPK-`WDPF?B+XLU8T(@6a< zD5mM#Q{wftar|)m&h+hm+s1g>X#Kl-{vK;WJ?8?@N>*VDRD~A0br^xdjY*1u^$RG{upH?^w!m(d{IFZRdrsa?O1{7Jv(Ci@-vNxwZ? z`9GdgzXe0!wQhx(!b9zl?k7q0N8?;<8(Qz5O=UsG7j4EJwvLHAWgIOXs;%)>oAGU% z@#LK{UT3y9)AZ#w1n^GZmAG zCjCEIh$L6k=S-WaYnaUzQe6v8rgU9v{L3`EiBk2O?tie%)OGJpb$ug(o8FDE=bZNW zOqP#mgfo}3F+3b}Ra>E+3Zo&SD{*BI8x7hJNarVt7bfAwsC1BDuF%?(s$`sGfpYz+ z(Vz3YH?apr_p8bmq#K+Sjh|9je|-U5w>ena7CTH_!nPU$91@^tnKSz+Y{x6P&WeMl zhWVk$%oE!xXO6=qc}d-;(S~{QmL_&{)IFup+9#ck>`7<8H)3dqU89MUa&({6fconX z$f}E|rFeGiK)iC~dh^3PuVCIMdGo%=-)%el=2o6}`$~TxH$w|YP@_QiB@!poaLJR| zS&Ii95JG2>F@Qj;X#)S{c~g!%z5!}t;7bQe|dj!5_}FV5U4`=dzd9!9o90;z8c zg&RI-tE}H)e$gXT;Vo+-hz%{Qah~?fd0vMO)$=~l?D#yK4IZdg(BsKS%L`Gfr*Om-!KSPPHOAg z^aQ8RM}FXZ1WQFi(Q&z%)6`0*qRa7J-sBAjveJd(T>$U4K?!m*P()+sF4mZdzFWZJ z)TAnij@zYT~3|3pP^D)n;oNzN}B ztI_N?+{R&aeyo#Bv_2Ixx@FD{-Pj?7+VILeIkQmo4*PDcsGymnCkGe$&=AZ99hvWPFH>&YW)HeQ^zN zPv5^`TNh_W8-2oI`!Yz8J3n>thvf(Ar}Usp`+*pjz)mF>3wlF}#D^AYHE7K=d}x*o zKhX{yB8eh%BP#3TKtZEnhKgEz2d-s^&#c=g9u3y*Mx1KAz_O90-AL7hOS!!tq&evI zbj1ls++F~{lH(Y}=ob&#Kja@LFc^9;&SLs$)T>@QP0wh=v#0Dw2l1o)kT>){uaFCx z(vs2u*>OI7)-(-MV{?agNBg=z4pXY!yQPl|+!h%J zMV&3zPuZ_?T~7VbeMuhF6R{bAe&(Q_Gxp%Iyg-aFlTB= zOnPcS*DL4T(;3kC{fY4Bm0~@d91Nl~{ME+Rp~82@vhQP|*zVzm@*>o&05R*aoEXO` z=vzlvYu?}TP5cy;V{VaDuukJyd=hhKM%s<~)PalXKp?t4uFNI0>2GEDYA5LL9!}F& z%(=49hj+2Gdj)w^>tjp}_6M^y$;kaRl71?ZxFzAyko<4S@auu zE9J#)b36(*?v^;5;J}Wdc|J1|uzbE*9InhqPZ+=tLpUt?vOCJJux_~X{ zCz{h2Kx6@8JL^YqL%wvH?hpebko=bBY}lU3JUO$6?%S{}d*W_e=dr>$smf~jn9C0z z!~Fgj<8hvAT|12klEk(jm34 zyYKG>m5A;6GPpGq2j_s=8h|?pyP^J6>MsXIX*%-WQZw=jhFWR(?5t7sN1_Sas)@bh@Sx9gwZNm}>6`=NrX6Hsl1fst+ z?)w=S@_x5W`vh|-i7zoApeNAOEMMYG@Gjkj|A+KDWIM~hDgBPsZ47jnOy{Duj zf~0a7H7@IQuM;`N|YD^vlMo} z@w!`E22tvfo4u=0GPqyB%)K@5i=NgjC-lYg9XKC(BN+&oOGYnGLkYrB0>6tHc}X)m zwTte9w_TUURm<0HcfWPN#FJ>bpBR$O$&xdtIkaSS)7DDoR<4R&5q55Ej^r(_8w~x6 z;mv$C;a@g~-7mw-xiy+|C^)VmiJDM0aoodY^Xd+EH#e-?(Xb>m8k4=M&3gN>VM#Wj z7pgXob}9Tk+XI#o&B1vd<8|ifzG~M$eff7(Xj~kolZPneKUzW0)xtH_ z)b+ZlYw>9J#JmxvZ|rOt@=*{sJvBexz~AVWkl1<~@c32Kq40Ku{QZP^LBko1moM`U zWiCv_vQ->dG_Bs$?57wiww_;Esz-io;%cAM#6*Z^;9*r{qZA2?MM{PfO% zFB>EjAlntchw_UXr+^J#s4%YoI0)mIM4t|= zoz1=yZg>?zbpd9mt%$PD+{0b3Va@9Db7SkuYwI{eel;7fJopc9uR}4eiDzw%j0qKT zX3?-vVUI0k%RCSNNqn6{wGLB$=giO9c?Rs7q+{cImNYY#Tji`{_fK6>EWcx-`u$Oi zh4$t<^$^cb7OPvDF<r3UUkJQgJPE5ivY6IsyPpItzD zv}H&k6=P5^BrkLAYdyRG3(FGgibHT$qGoTi)p3o%*{ZTKOG~rR;cAC|MiUk_IowwX$3t(4ZmvP@oTpP;9t#(~#xtBOOn@`T1rJ*HdEp_J-h7x@q(fhG~cY1d% zVzY?tLibSYZJnQ8cUZ$G9Y$lbUuVA+VEM^bY5fVlFNY~=SXd~7PVQSXy3AqbM53T| ziP0~4URZon?q4432y%2gY#=}GutN5m3wdm*EJiNMil5fW9o9z`wb!pv?iyR}pme!I zZ8^;b5jxUo5#6+-25iA%2_ zbchJY)t!N%x&!1Nj0u?c)o$4)?1#T}a7O$~6?v@E!0$JY8u;y*?oUtKAF=cneg<}C zA6m}kDDGEm(Vv8vaBoYp@++uZR@R+1%o{g7Q!EC0^O7by1oJ%pAYdD85TDc!x<2U|{6dcT6zH*kpS3 zb1$~J5V4c+xQ{P_$7^YLDF3z!lfSpk zp8>zILH>Kw`BUpf_MrmZ-JpvFozsY+A>USecc570SIg#~d}Z1)WS8u+c}~+Z zvcs&E&}10Jxo|H~Q|-azpkC{OJXpW|+}N+Z4~H0_{#sCMZnX^1&P7~ueq{aI)Fs^jwzKub@UiV=48G)(+8OpzfB%KfBUh_wT zDhJVGfVzkBxYItAdYC0WVyQi{>p*eUfxwE=t~Urff+FSkaxF?bP~DG-ERib zH{GdAY^MTzH=F4Q&aax<>gKViRrCakt(reQ44P0jZWz>s}k&cFd|$loGfmtty81wYz-z260ZGgc4_T$rdYR z`KUxBl#TsrQ%8z|b*t`6ud0JlV-v(Z8#;#AzX;uH2k#&FW<`g_0Nd$E4wxsUe?8UuK#fqc$Kty`U-7(NgF{%9>#=}Ouy z)d!-|4z_q3>~x4R@#msy59m)K_v3pFO5aG0!MePe$27hfl-`-2|H*oLa?`)C-gay> zyjA9UJNzOBpU92a&b@eKs&ilQNaz0luD1t={Mcs3yn$J0zuuO}(uMKgW5=Iv;%3`K zk}ubKV`TwfU~6s$@UBc`XPGDux@#`#7F4^VM z`~4@&fDJc%Yci;dfBSKU1!12F?yGp5nxgTsG_lcXyoZ+>6M`?%cjasa@%lDHpH-Em zu%#1c*gGrExQ)Yt4Z5_#u6M$%P0l!fl&k61e zLjpiGZSKLiy(aWk@*a$2T)Nn98h%rZTv}sm&o^`Y{Ka6dqh-`*2XY4~N=5WXfSsp?bQM6~O0A5lpU%GVqS_Qtf_+VaeOTnmFX^i7mML zZ&Ems$->*2VWKxEkT-#78>&MqO(0tOS83zWuBGx6#AVPSV}U#__2Al(iWO9*=xK@DJk9%Jc<0gfT=|?DKR@=ttd%#*SboRQ9Do>`)NXaCF3S5>1C)roX!L6|MrT||c72w}AoxjN@Fgc%N z40_@_OEBQ%r)_^w!`ja)2k2dq!+Z;J=*y&L?YH`I1!l(#F!Hax#L)to;oWZO7Bt}YH=BW7AHebP z+YB5}OV@jLyL#=u7T`bIn7fUT-Ki@JtbHD9!D*~VcIEssf@P*R3P?quHO?F_?E0=B zHitopaCXFf9qEHZDPllG68-x*jptAdTE%%ory{N|$aWfKMT3u71j>@{y?hi5D`H}P zaFwL4UW~*$6-lj2v92|V9=-koxg$VnO`_XM9=R4IBFm|;yS&ET9!=!D9&zUd{g1{E zaOO|KL*mbFJro+pPdTrev>rGUwNyoQ4ys6g!g(GiF_@n;u8kFiS39rKLF8^fE$ z{fM-hqRG`Rx?FCla9`K@ua0*w(ugKrhuz}kx|s2?+R!2{W=xIea`qFLfQJ|y&hC&3 z2-Y2Xk!9t{iSky?6Fux(uzDLvW3}!#mVTSK+7l0PX4e9wngnct-}W)|8;cSVG11rf z33~E*V)SwvJm4&Y$;bZQVB9kYrxwd+JnqB{`d?6v`fU7Z_Je^qX4lQOfo6Yjnk4D! z?y9eA+$9lb4p50e1i3$B4nPn+EYw^y$&e5_P*w6qn3=BY0*%iPmvAZv5;mSqqMh#% z)E3P53pJs4Q}fMq6Xz-q&`(zwo@v#@|2F!SD=1(HzU9BoJRulSVK7%t<9BQuweBL# zRF(TWlQrdO?eX;hmw7oKn+(Od|Cl1o%}C~^=>FQ!!f@MK!v_R#e2z-uJvAv$@MLZp z75pRdkpUjAbsA@pVt_tF5AhRtCiui;US`E>&HbxlIa2XkO$d8kzA8NF2bb21ekqLo z0K1hhsc}D!x_ydJ4AkhZm71bx*!?b$Gg#AvqqSFq8GEbQgPH%F={2Fv#8jUZA8g{O z>oS@sSGyQ&vO?_}EJUu0q~jwV#-y z0oCrS(78%+C4|M=)Ox$YgDa_LV{G^Mm09Y*v!)uw&|m2^y+jQZLgf~9zia)YU6-2u zfNvT5y*gv?P55HqXoA}(*Lg1i6+q>&&WWG@U4(0}0bT*p^34Fo_1rgt@~JrbN6`Vh z<~#kiCiHRJ#{vFZJTnm-l5v71u5dH_Ygk;yiY9|+Qv`izc0bxEjOvcw?}S~&xJ!Xx zLb<5>;m_ci%!{0Mc$U()1o-wcP1SJafeCN;qQQnCr$~zQ+lgX!-A5nPua3 z%N`wsyAJ-k{2$e!)nTpqBni~KiQYI(Cz8!xI)$7tn88=MU-~^|BNXt7?eL>3xrHCq zWviX0B}`A)-Rdr4Y)mpUFVMPgv_75QFHDRFizmgR!%Zt>$Ct*F7N_Y;izm(;fJhC6 z+(Rp8TN5$27~B`f$~vio9@I*1aT?DRmg8#B5&uK}5brrJer17n5-kCf z^9&voA6>j`Q@LtA(bSsJ(`6JjJ#EoL&{Hi8f42FM>ZvvnG31SF%y-*U0oZ?oKN;|3 z{7rx6$VUQwYu+rBnOmK?%aL=oxnFXs^#O8Da+^hi5|}-PFZ9PBZsdI3A7BE2NT(f8 z%-B>R?SPXL*ZzpyhKabLHIPciCh&PTei7cZ+-tlV}0?+#pQ7 zNHl4T5O-XJ&)51*bWw;mKv@|*xdZ?*P)-2g^&(#~ONI;rF|zs=^Eea8_&96O+b8FTf#D@fx7wP;fE^o9X%05jN-3{RCsD%dQ+z=ks6A z7M7ni{J!q^qutKlQ?)eGGRTCWPTsWM*?WEp_Ear{;JdikpuIwjed6;dIP(ss`B7c_ z-QvA`9PH_Qvvv{q9AuYhhJA{L&k-@*eVmA}-fPzoiKe+#mxb8=)Wo}8=5}Ox_V@!o z;j?Sv6@S!2U`AhCw%uuvtX+cVRqpEN*oPAp!`Yo81P@PiKKWUF=rIH>N`O}&a&{xj zfZ$uClwPTn+5LBc%tS{nm;8kyX>>#RuqiBov^jdG^HQfF zM7%x9!kgr-r@G5WPuu=X*3>)<&mf8YkB*MSPHZ+dOO#ca(E~dTse6m|D&Q0_rVNoV zm}{)*eUrkHhusAP9f<7_ar-_yvm-SA;D`7b5ph?h7FaO9Cdx?I{57glW6BWE?XiA0 z&;VY&^i$$ibE!Rcg%=Zh`6Zq1dAqLvGP#dM;}yT5YR;hAVk1$iUcpN=F^mun-7e#C z{H}qXKbj!sQKJ8c6wmVJFe_0vcYyLjYr*Vp{dqRHoRugivt0R2K5TpDL;h z)NO-p1>X`FRu%M&N+Y6MF8tm0Z$yw|h+T2Ot$Pw!a1)Az@M z>Mo~0f6{XzXIV6!&-FO5v!q-ojK(|1`0mW^b`3u>yC~5;DL>wMG_USSM8YqK59%I` z@8#y6q4Em3=XUF&M>qF4`_npI6=coKJ%;xY#Bf>_V>ikzSL(bq9a{g9u~@bL0atvM zayyZ3W#{JDKJ-uTrhfwm)a@D!KR&1s#ZG5d^9X;`Bx`q~Rpy<|i}`vo4;Igo`U2Ho zB@3{YA+n~-;sj4`iz^jDF86jiD+{ugA;p4e%a8%egAWN8UNm##Q@nGdatthA65E9u zBZ$^RfI_!j^wsS)gdaDz+ElVDAlQ{B*2~P?<9M+7&ooXyfqT@21=!8FtK;ah@Tanq zvX@G`hqnysZ)Vjt+pV*{4(z@xwmZGN$Y|FF^=TPYr0#{?eo|-{ort|}{H01h>&VUP zJP}AxM}K!rLE<_NVirV4wt3%95PSw1264ZZL4|6`co3}i&QmXfV@c5H%11z>m14O9 zdXhfhkLQkQqEl2pg88{Z&xt>^BuXtQPH0kA;W-8t@byX>c>SLzs zx{$tz!4W`}JeIEaX;B}24HSIKP>W;J7q7UMk`fvvu++p4uH)62ojaKyDstHO zd592~r$88wcvRbK?x6@1?5%~!{^6N9Me)+3$WNU78n*~x1wBDk$Rx`wJo7%DO15x2CV z0Z_T!V*J#^%ZsXXpXoa_?pM_#7e?rQO>gwW6^D=tF^*Jax!sO4&$H1Nl%CDw%x>rF z!{S{qChFnLcoh43&J%8X7)T}06IyZ)B8!kLURuBt_iJ`+$?X_?i#AkzbOVITI=Jz+ z#J?ZMR+Z9EV8pUMeH|_%NuC$bA!KK&RXJ0Tww$Znp(IlJFcqGjm_y zug^hBn^!LOHs0+;J|xlUk354;=jtcXeVO-ni*f&@ceevws5cpMmbLyi5-&a7ymX83 z$W$j9O)_quaKK5vouCH=vmn%=LQ^N91MJZsp2mq?gl#B;~0 zwA(qx58Io&45zrzGOmbd?&0sHVPn76m7~MXhm&Enb5-ZNdE+MN# zpeUfAq!7%3L{BsUs(_%NRFvWiQ4?NT2qqDZ$D`D@rL|V8ZLRguT6`7>uYgYk5fl|f zk-douqJqdH_w${5?~`Ed@Bbh7-Z6e-{4QgVv-e(e&9&BCbImo^TyxFkBO4STJF5+{ z??Ltzh?@BSW{B({kTr8^F;Zyx9}Mz$4)S+slYa~OSu9@4)jOAR*N9&kT~ll46+!Xw zA!^S>0gBgnBS&PBzW!J3(Z08*+wws1prObQP|OZc)V4wKqpgsE!gGD9USud%&+rLR z9-t^`gW^XUq8)MXQ6ELVp|~?Z(Jnyo{lWhq4bjD}9^2z;$Z7#+4GvJe!kcLETpJWW z+7KB@ykmS6cN&UL0g9Uf6xD4|{Afcmh2jG(G?J0QhGO}2pBBXdik@vy{3wTI3B?0G zicW^&mH@?$9KRu7@=K>O>MKbxUj4E5xSdz49(hdw#oIlfFT7D7@3X>?cM1trGEKq% z0qVPy5Cip5@tfMGC41$N=+$jW=jXE@a33wa1_WqPjPpZz(l{SWKp+egS^xNzQX=2* z6VF@9UuRzS?7XjdKxKKpi>fkDf{OhMm6-JiDT<8NkF!$~va*8OM3iO?9ZULu9F*>( zg!u&3M*vkOEGiZvUl98ha$mNH zlfxI)WhQU@MyBd(tW!FYV1mcF*Bt*lcTM|aGM1__~}0s z8&u(0QeyG!=MNRmlYN{I8P3B4oVNxzZ*GJ0N7+^JGrcXEmy(guhGNZ)e#_1dP@LHY z#gDeEolyMAM{&5JxH~|R5un)9xlPMx>JOXre6CPj=A&36;H;kqC>nVaab9SH;zt{D zh)^8sqqy5pbPiBV4^T{MgW^XUBL5%nBcF?YZYW-x=F_5Yfa0_^D1KCcv=@rGK8ntU zVm2r$Wo4ulSzl-Qt!d_$t}a98`H#Z_KCe~Y#PQeg;}z(vRWkB|a%P()NatA7S@}d#)Pc6DE9Fn< zo4#XJV?SjKubd*asZ#+O)N?$>;#m*zQ<>e z7vagk_sx58Xg5 z5@ewk)%?Ws#_{)@WH0K`IsWq_*?VnJNHXslKtuauyz$&b#(R}xd;d&jwP$lQ-una| z-7E3Y!V0x&5}%Wi&mXetZGu@S&8x%PQu=L?JFp`&5|t|QO&xL)ath_(-OcQ@? zKe;Srb$eF(X?|qdfH$*FQ-&QGM%(UwDMeOFJTgQX2?evzsn>E7q7C;kp2-h~V+Z63XWz(nz=Z7jX)7SK!n(y2Z=Tp4o(;CVe z+Y()xQB0k?=-TF`Wj~VX~V*RwlOExKG+L4ryDeluo6rFh=U!yN;9J)gps}#DLFO)Q& zADS}b!3^}0zt~IO^;9G%-Fv`P){>|0VU%xC+mj^+-OKYw{`1#&^SqL0;_W4ln(5=b zlAm)Dxod;|^K|!NZ0yj&LL+iITmM;SsHAwOLU+;@)sHAs$;j^C89Bd!bz)I4woiGe6ufd0_w<6`HaeTCqLd1x;Y?OGF%PbMdd2v+h7CkMV107dw~K| z#*d#Q*fSwz%APEWmBo+0T)1E<$q+cTEdC1x$F*G>D0B&_P(8*^#n^X9NKQ*PQ00!7 z6j^fT%JvnR@Ndq6k|N*7ryl7YjBdT3Ij~e#9H;(IG{X#+(~XXKTdxPdJU*tAfB?4l zWUn`PW09M2YOJnLTJ@00q&ZEV_vGNpu^$erZ$cVl5PT2E89Hv_LU!p_HlH=M9V`}%Wc~l&N zBGre=44@XAH5|L7;fv{q2J?b5uhSv3I|VAnikfZXnlcWM7V(*@@C(Y7PaRb`I{`qU zkE_s4xDWAs=&yNxkLOhVj1AXp`bu`&i{eW?xnZTuKGBT7^=i5L z*1NXNdm^$$uWjL9Xqz4{8L&UTc*!$u(_`_H2im?TA~)}cFJ5x}e((N%N6Fv#C1XZ=z(9pAA2}L}Z$QWhg#)O{4qi7;QYU z2{D+@`p4tY*2ie;0VsY2SoYrng!jUk)FAZmkts;tt-`mfqe;6x`;6ckX}v zZhHz%k-vnfn<7uPKF)1@oDw`XMaHF`Mzkh(ZGG$#Ji3is@e5bPm%0}~ElG?+N!ova zA;uC%rSVz&Am>8GLVNc2IEwVFJ(#}vKiK2wC~os=FVV!x{>EfI=*t8iV4X7CN3`F% zmNRD@QPM z*X_=zJ}WkM6>$XOWq0TLFf%@oJs&a_^0{tz#F;gg%3-Z3W@?SEO5Ge-r}x3t=t(X%ZK^%< zI0Ej)_YtN7&ye(f-KtkRcSu$3cbwC(nP26>o2s~Z#_P84kjN;kEG}?v+eQVnnTrCH zjj6gkZ8rO<)l=Aa&NVpJLOAP@*}jhfq$<7N@im)^zn=a{?XDYYK8lU4d{%@%n93%n z6CfgES#6)={4+7mJkDjKG$gN2pFOArD}Te;6sKZX9qj~bJ7KMPyj7kuX7{(n26D6C zsG452)7y=TCC_T-H0+RmL|9>Pn=;m#zuyT?{aR8(df|4M-n^zYo$3`b9d~kW|5!v( z!*!?0$$vyufdbFpz}KbiZt(ViBl_|wypgybJ;%G!zMSZPiJ-Z8xS;~`Q~%3P^o7H_ zd^y$sa)ol?TdJB`w+u?J-PMg-=J+%tyLQ)cHK$ajFI-9#mS(=x?iy8df-`SWyGqV} z^WrO!mGL(R%E_d7R&E+kbal{MQ&sEWnSQc^@b=O8#jNS{3 z`sc-1F?pxN+dmJxwRpc%{ulMgzZv+)!v-5-PUXVpwSIq>EV~ln7w#w0vAgzYzo2wT zQ{*3{NH8Kw{>Wn@a?ak4Y%uD1|MAK>E1S4ye*R}j$lci|=K|RjITc9CXDX{NlpwE6 zzFfFLqlDowrPeT);ZdJ_wr~vlHaOeG7~B)}r&L*nz&w?43vh|&9F7J`u?u(emysDH z{{AQr*>l9#BxgEZpYY2-H-yPq5#Sek68cq_eX-(2&dvP|@WWWwZ!6-TSG>K)w9T0; zwVV@}iSD?k1Lna~AP;Z(B zCwu*|qVco#+IhU^aINT+E7>b8_WT>K`~PCe;U~yr1`SEA*|{;+xFv$fy;B=r$$m}p z;mdSKq%vz6qK(nU&oY3jRn~%7GIt5pYm2oN4?H5&MeMtv5N&p|0#rR{dNs0?^X?xY zPc#fFl1FwQl&tQ-B3e#W$*VKA=_wnxu>*`!b%)|NVxT(rP^69k1F+G$y+g1L9Lfoa zu|#)|#E_%|SO?%G`Fh>1$EwdwL`uf9ha`c`I$kT_+wX?zCE9~yJVbbuE!(-{cJadf z$jsx}$aLmsv?GLIdUWO<#r<<`naW?#FK2l>fK9bb@HE`3Z(}1L{xZO?=$+;yVHhWO zj*VS`Y=0M{578#O(EEL)rn*#Ie9WaHJw3u$6?gRsUJXd&<2sh zhiSbShdY)w51bR@;%LqV{z?_)>@DhMdE%$#i3#*aWQCSPbzc-!)P0#ffZ{UUeR45! zUO9-w(`dO7MHG1f-GAmTwQBN{Y?DT7`#I?~e+23a%3^C2ewu!dhRuiLv|`&{5&u%Q z!Zo`(vNP*USgk*c<#(0HTL%PjK_?Vp_gaXM$IF`?rE5?A2j45=!(*6aiZn2ER#$M+ ziBG;$h@4B`@Xg!hY2G9eSo3yMgZ8<{>4fD(i4uHB zsqU&Uz;ry6+o&WdF2 zyRpRe1z$VYp347ej0HC2pDkPfjzkT^_u0aScyzkHT&U$^!}6MQqw&4Ojxr+nFqa?Ey-_K;cfXR4fEPYwahBSBA4=4@=OFDz%$wbG}gr# z*XAAfUB|S#6@(kknb1f5qK;s+^g+ow0Z^=hxYZ1UVHUOX#$d4b^@1|7Xt{V)k@;cI zbvunc*Ye|CjYJRaOJgJ6Wy11h1^4Kfje+r1J-7|;!*zKdGFITkc8q~L0e5vDYDMvf z)hFOKa4cOjr^0!q91h!2QTGM2%$G&Z{F@?a?pZ!q&Bq$j2-CsDqFC40DjGLuI5|AV*{sRCOamonN+0;|1tvXu5OL8Xmb?P@w~^Tl zxjOf7*(!1eq`x}zdmCw8jNy8pL$mSe>Voc9e~~do-Ws@?WqG%Dc2S#+1353sZaKug z@*^D1^~Rqe@yHEhF+u!{{*sLc)85sE6Llrpl=#bqVl>TYwfs`AV|Spv>5Ri>PF>VR zzPgkRFJTl~PKo{2hl|%2Y8~z#LI?^K(MQFw3>=Pilyk>9psFkBO`*u7D-K3%Aw?T> z!->vmpLWaNl%!`Xc` z-!=4^-Iwx+FBwVxvv-4W9`XT3svt4d4)+L*d8v9gMTU?l!gve(eU~GlHa4MdL%c&k z(G=-HdOB41j^&kz*|RZouXS%(OkLs&6OmygYc5?9mWP7!N?qiizaW=v8Wmla^5snN zLaZxG^2i5tU1it360#;;y%^KCH76mBV1t_lvW%JXpq&MD*?&1+!6VNW+2!3_B zmfI5Md6V)~jsB!~Q)x~`;&dwdv^%;n!1_c0L5RW@?*fCEv=$UEhbR&Oz-~50z0(b# zi}xijD)F=6_oLwV-Qf4l;CCs%R->vHN9Tfy|F zot$ok`Y;LpN1xzQfdZSG-5Z}1hO9kfz)-iihhf34d6}^MKETpnSe%@GhT&o`jB1Oa z0>!b6I4x~4K%3))K}K7Jggk4l{&tSR{SS$o@0rJ-DVe1#jBkCC-E1qv#yc_0^0cyW z*w@dZmqBaYo0PHlptc!t;GU<9UqNasYqtI#-8SQJD}K<^?lsDu<+ROCV<#*7-^mVR z=ved6!tw46?^vroy+l>y0|%I#dd1Q7;yxgIFHifRF+dX~FNTn6$?*d8`G;;_X-ALU zZOc{nI|UbCD8KU-c+um!7|I=jcpy zsLurIlgJtpq(Yg0DfK&uonrQo(I>#B98_&(^oRdROW|;JaFd%0BN+AC2X($dn4SzU zO<3!5ygz1!yG{C&L_DNVIRAWJ9L-g@5`GFw0qms)=mT1Gp zJ{|&02>@KQLhmOA5XirAA;_=*WQjo1d=QD1asVLh=_H4weOMqL(i1^fDUhstO;b?U zP648u1ofOj1zlxuI$HY1r28RQmff-fe34s zDX4+1HPhnMU1e~2)gc@j&IY0|c}KLZn?e4?AhXU1Az_1gg8T})1_Q+4W*S`NxDbvZ za=YM`0|)C02I^k~RH9_>MgE{<=w2z9M-7*;IIA}7iGu3ACV+x1%LFyUFVP>m2A3tc ztfvAvYIdaHE@-WpL2X_V^ujFwYUu9R0aQ<`7qm5)MIp?k0nAFlWEm!Zu8D>ar2)j# zf@p@gn%@S_56U<$NWD|3iV7PJ{q!(@S^%LfVDGO%{`TaDqdvW`wcmy)Jz?p_xV0|` zB(E_9q03Gd$an(@Sob0W%KB{x1WhspG|&eU^Y$^2$kY%7g6Q66uK*AWt#&8?iIS0i zy2R^JC8ryP;cLC;d9$Im^?CJD&j5~IdQfoh(FNiQZw_z4nCtzr`ssiGk~&oj@+pJt z;{DP9yLgubzZV3*gM;6*gWofQ-!p>W?!oT~_G`WL;)P=Zu`!hd_|?Ba|oaFaz?j$#lehXadZt2mz`7KLxlAy3+OY4d^t(7AXvYAnF_e zy=FjA<7VEBEK}{ldQ|d0QL=4BYA}pemisMB(4XrB()*171RDQLAT>USdhb z)a@_<3URptZAxEB)6&`bbO9do@g_pH5f$ zb(U^2;~;fY`a(OGa61{X+MgIohm(4eM-kWl5*?LZ#mL#};AP{^vMMB0*{ z`(PRe^98jF`kK5oTnWMSJ~@D)e|{sF)xd<~zM~+r4hkTs)f7SeqYcF7kb0jD_xotL zAb#BjVo3@?iHZG_SQomty-qXgvWY?@PbzG48 zu2OS?)GJI}9CZ$9;fyj*>0d!y<*u;wyc5H8`sZGyzisK(KUi?m++R>bhEcl^4oWEg zmG>8e3;M?(&oIcy+F?P7^iP=}XZVn7UlA1j;{cZ^dBz7*{~Rr-kw97h7_R15)IZ4p zhW`1Ut!=NjVe)j4=K!Gb^P*C}g}8xeJMpOiplbl| zfB@bxfM5(C5Q20FKqd*~86QMr__HSi9Giyvg$xtG8~|(#H-*VdgXGhdd|hiD9{ZaO zp+AuvcF`dM8Pv8GGYu&3<`9T}`jV}CuWM^PE;f*?OF|Hc@tQz7gf%HKfJpxk0D3$w z05&{BdK?Z&qU1;)LY)#9z+wQbExVskf9yTqYAS{EN+myP`ThQQ?_cVVbpZrbhzX+3 zAo{!O<^`mB5dihaiAufPFaK$n;{A|V4+H=m1t9*ZNX+YF3qKZ)&xTMp1W=!R36%K9 z)VCJ*t`Ok70AQg2_Ci%_Ms=8cT9EvRl0PC@t3Rr7J^)CyT#~~ssTIge24bTEqi33X zF0Ex!|NOiFj$RodxVsE47!?M2tU+ci3?ZS+DT2Jhhm@9RaJ!gmk#4^U;h<3m!9{^X z4-*XaTcsJfq{atQH*Nd^n4?;8*%IP!hAVGSh>P02D7bH-sf{s%nq^Q~MIjV5yIW9i z0ToKY_I|B0LKtc_Q80?u1C@*N6vNbynT_3$ zSaDPJq1anW&2Ho#u>{{Zy~$Q2s41K`T5QmMiRDUMgro?=xkNL^BL%C0GY-6nP z9-+2oMZ#c&0qKDu<`ss~$XlwEWM0cg*@n(z=jR2|eA`go<2)wvhJ1o;$eukp(D@iH zAgPkL{$`H!X0}1^e-i3n%C97u_s10Ki(63-Hq_se6wlMMcdDTf5$Z~M@}bQ}ky*dg zOpc%$nbdCYbBKsl=q$soEvvK?_Q+R*Wz@P)*zLKwiT&p2Q2ZQIhv1SWPXOfp33C+o z$H*&pV9-~zu9NTKGj2xn`Ej~N&IX4&U<1c@vNjQPV~IPDXC3N(3~DFx<^aWU#ZfpY z)bNO3Lv^-$+QB+{8yUj~{R4egsj%f7#A9B$J)Vzo{@SA|?D?Vs48?s+3VY*!YyA6*sf#bfpQ#atp`BG4Aty z+u?$IR<`)JB5pxyYE}mOOcjZv*#hkX-Kyf>$}bBCmwD#&b6zK16ynsM!vwF`4Jzxm zl?h_%CXR702W5F;98s7?<``<Q`(o+e z|8RV>EfPy`6kY*@xCs}0{Z>`Px8plnp~xt>{0DMkBk0%@D(ymeocq8xn5ctQLDWIy zMJnzfcS^NNjC=JG?^ig;54EzMxG{6dOHig({txT>SHFPqib3^6Rr)52K?N%R7<6}C z&Q;wNv*+~kG+izK+AHcG+pz7LQRpr%mZ#OV1Qg4m&&rL+PThn1q`Hhw^M>(Y^iljq zi-9tbs-+~->3TtL$UZk&_AU8$TjQIMbKR(JMSN{ap0&n@sWAGErk9R zMc#a)g7IAtN0B&OP|>fa0!mU(=KqTLx89uw3;l!k==!HNVaN@A>!_ z50sO4eViPoW7X;b7gt6@LpjghwT3GwceKxJItG+DLbOmE<0@R&Q$-(Y;QsufSet~j zr0??-@_Br^%HL9aBKA<6&m$DstBYnRD_YK0DSlA-mBqwfApjzHh@{6=uKfy| ze;@8kCq@SWRjB_u)&B^MwTASd9u^0NaLX2-vNDbv58+$BlQNslO=8UtsnjZlp(M+> zyG7S2nbD?llTC^Z+pqKF7~A+uW@{67Me35uGOhte3#4zvMEvO?rLd3Kpj1k7tP-g| zq!RC(5#|r$RjWSpzH>)06qp#kjca}=x#cK+?5?=n-tr&C++e47kZ5-SSP?(^2SU_6 z@)P3cAW&>{x~B+R9P!dbA9E7;7565#U7J60SMx&zOiqo|HK$K`EdC*WZrmI@Zcc?} zBaQC`hJjS4OU8+Kk>L2iF#nKhgu}dUcT3F*JD%-!5Z2kc@y9QB9$;)` zoPy4&K2wgXtvGc{0|4+R{L>k)qxhR{4oHFABrl_33{q1+Q*mv6fN$`Bz*l=?Zd&!> zKEegK;0ak~E3!G%HCb{2+~8h%nuVHK=C?b%?>@r`^&BU1!ajI8Y}sJ2lNJCEKWRI zzvJ%9= zoLiB;E~=R!l%t9p23`cfJ4g{+>oTi~zi}FlhCjXc`7$RZZ||b0L?5%?SaZI{y~#GH z{rW2oRV-1Cd}5jY5IIdk+^2^?(h)zY#k+++R==`@AD9+*r0UsX=ekgmUZt|H*YH<6 z${=WEA_m@-)rWB6r@C_mH(g7TU#l@R$Cp>0)9@0Q6>ifsn9a>eVWhX0gNk2$V!Q8=UO+d1ZW)9gP{K@M#D=uz4Z~(R`=}V`f0D4r#U$2UsSHjw)y zb^6e>hm9uPWz=8-5IqpDrM`WDSs>dRqE2mHz{($nvo33xXc+%;kl63CAov*5z+QCtNhzJB!bL`=q_^ z=(!_0tU}JNZ~5kk^UH{fgH5LKlL)t`xbB@Y>okf0S5-8A8qo-kZ#g%4)A4C@#yQyp zKWWZhShAw~>uFypdcm&Ka>7LC5C-+qOF+7jAb( z49VwDX*Rb)=_#j_kW1g!JPN7dqGhpk{OPua>jAQr=5zb!!f9O74!X>7P7&H-?z(Z# z#jiOzy6-&(qKlV-Czg%#cLAQJHOs?w$D(kx5?>u1N|;E<`v$FjO*%_%S^U*XPR#6x zHEwM0e*J5C)-JH2uv?7OxXEw$=BW7*4o-F==%Jc%I{zoA;L&=k($hGqkX_E7Q6KUD z4gN2tsq6T^oc{}G?R)%RTeq8Aj(!93ShBppu=ZRY^e_2^qcm*LsCPlKg#WMm2u7~- zk&O`j8pk=^*KT)4FN!&5zly`WXriVUuc~>j*r|@ho${V5)x^#f$qYK7d;X*h=z|OK zQhKc^qXJ*FhEripB8067B7_BYo}SB_|K&IMqR}M!5$xN*$4%fg$Z)yq1@u*?( z)#u|I{DlUWg7eM%{C+hs-m6erHvETdplsawqIJ7ye#rs&lA;fpt3QNg9o+@((W&eD2< z55CVk2}}6a z7mR2;5Mr}3{S&_TO(sE_p`1#=}MA z8_A*Z?y$zF^?q-PMMk{I|JNoTNXqNZEnOurobHXztb=)C6jsDn(%O%?A=FMDs1>@y zIc!P8>44z~i$Yq46w1aU)W32Z*VeB1f}Xq4L5vX-VBTBXa~%q)FNgl6#O5=ZpTs1IP6S?3iHdW~a$RvgC|UB_mv-}ecGq@k_3NCw zIiLJ`Mw$liWraOpH9F;#&z!jnxDS=kehr_n(xVH$aq2ePQ;~+?>!t`0_=>`)F}&KG zC;ciP{m z5y$@g$(|#*Hnx5{{}T>qGs9gL=3>o&$1?b zRMxmD%?C2SF36zZ>JzBw*YS6wiC)j3Rdk>N*$NZ4AcI<~V%U6?KaFbVK%MM>4wZ1C z(E_jP4W#`XqOXWa9Bhbi2!{3z-^S;u1q7*q)A0%G!|Qc8GfvEwm!Qubw4nSuy-J+t zWULTn8y-UoVg8T5RmEi-^XNAB=^~#83f#wnry}>a!Bf6_Cr`9EJIa2{xVozg`=wW3 z66MaBg&L5_-UDaa3i6v96{J(6tUwe*KO+l;4uy*fe#$-7LSd)T#RLV=i4<==v}GjJ zFR|V>y;KZjurn7+fQJ((Uez?PyOYzEpKEFF6_O)dVfk~35&Iy)&UyM5gZ_%S_n**C z!ys?Y&)ReBe*tq59&#`fypG9hgW^oWH%L~^r%;JoBu62hnY!y1X6nPml9?l1Jr1HV zqhi|v2^-9)BNk~Aq?H4{i*ZNtOWOxHIk{^pl7k8~aUd?Y+n1)OdD7dw;g@T(`)xFj z>K)&)7dMs1H*%Hpj#dqggd>Tt)xCN0ARg2C|8rHQ9skec!I%E$P$|vo|2`>C>ZlF} zfs~Z)A8dCn`M^1Q8?T?xJ_H3?Q?Xm~8ywV=xlJ}c(>IVq2NANP2GNL@eh#lwp!L-3 z^5XBDn`PK?>*!2xIL>Q6`2{i=kn6I&C?8*xIE5>UXBbzUHO+1Yf2FXU4k_7^(+^8! zrU{s(4WAUa?(qSih(%DyU=f(9$s>3xqQA+_q-Y720(T#fdMa|i37+!ZEj)SuGIhNy z?ceujj(|a1*R*r~d-rGFgf9O4ld`-1Z|=`52GjqI{h5~oJmGqI@=;oUV`sWIraO6{ zm)Qro%DIRU)brntE4E#CavuV*Abz7Uor=$$3YLBlOk@_3=70J1_VE(5Kby5^&11fy z?G2~lL;#zYh4NnasQCBstgHS&>)JK`x|aKR-Vh!`*+xI)8WpXW*D}VGO*N{2O)tre z?}>hqMRRRd3-SLq?awq!)i~+hUq3MY|E&EPf)R(x`T6MMe}?=F`SHjZbn)VMotsu^QMEV-wT!LZz(!G@-5si`K9fb{6bc@ z_dHz;w_Y}!HyL|w@m(?-66tqAb#T+upECUoCro^=Q(j6OGXJIQ`?A05-eFT^Yq(1w zXkXn@l(WU?EY+L?Y{+78GE0vy=gI}teRLz}5!JEM^HGP*@TD7~O$~I16!_A*hkF)J zmGo?Xec|_XOQGX*j0$SBne9V+gTF82)ZeHQGi9l}jwiKu7uT!w)U_SyF{f-dw&dwc z+}<32CCykY+ii09vWVHboCY1z3h9mkh^cUy4~SCd&IgeAC6iBXuNj#y4GUzOe!IGl z&^rzDr7{~@LD!Ps2LlUhz^x0IV;4GgrLc2IFP1{4?O-B!)z(QUZbG>PtPUXH5Kt~XfN1ieElYINVImEtbE#V;>7!vFz(fV<5rk2>|U|*#HF%m zIrT??tRitGk{RoqqM>PAanH=qP1+=41MzXNODv2C@RnmgG*1Q@EF7WaQT%X1#Y>RO4&%U{Fn z*aQ9hZ4*apXe;0on|9jbOQQSwFQ#1oLMH zjn|s@HOo~LZ*dw5#mtPPBH1HZux<zt9KElhwbUP&eO#YDSj$TOkh5pj{WzG>VIep`^i}13@ngNgF}s)AF{O^ zM}CpEoatWgRvxJlEAcDQyV$Lq@s)TFL9THB<12i2@1gY}%V-vVW%2h}DZ4}Qh|@qA zVv1YOmGMOcYS4PMmh+Zr)t%z+%8-!g^=!P?EK^OWqfxp50!~wSXEJ2 zxEry>tLKlem-ze92il%#!!;6S@%15<-O*p{Z3#%-4z<_Y#vkh!^>cZ6H(wVkhaJ5v zJp}gp-5T3_LOqqq|JZ8j03`#iHC_3x!&qgrq#N&TWEUmXU-3o=+H-*x@|?5p{lyKI zXFhq{#(aNW?zb&YP3XL^-|jwq|9-psS6^Yfw@zZSkZ$uku{{2sr!Cx6dCUh=nKF$% zjTBD(ZU8EYi&Dl(RPBH+Vcx30et-SbnKhHK9PHivx-$LM@IFWXI>9AodkD6gwJO37 zVMUc}Y1maZvfWY*J}@&70zPM7)F1XY(gp0djA6f}@R5r25B&R)qVTaK$V2pZ6*l}T zxw>jkB|K+AjwuVu#Zd$M(1t)V+n8zfV_YWghT1KScw-Pf~8EXtTx=!J$Eyi{tp z;3Kn$cwe^iDSewG5+qB0bB*``Q9ZP9g!`*QZ7Iv_Lx1tX`z?EcZS-fNFhF*HfBzRe zMdNP}FA9(6cM#gGQ=dOcX5%vA&t^70^TbFxLP|u0dFe5Ch|2Eq( za1$f&iNaba1!X_4h_8mCkd@m(VjSt6&37&Rr!*h#_n-DbAmC^SSXsOYuYC{@x24d% zDA8QIMLbvu;FwKo38jCDinw(H-SJU za_Y}V?j^AJu18yF_+H6TeQEVz(A`C7IZl07Jp|+O5T3n!`w+S!9Ik~%UbulKCzI6p z@C7*XSN;e-wY_!LjlukZn98TqxE`gAj@f0J^w9P0zAmk!Qaa|osW`WyPN`1II1u6+ zm*9m6bhEAAcdlZjugPVJ`)AU}%_&Qa@#oRMisCphn8%&m?`(#~zh#p);Vwr&$d3fO z6EEw3p=X$4x$-8IZj=robmF)4$aeX!@nUE*o5C_oQlG6Gt%#F+0;akI?K2 zctrDe^#N?G5ya{PZ5mb-FR6LhCM@kw6^X%dJxG=7Z<_6O8h!$$HPJJ53FlhxamcGx zq&8tSE3q&3srJP(xHkxuR*nnJjpecoSh<>P?@-~la#fDc36lWvrtnAltOk4Hw}rJL z58IYdbfQ*RQ!4prT#Dt+#(lyc_uj=+i0vf+$tZRv!3Xr&T^6h<-eHEm^xy3ZH%wsE zruNL|{P)@yeoAFR`T2k5|9K>sd^zLG;mQA-{-3!4p8rSe3zs9jrO+~&g!*JVe;U(u zh0eSwTF&_w4Ep^P*ejkEyP`s{X%^_R$&BwzGY<5aibNl6ePcH>L%d7|ar|YjVK^$w zQU+0_hKy87>>M9nt+}N4z50Rs{|DI@@L%6!jxB7Zvhx@J+WkvTyR@aHUD`R%Rk0&6 zCOiIW-N)?VkI$@omB2Er+w-0BSI5O;xmsoJ9}W(EbQp@e;nP<1H|!>sJM%w1pDUoa zRi3T#N|49DEQ@dMxl(0l8CHCVG_|X;?en1KGpO^ zc-}7ZN;1#U+Sbo=d(sOdN+CJ^4!Mb zLFEVj3^Ov_+eKZh0>#!u+LX8^+r5H1`TTQ!W_)~h-A0&aMCQ2oklfI_3DkDGkLE|7 zAz14EV_PrcdF<7_Z2gt;zdD~@^7o>p!rX+3Aij+mkNt?AU&NA~7P7C?Trh6VIOb0_ z&=&p+<&8rWPD2bx7DOnFjnyX;q0M>jyxjO2wgTzcnz!Ry$iR-NbmC(dHorM1Y6eit zjT73|GWl5&)4B{9L^$b^yer_6`=5e`xrG+d(MLKL{ya-V`bj5q=3U#Rw019R_pQ{T z)S0)Wjs5Cuh5oL;j08<>W=~bDY3)fRGZtz?g=kH>w9%J$m5C0)a(yEW!rLc?W7$z} zvSm1EY^Ov;`g`VnRf@B8;D7a3Qw)Qf(I4amU*b1FkGTmwW;GdEPF86jdIhsI>-S;k zFJ@?vp&1qCLPToHLl?Y(o#8ISdm%Mu;dcu!(vR{7C38Qi!Vffg{7YaqN$tzw%EUp@ z+NrW%4D``PL7Nep8A@C4Lf@@qU0TlhCLY<$lv`;t^viG>o}$g}10SGVDozfj%H}W* zs>ujleai0gh^NKUJZ^P=x5m~JAM1H0`Alst{={jx41tcCmFwSpOvgnN9n=w(^t>^z z`}a;h+p;Q;I?tVz8P&{Cw_$gcNH;DD1LRf&akiTWrurxJXS}z}e0{5L#}9`(5hK`r z`&r!Lbs?sE2B;AZ6JZ`=`5{Mk9LNWMV~&liHrBd1fgQxD{|UtKZ6Qv*9Nf|Iq&ebj z{*AYu#su?N;sVSMXJ=}SnazwS6|epPJp|hLnoAj)+nff4_pzIrnmt4*)%E$`w>MmN*^oz`@ToGS~^Bs$?{BfH7M+f%|%U_UnwA}&ym#XwPeE<8hL~#GJg)j^6 zgs7|rX?0T6{222q z9AL82UG+@6U|@~x$fU{MI!3FlnipjDDnE#^p#i3Z_*Q>-`SbqI9>-BS7-$txCevF< zJ=Ko#LVCE~LYU=1swli-U zlL?0H2HmS-v)8+IpV{oSh|EsIi|`f*j@@GMx}%23{xA!cAr+H20w4`P`Lq1b33%T( z6j?_nvRV6~0q=8{P7X#rFOsMom__`Z#!qVAKvJ57#7^@I_qGG@l3od3zb~b~O{IUW z>+Gu(IEdH@t;W5UGWS>E`lM7ib7dYkC%(n6v6lvY;UD)T3J5eq6T_A98#0l?A=&^P z*qfggf4l2Cm~73xj0HZrsif=uk#=d#cVf(?vv$IxerG{<_oF{i`!Cd4Cs=Xls~2!} zeJs8+yg(EM7&SxdRrl?;Y##^~%y2jHtnDaW`y5|7d8#(0*!?-{QY1pSSPje_pf7p8%hMY;7s8Izf4Lfa(<1W#(d0=Lh|m+Ml*PiGQk>YMk3146GrGI*@>-_}c)>i^s(&m5G1KrBVD9!rW%?!=X6X0C6=s$z16NhzI^W)T1}~DxnN`V7 zUt&!y*B%7ULGS_#0IANq^ogW8>CB zq)8nNCKckM=miR+N9r#7?P%CvU*cQZ3h;R^M;#9Kmz-H2Pzw6*1Ub7uRh7QipKl4B z3SQ>y(?FFnTq|Cq?RnwtE~|AE<;lYSBGWbZ#%$iz4b$DE-uIAt+(){l-;QM7-!2a3 zTb*Fgd^?nrH;v&vKVl5)GJzWM^cZyLJ;_AZ&yK+3f z3d^5ntZdC$gPif zK*l%o!se?9O{c3YL|v(eTlq(njT`a#-AK%c8P{W=r&Pa8>z^O4|5ZhqJ$6$|S}{G7 zJLd?;DFp5uV$5rCFNyh?dmc5y8@J~8SY6*VHui~(&ot*=^%5tuc%YmfZOYMW*x1(A zj+1$V#l5Bv{_uY8Hu}oU&!2}MIgpQY9G)cwPQx*_%(KeMDuMut)_uz9 z794{9$Oubx2awxfzFV%ox{>`f&dBw|dz##t?%z+GIzFY`&Q#We=Z?rSg!h1rlm)51p1+hv6lm8*vW2$#A=7uco~W<&Oc zAkT;l?lkPqfq)#2-_DXUOXal4bhfrgo5SRM%FdMkvhA14!~XVKOWL|1Sx$*tm*Y-( zA}0z)VxipboVbj(<3g#ndo3o71dd{XrOoew>wa%NV3U2~qHMQuZ@SI*s997kK0=ln z-F?#5QZsY0c%sb$m4X-8v8rI6^-Wk2EV8b=ExFA#ng@jWfEV z18$KXSeB^Cc1uMu>C$vkpm@36_NCKjH!yYUtMo3DaBku6_R|J+z;HGyXzRhi;Jk-> z5S8g_gRHpU3i|c(*kn zX6@|3fn1Xm9K`AlL)gax=N4_-L#}!W#2_&BA5A(oXQkvVcY9PLRC7an+e!QEragPz z?B33+)Hp3Ow%U*c`6!xWrT1_jWKPf~W*?nG*v<%byLI2^`@aB)>?*RFX5*Vo9jV=S zR=3Q_vr##d*J(dDo3l=JPX;x8%&3!%o+2Wn$)VHwCk{B$=dC~tVr7#AQ=h0qdai7h zW!{PhLT3Q+4Z#EohtQ?VrcJGx9JuIgb#Lpsj}YvBW`87}$ku!4!DHR(jz2}MqJx9N zT8miJb6p@OY1a*OFY)AMbU?W{4a7zYUO1Lh2#)3#lh-q?qba`c=91ie%S*6Fnt#)} z_b3XX@fnrnWK#C=IUU4?!&dO|#AWa%N75Fq?Equqrap=@cf(=OqDG4{+^T_u^Sw@b z$(dAZIcUt**Kv<&%yDk8$z8L+hM#6#x0z?#DCS-O8+hN7BT>Vp=fq>S%-P+T&bBTH zXD&B2b2aQF9g3d(%ZSF^LZ@t@M&rkPO7paUQwr^zlBT^rraFllgJEed~SJM*i#-_n`CnhqBMTRYsl zdVD%!t`wSP_cF2=T8OZ1TE7}D{xHw4t!{7XW~k7c^Kn+ifaAV>CEDr_5h7e`DIty9 zM#-#Zeg9J`!)JfJhD@;%NFg2Z;=Zr+N5b^z1+-v=WG;qjlesfLUkg6#b9EaeKxGp3 zoLOr~;GM&2Z}6lA1E-n&GpUifzUh+>V+-`I^H>NcOMZL4O^PRfla7gTG-PEEW(N4y zI4bH5&U_=vj``)YJvmR|Xho>kiV>`?l-#YWZb4&R^rbrPI*BqnF zL+%_#sZD6n#OQ3d)3^VBloqwHwNoG#Rqp-X&#mS!(g3FO8@^6YGcN>RuHrnJiO@s* zM)?DCu8*Qyz&xx;(dOLxC!s-wUOndCONcdWq4CYC>@}+-4iyaX=-uxVH^59`Hqq&phtr^Hg*@TFx)?zq^Lb zDB~PSW|5(TrG04vI&iEU7%DKlYWo${Jl~#=Y61y z7H%&`wv2P~*72Pq!N6@IZ8!hf_TxU5a*l^0es+VQXsuvA1!g4YkBXYm_W3_zt&$e& zD=Qw}Y#5)icG`i!EG4S3hA|L}gle}6Sjtmgi~j6Tt_4bHQazUHl}UC)lQMiS*uDC+ z$38h1L`LPB_JelWJ@QaXyR=DzxHINH9<p;S5N0-CD> z&?9t*;)vALnPbLtMHp2-`e!D*uTb%Dk{izdC)^Fk#mb@-dgjpr|7 zhlpPQ z=EoXg|3~c8)ViG@!;;!3_2d61RrO_!5?l*V5js z6ZV+s6U)2jnj`oW`5b6*IRpNkGz}o|i%L!I;W8Y?cWP&0{Rb$(?3rH5QW6>Ho_Utd z!7?@VLcFp1MfY&qOq5#RVaEY)ci}y;EnYjP8ei1>q{;7|Uue6j6zc4Br>GckF^{i? zsNYgrD^Bk><&2e-4D|^k?GtF7%dw zIZ>c5UTaM*TwB5hOgl!+~M) zjU-OM$W=gdZe+weI>O@QREg|Ek^@^p5+Rk!RLyH|61rgiYyS;^qRTKf^PmYvcBji`JqRP1@yZPq*%rigYe|ZG)_)=S1 z;)e?|%^o5b-ZK&h_guh=`)-NSK>r-<`ya5+@drA}{15Ke19u_v!-thM%iGv{@mH|# zVDrMY2(p;HQbnV(!J$|V9AR6<_RgCX|F`@v7lTRsipSOeQT)x913dqa_+MtxTrF}7 z!v6m6I^P+S?%unOLRu%Riefvdzr?h^ZvI-OEv1(Io2kGB%uf zH_9U*gOC}Fu*oIn9Z)a7FP;ehF_I@_0j3iEO3AKUJRZe4lp4`X?7op;{v}JqY51uX zv)+C19yT*>U{YA3<-PxvsE#FPoy}U{XvHv^Pkiay(^YDAH(B@{pywIx6pl^gC3d*)wr7g^__crD^uHuo+*8i71S+Fya4cg_`8sW>kF;@8V>S@#qBa|llO#hKt@1v)zvhQfcNljb&Q_~x*rfg{(M4?P; zIVO);-}JpI->KUn8OAnTH2(QHiGCa0*DtU$i+SI$tU&lL^GU1;1j9?@;!kDI?!Mys z1g3>QO2@cB4eaz}qSp$yE7d6L zdrkiJpEQ-{(>&=!?qWVh@dqgDJ2v0Bd64J{+i>$3TTdA)P!22NyYRhyu}mA(+XMPmBr*zpp4A344go`O2*|yw zBK`fSddT9#u?Npt8zBqNmpsM`M@tlJk8{<8j&=jz zAu$Z5=G5zasj506I83AyDmb_!xV6VEU$#<-@tAzxu|Tq>X+F&Q!9Q1Y)T0Awl+G1h z1|mCG^a;1hpntB{{&qnbK4sk$R#Q9P-h;M;_UHc;v9!MM&rSK~J733>1~&9=^w--d zIQcdBzLK0D(v^h_98?ofF~9Gp5rbFLK+U!~%e{zUn8AddsB-!=akJ=VAWV$dwmHo9EsN@Yc6 zf1N&3Q6sdg-lO^DHYywbj)am!Kc8G$yKiK5&l$(?TUA}m-w`zf5k?0vY%|;FTO?dq zBR&4?Y)jFT`O<3%PW|*w95LmwcO>HuhW8=_J_egX8+5`O+qeMyahog|*T>*yL#!?*TV2jz5<38Y^|1V$v$IWp@cHbv_0xNP+xq(DUt;BZZ?0GQswZ{& zxL)OYFX~&Wf6yVF`8YGLkuVN|!zn!N(DL}}zFrB(calqDKL3xjNi{zL+tuzG$^AHZ z|IX;ga}`dXJo7ZdX}E%P=t7q=30}m205|J`QSW0J$u1{p)WYU7g7Hs|3!R2Z8J6P$ zCT+45{V)p?@hC2q_33@_TIRv3_&32UpFBB%%-60~a##l6jx21hMsC#Zrb@?vsEmL_ z^>)4P{I6~Oej)X&-A&~mAl13!HU8G_rq;Hrls`j$sOxtq1$R_G)-yA$t`r>`7nqL0Q&4)v!v4t ztkARq8}+{TEW=6Tn*n3~yS*52)EJ^oqj0OSCQMNP2&?fk0fC0G9RFdBk0+DWHs9L< z=2rePdL2M2$VYH*Gf&R#=m2^j=`>U+pG+Z&7L~)Xg(re~`32(&gxKm57ObV=4@mU{ zBFzfU^sXc89Qgcf=7F9IkkRZ3vJvJkXOj>-5*Gysgd%QHg9Qwtz_YD##3D&l=!7y=cg&{TO>at{W9>7zdiXqf;d3idTJ)ty0GRw zkNuB8E|X*AOn?0QIo>9}C%0mszoAz(QJqp0$@hMvwA6T2`b(s1u@A*2XM5B3OQ#)2 zQpP2It=?Q`wYo-SoF}+Bty$0TO8LUOPEj!GbU){Q169;s=p~T*j3>e68{DlwgcCa~ z^v3#dls&ap?Q5lf1(ksQBE9tiWcpwLtI7Jm(fN{&HX4tBL^Fu0CYoeG_L#mzIgV36UmQv-mdsu~(tb|0nm^yJA?XQ=&Uakj*?iHk8U+b#DImL=r0 zqoqalP0B^?mA)jsRn0%jm!#T#ktD4-G=%XMa+=;mWqmVG6mn@4V*Ct7A?>{Vb z#d}7C)3l|-Q!{$?5kK34fNuWq zvDOv2za$&YvMv79Q2MSkgO8(Dcu)JC3ZNACp#i8RVdl+^#|^2L0eb?OfIK&n2?GPOU@lD;Zoj_ z#BAf~iMdH}bd10~_}i;6`U(w!@w;!cFqvhAnNjCHMQO_@yk7F&EX&y0>pFuWTGy{I z-QS#&8GiC4Pj>oHK9Py+821V6kh#lg=toI1Y~%8^(>?PhIp@>+k$-;L5vI|N;AUbQ z!?L8+K}!o2Ki1^EfXOS~X?O=b%wW;J-7rDk$BPV)@*{Jn(Tz6ZpMjn;&NQJqk4KIA ze%44Lo2s>%wYslxZW&2iqqQxZOY__9UCoEE{+3}35~2DHxK;-bWBpAauX@*4y_)}N zdP5Y~NT;ETrZi3Q^1QUOOwt_*^l3ht1o`l57G!Wo z|8~x-`8+9ek=qU316^av{wvqkA(DzAI_oz!i@i=q!zwIb-D77!r$w~gY1jikdBS|d zuTc!=v;UIdHQdAqxmC@b?y{+DE?5{`Z>CA=kj^o0ugx;ydmrzM@Lembd<`%x1@F6E z4%kQknH6BCI~8=^(bhqwv=WB_znEX>yKVrN9%Kadt7;T&TiX;_-{R0viY<;KyY2hXjXas#dR-703^|5p#vd*8!nTF}ZHg7jkli2J zc3RaA^H*5QN*h7j$Yy~b`pn#j{m5sGDYU>GY=D!s{lv1R=sh{3*AF-dZqNw=Oj`Ko zkA>x!18(b`kyh%=Yf724L%qFjYJNK63-xSywnq0`HWw7|myXafIoo~uW*NMi+-1Mx z7w*cIF==k_aTOo6QX@v{{CAxB%W#j0Ca&X+8n{b2T2)^Esii|UFtQzE^eb?lE6sHp z9?e3$Y}glHShrzsd17RK-K*{7d{(|t9)A{Fr^CVchWGrUDo!|Is)Sf%BF@JiG#q=5 z3oeR|e`z?`o7lQCCTp55EWuDAf!2eXoYf`Tr>w9`b;i|=V!}qkvK2+X!LjLu?t%`qDQCEzDvtGkW*+h+-Zx0&mE#q@2zub#Jfz;}E zMux0FzDej%<^Xoj{tVm?#^IcD=ea9#MJT%=+Av$oipu5i$gU`DEr{X+zA?Q#zEg9J zBwty4mwWvMdwhZ$K?`KUv(}>}FRI{N1B~#RyBBk!Q5_Nx{hRZ09RIEB)83hNh@;9h z`E5BJk!WCZY{#JxAj5^qn4NXlc11^`$+98cwj#74T?r63B6vSxB(}|mW$cLtDia|Tb;-6zMav*|Awy}Q+My=;}w zjtQu3*DSQQ7iZy-^xsq*ouQBhkab@{H2z`TC+XIG`Oy_$#6ODGZKB(@xF=P@Vj3r9 zaWDS9-CYfb!r9j7-wkWqsc7OTVFfh2JaHYzI(AfF^aK9?QT8|1Z;!o-PIu}*?(FyY zEya+5rii~M4MNok`THfw8F)MunrBGIfX#7X5vM!Nc?4#;jEX!EX_0^+DmAPOA;G#}IJLkqJ_yJ7<2ZM#!9geAOezU6(#Vd=h} zH?FWpx@dbW18Z^7kq&asKfEIP9X0GAZ-ni^oZ$XhI)_AK(AVJXz%iOnq zNSznLvqVnj%=gIFtUT32`0tt+X+t7Xb`TJ ztH8bcI-3}W+NLv$WAmnj8kYGKmdbM%mpSEJHh9Vw-@h{2aWSW%K2`sjp4#21TPBl? zDp4S-!-@2k?1??N1MJ#g!JekSwkX0iA8Obbo|x_aZJ!0LvSL+xvuf1ehg@>*u=rPI zQX$5rZ~tiE8a%V93}XVQg#iM-a_Z!1A@6(+=bFyG2jBe_0Am%EQjFsUG`Os=&!kSq ziTTc~?FSf>a&Cw(@Z_Xi;AlB-Y}Egb!K-m9a_h{WEcIp`#Sak;NeW-k)&!B2>+>ke z?eP-o4QD``+~GI+49DEC)K&aGP}4?R>3DB2NwVm!7Yagru--wZDwF2jBO`4ETP2KR zrk~_ch5T^lt#o79*nGxFmed2I_}swsT<4w=rg;D2P_XJtL4G_WRC?khFl<3yL~vDX zENMX7%Jo`4hkA&tYz?Ptz{*&c?fsS7X&ugPMGs6PR<1S}CQr9O!pW@fyRq{!Huu*t z#e@s*^BGI=m5GV|F~;G%h)46;40xCLl9?y_(y0i%6^Rc1cEw5!Y1>X3dQVzq`j*sw zQmHniocbJ)lqEQt#&d*c4U?YBxsR88Y3`=MXc6(HK{VEEW?h|XKE5;5p}^mF$1(CJ zCXd{{B9WGjI+?p~dAe3rwzIZQ0-IeyMLf({s8Bw2oN~7KYusW`!%5|=OOQAa6m4-n z>;O%gUPP-izpCZ#spD{<#%!tzPJn*Wy!VaV)6)E)`a$>d_;HR=Rm-U#jtEYDKRpC? z{$t=M?<780J*9fn^)2q)-FxlGc*9o`xyh2Nz)j7|sJZpsLH>MT{XCn>cn@RHXq_J= zK{X~#es(YQ=hZb+e0GEZm%0~HN0YcW-!4;#4%smodAG9U@z;$vnLiZlibjLC-$LC7 zGW0uMn1NUtGeCwl>5%^jX4Rp%c{c{ScbV2vL!?6Vz%|p|==#e3XJVz^*M#E5dz^N) z)|YKITDKGrHBTo#Wq<4ly96xWR-(JnWr3BXfO<$t)~xQuQSbeF-)0V!66a2RlFnsb z_!e|iV1^$?Fy9Zm3^^?74dJW-wFmw;GLfi+zX}xrL znC{;AGx`7`BMO?N2D|5Q7#5P)VR82jlu9a*k`2$$C0354NH#LLT%z)kT(=9B_VC_cMmbs~Wnu+zDPOV&Ysn!aa2!+(fM}Bt`@6 z6RT}Sr8JT%rZuZUzQCK zjhoakd5IgCH5c13>3n5sn2a*XkXE-W-5XAb#gHG_Hk7gX4Qii?hrU2B$qbw(<+Jqu z3ECNlIzAuy_km6x=ggbP)_t#ME7Lz~`K)#PS-i69@iAmK*6Hd?z_YJHMgY{H=4|<2 z@la9MM8uA!>S#scO!u7kZDaN`xna`}K|I_u70ac%*vtqbcae9l4I(|R~$kAa#vOQhrL`)|! zhO8R{tuk<)qU**I9W?DV$PVUp{a@t03wTu3)&HM?pi#jI6*N{YQS&NP)S#eHKogn3 z3?zzG6ct-qlw!S6G7+qz(In_}9L0KR)%LB`TCKLVwiXo?!yUv6-tUT3@r;pzH=rW$ z|9saz=gdqJ)V9y>-{; zsk29Fot5)0r39b-oWBuD*n3yR`yOBO8(rre$D8W(rJxLfFTA%O5cf4gxaN2TQd>wQ zlP0fAHR|7M2YRH2KHo@TTy_wEFCFf?Jmxld}Fn{SU$eKOQ4 z-`d&F7p4tVsS^m>^DeI3B&Ag%yeVK3A_5A!>y2vmZrjfkbc;g;9YcwUxVkthF3$Ja zaGJBAtB5KOqgeGD;fV1|8mWrT+2TFVASv`$#ttr1?mEh`5n6pK?gBF=Yu}f14}uOk zyA|>kK!VmLTm*yURSu6ar%hhgc1uA2!?+ti)c&-sIguy75;1f2S~m#I37(+8AfT=- zyz9;pTV_WJ5xsH1!nw>7PgUFR@80*XHs0fcrDkiWZS);^Y=7+C7D2eOkFnK#dhIjl zcX(5qo`l@bvGOH;xICaeUf8!7n}W5S*(vR*mI))5nAAO08(FUGoxlT9BQmp(w5C`o znWtYVKP)dONwXC~?oEu89--lQs#gW79e(zOoD!^K(_-SBkq2}IVb5 z7sx3m$6Oq};}WT-Z9#*b)iRBu*-rww9!o1BDIt?(8rJYkXlJFoICYA)Lpq{w z-zD`NUb$0PSMNtHBAdzX;*Mw9bHfnO<1qFM=E9D=>g--ror&}G(P}^`@!`z)b;*~R==eq znjmKUb`)ZxcL2ZXzqw))1rR+p*^eSdLdL8|D&jowb|tPt*H?_Sw>^jHcJwpjGo{fh z>in(~>2W3LZ*?6UpZ{K0ul!*h9U5?TSyb&p4Gy+(G*{e8H%nol{ILsO5EH4#@eTM? z%tbL<+2)VxL5k5Ex6Au5FfLR0@$$5uEL0ii$)3fFGF1_p;HqIM%Fv^x&8?%?_$0ka z@6LyE!+g$P$-GWG_BXL(f2e5PiR94r)Am+>5?I(nBvW1QcU@i3^}UE&Wf4R!b?^Fh zRWd#HT~1yw=|QxX15f*KTN6?kVL{Fk2ct%UI4UGE+?F|hYa)|;-km=ZlU`y7atA!5 z_<4e6y&#a0dvzDhRU?RX#~iQ~+O(wMIU_J%r#XdWsiNLKTY4(x8$z}Q!^?>V304i? zHG}s@BS5=P^l$Q$5*V4{%reDtiU_*Vo(O&3j!%%|aT5~3-|0Lk(l;d^8p)d83jg!d z`kZO5Xyk8#mh3yXop5yZTj|XUO5Wj@P+uisL%#|>&*C$c5q@10+I5Tz8wLkV$WOU9 zV2O!t?wSNk53(szI>4*v6kb2fjd5U)Yi480@j!``h&X{eV8wa*wg!FhQ<+MRpah4W|L_t-uB} zF6R%N9F$SKiN5-Uc&t-J85A;}>G5a4W9VjPAKt?8AJU^~DJ!5gJu4u8uO*MGg$guM zSF1{&#T7bBZ}56QZcCaxM;^Yn^4(ufeV4HFDYy(qB=C_wHpYQAw*9{9Lw3H3~>> z6_9<)yY>5`x2QfBdpGbH(A%>_#6)i=`b5v@?NEM%^!5;=bN8E5xLR7GOA{b1imF-8 z;Wx8suJ8aY$glmqi6(&ZUk7UucB8-ycDS~ptpZwKFUE2 zy-n{TY4BM{L5|`P7|R7q65K5MksZE&xW*sLT{f10%AROcc4enjb_s3+-(sQ`dzH^Qh~K<3j4XOCfdL zkfW}R%(o~pi8xN3)7K@P&{q!dI>J)r95x;VwbCU*LzRZ^7UIIKlB1hk?+MOKqqO*S z{X60HJo*Y<6N2*Z-WA?m>{KJKMn8QDTxL|UxWfBM@KyFo>Sk(4TGgNxaNpx93| zt6(>$7GTxljdI_T(-^l28gz}wE`nMvf(lmytGrdMM$zbja-@iWYBE8iolr&pJ~||{ zXIR*-R_5G3751uVQ&)iG=o`+E)kEHlUh^>Mg{b7hbP$i<6D;Jxz;NMP#;WUxzn8Yhktf+ z`wbM(h+bCloLxhi;h*nO>~b`EU;7jDnMtAG(|zHmjra2D`}#DSaBiHnr$A4lb4Dp- z=?I{aJ8RGW&-!<6V90?S_3!1^_<)wQUm$A#mVf6vemjBR)qi>Z&OuC96sJ6pSN=o( zoqxba9{}H{ipG%CPwT0WrEZOU$?dS}OXcqXQ0(!F~&F zUKJczUOc@K=v?mq!b~>@LPk@Z{7{-lzcnghOsGD3< zmLEuOvGlj>D6tpM=z4XQI}u}fa|&H#f(0Xi`k@|$9h{+?&ULS8WPP8fQ^yzxa^cQ% z8Ykb02-SbFW>A|RxFA8GPL25hjd@?{oM>kaPIlhe(~Yp&3wP8rCr#KbBKs>Gf0>OD z-txN0yEyzSHVL;K^zB^wktxP2w1k3e;Mz~ijPW~i;D5?{`u8aJl=>0wMr^$r&4Idv zpTGP>Xf&BY7dsch+O*CDnwRd<>SL6ak zpGev0oKw(W?)|IU$mVT-v+psY6x&^Gy|wE{ik{4m$;$OtHagS2jflb+CtOam7Tmus z^)@=Q5FQ6L&J?Tsl$BuEQj?u=M^Rnm1E(ho^i$nk9xq&`B_cE_PuIF=%O8PZP3nW} zH~H(v8|u{_r9EF+g@#2x7|s;atHo0;7XXJyS=Coby&o4f9_wcrtF4$Q#am_DJ~Y}) zU1~RRcb6Hor6-dhuSN5ZY`R0eUfjgtuDMEAca>bAWMz6{`_lBK$xB^c=;U;1-G0b7 zKTvgYWGvkez$K5Wr#u!g;Q>C88f zn04o7wB;%*>fAJwJZCTBA7!+5o}8~GZ;~hH^?@hnPVC9HS@HBKB_s|I**RIK9$6Df z{}xa0V$rWZS3|>j5vus2mafrM>WZWqs`}bgaxMQzr#D!9stQQ!f(*5uR*g5~rD~X{ zRhS}eU}g4E%I8sZQLRaNNpz0Zi*8=ST{?QzK-93@b-v;IDt2H|>QyXBR;tiWUg^&? zYE*Ix*HbnPJG7@2;++mjK+h7O(f1oK7-y(;hI z&3y}yI=dr$d*2EBsR5;CLVc5m2( zLiaoKANKA%A%_oVpST@-z(%nsyM@e-dDsg++%mA>&352@#~uF!yl0em2Ji3FL=N63 z^2@n0&-=x&yO(Tpum%zw8l7N)5+3PR!VvuQyjk{!BR{d9t%m!_URHq(8_kB(swPuU>e z)*z-4SG4=q+6*zF(gPAr@4=ZX$E1@3HjPdtEBUdcw%^u7zYk-PHBD=XJ1xZua8a`|e~&qOpBes8cazy~-c`qL zH)WfyS9Tj~^}t1%RWP^g1&~3(5rAf&w`VuMTs$E3VW?Wd{iAp&kX1h>kc^FMGXt@& z>HR~x&ATu2?Q3Q@TgF~LWtFzA&VBdgn3>e~rHy1Vp4yv`i?u{w$Q(R@)?~PV(u)8V zRU*Rf{CJ>iFlQX;(+l68=Fpgn?|&eIS<|9;NBCewV)uv*2mAbyJh($Xj<$>u>!F4n z?enSy^cn{CoHI6Q_(j|Dz`pZt8~=Ft1KjJE0tVM`D2=)UkwGu-!a}6}?)q`?h+c69 z{rE7su{QD%FtP7GJZ@GK2>#~YoKfQvl923P!h&fT?FIOU#gS7X^rAiFqEX02#m#k* zRhI5T@N)7+C>MRe;ugq7acNAXrk5aLAc#{WyUCCszdrICIjH48?L>|h(UwDuEo-K! zPuqTH`!FXMB!7-jki0Ii%(;lNZ7rmmGW(si$+`OaS09wWZo8+DFUB||nQiND4YEF( zDO8?BvGQZdM}e>D)|~}e%!hQv39rG!EFpgw1xs-F5W)xJ6yS}DMd?7|5l`7bV%*~G zC3z>)`~IDZEil*9{FFIY?U2n43r&HhyU@PUqH#AtCvCnw<;U6HIej#y6fHM~)jq@i zN+3eQD9h?n!Obg3>T|p9#FM|Yn`sBHT9_yEyOZJIugUl=QX z3`lt*E|KXU2`>j(psaTc8hbR~q=AXfx>~29i!f#M&dJa>vLQSyw>h%2>R?g^&nB;U zSl8)iMISi9UAL5`RzlKOdeGkJy-Rcgo43pxMN(W?sM$y)Pp_pdCmn zpXe!A)FFLS#{$9N!069)Rh0T2=6ZK6bImci2kLtP86&Tysr7i~`g2_zoww3^s*Gsy zWE?}XK!(3$yqlpe>@c5k-J9hjssVx#t@obdl;FzPLgT^joTFqFr;Oh%y%?NCpxz^8 zdG#LF_ui}Yq2=Ib-ikaw#^sYRdXoH+Z+o7cQkN-y5iMg)iAV_epGY4i`Y|2)ti4fu zc|5Xm+p66Bw7Xz1x(56ZIGM?rQz>V97tu&dD+~3&j>SdEBV5XpB@Mq9-pURmG31kI z3weyT8FvZxful!nIotK*OH83{c&@)fpm+zfuR?$@@rFLt*q~Vuq^5moS-4|aiiRy! zK7xkUxUQDhx#jS#L7a89C9o0LR`k%%f1)FXvrmcfltnHx{ueWwKE<8kJaQy2?O-E1 z7tpa0D!z{u2YzZVeW~R@(m}P{JxH+iUX7Y~8mAZ0Mbtp_pl%ZK~^9a+g@Yr@M z{rX}21)SswsZYJvIl+OAjI&{slp(3lL==)UrjK;wK-n`KInX^r)M58&#DWL0-)ARt zV7zxRdK0ia`=^xJ`rH@sIne-*ruT~*KkGVutOx+R{j}6G+WuL|cFTgA%d#W;Af#IP zFYe*$-obgvyAA-b&p+>G`}|R2T)0g><|cIM7qT2*rM>gI(_U`xf)Da%UAMgYBrR}zJiNR(>`M>Dnc zZOj5*+(DfyDZ#8}R>b)&=jISgZL+4K{ZM(ufp8)-VKI8IQ%00{Q)$-`e%D*{l&;qy7DSN-mv;V<2j1t_|vH5^9qERCaj$kJ(74R|)vnmoY48}hy& z0==G<-XVgI|NMXS8L%v6Lyoi#Sukyt_Zs>>QRK|Q%RbZb6C=;!3hGaA_3@RhNe`Qa z%-`pd1He~~QHV;MGY7Obt?pAje_OYv$IF`*9PQnXOQ=d+`bKr;uWot!=n+y`7*y2`cissUUs{B#F@+bmy%NX|<6MY_ z5|PJYU6Pf~>c=Cm@nagt zoHxDlpJ_!-=l_~g&M^Gpkam8zeme+)>*5dXci#8TJ#)YQ8votORzm*eRGbL+y(%Qc z*OVwj6@ZlXHG4fvDSEE+<%cBaO|geL16GfF=Kbmuu`grKIeP)lo06~G7!ShyIni%x zHRLFf8A-qfZq$pK7O*v+W$!$L3j4+Qkj3@=a{DVDS<4%Z|L@*JEpX}}WKZPH5v8?c zX|7&Ubefr*A_K(J2gOPKQG=+c*f~U^GDm^>l0?64iOi_I)$&1k?YXV#?d)1*eV`ko zGXn=(!fBHF#X#bj1L)Fk`{(hlBRB?OYQrCnjG2>&4D~|2^W(C1UvT4mkQ)WYX=9A6 zSMeo9qyfWVSCWcGhKh13E>H*6VC9IS{L?ty+0xb6Cqe}BBEy4J(-vYSYdZR35< zd$O{_co(_xBGjE&VFTXJ_^{yWkGCX$ysO-JPq*w`c*r z<<{#@*Z;p*uTx#C;rt8M>&Zhq%>T>RtHiY^IM#MpuMSuR3Sc5wfK^|(UU#GD2OByc z?>_&^c*naIJ0Gv%7bo9;8NWXJY2kPa@ax<|I>5I*enp$+K}-Ys?e;~q>3R`ZhjSlf zm44Ab&xhwFUmwUG35bOVny7{Res*G$q>msM?04CAT}9sh$I-`p`c`El59k{kucqXo z(@rlcT2e)ff)p*Y@0wb>=zWfox$B`&CLv|I+t|-(V^?uf&C$2!K!dW zHOZD}o&93bJPfIa)^y}q2n_T&USDbo#_Sg)IglZl`QE3ofe>oYj6?)6+=Ls z=ho4A)}!DCK8qoZ16RuV=S>hrF*giMv9AE8;eOZZwl-1-reD~4b`GZlbNHHD@AcQ@ zuXhM9!F;>;)4`tPvCT-z;koWVY)>+c!T9?o(1S^H=Ig<(uZ^s3rw4mf;tb~BW(cj@ zxmu?e95jWN96bL$dyJxM=}BQt3AKlt-sWlti0l1Ob0(i6* z-2FXdsq;#_-B4t38gIF#Cq@r)lbFSW zS!`Ma5M*h~JL$w;SuCYCj!q9;g|x)C6`h!58YuUD*iS z3dTL2wFt*;@It;8Y$9#=ow!9|EyCl_Zi2c$|9rTY(oP6>FM#`KkOR0ct%{z(j5I#A+HJE-9sc)zc6zyv3 zv78t**!n>X()&)E^v?&m_Pi_Gw>R%}aL|cWm4Z+g?VP+5Lhk&Mw;r+dB`9M3BkEpS zlk&;4^Vg%1embtltL#R9AG~FcRlBImuNN-LJ9wY^i<01RyNhyw53l@nDRKR_UzcCc zGsT6!G_{$D(Yn;+67TC~NfK?jn*D56TrE7H212yqZfNYMj=+}${m2LES3Sf<74W{; zbH+a-2*Omrbp!dszkhlhln?Kp#Do)>;+M>*$aqH;$l#{}xSZZiEuZPpOMM5CPyGJP zzc6{c?~9*|<3EprCnn?RMw(?<-;#E@Ot(6v-cfjZgKo_S)2R3YXKIQ{>5Ry>00Wi< z4P306-Ws2n+94WDi$aOF?d`Yc4?5YsCcUF!?rIG_+>}S5G>rHAES{OxH8EskeLvQJ z8xPta*f(eh7tMkWtLwVdQ4WJw3RCk1dBZpy+9I_>&Z#Jgw)|Y=Bt6-%xiR!Jrc=cfh&F%7 z6Sf)5Km_?92y*tjp*}P>^&CCwxgC1c2qtyJ|C>MQ%2q4Y9?+nOPEbJq$-D03{qa0@ z)?HNH1#~ojzm<0A5Bfjp{PU-san^YO{Xg$}Nil$s{<95swQaB)-qk{tUAjBU)B*5; zJ^(u6!~NFg4sf3*!sLU!IyJCDf9Az*J=+y24Uf&!&%ZJ~}rcTz2BXn!*IRW zCSS5%(I!Rh*7?*wM`y>l-<=`q_W1M^#?f(K-1edIh3)g{XWkFtd<2i3^=Mn81DrQq z*1o@g0?wNe2?Xc82%0A(`wIKwO8RRD=eY&@qSse|^G>Ey$-((=+)4rWyjd6UU&HHm z{I{sXytP|KuZOEVH1_+fena4#ja(sntpqYL@`_sT|tcYFT3 z?*pCk-}F6!71_cfx$N7A^+8#9Q+rbXn2&* ze+e<-IQh4Y|HiTT9^OlRPwIY6Jn|1k4QQlVQOJMeoS~N+|NTcH{~cmiyfUCD_2v=8 zLddg)nzD9q{MX(0HqD3s&JXyn7;|~NX^9+Dqb=u&1!EXd6$~2xRb^Ettp_dTa3EyA zqhY^K*MC#;7yS3>JpQ}+l1}+=^~0eE8B3M5=fF3zskg_0qfNg;VhZG&Ku?sdx0lS) z=cflT1$Q63FHd;2OKmp2gw!tsmK(KP;LU!IS*CpXBNQnPD8TEoFQC`uOsyjw`QcjO z_c<5-;C#vZAUBc!jMMH>NVYFu6XN%K@BUNxeHU2~=(jz7SKr?$e$R!CYvmA19e!V$ zkKgOtI>GPvWR-w?c`QLGtDOcaLnR{Ij=~JQxS7)(HU%cPRb$s9413J*La6}=#qnpM zo8?3Ysa!d3+Z}$#48Lc{r{R9}J!#lO@yOHL-YdZGL@moG>lqHa#c17f@};b4kn4OC zhBsk->U|v@`lbwgOZc*6--c(fzm%AXg;BIcm&$El_xtg~93*!(9BEMihECAhNtFjd z_d3Xx`(NBSUK^#gqf9JS+8(dv1-pH`UWy15;`8nN5T6V1`EW)bOPkGB^MO3)B*dFw zMr}9y^Qy+cNORLNXbYGD!+v`318{WbIop$e+`5P;ncZBp`G27BW}mh<4~ewJ(`YW` z*=?g8c*@?-Keq0Q_oupMVsj25c&z3m9)g-D^BhY%!;3LIXZtcE^p#%sNcvZscpcq0CM!uTN3=2OrR$b!6itRB)XPRO1b)zQ4j;ZG1x>UT&ehK{%D!H*|( zlSXn4FG4&B&i9-SS`+;?B{E|pi6Jl5AL8I+>;96_GiNn((2o@)0s9&MJW(5Im2eqo z46=(1Lixz_)!KdT!Y^*Oy9GtdZ&y(b`jH{)`0b3>v4D$c*GPYO{#jNq-hpNXG@~T@ ziafemoopk}Ve+z0(55)g&OwRP2b_aU0TipSgHT6#yp*nxJ4R>vmrHh*TIWGK*kg-3 z8Sfq24edl|%xp^xl{b3T5Jc_4Y*!1-==v8K3TbwFY-#j?so2-Q?U(GwYWnm=#_VtE z!1NQSx;0b5;nQz=jS*OyJ`INGYr3Yb0u%OzIKpXneaC`MK79eUCk@b)oP0h`+Bn}) zT}H9d2S)Xh?Ok6C;Gjd5@ukfbjl9=?a{3yq2k6y6ap7_u0?1g4uY&%WsDGw%y?nGiC5rZksFq?C!e~ zsTbTeerO~3z{ryH?ss7ii1|>Fh{4fD)2HidN%hQ>Wp#vEWMW;qVDumVIXC7wdg+j! z>5u6g)@i@OOi*{s)!ek`mNLB?w~nl1zilb>aqbR$LH!Ur$3~vzG_U)b7wz0_m&;|| z79eV;Z@aFR5zIM$THQ=yCG-Ty1vvTG<=(hyKl{(#ZVuQI-kd&FQ3P4J->7wfqdlXi5vfG z4Q_vKfBYJ>UBGGvTp#D|i*w^&Tt6Tfe|TSROHk_lSRMHH#ih9gaL~8QL$8z)lh((( zYAe>4)C?V1QNNqBd&)j<$ABtOsG%2IH_u4a*@wl`hEgHD_)2(%bI8AmS9c@@HE?zN zc=a{S>WlHJv-KEbEq@U{84?8;_0O-z`*_TK@p_DxooeBFM4K*!C;Dq5{Zv4oHN$x7 zBW)h3!H$6!EUiDh-F{gb%Ht*8+3Ft1h4_{kNCWjHOLiz1t+k7OerAguAN!}<-{mW| z|G7I~2KV*O2I+;)=@+U{kua{^jc$o&U=I}1uJ`k37fuV%E_9>|ecBb0t~{!>p{6^| zDiNBKbpslrAq(oiWdBcdQ2PRWyA5~Ee*xcK`;n@3f^Tj)w7iafiF`5I9Xi|o3+jgj z@>1vYtHFBt!u_%uTgrc7{Cj=r_zlKJz?ed9`tXhuNDNsL(674427U=&H~92x?o>Hp z9c~-F6Z(a*U|)^gXB{ITU;QiU%lxhKq+uES6Z~l@6$>n+VY3aSUt#?j#Fx;U+jjYv z;P=}3s`k~_A8|Fb7s}E9FT>vk>*b5rf9HQ`{Cj=r_`lNnN1G0Ys!4y~);~*FaEP2? zpYhfw14PT{zv5jt;l2p1joXzz9_PEs zawa@*UdSy^r*<3T&(iw%_QfpEh?0l=<+;VRiLs;2OUpB&B;vg{CV+;<10WhH=RFg= z<&~oF4w|925A)Vvv=%7|3kD{0Ow1#}o6hW>Tc_lWYrV$h&?fbk;fq^d8_*n7Oa218 z0p0pCT~`GIGO#hAZW_=x+rQnavc1B$w!m%zAMqt;g^*o8S}qG~BD8cDU#!(?M(@4E z2bZVHw|B%|$Tpx%)}O;<9~bG7y|ltqJ&LM`u3SpOzPq!WH&I(Mp1%)gz0?(Yx{(i! z_F;@|!`?(QQSA%Duixiua4BNuInVpr8KAki{(w*(49|n!)E`Jca|n84Uq5qF$z#Dj zq*+|A*G^7-OC8a_-FJFh5_o&y$ZxKjAF+H2U`O`!bj1R+!Q?u_hoWQ{cjmg_P|aZo z)(~Fp?X$z7K0qt_sL)#*`SM-9c(?I#!wB|r%dM0Tl&^{O?g73Y$3z~l?;o6N(Jwsi z>lX;N{hP@mi(F)(Xfh)ws*QB`K_7-6a)C{~>gI8SsQ_(a4q;zp1m*s)4B8B9jb84; zOH2W(hn`#J@^|_0;QI@FXIZieyP(xDSM80b@ntz*@~yj;P{bd1X3ztCv@X1R{h9$B zPF9CE^U}dVVN(<7W1YTDaCq8z8UTj{^#|v{A<(k`hhLoO;6S{U!A|K$y<Wy(_GF;0H zdips)mKokgmu<()X0KRW_F+3kn{hbeMn+|Jb>m4yYuNYli1eCq2(1}OSzLJX1#LPMIkbiJkmxf@qnzK=e`SwWHA&@bP`eG`_|? zt40zK<1NoJl3$`4&VTu-US8?H%)VvV*Jx|)0O=<6gLbv%X;RGhMBm99%CI_&e$h$pgBJ*`~x{fcFlDyr1ISGV-nK=C}H3T*%)Peop>C^%bLbOjj zqxK}kjnMFr=*`HT-gwA4Ks-x+lEd(RI6m-x=+s`lii~7AxeW%4+;%90#Tn{hI8;;8 zC18(e18togH-9dV|K#lc)=%uvo)a`onEES1j|m!vtTKxCE=755w2Pz^%*u;m62NRh zA!Z0HwlQ1pR4X*D%$LbN=UqsOv%~qA2hhpnZ)gY4*D0TaXAjp{2+w~!9l-PBWBzS; zuK#X_`Ttw+ytQL{dGI_FVW%BD4`mMd@O;d!N^{^BoCIo;^?JjTvh9&s2rG2L$?8PX&;@$vzzG2s9Fn2=q1K*Ngbt2_8$NRZ|X+ z6WBzX`D%fWOXGL);k~I-{Dq18E{Nv1GneVyZPWykgm-tq+!zE*D-**(%w=TG6c zA?iGc;?f8EM?&Kgv(l2+io8PCiAr2XVS{oU$4?i+?s9n<%~o1ZYtS8W>ck-rqp&xL z&uzamd9&kb&*V)xE_N4>oGd{T!L>Nr{HWMwX3&Fx7aGyW29`Tw?DAx=Cf)2y`y<9b zo(R6b%XLz2RqA}=;ud8&i!uP>a!w+19E-9-2I|g^XodL5o1Qn}E3Heuiy*>Jv)F(J zzlBjS`0q1>>`}qFioRI46@_%i?{7xO{tDJjcU{dZXxxqv!C~d6uD8+QoIgBD%NQOi zk1=AT)1FU_`cu+-!V0-F;Ew<&Z8sdwpqGWs+#Qzi>s_LH*N1O2gDz58giC8UAg}~A zoJyIPh3U!+x?zRC6iU}y&E&mr^EEpmgom9&jj+B*QQ&o0*n{71AN9MpY86|pMkbuE zKVZ}`iV$%iC#bQ|aGm#tYxQ$n=efr<7#&TYv@cGc(78b}3SM`$>HQI_I7B4((5C&G zi$90)g_uyS?hnO?WNPz`e1pixPBnqc$rpA2d??3%*mEPyP`us#JqgjRbNke(9hwWy zlT7t%n(8BnLl8~08e&37ZGAK|$#sPN>4o&=eK5?X&It+IEzS6~@P(ufUOdhV1s0d! zgAkFf^v16)lzieWh@lOIgZ$P8+s zfa~@IziK$JW5O5yzy|O_15*r4#eGxK#DOarruP8%>DHhoz*z2N)?OFCelWmOHNdr~ zKl4lOsR6#sOOsVEp9~_|XQOO1Cfc?$t>q-3dnla8k)3}H+{4bx7`(5!y^GI}iFBtU zft>{;+k$#rs25jA1mzG=TmdkObTTMy+Ekp}m%4wYZquf2$=*$ycHrk6e#SH1>bD_) zM{8DzjMk>!W<)a>kwCo8+lSHQF{PcC`Mb(1wuw6NNr;@&bJ6^}DAXYX0KE^9#$AXz6ou9-xVVk1QHEKROKhM@*0{blEuS=0Jv#frcNDpoSgm+pJ zoik$hVUdRCn99SfiqQ#+<9F=0n6Z}E%n3?O?FFClH~g=(f(KE=IvqN*Y}!4LnZbgI zN@%Ulph#}5whfWA+Q=|OcYhRg<-N!ITsNnf@+H^Jcht=yim03HP@^rXKOwAtXF>fG zns^lrhB;F8n}hnYi-&&%4E}&%Jb8Y!KR>AhyyxZUM5W28nrM!c=Esv_j2m)te~6D} zPr;~HfD%qV1Rr($3~@3zewLH97PK@>4A9bBG`Ikz8$CU>l^kFNQ*EI3Zzw~AK~q-=f2-+X_i z&hX*N6Fb1^E8~OmtGxu#=)(;Bu$#m}^Odw^HRqowZN z?*|D+Cz~qJj_J4XqI$!q?nt>OmqnYgzMy25s(+!51K$jaXv>hBf)|cSgYl230POXl zw}hZ4L)%@P887blVYO-LRtkEDhaK~pm$&HUH+U(|I(z$p|rr!yG>j~aj;ZkC6qq5H}|Ht?RRt$VUs(m z$)B*_IDeS`YaV|d`HO#@Ki|qI^7!+;8dRp+a~s?9XQ7MZ&od7%AfrEQ)vTr7IKw^^ z9vV*#zmDWvZ4-dtIS+`E&w5Am`2^kY*cbd!$iHuOj)x&* ze2cQ)*%T4It?871|Ar#D#XXv`0l&-)`gsVR0}Hx&$T^*c-853pEB3p|{OuS~D4k1yiiy8w}Yfqxg<_(N^QhmQt` z*H)>C6(Zi-;nyemnnS#f+`TT3yLXTqSMoKdZ)?Zj#{kv#{QXBc{vLOWo5$aeVJODm zqgTv@wsqj~{&_m&uU~^7Pv-s-K@6>BfGgtkn+^>){WbPEpVL1|FuNSWJw-|Xd=j>M zH+tB%y8?cdYP_1G4!rb^_7xo^`o(*i_xHU9c(+`qrzPp)W%60u)2IIr`-;B5M z3tBR|AH?51(|2DAgV*}=8LL-~2AkHp(}7j*Z1 zw*37Q__fH#!cWOMw>I*UrDToy{#q^(f$!52ZN44&b>i2ebOZ=7B-OA>mfBQtg?BDi z9YUccY=+u2XJ1YXeF<-Sy2g>l0a4Zg5z1$vl_e^g8K58T=h`Ym&1nI;wC%(X#J|oa9X@SSk zvf+UnU-XIy?Gb>wihRJuO^L|M7Jxc{Q{XqH8#+rtJ7i0=rJNesn++!b&57jfa(ale zzf%YRmiI-h6b90dcil*cb7uG=+fWL(`0W}|>vi6%|3fL^pN-!;+m-tuEcZ>n+@Dph ze^5?hx9|2;#yg|CQ9bx>Pg~eX*{x;6 znMK4$csts%iyBF70Wq^pJZj&u=c3IoGpP_`q|7!VLZ0F=nPRf@k~Mz#U5{`mNM#MK zbr6$k=aHxUlSl_sz?}Z~)<(8$dzX1t`-rF*O?A#0FCbjK2&Hv~qH`}+Zel`kJTJ;s zZeDsyq*5uzhAI)VxHfBP8<|m2qAn(W@CVW6Rt+spf@0mzvL)9jvUX|qMx>8?dPSrX z^L1~sWe?V(Hua=YND#g@ z^;X;cKD=Y;iTJNoL9gCP-de|&y@d!EU=8%@T8$$Cv#W8iP2Q`We0ME7mx2v9w*5-! z_o%H&8$E^slYAJM$dI>6v^Xvw+tRF38s{lH1y{~fzOs|tF5>{A=@u^gK*~N5IaxPM z<(c(MR!jt(Q-J0)7ZC1_={S0KgwZ=Sy$-lx>p>RA#F%zpSP?@ zT%y(9jt+|zcZ@d2LausUmx#P->5r=5OJl(!Hs9^$v+YyB8`U`QB|axfkPxh%q{TYL z+#vQn_D4DSjC{yQ(U&Mw(d|sXCOYRlBJ%hDJ;|&{kd8bEy_g7{6SP)BNA!2_{!pf7 z+uH%Xj5hC2myWOOX_FD06R9V%vt7A7`X#n(^y_Fn`1H&8?IBiHC}4Cd=r=COd6vKa zdE;6C0yO6A9Gwcwb03jCq2v2M{f+m5zBcXr+VI%72?CmpJWqhAX9oS^esQ5@OP4C; zr%T!!?e~j{TQxLX;-tdXf8Ha<SEx=?XtH=y&A2rX|Sz?e^iF2Z&&b5 zo0eU4vC{mULC`Dmiz^mwjTz?1D9qtYzTf}sDyh9FjD=2Lkt5hPjRZDsYyYA{1V%YB za?@IGtR-2lMjCI55l+i1rP~-m>?Ols5Yea!NHK@%hr+>y2@~;dd>+a>bW+*0RjwgM zf4jBrJ;9D~@7Q{oLAUYNdyse8zZoGfShukpyt6AhzJK{u-v7nDml{OC`92LX2=5%) z%7f=A_XhAh!9L`}b4>W{NDbSCvVU5}UxSq*kAV`i_vM_)wUi47KicZDObUa;*J*ska!n>r z+*>X1t)1?Tr+ZZhFdyU2*>>OT0A6GN?BF$wT6ys5_s0NU``d?ncaZW#nzu3<1VHSc=^_s_yZ#~QyTm@^gQh6__CcR7L8X3<4(0F5 zO~X2cOSK`AEv`0YEVVOu-qoh^e!HD{0lmh68v$UgKIL+rV1~7iCTh>mla_xzpaJn5(yx!`Y^2%l^E8Kg84Qo@0KB%$IP%>6j)v=L;0wpf+ZU!=;fyba$n z;rw2s^AgVgic^c49R78x-O0UTu%Bzv=dmg%1sAhInb_mTaq6HHZ&*t!e)b*AnV5ucCe|c?c zOI_-d?8%G*`%L`Pg~UhKVBSVTo8%FQFm9N!wiS7|z=*Wo-Jo}fE>&FOP|EwC`5?AXl8+SJ{cg7Fk0`?n zUfa9-Y0x{}-mUXqSS9>?&wEsJCs}8nxSNmvGr~bsP%(Rf$v}+^)2xeI59!! zFva_f%-0s2<82lcm#ZB?1uZR7F5~D99(YH-%-Z5xI;zCJDDE?P%PV=c`zWpjmKfA^ z!_7-MXpQQt-r|Crt$CGK^J>Hgp|D9AU(Km<(A z?%<_%H_~_D6q3LxWWTz|TK>u(^zYuEj?f}gMgT0g(CSnTT!|h6M`#}%d9Bmf2u+Yg z%9tM=8i89w0WU@7dEumQ>~gJet2ZSK0^~$uwl;IaY&Tzr+Ew1wpf#dyA>Wos^*a0F$fr?mDaWp0~@JYVj@aW0nnFmDW8EnP&qm-B0#) zz?2L0Sgu>Wan#QK8A8RJZM*&IcLoh_7$5Q$q2C?BBJ8g*K!+UYMVFB%mql+78C|lxvf1tc!`j}s_@-$Q?Qln^NdI_l5OVJ>` zl~046lhy5E zJlsZk*tP%>h^Ec(m9gkFgA-q|+L3c z?^FwUFzV^Id=2kIIQ24kXk34$nk`gzDg^?0YCvlu^-4GnhM+E_25$0usczTHJ;+uX ze?Pr1tXdNGH8Sk0*!qHw85UmpYgTO$YZ_n=?d&6+8&QI9j4SCS_Z#lM>Bw|ngzN!q3vP?^HeM|4 z5=Me?Nx3{mTW$u6bLShEv~n|YIOuCPqiv76al3X)Twd*l-@03eC!;Ojq+r{!0H2hd z+TBCFmL!qzv&onId#I&tPpTbjGXMT{hUI#b_S}zY>`cKG*O+^@grOADM$kU3Iep{* zzxRFf5fRuNKh_^n%KxJKzFa=xoSFG}ZOiG0`CGDBvktaoC>NNXJKBs*ny*()@Z=5K zB@nGF!}WY*S#L1MT!b}IjeS(+!5;oWVxjj&cZ!?4*2{TFiax*(YpCq>wdo&l#C#{( z?D3;6GjLIDrpJAVR|yp5sgL~eC8iIQ_@deqLD^ z6JluvKCI7@S$2gaR6N~Ha3i^_vY;1SGta*jEKc)Ogq?RQz!#*cX z+bkN4N%`K$z~HmR6%K(nQwoLo6cpy?{GlijS!?=iZv_Bk{sUff`CGz!(IzTOf1RAE zjP}i%q->RJ54mb0J^_MK$7@gc87TkfF(k`f-w zs12W0p4;E+dyK%U7JdC7gQRci@D2Sy#w{6>iEROQG+PsFA;_0ED!uSEFRd$;uX}+u` zwJy6BmK^X8M?a5?rTdEZj$(zXQ%`G=mbpR!zS$7DKiaG1wFbPW7o*1VNK^_OYg5lj zb5TM%wnT~(*;~xdt;grlmfPW~G+3LO?_X)S_5@cMjsV-_b2^ATB});OG}@xev9`y2 zysS-6DoLMKh63j*C2+VRp@X&Z6DKKU**vidl_sU!uH1B99IU}q`L}I=Nyo=Z)30P} zsO08deR54|sZw}suoND69H&-Dp@P^ys7i*nz?%eoJqK2_ET4fcYTa_abh{b{Su#j2 z_lCc|UMUy3E5$<@1=1l+TW|$Aqhc(jc-izuULZXgxb{~xy~L!KWX%^ur8)_N%>D~V z;aF4T{oxU{S2~dF5q(MY_?@jZj+Du(nW(=QKgG84ZK>BpN#gx+pe2bU-_a0IzE=em zn5#E%q0ZjCMIW<9g--6aF989(y?O5r)3WN9Mq>w#iilr_?~IcMxAa%Hfib!LX7i$< z;)=q^Z5`%7F1-bu{WS^iVFL;Ryj8TfCEm04wp3~kM$H!lU&g+Sr!#EqD|q7Y$Sj`w zC_3TEkD}wVOa^lm{^dPo0n&s;ykEr|>UhU3ut`!Rm}HM(xaU)HzIQm^3McxvIX2PJ zJE1Eca&blfXiFc^pq)0T>8LKzS){kkSG0|LRI0HPd`lClKDanSxub=is9jkV&p7S7 zew45|?ZP`tz$C3ff7WDz$B^}4OS=x_J9O&>J($X%G5F!~ZD2(+Xm227od4X3z8BBecU4~uWs71jg5fb@9pa7 z_4BEJ@Dcdxlj)svG9C8^S%2CpZucGo6pUmMeB^HoI{izeNq60LrBkf6)$hBlHWfK; zP4GKEx!X$l#^ZOejE}CF)GLapk{NX2U#+pXc9db@AJmN}Pm!FM3R zT!t576$ttB`21B}YoqtJ^1r8$lgDO;bxlOxKv5cxpwq;L`&DmE!{%*GTe<)@K%+UL zblP!p^pLL6pKNBSqAlXfdU+h10tKfG96^gimPK!Ajn*tM^$b}(_g$uUSH>zvvz!&t zoAqtq`S4j&^l!VewqlHTOa10;YUw~4I??tu3O2nMRZ^W=45~e0$jHW=@Hqc3GsVFEn%-Kq%^ZM+t)@JG~vDU@_Np3TSN)YAiVz^ z#-SFb`Ym`fV8P9|K~SmTC#ucsw}lz`0=e;)sN;$WB@rhMZw9yCbzb4az+v=ZS#s~griybWffm|4>4KO%`N=p zJJLmG7F9()im{bIGH;gOmsSfswLXesosZ)^=T`3re6|T-B;W>7=5A9jp`YxF`TWUM z?Tbar8n2RSZlyGjlAzT+{Z@N+XjS@VM&DPhHqa{Y%(p$091!R`obr83>S@O>;sFKA*XR#=2InnuTd|3r z@j|&X=--qrQ_?#$eHMv9boOp~Sy5%nVnbS^SI^M4hDueDmHZaNq#upY?*6;?KH=!mx&U`Bc-Y&&WcLR1wO$=MYPz^$??}TG`a_BNW&M5U z3;KJgmJag^Ct(_h^5{JtRSX542^V} z$DD4;_GG$wYP0MgiOlTFlZ78@j5@^}TMd(?mBrE{%P?Om#-bwH{9EHj3|fXSpH`<{ z0|gUQ^6mCZ{U>uqfJS3Q&Q%e!+le&BePF1oGPO zRtzlkb55NB=nCQoRCVm{q4FO)q|hC#{Ql+Wiw;{bb>UjniDsoJ#+(gY6l3$|>zC)t z=VJf9#j#CX5|FqopccHirsT158kw9L?6;1lyrv}k4A?h$w)YzPudg`%Mm66q?ppb& z`QvAwwHyECRZeCqa1P61B>q5zpLC9KK8X}E!eDa9$bxqdZ*jh8Jy-3WKfd*vMb6KYaLHdEdiR{%~fli*Arw_ zeB+v-(+Q)KqD&#&{LEptHU;Y*FBq3+`=y-fB0iY^$5OaaDQ9Q87%LPTOT(0)Z?}KQ zI%DMaz05YU zcu8UWzvH^vHq(8KLNVn0Tl_c->%X4A-bRPMd_Vo%)~#JW+m35?eaE)LU8Kdb@N9x} zC-Er8cdR@2OZUkX;0txk-zVZnqC-SeciMRGD2zqi#trlrh2Q^(5R$!58$0-(kD_6K zf7?W)6o$Tbpdq*H**Oge)9-*#tySoFvXe+0WRffvu-)kL& zEgP#-FIW)yM&7U|-G&G(vbrYE9kz2r)NMoL>~-Fcr5NzHVf|V8^UGzF?6{tbK(ZX| zT9v;CZSw{8j=7F3l=)0yKl^>!&pND4vxXbWcfo%6PFbo~g=10ZWx5$=2P`V!Pw6_v zun<*I2&H~o*&NTv?{<4}VoD0eZgee{?p`rBpl!ydN`(o*RyR&%cbe$DlHMp>qr_mu zQR69 zfmdD=d@<;A+EwkKmqU>P`LvLp%o6aVA`3Buc76QF4;UD2eu<$BD`}V-cs*MX^;S#1 z5eKSIS}{JO4oZw2;SqRZ+3;{Deremnn1{M~Apu9RN? z>HDuoe`+V_3-m`S=>MAguUPs!+z-Hdt}GUF;%4D%%+Xg^bHjw>Hejtp>?s_Oi(yoi zZa?6NOB_~-pzb!O4dN?d6z{K})kZ$sw%R{u`))i+IVTY_E?N3s{m2x*NX`YWI9FfW zwMdqBE)IGEM%8$s?lZbtix=v`$vHHd{E@!U?n}=!MtO?6%^1%Q+1;bT?!LJ;bMQ)9 zj1xgNwah{o;BZt0$=;>fwfh;R5iQT6VeXx3BWumy$RAvC_w-S^zJcmhvd+a=8hU48 z0csIh&qIuVn6WE}Q3BbsE`28bER6Tt9M7C!Q7ii7M~}LUd$79HnW(TxpAtchPy-k2 zPkp!`S_BD&bDZb}pNgjwOa?h8O@UatAEY(fe5pE1t;GiP9FwLg7c)o3soZB!*1{bL zqNj`KrgzY_Mzj3zVrle0Tye-?BN+PSx|D#g=Bp1xUoR|4Cy=nhd#k91Vadu&zri`X zcF3w|%Or;C#7;0Vmd+wrA{8hWQv@X;AgLvxYy3`Ub0xz81 zwFrCJz480v!fJX0zAPiS{3Gg1BI20~4)d$={U2r|++9`jd^J>dY-VqCv#V-}rbH{I z{;o@Xh`dNX2Xl{^egMr)*4@{wb&*AO_tnTK7*m2VEl-ZBPWOXbp|aY5CkM7dsjb;P z7=Io96?I$)aa1x;jRz#M!NqRvXFZ`#7cRFAex!&5vs5N zRD=1HT}k7NuO|IHf{>kMeqIaZ$2G4uU57;+ApRj8wB4%#)Nu18+u!8JJhHfM&MyrFDz zx-jce!-b|U8e8OmDJzP^5N^*-7l>0&A!YGv7*4DORdd+2A>z!P;ez(d2Fw)p^^ z!L$Du{03F5(kh?>)%f{myp$G$+iog6FE}IB=$!Mh58DC(xt!|?vix1noT{R87IS4- zjd$6k;>*x-D9BJFKnw2K-{4{-p7tHySMr1FriI*dwouufdjkG1$*tge-O)q;e!WFi z(-Yk`n4w02c?r&FPsp%1GpK>~YBdn3o%Nrice)qj{`PoqxYvz!k&n!QjQxH*>y7hjQvqHB|)!L<=;F?nV7Lm4brpV~fZW?b5)UNmn0#yfj6T^G+ z=YW#S`@G!XHNl+z$`JNq44vD(7((w6koQc@=N!hbzz|*WKs>QOjK5A(T#?Y0D!`dF=5zAhYX7$d4G7{ zmsYJ$>krI8`*AUjD4^%W;7nJmBymsHAJtCYEwf3Pu6H%pXR;=ps5x+wV6wD_SdafB z2`2S-N+{Jkkv;*{i(x>Ak?E8!-T>Tl+l~w9f)r5Nz1IOBpZqpoVX*Rt{!um}Jlx{# zsg5(l_XC2?Lhxl2+~Iy?k~4sIN7LIt4($wHvJ*&S@Dy$CmEYy1bSco3csG0^YQ<98 zJX=}?xrXb4`Os&xd^IlL-gOq ze8Y=ijlpGG=Hz)mE6H(Ock#*ZxkQc0Q^KYfd7U)fM~=_0LOpW$#r3{YG{Uoc7~i@c zY%%;dI^7m+83DP1PCQo3z`c1udTCK9kJ(#j#`wqa0spI$-*Y0pv$bn2JEKDk8T9*Rhwr`wE0M$g=mVbr$c<^;C<5wIozAqq_)<{W*(vt z$WgxjVsCVLfp7m`@X!QR@Nk7WVz9q$Rj#vpNDr8Ok>GAf>$?ig3tb`;MHx2 zG1*@hyxPW@JNpw}<-xPY(y5A_$J6J6(%_WXxlBU1WQi??G9G;0PlUQj-5Q^PK?Jku z8{%(hkFtPTzCFqrcaXpI1DNvU*`YnkBJ07oM|nU$*o)(3j}lA0!Odu;&?K&1$PHes zVle&3+Ir76`@Bq#wO1OWA{VEeSz%W9vj(z1sZO;C&j&~6V9Wqs#-LFmv-`FOSZlsIlQD5I!@?NcLGgal^xv7Y5wUmm;CqxQYC!gRgNBtS@qk1YHp>WY-J|?1e1yM+ z53%06(WMKN27M?qsGuS;QgrH?{PoBw4nAUo+3w120!BG_V-r9(FZp&uPh0btlx(m0 zF$6(q`(568kyMbIq@SgCpp|Q_wybU24bDc^xSE*;{>seJKyez&8qo9Oc(xV}poPbF zWd&R_-pFDj>3e{cj-+?v^paIP3e(4kFGyz|u(Tb6cHV?qxh5pwI5s9JYhpaL!1C!S zul1AlN96F={87+HnV|w+T;5*l8UUBeo{M^LFJgfh_sZAd5QG`T6n`aoovnvsV&}ZU zoTuCBHZmWC7vByl+PoiFia-`^-jj#W9;%oh*&X?(Iz3ex1|VlOsW-Sy(>dfQ)Sm%e z8wIOejWhyEQK~0}bJI5N9cr9S4c0$T4d&E~hX7Xp!YVh} zWp1+Nj9!z}ydv3)0dc!E4iNAmg~@2v3?6}57U4WxGvGCiek$+GYfuI%NDA!WMCx_9 zGWD%Vy&23)Ocb9i!4k7Z;jgA9kb0Nmz+N*Hx)^Qxjref;HFZbDdX9>p`kqCfI?tk$ zx**o%t>4QwCEq!M3qDP$t$921`JEW95+iTt`<@Vp?DgCKehM2hYx%GoJlb#Al-SFO z+pnL%=`}l$?`(~Rs2fB!%Wp^bh#(tu8@HtfZE%2{e?Bg>5Exa)ix5WAQ zY&vAxd2A@_kIcwTOfOfTajS$Ft6{Y>5%5Mg|k=^K~aafrWPon?7)g=-fwz4Lf*(&CfO6!X=}s&MoT71zQxgsT6q`y0sSLv zNOjYuOQW-7;uK3QNKE1=ZMd(!jQJ8*9O{TL_XDfEH&=WH53&p0bNIZJQEQMfhTp3? z9T6RBp&g7Vs!PZmgbWd@C?Bv~Emp-d7e7}?jY`!J^X;o0Fwo~yvZLbU*b8qFm-a!o?lJ~u4D1f&9UvgQRzPKRq7`Y?^Ab&;m| z5k^=(WPbg3Y%+e}@hVP0Yb9}sB4G=5Lz7UJ;YcH ze!;S5<%D9Rc4#(WLk`ih4C51GfpPqQ zT3>$@gK>1ao!$CBt*;+QOOAg1d;0qRemnn1^z}0vB>_QH0{ZnI@>luvQpQ2z9sPl1 z|M%$Y^X@-Wn^DVi&1W$0D+|HuAxp_I%^=VX7jsH(cu|t` z=ydUV-7idE7M(K{6;|@EDD3~fZB1@G-il5BxXA)2Qj{6~;agpbNXD}u%o;=LiiV9+ z3&c#?Q}^B?y0)=spg%)LMsyFU*?z$zJg#k*5MDLqy3(bNJRc?Mc`q+yRQbE1h8a3qsp({QNQT%=HBwCFPJzMd50C5hu3n_1Y5z*#PpwTWq)B8O62QI-& zE2PC4usk~0ae)8-Z%tutl?n~-4NG*6w4|cw7Sdl$a1p|78K8ZM$&6ADk`uA0*=trh_ zE4L4CTpSLsS|g=}ZzQFZvrIQ! zr|TqM>u>m4i=SSdCi63XfH#}fP+w*0px@9+naEeYm;PAT zp^GW>P06zp>7j;BT1ZrMD7L*CY!MwoWqO=KX+ZX9+wQ<2Sg#!vzObQK$5|Jj70=cp zaHpo<#_a9|`WT~Eetf^@gS9P>w(Ljgw#QHk2o5aG{o2-q$5I^0hF`bc;nSCN;3v0; z^+`VF$6>v%?XT`T>>%4{%iYYZjg@3?&F|l*PuaiNOU_>dS|933K^NB0($sy9jq<1S zq~(=QO?)So1|fZ_1n9DloqGMz0{;fnpCPD|WAL+{&#I0mp$~kEgieV!}(9 zr@K{~T}>EQnhoWJ=)9Q`@1>V?roXsi#{5;q7_#lO0U2e3*ApmmGv&VQyD;@?)8k$4 z>JqKN>CYqy)RmlEyK}1uAsGfpY|rinjGI<;kIwnnTlpxA4_YO%XCRw1uB+%}Y9;6W z8x}Tx#=tM8c!U5}`7z)%TLZHDP`oI5 zbpzx=OMU-CpX+aRYN@xJ$6$5h=^m?h#Zdv&Dy`mWsa8msG+$d@OEvR1>)}f5!2I>m zRqp|`&_(MTPj|bO7J{0@PoRoQe;n;u164<}C%WEzpy<}Tab5j7=M>c0ojOov>xF;mxL0-#YX3P*J<-VO6v8lpg-?B>#C z{;F=)Uuwzx)m@ra@4eHDJ3VEnq5fHUE&K_P6{&@}U{Yizd1r0nGE0ba7kRj!XPLm4 zlA>s{L><%y-Kll;qddna!D(@q^%9vR%7*mlzVV^)zB4(G$2pykj`J(7(|J5@r}Cx+ z#>nv3NBW4T`XkN}Vvrc93UZVw-b9!s0-f~bMjC}hiP!Zxf~BM{tiQ7wCPPHwQhcQ3PurSbKFezkO=)20=~WBJ${ zH5aXclo;AyzC8Ok*51jpByi*;^1K=EKIx~;dYG1qvORKqU7C;X;KnsGZ7xL+g65sY zf8?X#Xs_2A0EY-QZODHU5U35})m^}kIP||R_1tlp;w1?b zYMFxv&}3~Y>&D^7t&LuxAWM>k(b@bJY~wIw`@3mHu~y>I2U&?HZP|SOSzKX@rB{6a zrM~|m?|bz;qRJL!#~C+;PQ)3K31NTZb@~V?PG8~4UpBXlZt=$ITsRxtNia_E?PmUf zIJ>-0b34+58#e(sGJ_6uCH}-8uPrN@P}4O#nJ&riqTOce#4xYNLPpsPO0ch~=QF~C zPl&}aTb@E1&A!4vvGk9TGDainNr+QH_I&d|tI<|6fzwz1HNe ziT{thcY&^|y7vE*5HupVqXJD8E3L;G6p&a@QlREYq9>XN6;Kd-v{;IjDuo0PLBNwJ z+vBmc)zyPaSMNkpTyOW}U_5%YIwW>B~l_sesNIUTrcmPp*0d#I2{o zj2t?-Ot|?N++_VdcIigq7Q)(l_5QnTe1A7ZV+ao?aNp{a9mU1#n}&Sh)Vy7-_E+rb zRPTJM%9tAG$jUmpF4-Tqo{v=7Kp8|~Jmb(#b2VIYUbze;{nA}S`)K2LkO(VZb4jga zAFal0j2yPP&i@;9ChKIm4Wk9Er<&Lly73Ct<>XiYoYu!`1~Ti{q|h8<@axGotYsG z6JrRC4>2f<3Z$;bR8u8!vR^RiVc0XS54hm?TY_sbsLM>yPk{&P?G?H5mj=Jm<-BDA z0Cza8qGbJ_OLdw!>lv$xO~Hn@3kuStsv5FY_bohW(UVnqy+dC2SJilnR(Xrouui^M z?Ja5{)JB<>GVMBU@G32}vgv>q$D@IsZ-D`bK6T!%9 zDmKN&ug2EV`6K_C_#0kT%g$o0zqj@{>(;^E1i!~{?Q2X^x_B&oRP6Xiy79ZGTSedKulx-pvfyhM z#WhO#1>@VxWid&dZQH+k7T{ z3c<`pQH!Fl^6pr!vYMDG`x?JhO*_2i8^VvD=7GPl+JA|aCHk0{Uwm`V_*Rlyuvvl< zJjB}LFDlBc4_Ft5;_Nx1H0rmk4?t@n|3{P61w}RF0luqNf#h0L3Ij{BKxD20>^1Q+!fS_|>t0O1IltV^KRX+`O_53MJ;}x-ZP*`92Vq>8FJ+UrX`03YS zdX~D5ruQsm-**Fb5_OT7T1wtA@bTB!;x{pMyb`ScB^e}={mbmc9L77P#Nyb&Ti!gWi7)1I+e zx%_d&(Sr0+9h3OcC{DiKn1 z@(1gnB~_W3-fsO3PJ2s}e85{Q1kA!wYm1ocPQ-d+3oGT<4&+~#FcSNi8g`))< zHQ>9Goxj{num|bn*|C!RQZi|cACS=jhWXaJ-i;^xXjfqYzuo2ltT;&R<6waQ_RazH z!-gqXzH3C5p^`a!3ksSxHAE{~(tT`Q^A>h3_FsgGD^_Q@NawR|?fsbvejQu9kd7N> zh<`i>(HEDb*BL)xpxB|pUY3{4UpB$JHrVY=mj0!In@!|Tc%8E{(~Bo~FV^g>WdSIO z!e)#SLgTMl_8rndCSjkvX3}AL<2b;b6>Yh;Qa4hvJ-1`i<|RIJ93 zp6u9*+(j#jCo&c*IZ#4$%z;BbqETtfHa1op*e-W1J!gJb&s$iK{3;#-Me)rZ4~q-t z7k?&sF2Rf|Z~~mN8oq!Pe(%`J^5nbg@i${*wEI;S0$x|Zl2yRXyF7cI&Rmnol0w2{ z5%^|zcFg{}T}mn^ABni%o6evg$$KE}QZO9bosd zImhy{{Y2m`Wx3Hl?WZg(O`B%GK3juXD~zW$&yna$-H&O-w^ZN~>$-W53@`Ct#53k? z$$ZI?-KD!q6ttudi@#ea_m=pZ$OfH%j91Cx^i9%NQ>XZ`+94gV+Bt@2(I>Q62S-_J zjfaK38)YWFm{!Zz)p-2Pj#VwKhsFO+4z1#K%0Rw&D@r)&$2iFKF_5N34WNi^S`R$y zQ%E4mx}yPVbpmfAd^fz`ua70WzEoTIybd{Aol3J97`>?fAzVMTdcyuMcl}QyD#Qrn zT_m*U_di;am!fE7k^1j?Z$0mSPwGBC$jM*Ue>SJ=6}m5@4XazYWf(_TBk4NF zkIgS#_91*t*!D_X(dPqbYC9 zY-gIA0kgj;ekt#wtUqp;50lx&x@Bn(Z?7wSr|k_luAzO#1y;wX4@Cj83lJ55!2bN( zR$n{*Tj75WP|{fz7C1o~ba zn|{D`>N=+kY64|2HUa|Wux~nT?ICPLERYQv(yUhE)zm2dxFh{!(4&PfSy8y-sk%rw zgI<}6ewIHu_;S3UXo-{Nj)5zsj+G=V_M_>Snq_xTwwOlh+I;x(_%X{weEaB}f5rEh z2Y$xAVgW?k-o3*0&+PBsLek5$){tZ-z7>5!3)&R3hF$@OsbTNe^kOj-h>GDg^abkk z!V-3=dzK^5ze*!ql|)w*lbP$z7L+eV2=q~Qrg-ZSY4&<>1d-HO_ObF{jOdJWCyS5v zE=Q>9=0Q{?rvdq>l2|lvg3qJqg3vW%hycJ`Z}Y1kH>Mozk8-rzo~zWezh?ELp?zDM zrcf^YeqG^)HZr}5&cpal7e5u|6}9*&zkdYA{amg8jsl;CY^GK;B=DC|&a8%chxYO( z>p1IgYrFaSKJ2m%)3BZ6plz1RC(3zVeO|Ph2y&VWMCflr_?`!Gtd&<1QAoH!t%VzC zy~yaJ2T_UBM^~tBKTY8s4(BEG|C4d9L%oAL2`@05Zv*Fd*?EG7^G@^=IrntFHfC&N#Ml22}@I<1|cBT87j*Syb&5}jj| z3-z@Y`qB$dAP$N06fpJ=5Yzy1Wf3%;i~u>JWYIZSgX3>|k})p`#^|k4D47ygq%IbW zS^WZTIDi?>A_G+%mPBxtv$N@AYRE8}cer*Vsyu^ia>=?1__vZ+MBq>1p&Q>{yN-Oq zoU-x#6Y(-x@E=823S_GB25LIdlAlV8qrB1FU4F@LS&Z*}4O{QSUMvbKpHP=^H? ze;|uZNu9sR(X}(~{~dZlXvRLF{J`RhS$u;}p%I)aKk!=(?p8%gYZ;*i0rr zFy~9wCO&8Bfg355e~u4SFZncR!gzqQpp0)#TWA{RYH@|jh?Nl2dzME|?h4C~%q#yr z2rew&CoF#>kJ^=w>tAe_3An-yxe? z{kwyohUI_4BdZ@VBXuMMuJnz_xR_={6e#KjY8=#SAtB3E@M3D@$5Yb#bi?oo76vC;O{;O8gnyPa%E zc8%61123SZY}*H6Fc3FhN)xy}%4Ys3m+4GC9pr(D+14BTaKWIii1y^rdDn?=IZNt_AJt;GIZUarPO|kQ@7${b z8#b3rkawDTBT59IR2ZT>+*ra)D<`Lq`owJPQI{1YipaR>{eJm1Ehmuwk;s05*mFT%My{X$_-cVq2}mfQ z1SBj!@y(@dCQc+#2*QA7Dxs{fztxQ%<6NFwvX?3yr@dFRWYtou$mFG#>GQlE%0dg? z?SP{y^kvy|gfJ1o0OO3f8Yk;3{FFnr3<&bYHUh-f_>Q95t($w-S|EMo)jxMSJ zH0y=A?3}7D80czHM)&6P7;oG5V=5_Q?xFWvLN81Yz-B-G zNv>X-WK5N{S7Ulcc0L?9uD@NKH?BD149v$z^0JcPxNis|^)-u>Sm6tq`W!8-(0G!` zt~Plgok@mJ2`oj#q<&cGMDzj z1LwMNt{xV&VDw7v{nJQo2Mz*dxXY%_q#BwS8NshbymTn=V7Ziob$m-v<3(!1R)W*= z)92wK-LC$|FmD?wOE{Ed=^ z;qE{#%q@o{4oAN4DdZv-`aAPVJx?iHZx!ER{rMbzm^QaB zvDH5Re7TT6mRf%_pKQI;();*G5Vo>l_^{dwsULw*tG=nmSoi}^`@ZuvJXv|>f8W0^ zBO2%GQ~wXuzxPalu7Xn@+`l8W1RSD&{g!FG+VwBCsIKpfsK6Ku1M>-JL90bFk`1={hwiA%Ys9}phUI=N|)xE{jw1RvK}5~U^P zkbBvQPqK;qlD7uG;G(ORS74_LzL&mbOYjQ>ePv$N*Hf>Th^S-&wyb^-OMVsR^W4;f zGhqL9iGa6&X@}P^1GcTJn#fAimcF&!c(N18r|0t#oAchAtduXCTFWs14FAaG6Tec8 zXUB81(W_(5rPeOAQlBUaPZ51;?@jw{2ElXW^f=zjE?9xer~w zdz&6e=OsvRoxP?HY>L!4H(saD$R)_-08uA^*n<4|cI)xv76&imF|ZxoN8?ZR%o6_W zc7(5)hBa+jH2zFEAt2~j%D7#@Z;y0T@W%JECjUyM;`^Du@{y}1I`82p^-E0CkTnQCkAg0nxH*{>!yh&JRfS8 zXD}RsFO~tqKbS}P`bCf*kHElO8#hjA}!aNUi75<4U3BlPtMkpGB z`4^@hB>$rl%I-fyWH?Urwvv&_Wf;kr&y#04s3UNB{ zYw;-ZpUHY1E!eY|L7LN9;^1snL`1bBJ~PuYI~}sK<`zWl$Vrf!-H!)XV(F^$zvPy~ zaR2dV+x=Gi$C(K*(HJghxJM}!6HhJa~-rvD&__X&ULwU&X`}hbtnw#}~gYIY0ZeZU)--UGrz`pe+^ zodfXwCd*?E-|s^aS$vZ({-KU!XVZ|4Vea zI#JJjV}thnj{kK3;hG1~Lq^%;W?N0(Y=hkv9N2r?e|*w>YuEqfQ0zb1e}Fo;|BIy8 z-%>_#T0sW5}0!;p{_P;DFBt~VCAPfH!bVNfB1%&&r zPw2nm(R1|Q{Ll9vpbqYT)FGfcgMlo+vGIR|A+Jtc#`qJBNV;|^z?H}NEs-9%3~MW= zo|31}w&}M0zcbBI682`P)zJGGV+ir!SVJBn%voy%la56`yAvtqn8$D<@|E2B<>bA$ z86fRK`qG-)g*<#tM%vr<2hAzv4bd)S619qlAFvDYnvbUnC-GhHu8wFV*#km*=ZNv! z*KFHR51UQ@A(V3t#fN)`eAw`II;g77NXC~UCg<>Wz&e%PujljAhd4v`0Qxbtg>BuS zoXpN`Xo=Rri-fQEQ#sx-7m~KV9&)`JkKB=?pKgX0CH?wG>(%i9buj(pc3%hZ&re#f z8rW@UJu*BgZ*jQZ^tb)PCs0?fcJ>mZuiF@12TnWs%8{2_c=8r@Ei?OIXyFbwB&t%8 zn(cB=w|R%nDA-H@p0h39Q8X|L3t)@%L-Yy$7e4&*0t zSDhMdpR28CmYjA4_lTSx`m}Xf{xzTWeq7$V-`)e}3nYgOPM{0k!bW_FmzA>zI*NXb zMg5ibnxht}A5}N9cEqTQ zKr7o$_MC|6+@2d9sy(N~bQ2Lf2OnbLcS@j;-?{y6UE<8FJbH`-r%)cv6Q6k5s2 zt9Nvf^_kvz!Ecma^FmYi+WML4Uv4~){FLz=Ok1Bgp6tEy#?yZdy|3vIXtz^vhT45G z>t~Xsque+i`w4hm^}7SdQQg}z#DWQ+9@oW!l~rD?^oX=}Ot4HzRVSL#KIC(me&*Vv zpNAaB(Fe7c9mm=O`&WD6NNcfEaFJSk+r(tU>%rq!{0ZY1JaEwXtt=W@E0ySLnfB;Z zhoF^QwW*Vk)N|{bEkU@mt^jI?U*Y?_1o1DU?bT>JC9i0_! z;7)e07tQfI=68(*mk1!X@2ug(*V*)07xRzR3~DC`rz&YBL$9CE&cH*q!$Kl2^PRtS z4PhQqYwcQ!K58;owQu+>OwG~UK;L!XlDkdmW(V0w8{VBhFN=@O!DAvkS$T|49@3t6 zIzTpQIn3JWviH~nV?deRuWvRi9I&s>SHooRaVWdpO7yR8znuP6rkumu!B#`kbgMsM z`P5XDFUF4!QLh(wS)%jH5B=2ggY0d7`C~KXKLH*uemEtv@TcAk^*M*arx$lx%l!KP z`%}w1?NEOCxGSFt%C<1~At>EDFo zlpNA=An78W_)i&rstB4*Kd9g6NV!9yt$2DwFdPJ_DI^V2>MsonXjD;0PfY~Z`AV~F(My@QCA_o8UdA(X0RkVRRK1xq14|u7^~}hnv=9`kXL8qD9(<9C zq~5VeQ>p^K9l85lZ=Jr@^joM{h*GYjs(IUg4PMC$tOJ!gNA{dof-!w0au$0GOr}*N z3Qz${`j^3A^olTE%nrle2HK{A9f!7;fh(FgOi~b86sNWzArmlCk{sR^MNS9^^s%G| zbxQIpeNgg_$Xx0V?%Sx8MsNGAczravN0$#3XWSV+ny*q9=n-+^SB4K4@Q`y4>X6M! zg1)>&zLJ+;Nn?*aWKY04KZao;ZwVfOsgYc^pLelDmM@+UUtBZwobbK);+l{zV&o8W z44GCXBp~jX$Fyj#tgbN2BYOgqrT#|PHD}D+2uN)xVh6YBQ<=|M{GEAL27f?Xv`9IYwo=y-XIdQB z`TC@$EE$9Ro}KzEFCO6qMJihKad4`8?<$${=jfj07zlpJ2y#WNU&lWVu+k_Sf6Nu1 zujliaSG^7nv6Gz%bywisJmhOUX1a7q*9)%r(n5@&=g1JP^QJai-b-ygIiXBz6KUsy z$%vSOYZdEfMj4E~t{3c5HyeFSW_be-Fn8IIm{gM7glXU$aT_pz`mFxPu z9B&E34SxHp{phFh0aOx;EjX1hloK#1iDny%|) zpReD}8TK83$ubrap}V0b5q0L)CD4h|l4s8wsZD&R#9xO>x?)FNBC^6#1XL#mGTRzv ziiO~h4!()COXJc8e>bzRLOy`&UUH!mu^}&lXk{xaR&qe+EKcIQgbsp1zud3IYGst< z5+r52~@~FUdVaM$jQ&rxeFX zrF%O5sdJIPPl3UF^m9!nV5=E)b=lPOYZG5Z&l@NsE5hx$-3J#oZm>pW_JE2iR^ye8 zP6bUc-Kk^4z|3$6n$r|QrJANJRIZ@X3}hV`b^7tGGs1oZ7g1QFeBipplH>aL&M)?3 z{0k&d?`19wes+w-$;WjCP;vF377>074canwWT@q#~k*mKAn8Vq<6NsI@ ze@pNK1kUK7Ys;oQty&0RS9~QsE4QvV2!2l;hUL^>;qgF!Tn2jDv=ppmCMMq!mMar$ z)qra}-C@NVmm;HG&c%S>8LvADD5I`F@?(TthxMT*(~>o;N$xfEpm;dZpXp~qIzhifD}_L68H<=>~j`&w*s^xkyZFZVEeD zv4I1}22m~=9-8=EIC%y$xij*%qmIpWut^>0A!Ur{%;s3dYC+%6=1ncZuH+t4Hn!p= ziGEQI*(D8sL#@dHFb7Svvh-1mmtqu|TtflloaD%p!AUsXDtKaYdOvAXMZ?w4rjx{(=cinw8lsiUyqnGmXVYN%{|1`9ym4MR z4-_Q(yv9>E+{$>Ckt+wB?2u3XeH(OO2!5y!LTE|_NooeQQ}GAwE56psF-?sizC#%X zn_@3ziUoC)NWD*UwBM|!$pNUn)1p}X67`x)>bg2K(HM~Ry=I?#-QsFOoZ=B2dz^FRQ=+X_+Y;I}CcO(4+2 zI9XGe7f72(8b_zk%Hv1lsnk}Re1^0q%aFDOMW`mCgC<4FrmU36qx%7pyw}=sr@$=hWS~t7)o8%(4hpTB$ zFFag|FOze2i&QA$HO-=Ia0%M9^l>3ynq8uowve&72MH9gfOB1@$Kn^k!r5$Hb?DGd z3dI27We2WO8GfiH!}?5AXbnz9GoJok=6#@@cKRNeNfVGj?+2Ctmge(JnlbpI5?5`N z`=$sP(S=M5S4B#)asJ5xcbygvPT&Ei96Itz>g_B^?GApAjV-D?9II7F=Tui~W$vNj zI0pJlDdAT*FNgS`gkkv>j$d|&o;^1_7j7U(uD+j8@y_%LwytDE)UB&wq$~=2#`*I90^+ zBk!?4P(E{Xpw$xO=W+|#4-{`g@FO17Hn(+taU}RQ3!Xk%0UaZwM8x^Zi6{NM;7AU5 zrg(r)H0hP)RHM@LGdGb z>QZHp=+bNMPUq4qU46=D?lt$(w^!J=2ER*IF&sCQmWF#2LH*+}^Z705@9H}{ws{6w zAe6VhO?m5;!a{lLD_WN3abWge{!6x?vyu~uVW&!2A_~pS>5bZWvB-T*9nZ{42bas+ zf(%_wENf$(JMi-9JLUdf3WBA?vg86;t(1onmS} z3MMqLY1DyR{&EigAPZ3=EE+J50}K>qI&JGF%R#ch^0zeH6iZx(%N8j@8o^vl8TG|Y zlYM&eLA^Xbo{9M%IJn)s@opjg3vDPNelFn(cys45usvdk!u%35tntAg#(dIvCQt50 zowZ__d!?rF|L*u*hClQN0PKJ6&hV3=R2H6H`{sVe)dsvy|(17Uv1c8(x) zyX&8@?V}|5LKmo@4z&i3@Yq!eIm+=Onr%wyB0Sac1+G&Y`4jf5I&mf2B_&&VtKoQ2 zX!lH#m9s!#PQT%fyWGjSs5 zsA4wN`7bC88w{t)eZ`tV%*?kn=PNY&e7{x>u=Zj ziILO_v{J-xw&Sb6lBO!YoP7IFd(964I{Acc<3%6s$n+4@h9eW-E`WbDH`)hF32^|2 zvWV3APcu2i=E2S@=|5)Ik1Ea+uacHX{I^B?S9XZTkpI@9GUKRIOap%)O1$BL+QjMb zr^X+rf3B*^wXXEjd}AFU<*@L;RZP1RonETI^+>8gyeu&XR*?yBIzr6b@f&|P*(Mf| zi7Stp8$bB8@;5I1*UBHY>|ZOtsO6yYxOlej!wGPcAD(QY;V`!TN}jA8Nw!~Gh{HgU1J7oPudG&ugQ$J2(!ckuR$GG}g`Y({; z_oFAvm?Efti5~Hv3#viwiYn5sK5_xtxGPKJZ*++Hqf1Ei?w7~ckdJ2v>6j<@v98iL z=gH&kr2~u4^gp($)yR9J{1?av{nm&oZxIG46!xzIg|e1zt=OREw0^Aqu6Fs?l-lD7 z{?M)!8-h`%v%IWinHN96@(^Ffb}p0*^2Lz_qb7J=7gy|goF%tlg#R(g3*{r+%boA& z^#aks^?kKey=_G#WiSj2`|$|QSYeO`=K+-K{D=~NVrhJf^_@_>uCbK@L3%?>x){>z zN?YKJeQp#XVL*^+U%4VE1I;P4TAvCQB70H32D|zk1W2C{kbw@6MYsKPfaKHTvhsHD zWT9Eq4kdy|Vpa~Gvf#>t;rXfX4q`%h`u@Lx2bi977&4$BkPMoH9j}*=^BkFi4;ZD= z5STAH?^to^YSEt)6`#EVa3hJ6@IoUQAQ!Esb0>A>9${*t==`q)$l9z$RG z#I1F5gw!VF10C|f=h2-$h{==4c@9$@vbwyeATKjxLs1cX=iBZ5RK35M@)a$M_ZN}6 zGML755@5@SG2{kS^bH;eh~T!x+WU$srC10^FiuVOMy3o=>?|_zIPF|`mbaD{!e!m^_K-t z=u+5DvH^>deFVTdB|am)^?l3+>HF)*63>wfnKg4Z3klWfXqDkqhhnP^wN2Ao=zP3I z@AJ>mPVj|OLxM4tvJuP`qG1T;Qb(}6K;}PUD>HKTJG0Z*`TJPUens{iTh14dsGR#B z>R#p<@V9J+=vub2=;hiX<#>VUC1W4UAZIklLD%MT3tacr42GKBl`!-ZU4kLHO~Ljk zx)Br!Js5O2fz?)6%UjbHjNEb{K91>i5I%;TX87=$Zl)fGlUHx~$2b|C*F9^!Lb(wD z4&($0OZ<}oSHs2;#>i7&F%WYlcL!gir0Y~ly7*8IVvpGlf0=!gI+!|6hWmJyEmZM6$Ysu2p`F>Y3|lNgdWB0%d}8C) zr^)%MOt@PM{Z}a28Bx3}*?&rWZ(+kZ@t}yE_G@*?>zQkl7DF)uVkaPsCl0r4=!-GV zx^%V0(aMbto!AG%uWm$1snd#d9?=VyR3Z3tGpq`AIwE>!lM(3A^5B=Cw$A?sxkBQb zKdke=U4Tr&am!xKk_moISA^ppiqqy7JSj>*8tWjBj2Qe-ADSHE_kaNwt7Q~6-XjP( z8|fLg<2MW0Wmu=6?Ts|_!!ny(`yx=_s|KkjpON0FkiA0$vOTe6s zLZahOI7khaSQflNlX>Hw<%*ih%>58P2ztC3BBY;D;g)E=P+HS8K22FMZOgRXRw{q@#alZBSMwf})iSsxNWT@hY8{n@$C*e3L|wA?Izut|41Regnr^(Z1kkIt zs2PUuY2;)pA2lBs&8C^oXTjtrsm;<0EJLeZ3Vgg9b&KY50m!w3kVGu37aF=6DwY>m zGz0X*LL#9aL@EPwZ(u&c$u&~HJ8&cGq>I<^2NOs&Ew~JS6XM_K+UmwUoC10LM9p1e z;dBr(*~Twn4K-cNoRUE!dQ9! zfQ0Szu!NH=`u@snKDvzjbI|_a5@yVvTL0PT#r6IQg;g$UjgGALTge7ur)?P0P_uT9 zu($6VJn@CX0vl^_fuBJO@CNt-AHe!x4NHSt8QzscO}5RSb|-x|oOa*hBMatg4aGYE zb-Xe7J<;f9xN@(8pV>VdwebGC+)EpheQ=`{Ks^{1xK;(sejMODAen{{%d&A+XYEhQ zHzWTpC47;eH!Ak9MVYsqWdTVXJvFbFpnudw*YzsLRruBOY<>j|$Lalf0{t4dc`@CCF*)e%rTl^0l6ZBuGPDTic(ut0xUB38wA-~$( zRQsEE$GlTpc6*nvvcui`R`m&Gg@TRDzM;Ntdp&rpv?)5@yfj{C| zBJiEm5<)lzyqh!06|c8SLa=0j&J)8(WP;ZnZOa6Ya-|cz(b}QVRxl4ztf|~S^#SK$ z9{d6I5FkWnvq4yHzTeC;;bPy6ngK4iD| zRi2DlmvV{bq(W`^jQDHCj$rg`Gy``!zRmN`cMqRe@!TwVZU};&Z&-JzKmBlKJ;~}> zIbQ&dJlUo`k+ccr@^84vM5nso+%Ff(SMAdH?6SgXL+s$KbQj|{ZY?1*39KgSziL5E zWv(=?7Pi*dvxmP}Xw34Z1NcQ|opGFXU~n7d(s$)#k{o=TW7X0yI&bMS2!|PjwZZ+B z2H|N2;g=nRoPjOBI+&i0D3oIz%y3C?y({`Ru|V4bN-hrVh?1X6?Ao^QRobhU1V1{B zDZ>k=>zpeNc(~ zM*fzuXyz;Sgj;}=?7w;VJg;ofxn&J>oZ{8Mh-~+sA+>@N6dKFMTIY?Y=Z|k-N8Aa4 z{V|U#9Rt8FK%(b3oL56$?&@RzCB7luj`m;48+AwlTfFUXK70p)4{y-IPJVAYaA|q` z><-?|QlbRA+09FUl^sO|Yz%`3OgU47`{`Sar>Ab@oul($sTFUyf;AE>+WI_ec|kCX z^0ofq(aKk+jFk4XBsmnrTkpj+m5rqhM=?A8<5-hQA~Pl5%`Tz+>Hp2+huz~Y;p5;c ztG@9*UajX<@ZR;zu^(uEDi)sdUm-kjY!=C!(7qINHT0(P$5;zX_(J^%KI=NxdvdV?~G3BBX%8*>da4}_Yn%JB&CT=x4MxljOj03?M=AahlX=kN)ZJ1(* z985BT`vs62y^+|t;cVDQ=SamS*~dg=#%9qqLb{K9SVs?Y1}PkFQO~|oX7}>FEx>hgkdK*}?#)aQaStWp3Sr)@0 z7MNK3`q2#OhUpA|#M(w9615l>%Ii*OU;HY|K1b&=*yg8PmYbjAgZ?WH6gNief{C>m zI0U_9xR>)laPuM4T>fef>_!;?@?NKF8MX|6(p^434*7I8-{#9{GD^}j&sA^2fNhAGLd zB-d!}On_mBtK3*yLjd{RU^eW-U(SZL@q(z9lIRo2HwDu_lO7z>9bZ<J^DoSCTRSq_&5T__z1%U@4~$Lc=r?)^=b1Sc3P3OD0PtT& zKm*%p1c?St0bl9P_7<`08gCf;Pd58*G5;k<2fu?q?X#tx7-xbmlTDF(DHBWH9l6)) zf~REW3wE$r$AV)1R&H$EZ5HJeWuwV?_V6x=PO<2`4|L~!_x8gT2(a4wZao`VG{ytf zGy)-)RBVrWgung6-*O><_dUa36U4b69KP?T=QfL0Gm8v*M4ILX6Ch1ZznaoI8~_c? z>8re3lo2S0Up{d7fY+A-S@W>~%09n`c;>T*sn}6|T-M^WKwC)!LHku5MF# ztTPvjssSkaSZDrnNW<)-I;ejJd=38F6$+r|f%S?GBUExXGVDX9&(;^7XZkige4pvF z^@8_?Hh!zZ_mS||a8%9KMmEmT)&6tzj>r|!aq`>^Rr4Q?U(QDtRp%l zFmrUd;{(wnUavU<-_|zV!vEUFNrm2g%cqpFZ-APT+VLOPj(-Zyvv_N#ShArDr|7*$ z_hN-B=~*!IRYcM3{NiNFk~!x@q4?^`NaV)hwd0p@jC#j{l#3vPQ+iGEcck8tLiyk# z+{M9Dp}$n0-ncx&uaiUm%hNEZs^C{sSS6@$&O>|`!9Y0>zvSMi8R@pIRaaIg`IrEO8ZPU@{vy@Oo61F3gK z>NSH$^-`{Jgn(%7L;+#t%N^OwjEjs+J?08EQ3=(ML0o$ac2mvr69mK_g|0ypc;voX zp1L_(ufVEGP0QY+_A0gSX=yL@@qKBbK;C0{$ms^Bx2Dd`mai6q^#O)uulYguMZ~^n zi<-4XU-V9O)lZ>#2c`*-ozYg*HRek_@{MR)V|ZMJ8R78ewptji%Sc0Y}K zCfav98#-4_W?*zIi0!XtMTVyq+Bh2i0jDtatNi=Y!qgA*?|T%cZqD9QYvqwv>lD>` zHe=%CVFGB}^Go&oeFL9ypuF#%pQGnL%{_l2vH)0vP31bCzO>5?yO4TDMo1YvX0b7m zyLc<5=1-ttotCS6UXbGD*Y1@9XR+mQ;#~PmIjAS zkRvFp^lVpYd0WHzyzejcWGg)_tdyOUtMr?Bl@>=-VgIng9@z?aKG%x$O$1^r`9S1e z06?u9d~lt9aW`N)MRMKXgAJ|BeCHq=-1gaBMu%Z)xp~V4c5r3~(xz4!7Cdu`M^_1T(h+6ITTP#3AHAKw<-d!msRcXgF}z1y}x#H#AE zc*P<}xurTwYWg&|mM=)xJ*St-y)!E;Cpyhv+Ou8I{vtfdJk><)+}p6yo3{?vB+=SI zX?Q{~^xKfx!bV0~kI-S1rcNU^Cb|gnD|j5Fx|0JE#gTK8J-%3jVx+L9@a@W_UUHF| zXRkJcJ}o%MTU0%y;N%vb4VlXyW1H78^em{GCz*DhmEprVFUgH@M(S>w$jr}P4#AI8 zDz(I*t)}ASkjJ2IzW%wMkIFn3sHs~m=vvLNb8-unDO_SnxAJ9X(n~M2wxzyKQ|POV zhuP6?i=fbg)M;=C8W~rjMywmbKw5I(oy^Oqm3v%hFkGZQaD(5ZW(yATAAXWvWZeU` zpZa(D4^IIYN2jrjf8hVne|RD_iQlu|_+OoOdSzJ8|4;mf{~*qcNZd0cKmVJ~JMASn zk^{Cd5&y6G50eHz-2a63`_X7334&(Aa?-XpeUP^hok6nO1ob`Rx67n(^EZ~b27Sqn zhQpz2c9X}z3Mz~>24_qZ7vL>E2{6PHz6A>T?Y0f=1iw`>aF-xvE}e#ElPBYr=w`Y! zvL~DymR&?yo^G6WOr|{;yUJ~xj+@Wv9VftzRQ~NmVZk(X!{uq-uca=O%;n2@)9s_) zMJjRfM?lXP>#Wp!VX0k|TESDkDD8F;ZB6UMw`=so>VHGezpUr^?d$y;)AwNfh9X{= zAPA%%N)B1ab?{qaF8E9d0rh@wfG#FEq;FTz@p36B0-q9c9mH00<93!}|8)#y!Bj5m zlaq>z6xnhvxFbRZ#TU_VN>PyPws5absv;^ZIN~XN)EazE2*%JbM!$B3*5-rP>G1r% zZ)gp6L*+G%<_4wwa+=tVkLJ^i7j6yp{`-uBY_QHI_U!HH?85v*dP*StACfPRDr#Vm6+3R!_Ays*)T5_`u%D{XLfC! z3+f6S!||XEU1}2w8EEA6TJS9;bgc4auldg!G=l^Odz=L7{57dFs3N!Dn@5N(Du9^Plq|N5S8#I`R?M&6WjaJdvJ<}ggy z#<)n8R4b@F>*PAj@fhhInfa~$LX(vp((}*AE>XM^B5mj_3+Kky zgllyB&d=dhmFXBP8Bb}j39G`>;bHDH&kxj>%6p7#zB1(?3U)DZ_sU`;pw+{a32Y#e_*Wj6kJ?GsLD3 ziwv$>^5kQij1i9Ll-Rx0=PFW9JO7AfeCc$>87=XaABX-Cw%b=E`Jd$}@mhW8DIpV4 zD#>T<##8>s9G%JH>MRkV84Ki3L}41=hjj*Z8BLv6Qn5Og?7uEEzZ0e8TV;SQ;@>fe zV>o4+9omYhxQJv zAPUV$3=FR45oAki{KYdK>Rd9jv)5EXUEVFM)LM|43jDn)665c<2*;Dcm0EaZ$4m#n zm+bn!>(K64a^wq)k)uDXvjsCRZ5+*StYqd_8;5Z*x^!l&@mwy3m(4u8aR?Vz_MCZU zV}Gii$jL~3Cq;(OJf-nu^}RCIzoADW){l^JpT8dzdAH1_8S{S)`EAR zRQ+C4HO1mH`V}=`EpH9(yb^1B3)5v{yCuA;9jfTcQ!~3ac6BJ@ZX6vWp~e_74Ujzj z4E{bfolJjypK@iqTjd793G4jj9p$~7zo+Z0zR|izx;C_4HiA33MuS9$ydIM>u3mg9wF_0>x`Op>otkP{YJ}VxT*4#L z)F?sd4_Z<>wKFT9jv$TB=jRTYbZrTH>7ubqE82oFUqHEm@U{Ns*0$smWhd28@A$SA z9b=R!92r|7Jv&yoCboFr=VHB< z#2&3h#M`IxS8w=DTicviul2FNBi-#)Inh~{+X_m^6Sgn&!POfMvtloS5P!&2Ugr7p z_(Lw|fj?jze^+$;)3*UBpJgr}ZoQIMiQ-3{JvlbMTOaPFUsopAt2c~V=^yK_TD8+;_>huIO;&QLo-(P=THOlGNakJAV^>>z zc0pmo5P7MwEE*k&|04Lc!gYfMji6ZTVdt8hEiP2IZt4}EfR^b#*Zj36XajCTFzT0I5QJ5AN>;+9Hg(ff@*Tx zBKYIKQ(timz#JfN{}1&QCDio)LSIo3*7N@peZ^Nl)-H{uFSB0#oAec{KLU>AfSdHA z728gbsQo_>@639#j(;2R2|J-DOD$ez8}JN!&OPh;vUl`}x?~&wGCYXiF)bAB_%VoJ zF}XrI0$z-HneX^l&R%}pT71f|{FUPFclkQ+=u3L$&v=QZxI#J!nR6!QZI?YDIQi5M zSz}sT*r#2OcG~Hv5o&O=o+S3v8vJ6JS%hm4<0>{#`w8b@g5bBF&1)-GK*a!*j?kZz zfBid{&Pq6tgav?G%0E;RV*qN*@$_OD|6b+a^Za`%IPOT(dP^#qw@kn|Mitt*&7bUj z)8x$C{t$0zpoo9x1KCxAY-@0YgUpWFJhEanFGmTCp=|%Q%3r^<&yTRJ@O!c+!0`X$ z^_ai%?*;xn%|A3N29N-AKs9$_O-*!s?Eyw4=3Tp)>x- ze`4@rb|-RV-gXIqmV1z)qJMyJ7+0oGztBLxaH%1+t2FEm^p5H49jxPNTCn1(x|O$V z=!9g%i81T=w~Bv5snEa`*iQvtC<*cCa(nPimlFlPoDCt9u6UEk@KoBxrv-O^`C{*A zHv03H2~eSZDgK)|{aNTtG|^jlMfbTMlDOn_mJz6A!`u&xrgfhCVVCKjpZj6S^v^e* zC_xVlEXk}fIlIc-552}WklOVb`>Pl0I3=Xe_UQw6q(&qzqKTcg!m8Y-S z1o7xhrrPoS|4>)>OxxSGeug=kY5+K^uNf#blUW1|^?$e4UyHitv(y<=v@t>ss+B4V zcW`Q;SE&}YN)`M5;+yLWcSRMpE`5!~&U#I!sWJ}4X3I-vE;YmczHC^s7^PL8BC8e? zYQ4Xl!^2FU&?7uo{J%ktsTRjqHzOVeuHH~z<24bsP9tm#aDye-pum5w-rpHdALj5` z=-u+DM8Hk{MjVDA5{MKLp*AsiMQ}AQ7&jx^(d%&E@#44fNSI8o3+r!~UY#gK-_&rO zBBn_$@P7IiPHs(14wW&SH@`>c+8-vxPV;w6)dIfb(hof4HOEcLY~7IRr;DsSZO4OG zVUTR-R?qmA*1D+T?`78m)91YIHU9^n>3ne|cd7GV4j};VIHFxrroHujfcH}barM|# zvMW$Y$aRKO2Dpmv?J({0^ph!4dLeW!6a-0}4_)8Q!))}r_&&~#O;X&f-5LKhdCzE< zelqTO(|U@59j-saGS!@$tp-NAF5K5IOVvF zdI@6HeEofoN>q$yUKrBG?=4QeBw(onQ6I=-f*;W;(@ zOeO=v4b+lusRu*?*RK+i-fFm8I;bDjC%#c2BsI@dk@?<2A%<-$sy4dBe$4{ZrGtv8 zx#1E9MoaV5&*_`8#LN6-m&iI;zIWOexmq`62IIe-e;@E~Jv@}$ua|G*JuARy>G(U`$I+U65??>n0@TYV0$y}9T}k#kdIGvBc~PlR8YY&TgC3yjk>Mds=u_eT4C zKR>)*r(f=W&99OZUYVIU<8V-53@0lq`nLFr{oeOmfb}7Y;atQA_i`1SIgd245XF^s ziH9R|d6JykMydO`5}*ozJeDH5W`mS?!kSey-p6y5UzU?S$)DC5T=%nmf&oW>Ch$rT|M;g=6pACr)xC|7JrK3YzHqtas~eeC{<9RwV&p zD0`;9H6=4=HqL-awNU*e&>|XIHvKTsXO{)h_(vo?xnr5mL`gK+nBcMJHBAB>J0AEn zE+F$OXk7!w#_T)q*~V;ly#RH7A;B;IZu$|zC}<#W)m)%<)t-0D*YW=`P4pNp1PZkk zq-KSD8)*A%t}7%O>Ba#Y`Q`p@b5Oy{ptR%uv0CDl!=M~Va^&&})n4D0Y2D$8qp7|8 zg$drM=eQZi&Bcfly?3iws<^{d;hl;VsqZ@P)+-Ro#hSk3lEz}8E5l|-AK^Q6|{!Nk>1Zrl~JmO%W;&Tm(K>RMZ3^py~Sf| z$kaQa2Pk+ASp3~c{#Niy5o?7|B=fsHebp2y8r|`i4;Ug>!D}Xg#PVn8_ZlUE^~yh> z`}>91mD4H-{OApv!SRhU@Ria&S7`*Qy-}+b6S9xKFL~)O?nl0$G1xaD>RrtD<)iSd$d!>&{BFX?k0 zzte=+6Yl)2ks9U-h!iG2?I@lOnPX2GN0JoQMJAaSs5}jU?8OY!{IWqA`I<1cblR6P zkm4v^4l^$8^CdJDkmWmqnr+UK50Q*Ue#{uWP8VLI)LMtDcw5n&W1>%@a25g}-pjk~ zYBigvNynup?EZ}^Y9*d$^lSVZaNK@~dx zPZW!~i`wOCbmMmWRT%RKE)|gZIFq2jTeLU0i3d!}S=@?z_@2L3S1DCvjNz7+0HuY= z6wEx_9IqNIPdRRkl`Fm5FNUCF$=f2UsDjRXgiD~oQzZ!iN3PoP;2l&4K!5}XjG-Flc2+>oWJ^{ni==RZ)^wBNCYve zB~T3TOxM!!+Mi6&taBhJrip!Jlbh!hW5tGw%h^ViK7j8SIN+h^hKJ94y_yVMUebsj ztqrE&oWp&iX6bnQcCBU$BakWM>MElyt0bu63(&Gkci^z=VpTht*TKa*;Ek30z2+{k zLr88GQ$;ALE_|ogVo)@T&QC()-Hezdm&qA&m%LurBO|j&=6zjOKI6lC`4Emh))pu^ zIakpHM4&Yc9kLdspmC-aFh>}V^O_eZ^8Ow?4H2jSue6v^JUE}C`9*$1kr|&ggk=qVnoFmUK8#Cw8nZIOWbX1BD9-I(M(ouy+2#4OhLhsAsMSv428`N5ir+| zm?7-cS%`9=tlEk&?V0=^iXn_Xq3J)3A)qPX1IHGg^=^J2Yb9@oOt80N45=+VLLM{j zT$=hJr-fO4ZhD;Vyc4~67r>_?w+?A-`-q*MD68XXqe$-cefex1>O0w(AQiLklx#VV|G-2Ve>?PCA%CKzk zFv?i=TzaS}Y-`*)Mrp|!TjQSA8pqcczeEjdc;1_}&Z1cm8DPwA^|^d~%4ax1Wayfj z9CG@$A{R&(EC*$&XWXtW`#Q+J{*_+;{(#qh_Vq1#y@1z9U#IaD+i8Oy&9+CknFK6O zIyuz@Ci0~3_UBb7l4_v$$Q&hqFY)(d*zb&x{dg5&J~I>C}tO7^N;__pnd7kF;;G%{}gOBiCV_s z2JTU1#8t*zTxBfTdpUK0@xe6qxgkis{De)iCe!P%fQ0`WqJ|O@9puVNAD8tgupN$Eu>wMY z7nvu(klj?8p}u7ArI~)jgTn`RoIZ!mSzd3pkizj6&Ma%&93&Vy)umBYPokAit1I{+ z&=qAF-Z1t_wm9xI1!agyUB4U;j12t-WLaoSFUsAYhMg__VDA2S#vy%A(6r~nw)BtO zd{drH9UGw##%#XNi9z9;AVkh&TXFJ!ehZV1{5a-!EAi_Gyk&>z(kCi-f5Q}!DLyZ) zQ2ugQ=FnvI7s;hI{r=$R+4ANB9DJWoq7;DdVxW6HxXIqj zR%g>In8JJZl4J&;{$D<>dJa!^|aG1}O{yi?S%aB=<(z@U+a%G&hwHfU39S#oE8ihf zUz=}}N8lON{$9viEQAE&vtL9M>P(jay5Mx!0YH~Kp!3;6c6_{rmvlElb?&~BhR)MU z$!>f8hN}79ta+31$;4aVf3~L3FerSvyy5=FNBD@O&r;s* zySNcgnOtPT303>s{MT?93!Y&CtM!SJ<4bpp#xq|0zbNkVg72zJMh;{m55kf1YUoT} zP1TTof+2uey0>DD{eY$%Su zDQp}&VS)0OZ)Ezr-tL(??4X`@hFwOx5AM|Xyrkapu)D8G3-heLsx4d=bf-DhZn&%5 zGv)Ct{Y4Y!;fTU_gb#0cl3i{A#_e`XSn7zydHhEFS0k}(m*Aa)GY|_*(7iWDZGhF( zcyayqpLg1gsVl1@1PYY-0d1iLC`jLdL!2aoQu8|c?hx^R-GPOk8;T5T|?>(a7Tvv;+iel*$qX z^l*k$@#}bmD&D(!zTS-=7nwl>ycj6nEy0b0^))*X*obg4F_`r;oKA**%yk1_-@dY# z0!b&a?P}Hl?~Kj^P`LC){zL*^RhNosj zPEN%)xs7v}f*vg|vY`tE0n>w@-A0h9y$?!J=B{tsNbr9tl zXUu%}N9Nk^Bn$uq!O>PZskc^4;G%!EziaVk(q`%8Ag2%3_8dxsj|8910OXt}ImtaS zI1-G%O;pb2*YpRcFZOOpLCY@D4E#+L(}GQj>BS{~yPfg8_B!MEU}TpS1Em8weZ6<{ z!zT8C096j7rsiI^vUX+e1Oj{0peqll8pQu`s6wQl;4h(E`eGHASD^u{_QpI*b!*rXm`U>` zU9@QXfEjn(lAv#^X(#MkHlv1uE(JXpQc8nNB(ICdx_yWN7L9O&!z`UV_RZ}|?JDroMi zN`=xkjpxpLgn^vUfq`YAC7pWVgs5MGysIHM*SqNannLL43Bx8A4@X*n#z<_PySO{D znG3I%iz?)eBP07rx_GbG!&xHKtPv5m*soKy>dVdC8&M`7bRZ6{PL6jQDk)@YIMuIL z3!By^L(a@d;}^hOQ>2V{_EZ>}c@)n&_I(}i7z=-`gF<4-Cyemft5%D8W69eh{rE_H zqg-0~mA(Wd<7iOFI6i=?=BSRDd_Cby_U# zk|M~LIy;U*tH+)mgN~Hn#NpMVU!^Eh>J5tOOp3wcC&o)|dzh70N3G0~5e?Q2lOuW? z*@{e31A}j~_Hm8KHk2!G(OM25d-4cs@fNKMTK>GxVk(t&*1LT%Px-omugS6P;>>FN z)*AnBwf?KIW)0RbIRLDk;+A8?QCRV`*h@cn9;fj^I6v4*c{y=YUZ~s%qq&NVzR;1 z0pLU@1G@buTTvH9{TKS1mtR0>D&YPkJRx<8%h7W+btmePeGZo!0>Upb=H9t~4durv zPm{K%monhR3G47TYroZrDzg!*sUsfElYiLnk)9kmSt)FA7g!b?2VlzaK|bVV+UDnw zpYl?4F(>=zyS)9SljSr0`vItQuH|0SpKL@}?#N=W!#bF*2-mS-Y{YFUosGaQ?%yOAv4@=c#c(fLmmF++(QqK9EpiwSM(9kNMGItQJ1yL9+MzadAG>8<_d7j8 z_p|aF{pTQ@DrWKKD479R;FbnufL=3bLfMpULIKk?4+R|XosWY2{q+I;|5C31aR9IZ zuGkShV0_gp`~os#`!tML-3Jr6n{)|OGC%%lnB`?H{{YCn6x6jDTgR^ZO{O}98 zdC=(%>dfLd^&tW!^`@TFy2tNYID~$ezWt$o!})S2T)_4h;YKV>=Vq1Ho?-bDj|79> z(Iuo$96|cT;iZWi%3vTTO1@F1UmK~-Zlv=3hi$GMP7UM$tYtA$w!+gZcBDIp^j8Zn zU^@nqU4BKp8{!{@( z|7<)-$tmJlv*pmEi5bR|OreVG6ir>loyPsZ{cpBuIqF(8$@gC}h2}3#=kw%{Ke@a2 z`|`QVs#!`_frAn^zrcH!RrA%A_W3e%#CvEKWWMrAMpzsn2+8=VodPLu`9zN;wf! zDbVw-obR|lc!+xh1EdH35-EZVuyp!Y5QPvukfO`^dsQUn-P!^R_nM`5rNmRyNmy&~ z2O}f>W{zn5D$hnnhEJ7?e$U^XAGU)Ffbte zK#o`^X4PMshcB92Zd`eOV%EF3SfQucDY-NF9*{%}msM9z?KkJm^lu$r6PFB(?<;CJNs(Pm z%4>sme-+_aFoH9lGtScKG%PLC`IgXueu?S-A9?QrUsZMO|0WP5DzG*RG(A3=wy_Ns z0V^swfF_W@jwFf&G(bR3K}s!E3Oj(P5KRJZw_B;Lw)XKq?XkADwc4JxXj`=juOPla zDQIYd-??oSt*f{ha%`*N^P1HP?KMIp&ySjydKSV-EKo8JQn% z+2l98p35m^vOKp-G;v7;9qad_-oqQC$ld78COAYL(==J{-6oGFEYfW3cTu=2`O##1-&+&B zu21mUXyUTLi7~^IePEkq`SEqYx7)#Y0`Pq+g71moTMvBCCNJsIK+syf0V0qBBPN!C zR6QKD`1v=>ENLCep~<#e*)8#R^V=%sez?N+wQ5bA$;lTk=k)JN|uoaP66s}oQMH3d&%$XGukGRZTjL1@7ps6tk z57WfLA&?^xjm`zjO;0X44Nji8u?^yShs$qr{Z>a=CEpml^ev`G0puDk{P+WLKt(>Z zLK2U1{F7-uzN+Qz&*W}|eEM%}xM4^a&a`7+0OHsxR{tJGzGdFsYgAR5^kt%lyrc6j zWq7{s9{x~9##?0vUu|3NzL!mm&UhXtq$1WpJA#mLd^n+N5(8E=eA0#cz(9P%ClLHY zK-BO_Zmd7EBzgXdO-A?sywT|Xlwu}BR`hqLFX!%Pf{H_3I~{d(=@Ol>*+`2xm{&3* zBYE01vmfolzrKh<*gR>oTkzLb&m$vg{9-26YJ^Z8pFKQ2dnmW44EB1@ zrc9~glGlWYOr6K5{bY{|vOwS_hvU1L z#n$lZ(?045&Suz;!Uw=q&RA=Z0EK{wzf04ENW?c35Td!8xK|D0?#;hR`TU3(MAhoX z#l7l!@b@XvrL$fxMt^V>xu@;`r7Y@K;TkcOeLp5X5z{zPfl$kDZBb$H0{|V5SL)4s zej-Q{pMnYF?}zesTvV3fFLOOl>dhGH8Z&2nFXa%kkqR3p3Fe(vTQi{_8c-CLQsaW9m+&HscUAm2}wudL*ogO|Q( z0f(dUH|cHnMMS| z;j0p(RD;(z-wIR9cM&rUUzeM_dHz?QvDtjv(>9ySi(s|VhN%9sMBRV7j15mOW62>c zsm8Wg8#K1qHCFe%Xkz@|0XH!=1+7*V?i$uHB&zaO|5kQ@5(e6vWooW9j^JTGZ02%; z;4*`-8VDtWIZgN7uE*zl1;=G4(JRbgTa&9i>i@dFJDSZSh z3)#Ddoc&a9C>ALiir=7tXksidmx1C+t~hDl+SLf0alSL&+n3qcB!7xY*4{Xs=bG|AXKiZPWIrwsg}!*6ho)z+VbeQY$Y!&D?xnzT1IF>3`vwl{=2V4io8P-baQ8YKc2`XV(dOa8C`!30G zRH`mMXx z6;6@8cCe!JX)gQ+zIKV&JQlVR@#>g23MSv)EI}jNajjuZJriNQ z{KugPo)u5m-C6_3Qav}Rp7AjLNVR^rwuFfDJk%BPGoygRhe!oWL1aoHGB)1=?|ZCq zgLZr0YiUIAoCl+54sl$qvSrxKx!b}SF^Q{<& zTD0{FZ7O9CsgC@CT3C!eq43l->JO_E=C@bj1W@}Nb=2;oMh-nD;jmWoEIp&lKI|;0 zNfi%za)CTrSb`$*DfXITVq?QFJWp^wmKdd@yQcm;(x0j7_to^QW-9%zxw??ozK>y+ z1{KhN+z)n={f>VX-zbcn8h{3 zfk9oPMYgm!TC$<;iPlkzfQ=2o4MWXVmQbUg!p6v-*FwZW!QQw?%n;a{i0uJ^@{`dw zG(I0IYJ4(QsPRl;d~F)zL7WLPjtOi_2*-QD<#Ewm@wm3~&Gf zGO2v8Drc>?y48qZ(7AqA{Vl;zQ!|#D>{VxZAcMLbnzOA%&)aIc9RJm7{+Sr{LC5? zI{NYltGMS*vk6Q9NXgbFWWqa^olaY*O>gAP(^vq@pUhb;sm7j*gF|M(fgU_D1^Prw z^B#p9tN1pM1u~R&``+ro|1+|}WX)oUV;@+@AUuU9{s(0ROfHU*6~4uA*+S2m$>9I4 z#P!V-RGvKm)jf>xKOl9v@fmx zOKc^B_q4`B|2-JKaIFPv|954A9;2xG`<<8X<4G7t3uJ~KsXJEr9|}4J-aNiQ#+^I= zJ&Ekw$ckl?$|eUN(&LQC^52)qs+~;MzXEvg?^Nf1RScr0qr{-UiCD*FhDPJ^4~Rhs zj0mCVk=}LnJ*$a;^!EYV{2-U=9KY&4(>yzBZL2!RHm`WY!rH{1@4dn76)X#CY>6Wa9F>p{))et4uU1Mkob-winG|lDk>8L3D9-~|8FAnp_?^5 zhfJvQ{m*drOU)+0OpF*8<+WNptU$qu(9xSK&^fCYwBrQ0#FO5og_u_7wIcoGIqDmz$_8zNBN73M% z)k7PO13fzMsMeXY?wq^N7m$ z>6_(h-M9~)pem~4Zw5zrHolxZ|FeJ9B4C(6oBA27PW>nPN`g3kGlmD+3i`u#D{10myz2riSXnG!#FJ3@Z(Kwd{U0`GY02jNnn{PO_Ndj7lb2QGD_f zH*Ta$=x7OyM3;oB&3ZEZrgz5%o{_Ms6xOk|D*i!boInRDEZkv5z(Qm2 z9wKx0iLJ#q94&@$nRo#@Q5hsXAOavDAa7&fDu)+d#y8XYty)-4;+2twBXkbM(ai9Z zV$}eWQQqhrd{rslF*xAP`%qev*{==++Ew$CoRQu^v-x4gfgA9rTfcC83X znDWFI6Ma^g+vsj;qGLK4y3|gF){>x54UIq2m*n|PMA(L@d4Cd%JNFg;%?Q)1!ykAG z$QE6;`!je1!4Tb+EG~w>^`2ZTmdp$w$K|HQB}-X2m~gXJ$OH<7>vsPXgoYE6x& zGh*?t7K~5+Sw|?LB9)8(TKy;R%K=$(myo@V!#7|FsIb2i2qM|?h=yq*`yji$UDreZ zoFxCR-y-VR$x42Qq#s!>|5qe>E63)glJ9cK-ys<^C<+hRd72{BjK}PE#4Y5|4G>!E z#}@csC#SgH0D4`Xyt<2NtoxZNnH#69^RwuVdTb`~M(2sK+EyAIm9D|h3AnMtNu6TJ zqeymFeC7+nRR2O(0dM8Pex>zCyoLQ4xcIv~c3n80Uo^yLvIOYeYt$ZsC&+j&Y4L;p zG|#B{N~)$GkD_#N?o9o9Y1IhFBD_n@;nQ^H(HD07av!=|ukmqujfEA|xY0=Z94chc z!{{Slqdk@cZYxReui3feBO>Z{pfZpk3ReKzlj?eL4rQ)k4O=_n+(YP4v8ldTOybL;-% zj?7-}sck>HJ$|Y=qABITCYtZ9oCt%}dD+@q$K|y$4#$DzhY5o+O zI-y7v5NB5Qff_t0Bh{-pG)5F<#!zk}*Kh%b8^9F3x$*N>&WE5G!{1Pe;QjP}HhQfZ zpr)&6Cg@A0>G|n~bM%|(;XLSn`k`<*_vp3^3{_bp>aeopkt6&xZ7=W=vGZM`%2Iez(e|KDBtevV0L z6~o5p8K8A~H2AjB3(O18lxO*Oo6(WGPZ6`J6xgMHfouH&fn5;%9Kzn@(Z{l9<a}sT7o!M(2Km?~}NoeB?g1`?=}ji;T>Bet>x>H=y?N9;s$(OpnAjG`xNoQqSiO zYY-ld7kCvLX2qj@-13v@yWz|3pDv(9cY$F1#R~67a!D8(}*IbsiN9f>OVDd{V?^yHIldq4*|5dr2S;xN43 zb&^}|Dwq=V0{SfDLEsk><)h?}viukm2{GpA7Sb_DUj9gGEp82-;yJ4d=+nvvGgcZt zByZ4tRoQTHUQG8B1i!O>-xYS_z$isz{w^cxU&V4GU3Duj*54y!^}lWz86gCM>9Ia*=_V^(O@i$2bD)}+I7`RIX?w{p{6xO16U!(Gak(R3-usJUm zs2Tfg4!McOAg}7{(Z9uFioJ?<#G>$teq>~af?l%^V>7?!2ss1YWJ1a|zhk%=2%_>( z8Y<Y3nR!b#)H08A%-_*2ly8j>_yVVYm%gBUoRXAWX!b9EixEgqg!vvjo z4|cu;ZLAQq*)*N`{%@Ny-_y%K<+~>!fD;lC<8~z*<`q0j?>kC1&GVdWQF3Hnw`j@1 zPwSw*)b<$|-)cx_dDjvOa&F5Gg*#Z|%h#(4_JHxykA*o#Obq|mmW*6kk>mfXp}GQq zxj8mUB=~cmkN5d@Yu*YLUV4QMRLKiu5EYvUA7W&dX?s@qC`Xmv1w@8SXZd|xzi zVVsyWq5Kuc&}2iR#~me`>fSF|73&pe8unP0$c^_VNcH~JE2`}NMK8WT=Y*GP;b_Mpym@>)*=+>{xo-Z$Kv;=`w^^1^t&( z@HCetVof>V{12EJl(p)XJwz&QY^lHTd}3l>iW732;1gN&M*r`${%@!|sjZKbf8uOv zdpwfDLq+2&u@lQn_Q&$dpz?}%Z@Hvfgu$|gW~9$iedaCG)=?KeaXa#kP$pc>{R6}5 zkj^q|YVf7UJHP*MS*LgA3oh#KK4G#f0i-3;#<@~ryFco`Jc|s z%~{u2WX4{EP2_y&&L_x1G-nD;3HOnIzrOu=W>R0*bbU`!Q|J0FrarR-_TRitTcq-w z9O{$##&O{LH&@^9uS>yq{W0~m)Ays`YwB2%C%RAB{}?Zf#z)-vE2=?m>>iDuKii(4 z*K^+q_WY!tdk*Ef8nWwN74J5LXVsG`-zW8c^PVk`i9BwLr6(IK{V7{ROvddxj>hKL zg}PpSoY&tjy`NAtSFUvRl#zeu3j6zD(NFAe7`G1Bx@O*^$#kr|d{#x?W73J4>ne(H zStv@&tdxR|zTf#J9lCjqfXSZ27?=IO1HQHg{$u$5A446Q9#AK}<=;bHGz&CTO)vbi z3%l+PZ=qM}twbQ}mj5+CPvjla_;;K&lH8g3ruCx9XS|%eA&;p068Ad#{wt-|iIcT9?X9bjn_mC@C0lQt-wkPpJEp>U-PKUrA7`zAomFC4X_?f(tFziW+J2nDp985ak>Z!O>$U=w zGhS4IUsE9XIy~0#P3|99a%%kW%^eqy^m3N=MlJ(7_(t7m#jc&QIywXAP|Vi8-u&5a zLmG&^A8qjqa}Ob=p7QH1IW31y?7#8r&2Pa*`>#H?`R3I%7kR|~^)EoXs?x{{M^Jhv zN8JA_lWET+oyaaf&%moYW8#~d4;o* zw$sw(l@WC|roV?vy~aDJrZQ2-%KMi8<@?&T|J=qJKP8&b{atU_T@~EUbZhU#xE^Kk zeu+}-`MP)X-TpJEo#Uf$L+z}n9Nk&>qy4u>k$Ewl^P1#QdhXuf(@=!g<7n=4V5Fn( zgH#cAxWUtkjDmGEe`&R&@6xdTPN8kYsPi3m_jdH1qbxevqmn@CqflOB!z>4hUIrSv z@|J}sr~M)hZdrZo{RLCt9vPoEpvC>@`fdxd<6X^e`o9brb4F^ z)c{@Fm4CSLWEtbJi3g^E>la>YhMryohop8cML7E_#pGR2)(uJkpbZO7PmIJNuXh*D zb3c#8)@fev$?}1{nmdEODu;~}(+%Z$K7G^0!1H=vqm1Wyz2{jzI^+(5@12B$P(MlJ zS-&R<q}mAwLHs?dvs+U9Ml^2>gf zVA_+wzM0N$rlLBAu9hWs5Q?6u-0=|kriSrNay(h-jlr~X(k^Nwj3WV3mVXI=SaYZf zeNHVQNNW`^wVC%9_{%@LpL6}fld#s{)S2`aMx`3(tlpRAzgL!eg!&v!c+0z}i{9nU z!ABsP{D=7Wx|zgp$IAyfst-G4PQ=hbjpG+_YAxvFqa_1!1)fP>M9#CFQ=oUkYW5}mzN>0?%6$Nc) zAeV~*1{Cprtr0_>9_5&Wfj3Vw%2{-*RE4~$nN5ZTs;{e+Y1^Rn-8_lYtsdEDtu9fn zQ^`f64>)N#Vz{bIR!7|b^`rC#*@JM&bgJvbd zUF~H&WGtOi6KUbB|D3s=mSL`E(*9>c=K2NkR;L|pSX0beQ!0E9w3LvoUKp~~Vq>ZW z(jTDzCX%@S&%iCJWKmEW0Z{UT1r9}w8`?<7=>ocNCW=fR3wea56e(4qxCg$E7a!;> zZk1;Oe?NBb16$>$_9f#8wY%x`3s~Ysyu>B4$ctPlRz}X^t+HX3G4oaxOXf^Y~Vb;wc9aC;`$k$sIK zK?#(;T15mNf$xjqytRXPXK~P~QL{BTlhIAlGa#j_4`$l1I}+g}gR29@rQxvLIY-M`{UMjm!zH^pS)mt6dA0Wz~#gnb7uGc&TZg{j{+%3`BGC zU%^u)f&fMaU2#ynPE;0vht(w2?vHN83|S9RIpLZ3(bW|M>q48! z#R-H#E>o66D!Wr8$9hvM@0Qv(z-y~qWA;$W$VQGFgAOf>sQq)sehk^*6SHS06v&}!ga2SY8nf0&3I;m1{7`Esea&EbKG-2drYiepzwv%Tis&NH?ZZ{9GlZQYRLaa=M0{z z{UDuVvg&xZa~8F-JDp=F*q^jTKO5;e7lc(H*;Km22NHT;kxxqR(Ghztu;;?yMBxO& zSO+Eitxf)+o$2*s6F4D4)U}*74LspkTIEz224kYzz^;oUb-nZ=Djk&%5zV#n#emVI zM6UM`4Y0#cVO1k4ZMeQO{`Nh#BZFiY56_?FK45w&q6jJKa!U-y|DkaFk1C2yfzx&b zpC>o{bB&?nZ%KVPi4U0-O!~iYx=MBUg4;b@8!7i5nT3Xv#iBehZvgQ6r(kA=@_JT9 z;wH0xUJxsfzmDmObDzgu5g*FebIX%+@^Mw%TiNnv*S6EmesB~VWKh?6Cp6qpoEy7X z<}Vc`AIB~zkIz@VwjfpIatg;COKY6CDohE{aaZ(jI>%Oivgh@(auL_ z%!?wyXEfZIzG~gn$!fSkYFJ#1&-fDduG1qi;%BX4)x@CgEf5vR$|sZ$xXGId&Gy8f z`%|}BP|Swd1rQeTrlU>?XLAYWITF6zdt@rMgPvJWdylkW!_=$u)0^_!zLS9|RPEU@ zIG_U)R-v=QjoVPK@n?`5wjT(C{<}YsPK{Mj_LmJe73A81&cdE;qZnt@X2jx|5633d zLHt$nUy>NU!++eBiS1DOC5a(BpoINXp}mkwK4C$!eyTSW7>e5Ao$HNBN}4_xfaAMat3B6}ZDNgd_s#Y_UtKbU#(GmP9@eQ5?HsN7z!f$P7Hc0T-p*s`zkh zkKe(lm>iUSqg*Du-gh}fadK=~{5n`UhC@S&s&gH2SIZ9hU4JL`H^SqX!Q#r@=bg-T zTM@ReZ-YHXue{`qI)#5IWXTw0oXcpF+BKT?@{Fl5>+Y>Xj&+WdT-f z@{g`cd_9sCXkm^5E$odlv2DFztHnO~pysp1`>V{|%e=1Jtr{W?c}2O=T*QP#UJ>sY zMAH^$mOqhHWaO11Af|TK6lH#d_90<>F6Sl-UvAjLq`*kTChcfoyDoyYNW&VW+;zs< zf}cWjE0`-B4nY2H%0B+%tSLLp$QYv@)0-b>%0lAVGd5!NLgC2Cc=*d?ydu9Xkp-^P z&%cx*X2m!_(7ukWirhuiy99z3efQ4;67h{|i3nT_QRV67UoezpE%uf@uJK5G151o9 z)k$s?OwL>zX+z0pvQUa*x0a<#7eVCTr3;2;8PZ> z9MQHj3p;-e=2FN-zw4XcFF9k&`NaZ8cA9`r*VpFw^Ravu$lDBWZTF<+bE-E2t?mu8 ztgmdvBF9!qfiDf3e!;C=aP??BWK5*(58w|s=+wdk!mhOeu1b830sdwr_E{ii6$;l= z*RkMFGSE!Pw{Dm0zxYFguI@A~GP;8;Qn$v4pxyto`xN^_Xw2n^AT|1<#IU*K$uT&& z$>?4DIeEKvuYJo}?~$jjPF8+0e?se-b;pGI62JzPJ1bO(>|_h<#D# zp-+vE1-EG7BgfOTxhaI zJr%$&;O}AtZ&f9V!MIOg6e!Va{03`prV}htu6@IMFis1zs~@!C0fLGtBp9$C4vF*F zPK`+0+G;35?a;_>VuILG_FinC$+=ak&GQ$A^+*`y8+y;3Rv(D*#ISmw%r}#TOtm+(pIg=8eihiMH5y%G)pc1ZD9?i!fRep zmPkF?CbE+T7&X2l4!DV=$E--jSdJQMs=6@-y{woki*W*>LJ)JK5bo7$0 z1S4Emi65}t*5EhIWANSg!9iar%53aTCJu^!#df^~qQNX~of?0)ru+?m08YB&Phrxa z6*SSkid!M75?5&}Oypyx^0>qax~wvv#|cLT`YG39xZZn&sm>C*h%?(AxfXsRsV~Uv zGn$R_!W1lO2O%uVjMRy@QAx;9e>D;AK|!@Dw++fagDY_8%4sW?WsRYg&) z^ouYa>slFKFJifTpMFnfI|X!3J4kpQu=z+Xwg0@JaH^PLM=xNQyb?))qDTb<}G zQd>zX!)F720%6o&MLTPBp!y@}Sg+1TR&{K$;(s2fm|59{d$~4D`L_V`x_@ zMxkUVOGTuzq&0S#%6kk6LYM|+{zYY+AY*C`GGE}RRp+U?|1??MK?-N{?*;{$HL3ZR ztX4D@OP@eG_KXh8l8_1K+a6v3S(R`oZD{Snu+8+ExX_D@48ty(uBp<%e^S{HM5;<| zcScH0iqhs}iEi*S=I+gFGz~M$41!lFN8gP`&?13F;IcX=q=HpKV~?W6XV#srWWy@* z=HgynC~RPw;fsyH%m0CoSGpw=-SxlKjOla{sH>_!IKBZScEYjIvjYi{?M1 z1-tX#y$F*Oz<@{a8gQ$b{H3tZ;J%JZEH}e|E;@i48l7=rMPi_4NwHnqj9iaFU>=en zt0{UkKkrr96s%RSFwR6&zrOo>UvX&DP&3T!2hjpHr4*J`=FMeJ_bViR--Lci;0S zy^CIrKZm?QN4#b7VD+x-S#(zyRHoCcGIF;NRj-*W3q{KMPN}Y#*kuFX3;pU6vm&Q>|6G7&5hF*IK!cyDsXs(2o9Xq%9PKwQmbU z`@PA#-jioK`6s`Kx#_32VQw0Mn1P%R?l`I(K5-H5=q3(^U$>L_?bkS5IExSO*$s7y z#!5Y$auqBXNnmBC7paQl&C=mt-#ni;7dt@55?3DP3l*AR7JkD{QDZCY;>NFkSJF3{#qaXsG6z zc>O;=$Ge`GZD*BpEPU1$u$COLIU#e5b(pg5+HCSi!ieQttv}Zm& z#3vS;jhgbT9;>|NXuESrLFoY#jc_mlb;GP`U$ygIzO?agwb%c24m zRcy-ro;PAz#*57rA~H~vt7*T=0myk&H4!6%Iy>{b$m@NRtORO~rfQ`jULi?B$Qf!6 zV&+K2dXXG)^KE8p_mvm%zv#!BWpXYjH`p)qX*Olvb`Eb|&`nyU9G=p-8ZP+c0$=~m zvxJG*Fw=zFOgV#UgP2v~))Uu$U`7TuHbUClp4Ro|I8OuU)^u5J`6Xu`_H_g z*@i~foYVfwn}L|64>WzO?JvWr053mK49!O#BmPxL#J!gEg+fP=(;!GT2 z$HLvx{wyk%0C6)Jd3TzuHjMmCoEU8ys1xR$=*|SVikDqsmx^K7a5Tu~zFHT(#kVof z*~35(SpQ!O57}oeWGRG@bh$wx)GjH=B?4n*@^r5%7k$IazU~>J_sQdIO|fHXW~970 zvih%H(9CJ$I7|BxOCO~4yIeXeUTPnDG%c8Xkgf0it7dWrmrmXf?I(|fTJGxflz0Kb z|53V&gle(*$`^bVV-fep+<~2!vR1D8jg8P~h2g9My$%7nGE^P1-9uur zUk)ubJ~lRpa6)KiTB7fENp4ygTGB@pT(!64bz{Ah*SuYB^Y#auH02mcH}0-{)(Z9x zD(r)%nX~O^2LAIV-~4CoJAHgl4V{<^Yth{({fR zZYacs3V<<_%8LCqK6OG&Y`Bop^m&E>UNNZY$+`=(d*}aZhonYv0qbtNe=iBatJa}X zV!C-v!W9#PeF&CHVj}*^?J6U?CA~e6dgB}MLQ`*cWOO@k!JSrFJ*b8fEXrOp>sr<> zQF;Px1;nE#nyC%v%0$xP6+18v3QrJbz!By}W*dYYW84~hp-KF!k(|kl9Js|>E;6vX zyh*sBfL{fL?MzUPixz`6ssy<;422Lo&Y7eXD3okxa=V)(!)ojzkoeC=UE_{NUBP`O zyo)~WZGtP@_*^&@fM3mQhZ6L~*CtlFd6J1f;*hPY5e->FU*sL$iaSVevYyaVwZFS_85#mJs zZlLj(kr-UeQ+S^T#^2$RP+ZQ6kmzSB`va?36co3QI2GQqkDvzAV0n$Fk)~Z>0bb-$ z;(c;~F(0)XVf%ZqwY;bg8C(wUk<$Fm(ZW$H^ns@nthiE_VI&8%5cp!j^>R*fy2O*k zSM6JTtI2|8$=V{EjI>6)tFGc!hWwrmkIpe+dX3mZz3Zd7??rRpb%#2^k>OOQ%mU!r`9Nlkteyn=e}VM`m}UXa=_f}mo}NADt1D{P4o!+&-v^{xV`~dj>W_Q6zKj?qZ9P>97MJ; zeVkrSN@T{U)FtC^R?nE(`mIyP3cWb4%QB<5pS|sXj(r1Saqo&k{bXt6kV@-S!pVow zlig%d9bbcd_)L}-tSaH|;nFU(w5(w%fcK(zi|o~jDz9BWpD zbXGzx!+4+XjZ4LO!7`Z6;I zu$s$636)8W-{U5mo&&6n!F-K`5oaB0<&jTFF4 zk1I7`g+%4iMOIs?;`=y4l*=PvgSVMtma(GgSZ!9teQy7-ZGJI2v|?;}YOq7-gCIR< z{o)>8g&Fn{IAw=n7BBa*7%-{8-^RK2^ zwPGn^n{U#IDlVN;pI68Siyw%X|A5tUIU+NN8^<^FH<%(|5C)f@E>#yW%f%}BSdr+; z>u*@7MVokiQ_3|k4_WpB3vNM-FR1Z81tTr}Be zAo6)bMi9~EhLb?bG+C1IT)QfT5Atc;8I?&a>xN0bInmKy|7mcgB`-viDqq1MgcTS1 zzaWFqCRE+MD!z#&c8mm%?oMVIMtU8(g-)38SD|$5oOaNEh_o^j?b;SQzNFZ+TWE_K z{*+n;+x-LVV(raj6hHN5vdz}io5?m$^VarYhTpn5I+_t8Ky-EdLnJ5DQ?Ng3_b(>u z2LZZ6oZ~8+!FGzDNj1wj?X#k63vEZ+-IZ%wC;c3&GYmxt?NA_mY0WLTwPwUBwGv0* zq?MYp0v=63%(qy;-*-YI^~h)Wnj_RmZdhE%%ta8586 zY$Q!E($$?EpE@4V2c&i$J+HBeh8V%di>yIJ@wpiaA0t70OhGW7Z<4pAMRfz|Fp0d} zo{^WQpt%U;l0q%5>;XRVFJP|>3WB>b{Yj1}xk)^~9ClgicUz}h1bGUsBMaq09y^dM zIu|Dp5%K|w&F;3OZP>xOW@db?&3NVWyBxRkd$>yX=+57Y1g6fHNfPsz>?&`QJ?JGN zka0BagR~C**#5?_Q817$EkyCg-~vvJv(~?iFr`g&IR>3x<4`D&FnDN9ba{ifOcGMr zpZLLEgsYv%a)d2U=-}uk=<4JwgqLDt2w79n6{3@Qvv!!#MdWJo_9dG%CF5jNx=i_5opE({Td*;MC z!EE)}hPFM`&0uXGEpb|(j03jqPOW!GYHE!~yZNXnukyKNzB z{E1c5h0ze6j81~{Y!++$uq2VK5x&@Aez%`-hxRp+le_ZIu8*qCld}}!H9M7K{Up5Q z=fHOVb6<&mlJulhmJPl6pnX2=CJ}sW9A9vCCd?$~YgzqE_q$tqUbueUWoS>+W$>j` zKU3pxWE@nH&Gol)`h#TeME{seIr>P^L1(b~F@00{L%KbWdnH1;Wya`~(BGFux4XU_ zj`Jz>)KSLepVQ$I#1*VIXpK*V=aU%|-<$VH&FHPX3LOIbm-@q=xBQDp(PfV*qF<$V z->Y83r+D|jItL%a8M6rmw~BkeEBXy5rDUEIk_10_QW0+puw#tI^N1JxTy^|K!pj;ESjgl&Dj1^PeOu=D zaP}($hI%Wf_T&4)n_#TxU5B&pN__J3Zcg!UyW)|35hPQUxElZ9U0&m@ydWPFk$MeF z$VC*AffBdeGoF=+Aw~5|`q7u`y9o_Ta9ke#D93#rZ-sP=rHXbIqo^cddyEoQht0$g z_V=tYDO*Zz?)2_BL+#R~p(c-iVi&f{uCi1Hj}baQ#_)Cp+5Q~%ZI#z>P&LAJ5Wq?? z(mB0QLG6TJnGR&-`<(K{pEH9Uh=9XnUstC|=9R{}X(=dUt-E=RhBRwIHa>>^A#(p! z<%t}`{n(YJ8j77kb;e6o*SNKrx*FdD9jS)MqVLlY87TVWEcJ{v?KK=>^c}rcqRgl& znaLerO}*d@7R*+CFGXf>`gu%yUsNFc9%M)P)8HSC5jv5|OeG z3PDQUSd~2IMXDtTcE|@4k^04|_bVXQTRD$u8vA2TRqi_-yKSD9C*}ethZCoXZWGhp z%F`X0?zu|2gs_{pcu-Y|Q_Eb(wJCtwuA%31enZdq8hmAmYYJquQ$$_W ziLbhDi(iY_imQ`-_K3MA&xumE%&uTegpJP3mrVcT)Ne#Sqr8c*7rw~5lsk2do+=FP zDGu(T1~&+VkFQ3@Ta_Hq->RRfIMbgeP)LzR>PJ*q;jN4nfzct4ROcQk>)7q&eT`FB z=6>Q#5tHt7A?OFbCh=#|4Bu90e3 zCEL8l!AADO{Mci5c)3G%PBr3c)2rjV#olLoD{G792BVmS!dG?TD*yn6e@DGfoMLlF z_s3vdS{Z*P{sKG4@Dy60K@7&1y~a1llPC~AUgoJ5)7~WQsAcHIZJDK`=@8$8m{JD}>P5Uf0%Lhi9pc+7+%lBJB=9->sOiJTmZB+ zZ5E=l>ASLItJgFh_#qV{D^$l{4s@TP)l-2%TR}CG$}rixn(BH~C%&LL)${}v5sxQd zcRecreOyC=l(m+X7})#5L&d5xb6yV1vW1O7raB8BPV zG_%!(xxoUukd{*ngxJEwX;AvNvS$6};4-o$7DG1k@}a)I3O@()?5FNF^$zJO%EhCV zB~Zn$p&W;>u*)NDd_;Hh_23$d*r`OXOhp8HrS1;HM|!@lro5zei70{>&JQsJ zKN5|AeEMKq79I(s^;U}0LhXy93CELz-&;lsn?b0)O;=V1jR6lP0xq`wh7Dx^8$zmT zNST&aB^>@$V6M3`Ykmf&p|{Ag`5135jML52dk3S%p0nHc*D{m@p(tdph(yM3UXf@` zv^tJFIsRsp{^WE97JnjzQxI}4{%qZ6;@cG3-UYUQ_yYE14Qm*2qydW*rurx7MjB3m zN_8%UT?U6soHG^EOrIitu zZDxL;-7_s`xM$4KJ2g4uSNOTZXDNXfZ=qUZKZCg9Xk15-9HSZX?&XjG##ap}eW#KM z-1RZL+-%gvXdmcHQ*j;*Q_>2Qb6mXLzxwmmIXSJ1yKz)g0>g%cc);whOjo`UceQEn)cf`*MBl}@gDH&hT@LqCu zNjh>$4E486{|FCm+$0~N(TpQ#kG4yQkLUbA8L&=%p!Zvm+`1h~$1P+B{h>OJY`I1w zt`>>E)^&6<_0vjddWv3S!Y_@e-)0g-GW=d_= zi};1fx=Yca(;l(xW&AByh5eTuBZ7EAuCq*7I3P%pVtmWsH#@hA9BI0B0zU(Lw}LVp zpvp?t%>M!!cJqB=+9if?5cIac@f}-Q)};EO@y1PS!7$U$xAhdi0l#I#rWMTpqKcaZ zLsW6_D;!9%9qzE~@$~$(mg|U3VA!kxJa`gk7o6DZ7Y$hGSj&mM5+ZGnJHCq(88ERu z6f}4Y=@y1yAP{C@3;0q|76`p~aJ+xyYhnB<}BuK7NA`BGuqp|MyD|ccgCY$V{IV zK|*3mCLtZq7S||4{tG%Ik!3>KtxfxD21ynUmre^uLiQzYBuolecy{nGDZoenI{UH7 zcF~Q)TE<~*Y8-rNg&7Bqto-QSE!DX4$DpLF@X#)~0L(To@yTL~>3*^XpzDJ5v_808{Yn-?zf ztepMgI4H`$(!Yc1;Un8DHNkPlNLh;9fu+b9!?}s$7BQXVi28rA3GusM!P*W4bxJgl zm=p;6KoBI6p&}k7=6ny~Z_wKKw+lkt2f~HTehLX|ktl@*-=} z`AiMJ6)i2S&jeRFLfVd$_YKvHqF5s@}F^O z{^R`L&T>s1aj(Fuf|?+x<{BK%n}US4LPZGiIJ*O zYymmV09Plp#VQ%;iP!{{fvO)|WuyGm0~+P9CjSiAgx8d0+PSiWb-5b-mA%j4ppA6# znG}(>acFGkI-My*2P*aSfP9_sA~maqO)=4gm)DdfIii=rBD@R-9JPy8u$GeK zayvk4B5f^MAj`M0?YCJ82Fj0s(unaTTJ<;lTyMd%Hn3@a{lR$u@~>us)nRP9+K*_9 zXw3SA#m8gThDRsQC;$ucN46xB5ybr*LOnv0LREydP*b*rYR&Dp-$t!gtAL=vtq=+e>;~x=P zyvV$K#Kor-Nr%W;k)`-=)%74{vm*Wc1V}i)MS zl(dB?FOyz|PKkv?NSHQ-@p*+0gI=3Y#2I-p6l3-z-yI?Vc{P+96wE(U`4vHmk_sSX zCsNaNS8_egYfjYe;DciF?c$%Vv*xDd;x!U+SYPygJ>OsA8$qlr0+Rr0Nqr~w5gqHr z2{*C#B3G%;it99RlLa-x!gg_Y*-YoeaDdPi47IEM{3&L_K(&!>@56ve#1k~q(}xNB zhpXD1+Z;<#*D0&HF2VxxVUqp{7qaz%faK~?O#Z%)lAph4-Flyvv&cD*a+`-j^I`gh zO@^%HCV<<4Z41uZAN2+_%jB1A=U@MOp?%^G63-@2aoc`xm5;&j1Vx%6VBi%R5D;Z0 znu!w0KLy;9HIo8n3D}x$qhLWYVh71B3n)Ek)xuHX`}&1rWGPdi0OS$>q;Bdh`v43! zCgl~G0L6PXrE6N~BTEFvo9Xc|17oXp{enLMZqE&<6R3Xuf?w0@sCY}WbZ1NpCA$ChheKbzI;zFm5JyM1vx(}{dMc4xZ%2kcB6)-0Nmxz{H< z9>RM#ROlos8XsO1P0|5rM)LiyU&+Zvd^?V}{xlvHRoM>r7MUH8xT}_b7C<^+RXbSiq~U$g3E(goRz!ew9QK zDaXDoF?^i~MqTS((#E0VYzuwmH6Es78v?maO*ABZc}n_)lVVxCWNaXj-N?+q& zM|$wDEHoK;-tJ?e>wl<`Ei%_fcVjJUcrQ1NuUmB3mB}xR6rAlaQa|5eWD$RL?0U>O zqcXSkcbUhBnaA=McOGuls2A|`Uf#zMUewx)^8ku)0pO|0dRX(plW?(!v8 zpQVkKnZsgask_r_#O&oWJz2Iq_4tq@}Gmzot-ofqa#g>ntO3&B*oO>O~$Uy--rlW0rO5Q0?)P(iF5_=WRZ0sc> zcB7`RYi)Z*^;ngwGwmf7*}35sNJU_o>iQ|YB=bJ1O7`tZcg3L#Q}t7uJAeHg&3Y>r z$(-TORk<&9yyfJRus&ETr=+Ev42j?Jf^ozlRa6|(Wu=0D;7@M;?q*L?C2iI>5yw?z z9ZaGs!R9zY5#VT=2pq}tFVY|Mv54Tc1iC=iES+uv3g^0q+Ahw<(@BY;#C2%8k$MR4 z&ymP$UQ?8pU=2UE|8e*{$5=_=c!#%`GFjG4T3(S4a5>B8*_b}&O>i(XZxSy-HiYqX3gvMZ zV25T-Cu_w+k{XXD`KWl?gA=2M!(qA-Z~Hu9AF1FvnYCUw6Z4VyD0+oPQ@4Hd!rvK% z5O^xW7WYTkXL8Tcs(RfJmM>QXhV>0AVg%^*o^R!lv;32eywefP7B!iC>tfqVR=3!; zSE_@TiZ@^OA9inHH+5}w@YpBsWUH4}gt95y1C#&%OLcn7wH_XA8FnnnzLXd#lqp0x zi?oZP8#3Dh-W5%^ko~rpuM?#}S#c<@^L?N~>W1HyU!ir$Z_GL?za|OC)X0BP+4TC) zfBX(KqBM>!BDOpS6F_5Uc{GX}Eq66psNKOVif3vu6iyZ05@!yDbB$cVAZt~`C685X zEh)1ji$7C$2B~j^Yumsz;ZEso?UXhfULxI*Vz)6gFE%V5Ds5IRRHvxp?5k8%DTh=Z zdSoHA{R$C7Eqb`+Vnh{2yqGnQ*ry&bMJ-Hf4bp858K$+w#zCkO>DSMn#c#K5Q;BRl zj$9ilMI44b2-J97#&;v|K1Cto)7tttLC$VHiu@z6lN7Su{vF_Y?t5IKz@V1-rh2iFY?0$4<-@+2GrzPveuJ*$ z)wQL_jCW9{jWqtwq+-M2%byFz@(a3I)7cE#+EcPkxs1xI)B102e#U$Xs}i#y!=++6 z3f2C$U#Qk(%7zP6yT9L9#^{L?4!nfkq7O6Sq1!N0fLwT#(D8ldy<}yIVsW}t1LO@l>zYZqIo>S` z_;zqAlb<>`#oEmdPU_7cQvtWadv~|GyMb3I52TvT$3`?mv%$4wcXE<2_okzeL4WgZ z*>6o3BSeX2NNG5kl;9OhcI)D#&B9rrUMnoOP|o&TX8>35O<6wx5jo6u_vC*XY9yFmMbbRD!UR8NlLHPU^Mgu}QrAj*cPj{J!}z;q!Tr++uw zC4g%95HPaGl(7miu@2*d3?>d}C~k1}U^+kT6n`@e<~DM;)@}C1N6N6x29#!C`No1Qc@9ZnHgrPxCd&?HUAc;3RoNv9kL)N=<1PST_BaBn( zbU|s|C`@%j&}Vf+UAQGxD53?id|0t}i0B}2mOCpbC@HU zi*grmBPR$z=W#my;4&zqFizO2k`ETulY;zox>i-jW553;O4$}e%iwnZbY2^V5i#|L zWOV0&6WsVg+vc|?OG@c+bYD09j*KaV?i6nqcc-B^%%jI)&R^%6iYA=vWVq7Lm6z`H zVPBeGYHk2J6#n&UGqh)8q*}}3V}|?r+qHhiZkM3PK?**LxFx^kfA#=#DjD`)NQUT< zyGv!%62XD}bQ2~9^Wk(gQ%Emvk(o~L?_ksa&VIyhxfvWKFQ($*o(j=RpP7oUZ%g~% zv|VAda@db;6HIl5xI*GK2FB5Mfv*&=3wD`FQ7P+vCZc%ycBn_AshF3Ezo94WAHepdHBpnrkMS0Qbc)nWC+uBYb8sXEL99qwfvn5ds4_(L+QTjwGC zN&;|iUc(DCZv5z3S~ng#)I$s{6#o>jhxB~U!Gt}OV7gACMP#954z{4P1<@cN!W~(# zHY5zzj~~>?)xJn3T`7b&H=|HYy#^rYy0K^|3H!C!w*cn>Eohrb(Y}N>c?Ciy)K;&7 z`%D!>! z<_Vbe+x#(#A3uo_q|vpd3gd6PmVlOOHbFSZL(^1|7N)%n_*#9q%#`bw6+>RFZn$%a zht0i)P5I0(p=wM4EwVZxoZNDoC`)NDbeA@7vAyHPm`d^Pl9z=hKx)odM0(DDgr`ke zNV!D^xa!{XS&0odXqxL5z!ks>HZ0Z(>uYMTr|5exeK&U6c2|1-bk{y%DCn} zMjG+=j4_7u)5z67_yjzwtDdJrJjuBo{+pzTB}K(bOQYwZc#fW@&nIrI>tPE*v;>A_ z=b&@603n0TX3gj9c<~sWKw;nJmaK7)DnvX97|`*n#oUkEY9RD<-V(sC1RT6*yM(jp z00Aj>J48-l7)vt!Vap6A*7FYlw_@-NLWaSd)+M6rZfT)Ms>i#Y+bbUV^Fux|EkN6S%F#D z?Q?p8hBZhIA7!{kFwAW1ST@v>`^xquE5lZ7h%)+MXWucn?RTMEVZQ6xI?6>-5md%^ zL8^YopAn937}^o5RIw^#+tScv@GOKOI&-eVs1%Y0&=!AZgFj`rEN>M#!B;c`Kw9L0 z;lu*|=4>St-&;6Yg8f;i9K^?|j;{^149~%lo)Jev%Yf!$LB4+}LORX<6J?w=n;Lf2 z2m3Mfk$w{YRQEOW=~Fb5>TfE(D*BA{S*{ecH}5&b{Lw+&IN6Nl(RHWGP@uY`3o?tE z&A;JI^-tmuizXWF!_X&WAr-22mYlzzTGv~%bF|5cCwR-3BHWY_3&2};Cr{C&yRXg& zKq#GSMAKlZlp6w@2fRML*GBa@6zJ>;GUFr32wtXU^lwhJD6s z_!4b^f9-;a@5za%iHmMW3!FXhl0;*OVSpX#{$^L_-kjrlQ)Im%yGb4ccO26v+~dWw z6-h;kW(5@)w9#935j+6C+jCZf;FMJmD!<5g4el`egl?65WZC)<0uVBcJA08I*)4t? zNRltpu>#)Q?TqkR_-*887S#^uIWXlHPe~XuG6M2TDW4tkc%3O>Nr!92;q`!Ct&_}Q z6m)(P8k1rt2Epw6pvzH&nHrbH>+hfQ5Q0%|9SD1b!r4p>+ctOF{*|)d3pxIap{Uoe zXKoh9@A*e5wc+@~jN2=sgNE}0{23U|FKBNavU?H6b%bRQ!?jiGp#NL8ec+G1Haytv zVSkM27_iPw0g9gk3!LqzN3u|K`V@{Qd%$xK$ZXppY=+xX@n>JCgg>)=LjNBPH}_)J zSN=hYY$`?vxZQtwyYRVC%m=+T(-tn>*FfX`XvZDhX4d~Jyqp0Up5ony?0PPEcZKn8 z<${Sd{RrZG@!6A6W-^_^#Qi@bH+S83wnW z7pG+5;SWU*&@6D{ECZW%D-65D?-td&bX1Bg46tvyi*OjZ-If<#*~>dlI!TMe4pLC( zu>|a531H(~ld7TSDX;%`4PLU`9U3dGiU)@rCwTE~frC7EeEz(W z&;K}oZf3}``SW`0^{q|Er2R*EPci2UjX9%%G3GqI6T21LM0P)#IUAgvGG_7R+Z|u# zM6wfKek{$GO@I&ivi}5ZM65T(&a&>2lV0r@rumKZRDV8d(_Fnxd7<|2NJij)6TVg$gY_Zh^Zg-(P5_ z9x+KL*^5=n@sUz_Y{i-WS$w8r@Ny5!f}@WRCtPCpvg7{>OqvOf8TD3PNd%|S{fHUr zHOdEs*rc&*8a^V9IyVmUhL5p~TN)Hu{bIPgjM5qvS45Gm8woka12%n_uI3Q(B7N6W>P3mS^4d$@@J;XSG)3FlMEw{TgP}LM%I=1OTiejfUFce^iwCMR`F(g0I)Yx z^%eZR`sN!8e%5~4ua;@g8iSsQ7* zb*jG|DfjP{JJ*#%Z0%g1B3Cf3DR?@K!=Nm^`O)RhVpJ%1Onu)ZJ!=6-@e>4ecXDM% zR%SSB1}1)6)Qn`C6xY*~2L8)oN*QxS+Lv9nn+Zjoyw^k(Y-P%&l{x>6!Au+^jzZOl zh1X21w^$uGS?Tb9osmh9*!fBE%ptnOk zm5HnVFZSL&KI-bu|DOp#gQ61@D{Z}u3PLJZrAh=eBNLfm0#u-4MKR<8sUg8+hKtu| zK%7ly%l3ZVx@~uVc6Yn&?zi~e%kooRr>d&Q4!I6gc%R1Zv0+3bSy$YjicB1EAK?~J(x6}*pz68mL&ULaXO!w9+&UBttda&whW;2%&)KT;%z~M4gHnKR&?nh+E`nn;BRJ>Fk2A%l%y6Nd+GQUA`wFMxK|MWie489nx0zv3X6=eZS428yNvAQ& zZBWl(1!Wzogtv@Vt1+9j(e(6h;ZUp4*aN~#m$L%%G?o7CvQ7iOIQBE5W2`NV=y0{= zChT9(v)9?4HKw_e_WtF-$`J-o(jn`04G|d=5jt-lanuiiZ`KfH4QO6FM6n-YL)4Vp zb~^@zE|MKA=Aq*Sa!ujti2pEsN+VXzqeWE_NmRMdZaQ)y&1f*M{V(Fk0L18$u$a+5=KCu)hfjPp2LxmkhpOuSsJ{_q!SvP2fsT zL-toO5j*RkU>@_2RUG`e%(H!A%vr(d@1=GX_CWAbxMqeObiZ+3ou zU+*Ko$Pn%E#~4Bx>qW9RAtPNF0OHnC0l>cl>6?|5$RA>4&+MP~01JP+$@A%_7;N3atLQ$@g0Fo%d4) zbx-Tge)llwC087GCF}srWus$11q&x6X}?k{FiNJrT>a(KjMSNq03Wy;Q~#3t9Lt9G%gx~xUs90 z`ZIwpUT5^2M~F#%QF$AKDvyJ1GK>Rt>#mA#t%^Ty=r44rvh;0hZ-lF{D&yO*S&@1c zL^Acoyp-@~qp7W9UFsn|G&RwVg-=WRo;YpTND+mojQ6ma{Ye&oD?9pyEPd#pSDB&~ zF#(MHS8T1yJQDH}^tm;MgvqnYH4Al#X--z>Rf)nkE8<%!xZEKz%1;@{s|F6W9rRCz z>S8b~*B+9!uk}}hPuJ2rOm|xiK84vrGxm^Pm9gE#Ne7VR%6@Rh9@0#rVGjx8NYiU3 zJzU{`DwKW$d@$|FeV&AdJLr2dd{DW^pGb{0t)#xiat{(ojLHO7mJ^t@>Z7B&5$>;( zT!HJ3KeBd?q`Hk<8Vr#Mk~YGG6!-G1PAUgjn)%T$$t=lBP~n3k z7_TdT1I-n_EPcx0%XXm(_`=m|%wMU004u6oCGuCvwA|R1!>*et@XzQWAPh=<-6GFQ zJe8Y4>F5a^13>Im##{($;*rvB^bcWir8sU(iC|<&gNDyVDG`*+xHNX!qVo-YUW>7M zr<6h$f33Z^L6FFl?zM8#xh)nQP~I^V8%VFkHrP>tDVw=qZWWgVQ{bYi_zR|8D%xeI zXG36BkD)~1N@aWtw+Chtwc}6ijP)BSet?;P@`2J-lpYMMnu6X{>U;dS<0fL~P3+B3 zO*5)h-$;kw%%2I~Q%~{Z!0Q|nz{bn3H9y{Owbuiyo}<{FA7$~M>m1yCTikpbJo(O1 zzH_trmNT7Kz*u45C9rY~QvtS;xL=!>N={7ZIKV31e_>_`jUUmYNXNCrhp=C*8AS+M zp_h&mRf|>`bEQ=IQfu}LXT!=p+QS~=E<7&lmfJc&Z9G=K{A(lOkaG}=dV zI$M-3ev&A;6cb|(-_xHigf4bWGj;m1hMQ|bXoMMiY}`neo*0QFE^7h^RO->atQKFe zSM)uTa$@p=KbfI~y`qmDvpE>cN$oK;H1oe>pGb#1!jAng*+@|Q_`9-Aw3fIam4(-V z>(9i%o z^hI^&m6F>aVubdHrgbyrTWCFxS-Dv1Ts)hjXdQI|pU9A@49w|rpij|uRF*b)9>2|oYFAu$) zO*2krN@*?3+y-Hmnj2^O+K8&Za=r5{x~+qrtiMLr z4lTQ7daP1*g3!~lhJv1W>jO!NRUvo1fN%x;+LvszS*(iDBwXqe)`DBmBv(^*&*K5h zpF=t|ZJ-^#PsDNwtpQ8KuT-ZbfQ=*%?fN7w7@m>R(VvN^CtD4LLz6EML^bhylu4Un zkwzyM-pIMrqhM+yTx~shbIi8&C+1=#i%+IJM9LEQ8fE>LlG`?z)^s$wx-qJoyn}ry zYNmG6`Y-t(h<8#iLN7Ao&E!*T^5H}&wcVGDD<7*C#y1BtHzY46A7%3QWFl!xz4Ez- zeAdvJC!H<(KlKQ#yzN}`<_BqGvfsh~OolHdlWYx<+p0NaK>9zQMf#Qb>CaPo(PEoE z`L1v!G5J0sV{B&*(NjYS6*N0-&?*~rX?{-6^^nt*X5g|8a_vDm`i2>MO8uam;6bn0 zuc3t=Tv^me9^g{h3e7?FE8%QlFAb_+YTg5@jB(q<tA)GMHx9sl?&vRR*I zvwj>3nuGZbsSnaU8(n_D#W&}kFXudahP1Z7IWt)_+F;K>mG;pn)2Wyaoc#H74Cs$9 z0KE1MOn$-(bB3J;ydhOUWu;%z|A)&wcmuthKsD*w!l8yFCvQO@PpxGwgL#aMlsY3% zHg-I&`XVh|Kt0IqD&=NkiD-2a)iXQPuaQJkcY>X&oB!Hs73swjDhsRRNXDs+LZ z&~Pdg37QIhfb}1PND_J8XsacZNVS3BK=9lWgNf2sFjW?c6jQGV!^99w$Q2u3Gn4nB zVIzE2fXPsFjAYV{YB^b%D_g1xp1nV1a4@j)9+SgM$@7OxcFcX<81T;JL%VvoHC*^99dKf~SMm9C)tJfoDbzJfR$Tu(08QXIKtAr<>FD`;sFK zJb_gj3*v`KLS0i&x%h4HVdCe(hXXfSd}ucKKvPz&G97yvb5@6Q&U-1S zNZm-l`f(U@<4K=NZPfHD@RIxIBkh;_qF*%pX(xAyOxom&y+_BF`S>w#xldx-d&e_( zS|iNqKH&Fpf^5$$4CqWe5i9eM)l*Yq5x8&WL#4;I6~7hn!WU7^jPKDUR$MERJlTo- z+%zn}7ZD@UzMC88Ymb9fw)|{G$LL2VD}bRele3~^9lfes5j(kz1>K3jqu2XZ?uwq7 zJa960LKx57yRgyUG5AOK&f&ByfD(cWELReCV?pK1wNN~1b9|Ft&rw;5hHpJ|5I zrSsG2?!sY|3D_rkd&|fVTzw0pT5DQEa$kXW^J{Oj0^EoU(6w)C9mw4da$ zlY+6L?t-&TyJPx`c3$Tv=IN8pjTTNC9(%#{YkvptSc-;S{EjxXIJw0B%bw)!0k&y} z^sLCt7ZrDX(k4L7P@tNA)4tQ<;dc)wf9u5GH9ax@UELg``GWO*W$C-oOAthuh7|*F z=tI-6u~)bXXwUVgNkEvy6HRz1Ktk?e&%_A8b2Om*jAHH=V%T;%#C2&kf&pSTWY*hiCYUgLC2^KQ@G_ z&yqG_@);l;w>=bi^k7-w(T^jW%8Ci1?bavPG7hcDwsG6*<5S?$ZYq?d>a<9F7Pztj zD!J2wE_giG*WOl85UEL51b*`|SFiU=won4*{d+d&jNe%l_dYHie>zD)>G%*VSY`*f z>ce>nFhpuPjA8b1r2MEo4Q##m)Dj3R?k^6k!uXD_4f9u8TQZg*&(o60o7CfgIcoc^o&&bc)-}amN z)@TYRM<>i=)DMP`S;9!vZz+#WVbYkwEQ{ZeTP}``7ZTj>j|Sw;M2B}!r@8MhuwH1h z;5Fiwfw2=zNA`43e~e~lq5FPz{_yMY1cYf?PxKYC>i>ijd!kzhpvag z18s&Eb8-T%!!m7B7?U<#@?XEHtrDa7w=elqK8$|czU0-|EvJX!ub3SdiJviSnBlf= zK`~?%4YzEOY17mnK)1~NoR~aZaQ=L*!GE#t^goLU5i+WqPVNMji z-@$D|QjW-d(jl`w`bt0a`yc`Rh-~tVpW1W3Lyrt_n*`jqt`VrNyaCH(6mF4WQ+z8eZ^m(A zcCj;lo=tvf2wX&7&RKjBDLfBVQf%tpS*(xa-k(xb9329lUzhrgipb>$lRw7K1gbyk z*UXvKakdPR!)7LKWi_&d(Og!PrT*J`!ijkW1<{$Iz;8aBk{J2L^7zj3aof51$Krc9 zzLhI<5(9T622X&+W1`>+>S90c1cu81TtNuyF}p%&T$lTwFWFb_-x)4_BDTqxfMb70 z+D7nZ?QaGXEnPT7g5EW@( z%T`({7;)_4TKCFsLmHpikz>R#`WIt=|? z*c@|8D|tQ;39_?z8e_<8Sr(jD;9I+eK9WA*paQGI4D(oU3X{UdnWlKd>)C@XyjO9raD{nSI8pf35K~zwF*wBe z=hCf#Ra)5Qa9x=Ex+FYtT#PHV))zn;E(*234tw-^KOw>VQ2RPqm1da1Ym3pVVUP9% zmwoCP#Q9Ckk8_t#rT@e7(ml~}j7mrF@UG9S_g`Y7%P`iPaF`Nr|TfDR#j9-_Hc_U{0FN1J0si( zKMqpyN+8s}n>xSJuL5N!(M{bup#yXm4T@aEj_rW0(f(T6tzmdo`gd@3XQ=dp*z*SR zob?m;nI^9I1U(F_B4y4x82Ua!@ToXY3TIu{Hxutj?yu^c?@=FZ-807HG*$Gy1 z5ym3dv9j2y=vU7CUK~j*p~%^1v6sB(F!~(*4o6D%SCn-7ced|7+x!y63NNdS7hYDn4$xpXF>)UBMW<8T9B`PUKE1HaJ1T$-=4uBQ;AHQG4VS!cu^VyROsnY{yJy<+lr%~VPc}n9xF?q|$#`j1S zLgb{&FWNp6*QIG$T?PR#Q&QrZf^BbyVWG8prey;UZucM1YFdnb;*4k2a$ydooWR~m zI6hVl&My7gB!?{wl|IvQ5z>lezC4HJf!i6XT5=MkKa-^O&rU;C6@^Q7$9KRUF$rpU z@wtL9Y?E1GWSWa&oE3(062gRw3PK!^^xN(;3l1$cb|QK5!r~oo8JvBO$}cl(tpo8x z+diSx_&bR!3ZNxa9OX#UeTjiz5wS3|M-;AES-#Fo@+ah;ShLlHbIehS;6$6kqaIp~EYg^;GgE zeg7fzZTU4T$VmnW>kwPCUbqYk4L1M_-M)KYhCSXAJ1xT=Th`cJZ-D&kAlIxkM73%Q z3aV;e!~Da`6OSib|5o~&n(W~Lt>;k>FA7(<6$_KPSRw;3GvLr=VgmugWTmStgXRp4(hN>-IP27 z(HqO=?{o$pFofNu<7Pec(uqu6|2j?U9Mgo3{A`vj3kv6yHKRBemz|}ucF@63bCuym zpNm`s`5my;7DX{DRb9`#@n(@J^T#UlVpFCj8ZR+6bR72JrvFL#(bEi(Z{IKRUsk@% zU`TPB;MgHgsDRz{Y(P^I)`@=c=@x~rP zMf^Q;2HEiJs3y!W*6LMDadZ+mG+?yv@A)Y&@U?|%7rSEaxlD|Dc~Kz#8h+ZTm|E0w z2F%!100rN<8AAbnQe^3)j-HoK96uC$RLaGSw+dtgWOKTHW_YkvBab1QGxW~DF2?9n zDPc;{Ehoen1EV*ykN7M2L{4wahZ(+JyrzsP6;}~DX7jQHzuT6rww!`Ak4t~}K{~!s zvY5+h6=o-RaIN)2KQd7#+;~` z*F{j^GLM5@D~uPxs}&lvI|w;`^ha_@_k3IZ?BXis>vPDii>it7>yu-DVC?1$2z77` z(bwrmNZxG&49WXv4o&oM#M~+DUpA?ad_DiTX55yw^qMa<*vKf#3@66rBQOhgiRPH4 zfjrUMq4+bQ_SaB_J+6Q*KZ2o}I$n%4dM`tEJ{OsP>=7k~5hZG(W<5G`J-pkg&Ysl0 z-?t5!q-4h{X1t=<5W3yRfex&&O2Q&id7TY89?_-jSR3Dc$#Q(P-k_ECC=Iv3&*4`2 z>-&j)g@ZPFmb8LwfEv68Bh1k_%)+hyoXLkvA-PtB!yD=3vY*O2U#Ir+{+%#&+?C+$ zjl4TJD~;e>oJI1X@uIjgwuxODVN(m{qS(co5NNMa%dnr{zM-IeVjYXCbMX+AU^8gV z?LmooLz!`2r$$G$nKax3zuAdPM*L6H4Cr4bzk>Fguu_J~vanxZIz9INNXJ0VGrBbz zb}7O#Qw;;p%)shaVWi-U2+qK2>D?#>b}`2QeBhqv$yOf50_jzZjSj={7pMk&N;T6=fmWXx$haxb~cL42t5Qs6emxlmBQe8v3m0cl7l#3 z2P%i&nWm>fvvZxOi25b+gUZCvbtbbt$!DFmzJQbxRgSg(B;?oyYwC}*78e=q`S%kk`tEJ~Wnr-%J3#Mqd(aFb$P{SN6$ZL9BvmL*&ICj)Bsq<8h|SYGHYOkaDSgJa zI+pmx><;|hd=`XcEp5hoX7R3eJ41`$5OXmy#`YZ?rRxk-bd%kX)Hq_e;8|^WOGQ%0 z8Q53S=N$2H=m{r~X>#hreAn7xOmcIp@zO@KVI!#~yawoaw&gbxl?4UkI@dBnd`LGV zT`%{mOcVyH5(9Pgvv{zU@0G_FvE9e#yh?u&w^P%sNHnfRqA|CtbVp3q6#F0Fz=Uka zr4}wsknm6RplGmc9~e`In*-l7o3|ETv+}eO$Y)VH3p}bzXw5V?q2u(xgY%2_2(8de=+5F4;l`n-1K(YDXzMxa*da3_ZcHV1hp?b`&Wq!A z^?aWD8s|X55DH0fl|1`(zuD6>#G+4fpOC$N_ zWD7vd<1i6Y&IcF~n|vC1%4uWB=G5{4GZTV?oW(~LTV(I4_7m(-q{)EB(i@Id>IXasVWja;lo z&Eo{=ybXLW)L=Nk2euwh<8}|3#u$MSU1Miz4^Q6b5^*jTgl-_rF@HOQLi^8{>GQRY zLM}uxGJ!ky*}$MdKq&jY#nbrF-6YBovxkF1#p-XYt9~gksDy`X#y7~X4Z!4&-C_AR z<@mdj2ibd))N=@8I&8o*m;Bb&XV~M@LCW~MoWI8m8}p)>o#}_6Lwg3u9>Z4|UY|f# z;0_@xU9iybtXk~&VNOzZslz4@H=rF!-tZ%bNKm`YOHZS=+e3-P&}HxoR%IQm$^e<@ zDW5pH<)7n8-8*_FZJ05pvVIvNt*>C6gZn`cc%q%v?n=^)EQ7fHzs60#<2p$id!c7H z9!O{#hYn1B`xop8goh5~z>OCl;MYH}rYnj&F4tb`x2d+IIix%v_}=1qgFgDNtIAo4 zN3|0FN->xIY|;9cy+T8$0ZkT;8JhDDIM2J9q^74aiXtPa+*QJaGaAwUh_1LevlEa* zV@V$2#YTzHPO%6udh@cgtsQD}KMBhPLC{v9nn|hkjUExCzV&vwmqIkjaXP4~jDJ^wxX zVulEP_89e8CqhK(iKn-0%;)dJ9cPER=eYeNcn5GRzF!Mi*dj;X9Wh0%i+59;#37Ks zuvX7PxvHA&lK7x(a7qYsxt#kE|A9TTFy_4yS3z(P+Jgs^mBEo=P6;85!3LT%xQl5e=F594 zhhCn1Gs-;o+=SPA%K)9B^# zIv+zYlEdq?0as>SD4JqRElSQr5@Sjza&&JuX`}3MO{?v8r)vEgoz+1WcQ)rYrgVo( zceWe{1%uBFT_X%$tE?T7h&4<}_H!9fU4b8W2Flm1WHLHJ|1#AER-^mENM2S{o|r;K z@07Gu?NVu%W-w0i{qY03aXAgrm}P%rHiMco88s59m}R!Ekl(9$9Bh4Evv2Wm{oGkZ z0>f`$db1*N14tY`tzeoX4ODX%Rn>Gx5-p(7pjzE}un}>{em>Y8fUDihx_WHHFU#v- z8_YI87?!pO$TVAK`e_2c)~wO&p(B!4cffGbRmc!1RE)4A*e8Ednr(-DOfX`_`K9Cd zHOb-pM}X6sk+3&2?**JpL%yuB1)9H#+sm*PQ*?0I#rW>WrSJvdYkAInn~>L+v2K-7 zBrL%iwnK9yR^pF~)~bDkALXS7qqD>D-J*+BcVooAm4lU$jte7+4&)q%prh|N@UGvY;FUzSnQ)i+ZvGL!3y%ExsY8|5-X{pD6{>@U4e!uUIQRZ1`v_|498PY3>`7ne4fp1dQ1qSbb0c z61%P$)%q#7UM|E>U9b4O37<~u6K1U!FzwsJdFx$fAO^3ru20oIHX z->M;C5X&G*VyZvRqI&#e;rR36_;X+cB*aSdP-Aeo{7~tefp$O1IWXAKf96%nXNMLj zyJ1CEbwU|CPGzpaphLUrQ2I<@Wr9k}_{BZq-;M0T;9@Agx#tA>O*8tbtvA7^wN1L% z7u^p&vCuzU*>RQ7tEsKqcOiZOw_RDTp$N1H$&)KemzJnaK+<|~%&nD;UOS?Y7f7pa+2x#usDh<6A z5rPnlK8zhd!A^ektL5?ahS;!)R2BHmUs)Pe`kyltr(;}}=$w=xI-$hu{=P^_7nN>5 zqRo+44v*_ZVM%w(6tZDfc!~CH$|(Z=RjL|uv-MfuE;&!Dno=q!C&Rgkyv4`HpJccC zLI~PzW7!sl+CkYw@St%{gVLH<9%ZFy=l5-pILbSj@&cOQQ<4BsKP%5Rvu4Nf_rnCq zo)k<(u{Nsi`H4PQO<8&)mJY4VHatxf_-_eT!tqzNwZk^rh5|dpa(O#gqO5#nzvL_a z9Y{`+gW|4&5jej&jL@d#SDKg^FI{Q^CSphL>3FvBlUI)iJIgb$twzJ&%;TD;uTvT& z(fx5^@?Cw0;&8{9Q2WRJrC+xT;rYd8IYIR2&8CIfuyCdCaDrm75F?cdKl)dW+C>u-mcYXhD5q@S= zK-|@{#o;qDJ1*RJh|qv*$==lFxY>G|1014R#tgODg)(^+mu-C;W;Xe=XSFQmZe-L4 zk_EzThH{TFmjaYGx6RH zv_EO%aTJ(zM*^#x_~s3MFtAz&h)wN^?2?ZS_g@+)c(Dc<10}VxG|3U(^3p?rl@b?f zyVFSFU_n1gHrGn6-mL4x-!QYRX>3icbGITP2&}SlH8GtQM7Jtmwje^h|3JM>Wr^Wb z1w!Fg_7LIViR7Cs~IswTEjaIp2gi%mQmhNys6T?J! z>OPM=$F@K!ZM>jUQc5xDSh|y$vc!~E@;!Q<)UxWOJSL>(nFM8Sd;qaIIhVz3B!22& ziR0v#2~Yl;n^RHhj-2r1KM*4MldLxiBVByX*1Xmbqq_;O$ZOr*Oc(!c!=*Ivv^~X zzyb1+<_7h%{?0V>V1xx2ESCIWS18d0b1-^6Yw6Qz;=-YJ2j!BMe+B^d>k~1U5eZdB zBlNw);Ph8I)r@RDc1BqV4`O}BX)7ZM7a3ezP3v&v` z7(LIrKw%rQVQ2~!AB{rpJYo~PoqY8UyGd~&WQ>;VzkV|NC7ahoQKj0~+4GnoYRSL9 zQSCBMZMiGD2U~Oq3((+7e$|vVs9(=^w_eDXQq5$QJn>uHL!fKgZ2dqWw8ChE?8G-y zdvbx5TI*r$Nr#V;_bjk?D+TV+edA`;uf7)<9&7Uf9%Gk<#)dsj&LII%Q&WEJ@)p({ z`oZ|*7BxH4MN#ZxDa+9!r!musEbwVc*}be@QwlT>aEN?ReO@d*zcwbB znRNDgXQI@qSO>l4r9MRWjd|UM@7txBalM^P+o%fEmMetu(xfE7-&|uRC0?bbUBVed3Tq~WkPM(N9Rol7iH5&Z;(bRd$kt3t0^B!rNg7D(p%eD>K1fOTA zP&}@rK;0Wue23`X(h2yTq6KX|Yw}YhrR@GIQ*m)qnPAdk3&CXOFTn$&Up%weK!tP~ zu`09EX?hvFlXb$itP!q#g5fpy39TBQ*RnvX9*pzyraN#5;AeASkVLGTRW&;ADI7}) zdtZ!taRV(|R;*e*9*eKfmseSNnI(5t#{^9^?is^6qJdMh7b;ZylE1j#UM(@uD17b( zHhT?~29uFy$reyhsPRX-euSmf=qu%yABi6r_kQY1Wp2tdoD!-ok@%rm ztRvTNzym2v$Ez%&`S8f zFvwb!=ll^B+Ea+XOhakuPnSCDBLdY!6-9_l%yEIQ6t{m;80(MUiXpT%M2nT+?xi*A ztp1OdG8yv{pbN%qVA(aVE3o?Wtcy+PLlZPr->^Ylxs{*UJIG-4x}|5aB%QleH#fsQrj$_fN@i`%)h)?_%tDQ-p)NmznW-WCjV!62F7h%N64Woqt7I7WG0 zDo=N1d==&+ySy}T4&H`-<*vZ0AVZ70HlsHw_Zbr`I4qwxFTGYiqwX7F3tl+H6u;#X zJ^|?&er{0tT+CD+nEh8(di~PRtJ1mwcFtbae5cBPTIK8FCUcd=+-F1=D6bVdQ*g`T z*iAgA72Q%BTcFOE%-7Y$fxnwZbpxwpZ>If|eo^i#8-2?VCcCr3iA8=EK3x@w!G+u! z#;SGD)x~T0y@dnm$qzvf_q%u&UG!D6t9wdnVA8#g4 zvl#7pc#UbAvDu~x+|!~tmF8J!E-8DuLG5DaS8KK)h<{ZdvpB>ru zp)&$2&Ax1=Lw1qHm?r}FY@kjmYQ7Ap&ihbZpqtgWQHw5kUFB@BU9ek4>{AiD)de4^ z3(WmzACPA5hpAi1h<-3&ANsPb%KV66_?z(x7_8hP^>Z4_j%Sna&)j^=l&`KA{+q@J z`3m>vcBP(Y5p44{P4gJVr~rejh->co567ebC`x=c3{7}*7|VvIO&!~yzbrFyu_kq* ztv^fPEQVw^NR0hhvoTa;DCLca^07*RC{-51;fIX?8UmQRpDZmpqxoPqma)T@9Dn); zX(V3lyRGKMrD>| zB&wPF(T1rH!VTjp=_AuY39T21!k>@~+R#;uSHtJlWCPMUWY^QUaM0#=@T0@Oyk}>iprNYt!(Z#6u!T^u_3-EDl zr6_qFMOJ{zQub^SHaSzT)6Xz+{Ud9b8KDVS)#2V3WgPRS^hpNZ#nYqgYz=fhC_ zPd7UCbn%^oKF$3f+@oWq{lIC-5Kv8`nHS@QW473Dc5 z`|I;WfcCMqG3hO}QY1b?+LnXLijv;SZkZKN%>iqm?S!KyNPQIp3BAa|_ zF*oDVzA_%GjLFoSr}QtAe*r~VHC~sxOxb3U6*_OVy}p;B&*QeI;`U>u>H|KaWUHe~ ziIb}FH(i%{W4(HAGLWi%As1j8HaUT=_?J7Yze}6^khE{F@ zXS`SWU*n?%NhwxN_aqbNNU65YH!U#<*#O8IzrCouHS%+0;*;62O71cKfM5&mKDgs^Zijt2iSWowlls?@$%)uxBF22+sFD88|E`B|2 zSYBM|-_66>66-E2gh-SZ6{@qnEx>ubT>6kWTUkJf*C+2buNNS2;;KB;4e?EG4c?4BS!NQUc9BNy@dBN=OFZtGc-*Vy~!>+;cbnl13G6qIHaXg`DY7#6b8A z9IIeME#pVPox3&&jP>BhR3--@=emm0tq{QnrXgKyNw<9vjGo%|!GP$=-B#%*t#Fd9ugcIfG+4xQnjT2!)*l<^~x z`2O}+?u>NpJ3flOQ2XO;GL>>KXIYLo-m#v0VJbLVTe5%sn)nfEU1n08_G$4M-^(XP z{N(0Ib#@lsPfdS_qx-jA?(ccj(l4@`lo)(D`bq%tGGOmLK01VUY~Nzxj-=z;9Dm>j zg)Q797M=9@4*exDo7^6Azac$OM@kR1PL0HmAUnYV%jZl#wC}z%^7QWZuH!2Pbkg+E z;eiJVto@bcuMrR_IZ{bL{8a2Pj8q}lMYbg)hjwBphvS5&{}ui&F?sh3u)kmA1R>Le z%GT*~qUG~1ru@q(f7})z=%f6zz2%o25eV^90l|Bo{mVb2K+0XDa(^)d_6*?=(TJ19 z59)dz(|^y2&U{eX9R;mS2d~_|d_R*Th$#Nu!ABbWMA+cV-T7Yq5x!i9G1^oof(I(p zZBN=)p_%qBTSVK)tdEd%1n6tun7$#6WQe7 zwhz5i!c0H8;aioO@Up-IX~jv~IMCyebQ!m@riJ2n^#lVef2HN#Lmxj`y>ig9KQZ}# z5PJC9(;wUxIrIkD^o53XzL($YUxKz?{3(fBAlM`u)$nfda1HpKC5JFctxfi>w?{QR zDbJG4?DwPLb~w_|dG@NFuSB|%!@@UhuJw0@OP;DsoYa6C9|J%Oz)7X`q4;e@QlBjJ z^BOMth|TeAvYQT*s^k;@`)KF}9vnZ8DAA%L+1Q645~Flza?C< zC#UcU0(Ia3;HaGNQRuEC>D}-3U-sknBQ;AWFa)!yZ~CCNqOd91(6c&vX751YCkeyX(?(#iIZj$p`yK~;JWyBX1~CLg9i!7f{KzS z>Zim951~WLe2j|D)QM@yYz+RiuN!+E!|nRey~ScpkQaa|74ajXud?zt!c;msJaj9| z%2nJ|VD}FGh+NV4(9FT+xX#XfcvmLQ_#=KC+mY!Eqft?nxRukls2wIwJDoi(c4A>l z{abY@88(WQ>Fx?pgeNO(6fABV$`G7AbbsU!w}Rm*3-qXK?T3@99JDtQ`1RJv(|gO_ z-&htwQLUonIWnw3?+0iPv8e=J?T7T3_s#K?5_9mTx1=Urmr3`kCmrv{PS<|h(4FjB zbO-J!Dum|G8@jXo!^;Azd#F7fvZ<3cg%zJoEubZbwpOm%8Tbwszv4TkRJV~>6@U2i zpX^^{ytCratCjK13?yDEx|01WfW51yUlj^kcOQnjRmGps*7bJAdtl}D6zKF<#lzW5 zcB-~rd;28{zePq24+$&BnYfHBn&X`+bUV~KI~ZO4%2vL`;j_fx2RJwE_isOEJz$h< zBOF7?_vLL-t4j9Dd&L7QG!B5WD3 z3G>lp^HQYbuez6E=UschtlHcwavyHk9vbh5j)LgJ-{kas*WOcfZOzX*>CjNgIuwY? zRnOgpXt0DCOk9i*=@=4fSU2O_r}#>?btO+tR2EI9UBEgJ2hvj!r}kiAvckW$YEY^w z@axSLPp97RDys^VcY%f#@f3Np>Zhl;LML(v9ARvLS$lIZixk31i&&-rBBC_6lSLZc zi+V`qpnV|lCy}T3wZE*mheGW~P7AEo{W}qFhek|?7SN&U%az}!DI?(BR$pwY#>7rx zT{%LEOtjLSu`>;wf^U{$i)0nqz{AmGdFj(-fp2d@BzQR0%7Prc&&eQMdN^k6&h?$X zqJ67`rYqH3fV=*^5%a#e?!6I}@l92*QC<5AD!TR>wa-H@SDIW51bD~MN8VddQF(();^Z)p1{iQFbS$Mu!)8Ua5ZzLW6gdmc`)AWKzo`G zK~9}D;M?m-?2hk8+y*kkUpi@R0K)3?X*;AV4!wpZ_K*E)2em-BbaNHjlHch(XA=WF z{%2K`@qG@ky&m}XSNWzHFaM4yItfo~h~m-+~PKGVJp>-ujyh`mv1;_mKB4sJh^4*aC6Wb?xs z=_T(#8Ft3IOS-~|@fSvFx*E1<@M=(ZrA{q*GSM_C_3IDJegmLKPkkRc!cO;fW;%25 z6FGEBw}LwDW;(-kK)&$w!zbwNu5^0K zk0vf_ewZ@MmpF>*hm8R6uJoPX`+;xStcQ=cVV7SK@GUEU_&EFZvwQr$WtTkM-+qY& zT2}Hfy`Ws)fZ{Iu;=}wxfYLRrpSJKE0NQij!n9lb5G=vH?-8LK9sX6nRLuBZHa5)t z*l$5_o=iUVUOMex&n*ejG5i?0KUN$fH6KO-;jNFF6`y}!@>e&%4QCxfvr+dcgx4kJ z_49MjP;^o_ajTz=hwkv1zR|MX!QC8KA~;|YmirGyNV}M{6*Ygsc!1=E{=Lb06nRDB zj0sw6ySpGpmhRw#@8`6e0B$f4m!?6y5 z=9J+I|3dRqzc^^{y1e9>Q0brU7-1S!3Ll^)S&@ls=8=7Eu^$2ho2Z?BABUOH&JMSK_qipYr=EYIZ8o_~-ra z9NIzCNSt5O%@y1g69=ygv|lVZvSZ^BGgh#@a`zW=I? zkI?0Mn#bPvTG4*ECa}6x z-tC761Xd5@&0J-q>n&FPoZe!RVhD#4XAI0T$rX?M(Efd1Jd|Y(SU5ih-w|Q!laV%bJ2gdb!pKyq-h_fFSvNAYImK35 z+R)|H7xgBbOAXSS&@FYm-h@l3k3j@Ohg0wBP1u*x1zzH@eW{o9CL~Ke%bQ1dFFJ(a z@s4#I5Zli(Z3ioI*wn7K$49!}x;*k2`STa>-L)r8fsu3m!fwluyFSrJVC55J$d2sU z5X9IQLfyWxhCD-?*nsrNHxl>wX`uGQ2gO;Xa{Fa(bM+4ytU zU7z~xVF0~|8ab;WL@@L~VC~-Vc1aXjwKcXj%K@rSpO$1o?3`W3_&Z@oZwndZu<{7Y z*J1%E#Khx99QZB&meLQRuNq^dHXcB505BaJjzY+aLh3Ur@`sA1`i7>4=n9z>ik~sU zt()On9-3Yak?1Zfn9d^F_mF8`DXF4NG=fIU@GGW$tx7YTKc)*Sy596OEv^2p7%|$G zX15LPws03{P79wYu!eN^vkmN0d=}$v^nfqZzJYsWCp38*XS{67X6UV9CVoj^mM9o6 zL&7sO)_DD+sCtIF8m}K)FNY`?uluc+LllhHKU*({C>XDQl9%N!0;_-Fd>Eo|js37h z!Q6{=SK1PVqz$n|VXytLMBz>QVTr=q`hcwntbW(No$&cizEAl4_Cp+9DoAzFFi!h? z3O)r^Jx-@pJmfOX9-P|k!KuJ19cD9VD4t4(SPZ+njpo(##5w!h6@sz3DC1m{yi*3VkS(@ zX5=#6g(udbZ6KYBd$knqEYl=| ziubdl>I7!HtUTZ$roi-Cu>;0Z%$kSZ)wj5S)DtxOLy(a4TFup|NBFE?^AK!Ndaam& z)W6}e<{?@zz1C3NA1gkF?b2%v+5Lt-59w1gf9iHVvjYZ}29~`2&(JdU$fJT<-I7Xv z2mql!3ZVG9$Pc;;`_;)R)H?cTd!%N+=@b8p#vtrNtUR0z?V!qHIgws#D7kL-dx%*j zz1EQK0)0|adaW1-bDhycG(viSVXeL;&8^XeEp^$K`Ah3s z7Bsik`C4yooZlL)ZmO+rsr5CqHqW1M@z`;`nQr{4buEjln|yO;F^qjvnw#ny8)~8r zO$&qPW-4-SuysjYO+$S{O?9-Pxv6z@rmod3E!8W64NbLm%Y(ye$pA9w{hQNtQ&aP@ zCSpYET9!07n)JcwiX}7)K>PGY!eB#du&Fs3tPV!&7B6XTsctlJ-0;?Hcd2-kws=8ZOR%|xcU41?1lOm>k2Wl(_o^2!F-iK0zp$?P znBjmKZJ-uTv9?@+o(HIHnT2&NBLTF&vAH@r(gK|UBYF#sPeQen1Aj01xE1z9HQgZi z^NI{AYnx|oJ7${xs041G*j9DhvCsGms$1Pso9nYZnoVu%kzb5yv*z4fO(mRu%MI~# zb|zp+GkBJ%cg8!vpiBV0=oFxK%6K0u{^Gi5%L=D6J~LdDQ(G5psQFvdd9gSHovoxD zINpKbj)|i~GU(%uM$u-=s3%9g}^NCi%{v#P4l9Zu8xC z*=4@l&L?cr7{15&#_&DHe4oendA{@bK9BFqC;Kj+#A6cwyz+M0WZy9U@f%-h12>LrVKZOQn~ykuXx40j{$;Kl#D zF8DX(>Be=RE-Zr2ArZYk&cIje_A_x}OV7fIzx)DDQ{j0yF^}iq#D`*#X2%Kvk?({SQ^RgO4I)=s|jap&TK zIF)+=PUVimsa(!jnEc1_RQ{LZlz+4(R_Cj)ZlqgRz*96e`wvSkZgF$V3U#UZYjAixTff#7P0{M*!Ft#Xhw3^d z`o!|(S3eui(t+R-xVnZ`7%HEkPdQN8$SyD9tEp}heTi&`>z~%Z)i= zSZzr*Ev@1LGdT}y zwT!H3hfhzJX=}s%#=IPCCWsOjH^ayp&e3UK+e3e2HGDPAvBp}%Le?}l!T73$oW71W z2cwHk=KS>8j+tu0lxE}A#+JYhi+^m2H8utfiG-~jVKQ%mzpHC$X>KXWpodB8{ntrx%F_u}_yF#m6t{|xQ45w{t7`@iXK{**lD5I(qXV;(fjr5o7XP;V<>CeSb8_W9XH~3GIQ22Z^*PDm$ z-c#-Kpc4_32j)-n$3w(F7dv;htsEV)X~#+)t}w-KvrdXJFFE16 zyKKD6%FJ`fd-mzu?LfDC%Jk+S^tdi)$#SrIX>~(mH9S?2QC+~D-JB4^1fcwGaGBbY zzdLj2youe)gcYq@xWZETCC}|k--r7xZa=OQw-vV=7knOk!70wMTrqJJ|5$O{u-_6- zpb1>-k$sO z;`Ei~zPxz7<(2QJG#ecEJI}l8m;XGN7pJc@zs!r5pHFY!N;6@PbxWM5``z2~2YGRd z-pHo+#^0P5&l}d)`&jZC>9{jI@2+3|^WXF0^p&PIFJ68=y?x(C8jGI$AIs1?QAU@B zcxYZ<^sFyJdaU@OfrhkXh+38cyKuCc*`V2Qu+>>%mkU`#6T*&ah2{}(cipC^obqD< zU)P#bDLh-N5u(+?bvKEDNA7D0w>wVVdYK{Tu%w2Yh8cCGY2=$3;;!u2ik_gfu;qr< zn>da2ww-;xtLs{k0%%1=>R_yivJnQmyf0G-Wknkn#+qZTzS&pIm>Zmp1iQq%!oSbe z7xL_^hY2O~9J(!$MbM?&j%3l2@7#F3NAbN-zCS(i%KhoVxHE7=aU*f#ag%UioZ=kI zRepvzZu;58orkN%HR4p}ZMbjX=Hq^XdjzL2Ir%Bhv7BH$R=79p1>(Mm`*+-*aKafH z+u+)w>ZNtTxmiRp2$d7~wPOX&_5@D%u0V{iyipT(t#4SpZ&+ikuc~=LgU~R1MR45c z@uSBY3IEiJS;31&f7$thCt?dCIBxvt3w;-kzGU<`15RzsVR78ifi$Nf+OQOHvkR`n zqL|uv0rrKWK_mi5-C2ZZmPc+r0#fTH^2v!Ox*#5{WnoNmrq*EVqK101Xkk@f%d*~0 zzYrK$8|zPPni)8TL-T^vXvCFv$>(k|*mM;}4&i3#*oeui<#`de+S|LZ*NY7k z?9e>ZPQB3S+-}NYShK|T=yEf??wK`wz45a-`RDVr$IjQ0Wt*KR1O74dcckyfnr{B4 z^zNKsV0NagW3`{Bd_$1Md*@Gi$4YMi?_;5ItaSNhsHKh--+{BYWCkzooR(eXG?|6j zQf)rC%TrH0cdRnGun*a|0;*!Ek%_MUJw|@+GUzkr*Xo;M>q^U?r%%5e6;vGI3Q2wkO?s zx%^FwSuDCM6)UWC_mdRYX;;>MO|6JW7t@Fm2xr(E4<*i!UnA0GZZz%YC933?Gp;i! zG@`uo0BakwiFI@qIq5AFE~3#DE?vlEoS6ywoIi4-+Q#gYs-xN1*F4l)KD~8{(*dPF zz53@@zVr{5+s~n8=GnHi%xP~|?BSU#O=Xe8*TYI=#23z-(ceO*WpJKYV^e6Lst>$!=7Y|-{r8`f8vxq0#2_{Vw{ljfI>Tj_as z{qmnL#F;#T58M3^;nGMXm4$)|gwX*cEB2GK=y6f{gWDl0cm`y*I>}068nZsI9p~#zp zEd6%~jXU#rCRu}e6y^5+XP7rLlbu_*D)wpVdjZX~M^1mVvLPtJLZ7{7lJK+pa$7GK zf~=GzI~Cfv$F6@S{inj;3*TT0aQD^qlym#5>PqoM5@vu0W|!4WJU-hKzM5tf=^C0q z)mGn8o3chMJ|A@O8Hu-f%R&mHGJ;8sZEpkY?MP>gMc@1E1-?w+6vUmF~*?PSwJ!$II+ZtJO`-FEdxbaeoGiJpmX z#|$*{GbYT3%l20vKzZSEBlZE53x5`#Pf4Ik^Op~g2XT4@$}MMjPQ*TdB7Zl27Ou~h z@Thb!S;5a*DCN#>ZVuMhEeqB))>%;uy`G!gwomWaVAG>Ly5hf^feXK*S>n)E0rA=T z#Z9l_z%u2(o!%0N&z{^JR2dR(WK#J<#$DZc=Q}Nf`X;PyzVMDlf7E2Fsix}6QHGK= zn1zI!L8bt=9kP65PLB?29j<-CF=TYq05lU^m|Y<#o#b^^akf6UN1Y7%NDUrn(^SJd zLo|nH8#9NDxT?HPkBZhmcZoz?$dTpg`hlz}eTio*Lj zV1pMP=_S<#T?N8meM|G=Ai0@X*>RTHBNyRv3Zo-3HFV*HpKCy@rg<@oui5xg(=&hW zxKy+DmgU&n4y13yt-aw7w>+) zf0sCrK8Tz2_x4@ieYwiKIJJ4-Zn|h6{%*MYJi`-jr03lY_dZ{9;BudC*g(?R^|?R8 z^knGsQ3!#4AEekth>_=J2-mrnvfw{ALwEFfyHq7}@xbN$U4(E(cy6v)e6;?36aMRu z4Zz5AbH>%VmrAMbb|Ctcbc$mBT>Lfrrk~OlO5nyJpv#B}xp zQs}gVGPC-^W|X@FElU@x+1;wq8gf`;jHNgnx{;S;fpC)Blrv0knvw1tB@rWJ_Gm;z zg4I%H;o)S85{=PSc8j%*#P8N09!TH!qXX$OoZgS+e0g#DN|PV2uRLdZ^82(j#ZFxJ z>E^iz|4BbRkbdDOy}O?{VITDor?C(JzVbVk|3LDR8~F>|&wF>@al$_8BTnrvk4`s_ zyyW`IvoHTYkw$LbzaL2d1or|?@5gd)=7oQh_wA+~`0HcmtLQB$9)iLr+{-=qBk_xDw_p$93Hv#Tv1MP zvupe-oQIVmoIBE&7hYk*E9`3L=|etB;EnntT7^jYJ(`I8^I3ybPn8^kkz z_HuI5xqPTy*5#ikup%kd+=aHbu92M&nkL&w!QsPdhP!;sr^DgGuln9p7afxe&!?yN zw%30rJ=>-A4aWRaxqOUtgXyq788A1V(R4+Lrmu)@yz1K8zM|xmn>n!IuGsT7ecb$s7+S`klE5t=`7YaJQhn2+-4UJk0ZVQ_c+-We zqiDVMmF$_<;2&N;klw&k@5gepiRTUPE6w=4c-}PL_pm2krRUun$9*q!!riCqKNA0$ zxHiY>J>TudFR}+dljoYeaHY$SukXJ6^W*OKr2n)uK44J#V(01R)rsGq@RQr%Jl*f! zo*(7K=_}16dGUJ7E8kCPxKTM>jQb)^@5geB^1}N{6U>X(SDtO2c%PQ$MklWObn{$} z|3KV4+(&QNcYXKe8uP;XO7rGt$V+8R^5pkf)8xZeNggg8aCMptS+hE;X7ZJKh<&j- zu2;`)sdF~e9B+HhLi(q!M9|RaXoF63*wcMEYiz5jI;W|Xm3ecE4y_yK(?@V$;#=|MuIByggk5#j z!SwEF2h;yjbuc{)x1{o5dO3ay8-RZg&p+dSf|H-za{SFCz|Xh7axh&s-MSljuE}!> z%lFf_>wo!-gXyu3o5}Nj!n{sl-f#Ea^-mK&LL9jzxZm>ab@KOqyYH_5W5gdj)4Ct< zypi}`r!eog`|kSRN%|qgkz0-v3|=RH@3;Hz`cJE+uN=3z?qIr&cdt{J_uGAU{ZAk~ zNIJRS_L5%yZW`~?^&d`nvE%OJxrY3_PGR0}_uch>gZRtqt?T5eJiJa}-f#Ea_1ANe z6Vcu`|-Sz+a&D7m-Yg(u)?_Q@c@3;Hz`hQ7jNhjCVTl!x7l!uAW^Nl43 z(_0;PBXQT@=XDD6e!K6k|NleygjVa?cq$LCQ<(SLeRusYA$)}6ZsfU~^j@bh@3;Hz z`VWgT{)r=ZW9(phCf{BsfA6>Z?)nEv<8$0ho^wg>bqe!-yYH_5&&dB?$3=*{g!Epg zFz>hf?)rz8GIkxegr{KeI)!<^-FMgjY{H8jr}T?R?{y0Ee!K6k|MypbH;&tS3$Wxl zh2{I{+x35n_fE$Z-wIvi-Rl(Q{dV77|2uC3KF39Fr!4aDI)!<^-FMf&n(b%z2! z!QgQU^M1SUuKzj8-*G|G-$+`oQ<(SLeRuu8^IgjS9&vE@;gYy}zke`&82^iZa4`KQ z?{brVbTIu9-(Dww@3;Hz`oBx~3yvE}`hh>pbqdS()3@v2!F$wkLrFiBcdt{J_uGAU z{ZISx!E~YHqC8C=%ExgEbKkvB*Z*1Kz2>-i#8n%3ox;4|?z`*XLz)*HSNRj_lIIkb z@279q|7qSgIPSH)w2G&&-qO4NQ~vQ_dZgn%;#v69T&J*nKYhFY!w4VjxYzU~EXVcc zr#O!P>%1Ry+*bU?^X_#D^M1SUu7A&e9!x*uxUS#R7r)DO3d{G?x9eX+n%Ry!gXf!s zd7Z+%-|oBXFCMEQ3ST*YNy8Gfb0jcgSJU0XG%Q#)yhaLPIbpf!rLk0vqL^>0j!k`S zggq&x!%`!&uO&8gt`q78m6Z5qU0o5LJgjyi0>j`!W67$ixoMO!7=YknNi6EKTOlm8 zCEF4cYyvR@h88!LcVaC~@U+IBfbqMq@*0AwvO&}5R92c0_DEV*%+b*=A8YoS>LotI z_+q^V<)Q_#C`M;EuiH}R`#O3>zQt++{noYk7St`RYqUP|ks~!kt-te5qT2b`erff! zHq_Sn7Boi}`5No$qrR4gg^Qx5=qt>wNfssxuBp3cOB+cGTeR6-RNs{iE$E-S=Y3p$ zzd9&YLRUoNtCA9cqY9`E)Apo(Y})qGPLTC~5^;zXY!^ENC% zro>t}#AJSFHrvF*TIt=3!hQ8_Z|59TJ9n)i37RW4JYBKUkdv;HzD?kHeD$1El%CP%}URI{*K5IgyzPb*CsGC_GrR$sW z`^kvln=wOTT^h>?D=k=O?Qg*&EU8g>LS{cbE-tsDze$OlUo0=8zw8K)Im;m302|X zlo^$k-fuwK~%?PiSFXCicuXPrTIZ^5{GGIH!cw=0|WRuCA-m-%= zE2p)34^rH5HaQs+Y#Y!MR>#7X`#PbFV-7N4a!zIgwQxnZu%@PN3H#H-&EOtBGB{l0 zTTcz~;p&g!cAO7K;qkwdpP>xO&=7~=L6fB+5z5j2x%rAB$Rv!dLq3F}56Vc?!axY= zuz9%Y^IIV=2TRA4R5Z(hsin>mCg-!RCHt8nRYt9eh5$TMpo?hWk0s~e6n%kJM$bkD zRkOqx>4l-h`OsnD(D^eRZG(@-l@XX*)M;GK=|mT@?VLe~jGVf}YOnZw1kKMJhN1Gt z;voagg)Yhn2kS*^Ov!oiD~#4xCVzyq&>VYW!dS}bE1j+8vPD?_A$vRPv^0O+l1)`| zN=5+|%`4}ujYDWNuHRM$S5O%m5VT|=OBj4A!Ou)`(7OI}# zx?~Y*^mIXHmTRnQTF6nWNx`ukOf`Q_eC>{zQSxbtocK1QPm4?mPJH)xNiQi}wR+oQ znL5sQlVqXK_;}!->Zt9S9t@g3$x~`Vb3V2hVyM|f;kMqHbcS9UX;|;+GT}BIlb>=E zB77}-Mi^of&0?XOky2#J=`Do=nm4{D|Ej+^|NIoaU&sw{ zcMI8THGeavPJz*wolzMZ87$W)8@5X!3AMpd!5FNFYJVk)VhUpzi!4VMnSDD4FEm@s zr;M++vZ0YdQ^RrDa>&7h-dTk;M;d8~I#K(qmt*=ae?E7VRV43Z^1E*A$Z^-30%tF3 zXz@(@eMLKpKX8v0v@S-~g~^8L)Xu5oPlhs;X8tT;@apBbHb{&a7_p}{Fjb9C^rOmg z0IGJFScjfc1qpFuhR|d+NnH*?XCB4!SsuayVtxmgnMd1K%Z7{!&;Ib70ep|2;`9CP z3g~ZmmNxs~tC6T&_;2nidykP9T_Q#5(R5@^rbpp>VQ%e zr8+uP2FE(;7#!3(FfT=M8Yud_-`_raJSg1UBvGI+rSpE3G4x@Ko!s#%rug!Bo;^Ngt{U% zlJue)&T4yQU;`TUkfh&B#~0o)hj~2G>%-7F*?uqdD-74=P|tI(JPHScsySi#7B}d9 zN%36KniNhv274Fc2=344pSgSm4r!fI7jTV1UZd&!)`nrYjXl)2+jF6!$as{r_TH5Y zBiQD>${}kOcFk4kdDQSLl&>T0cOC|c6jmeMBGl*$FJc|076(ecm+nJc} zQts$!eS!;XIv-Vx(&%)qxaqvOgDYpmYJKgYr#Px8J~13&?iDR^h~-V4KV{nd;yojSI43>d;T037WWG1pD~V zYhZ#dsY823Kea?~IMb^kuJYi#RI)45I?Lg=56wBiwklrC)1E3WqfnVy!Nj1{ADLFl zve2y|9k?HZCx&*BvFpNySWGrryW+k*l0PfU?{eE$FY{cep?f@J6&i!Mk6XDE0y!v=6~Drm4PRjwsmv0^yTSP zx~lMV@HREB3lGIQhc$SVxl>dT#xIWBORoqV`fclYh7L1y@h~1{UrRTa^3*R^_|4@x zQQJO@*sEWwC(N$y_Kw`7OLEIQny3QJ&W)Ws%_a~kgyohG=~T4OXHY;P-@`I1`mLbh zN(-ACikvQtS?lA>WXu~+5!8!IZpES$;|G=hC6=?Yo;hi#mgrim6=LWn&v=co9%%W6 zwPJA%o$YCNFmfC!(w^`XH|Z7sY`ZTh43g0qS=dUnu5m&OeRFa6B5gan;@=8y1dkHW86|hIYvLSn6$A;kL}t!G&dS!wb`T+-cR}U`@tXe>8ln>9cbt%{%j{U(Yx_j47s$ zSDk*C<;3X69L0Rlch^}znUki!iGBy7{*$Qp7wl=iUoY5Kbk^(XmMMD+7oza^pO!<< zyEF~9v778t*gJ(wS*+UIrAxONHD8Sn?T!;_b)g#n<_U|{KoU7MPNvmZ8H(*M@w%AK z5TD*Q3nfw+7T0%ZE|;r98FMRWS7Lj`iyQO9hdKb)d3vgKGcqsK;zQAgjHAn>*2Id< z>`qiHRp;lT9iOY0+uTOMDU5Fp)1igIW#N)ioK8{;vT@O`(7n*^bohF6g%5KRF5}qM zQMQa#4wtpCKK$AJ$r(SKyZ6pBPkngKs=4UZ+gGfbd)+6V+OYns9kbtY)57L&kDWMs z!7s0`*tvMs+|if*@mc+YZz#U(z+y7h2ofrqG7yDr~u~UT&8g(j%@=cT+oT;jGYBC@v@4 zNHpZU6k{vOr%vO8C}X?)_~Twp)J;!b?%;Y=)6{rQ;pm|qjd{5_NWwaV3WeUG==nSB z!y+B;lj_78>LqcUWF4JK>sXh`4P7_o)@u4{+UDv*52Vl#%v+pv2Hdezr%%7;`ia*c zf8E5fjT6UCEw7wuYAPRpU2shA@s@{n(~*{xZl74LFo?QPT5ZQnSnAC@?6gqaFuSLF zL+%1?77n@G1x>B39bL0mUcS7lGIs&Jta~>C>>rVty@~IG`}=z(yVd|L)b(#NpG6Gnl(6URQX?Dp&`~MEFfK-|L(Q1{j;H|v*EvY zI}I^zizA=M0bPO@^KM3SR4re&d|rJ+v)Yu3)p%X1)m|4HrE}vKt&}gVbQ;+?uB)@9 zk+Wl*9&if^-%aT0>YSnhVy#oU7%k8=C3BwXLXaLY`a8Kg$eS;V>5OWw&m2La6-&>} zyg&+F4w+#gK4vqcqE6rL@M3RceQ&I1>bl;k_iCCSBz?fqgKgovLtHUh?P19#*ewrJ zH0uisui}0(Zb_(i#Ob_W`F&{Il2|`WBi(Z(JK~5>is{1A_uLZ_%cA(+J6Te@RNd{D zEMIW>;spqEnGL^<3544_*QZT@gC|@qG>_P*>2wpN^QNiACf(*V(K1`<+Lorm{9@^g zj^g$#WMosguogqi0rE2QZyk2DXopsmmzRgbBzsShF*k4dRpCaWsWm5ZL(`92+Tr(w z!QL-<9_Tg_+#AAKP(9^f{vt3HOaOO-kAM$=Tfsx%tKbXZK2Qcu07rr6Cm+lo0RIl2 z0Q^b} z5yuzHH)tD(GoSCU9ey9TkMcfsY0)QR&p5~ znt0;Y%acYTlo5GK3*RPs4cCc@i>FPVI=Ot};);sN7535>enSa!>478t&c>i`EGgBu zm3-=Dvx$3s#?RYKwp8n0!t#sPCw&q)cHqGnT3d4A6GP;hu&UM-#QBA-6Fh?>t$Tc$ zC{!H6*z=}M4K#w$YU>Pox~IbuA1%9ZZ28pI#^mBjW4kW7fUS2ie=b1@iwl#l>3d9R zJIT{?ti3~Tw0LGv5+)uDMGW8P2`>k@XvWV)x~pSCqtW?Y37?;6oTOON@JA(Ryf6tY ze`%|XOs~EH$7GG#v0cF_^;BzSSaNfF4-RxPQ)3(@Sx%=bIs+}HU5;c$Pg9rDl}(K_ zmIS7`r!xqbQLDqUoQIrF32$Wn#LJr2&^*FN=Q=t`;d98~yG0)WQ7td$||JbaG60X7tTbm#?rDeLi?vDZ0`>d@@ZdGrIZ7M_2)xA2^sF z4z@i=eqi)B4(3- z^yVZPp?lzl7R}Bdej{|BMdzJVTT4CuUhmmZ)LUY_?z8yY0;7NWz8zCs9zCklpXoeo z2g2#WCDkdI`Hw>2?o)`5dU#)kX+%L!JyPAgv4`?eR?E+H?oOf#_V^a5pvNqNeq(oG z1CJO@kUCb=_!Q!$7Z;a|7%9E5xPl%R=k*X}{+311RmY08jS<7h&-A+HWW>2%XMdcB z&SyUC7xpK;oeJx#{VUzp*XfEX_{S`QzR_~Su5U{6(ZKbQD(L1fd*N)r|1{~UGNiwP zZvMe;R`c(S)~LtWLNY0S=upc!4%8PWc@w+>?4L6Y*D~?TKzj ze5%{kAnh8F)Kl3oe_c?}Y1;`*iS#wLb(3VIs;$N19CrSfoG3f*{WPH-Vyd?nw(y9Y z?CpguIN}`XabbvOmYtj=O&#qGc1_TCJ=ao6ioX)|?LhD3kW?nA-q~XIvSVaVD_Y`$ zZh4`H>xJ9A;Tv&$9=tIYal}}h&~2BF7=wNTh`$l4Yu`Y{E&f!EmL7`}s@2I2#SN7D zQ=v2eW98q|%KU4AF}rP$lGI+zU(XRY@Zm{|mtNf6@p@1={F0KRWv}nF?H6^+J}J@m z*-*?Nd;KZX`f&ZROMcMXsDQ>_iS`G2VgIIjVgH72v9?obHGjQWKyObEhomIvh1CmP zbCQl?d5+Wa3ug!WO9y-xLp1YO_1iN7+H4?R9>B&HYQWiRY~yZ-PNw<$b=B*{sZlS_4sznbSy zg}&NnP{n9cohiE5)9Bbl({tL_i-u`+8=+&(I^JQ152?zTU+Cb1)62PsEOkSnC9R8| zS6q$s%J_>Yq%xdllO67x2!mv5DR!4Lle#XGeMluKwxkD=!U&$$h>$q{)&rt-d|# zS644jhFTL1#o{9r8;3M<1V(FNk`tSWeK{@A^OI%s3!m2wpFxW4?a5_}lSz}OOdNON zMLD()%PlnKYs-Z-37b$a{>rB{j&)P^C$*CoPfq6QPwnDl?&73l@`lMtz5Z}Ua#Oi< z@;uq+PfjkKm&~1?teM;(d*fu?5x6OhEw9j@O8uFxKQs8#pvUEqoZlFp^HKBwo-RKb zOUS%=$^5xjC-bRR&hJewyQ~6C1=Bz!m=0znm#s=_YNl55r(!C9l7;i<&rcSvOcq{! z_0{?Vk~b!c7bc4rCySRZSy7|E$>QaD5~sSv-(=}!$(xd8i<9O0B`e-sldN2sTs=`4 zfUA>+hNQ7KS-Z9ZOa;?GC72FoBx^S%&CL{`xtRhqHzzHPjg3jm#-ydUw^x4vw}uTZ zx}I{$WSJYfk{gpQ{ZvQUxH0LSC||%*HY9wJcX@5Hsig%ZEt`^?S`hgIl9rp2RSOq_ zWZ|mhs)dOB0m;Iv)WV>41+^*gj=d+LAwjJOYCs709U2kR`ynj}T=;2A;C4?-LX(;j zdexSo+d0h%yjak6m_~(gJ*HtHC1_o+3%ZVJJC1aIrl)7xvw-U=gJEd(il-&-UORc) zm39e9`))KdOGV+JlR%Gzv(&rggwK04g+k)h$cOw;3C+T@7N7H{ptaUb|T`sMo zI+roNxI@8JDG4uqv~_~wXNM~8w{(5fwW)#kOw1>#8H=>MF!qK^KN~T<*rp{6O?eF7 z;|qgfpj+IQsY}?eya6v%5$P`;&hgM*7BU!i+(7OlVBDFgX$1Nq&Hu4S~N@1cCzWgTff zm7msAsi5^U`M)!@byA+TPLge%Y*|{DAD%goe?NE;ECSLcU!EJtKX&#&{!HXAl0JXd zKz=?b0|#CYNBRNq+!+J;pOF3#?qTF5qX+Uod&5Bf@lh!he*pbH^6SPv4BUM>%L3no zKR9L}{~6LLVCUF0zZ*$EdJfx)7?n-sdKCG@)6)EpKW`xa^tsr;C@_6oy6lrk7ZQ6i z$S&(eV($iHSnlU3qjbqC?|UeNQel*njr;FN@1e|Nfbvo~R0hemPPUBm*p7BR(D$nK zt!iBlL&qC4xK#Bi&FA)JunF7=z5*Txe*`0_D3^mJK<^XuQ_RKS8lXDgHt<#O6Yw0+ z!&?Pd3SR2{L;6|c|F?fBZlb!j>i2pkQfX9oR;o5AwL@rqrR$fAGMhFT56%Y{fQeuV zmJzMNBOOdsh&xt z`ybR{KXz5&+udeVJy@S7Tf@gO)Uub}PYX9KSAPyy{m`wG7Zrt{^3>0cJ-aX4_tWir z>h^tg``-HIkLZZv_r#y{7?~tL_^1xiBzf|L6?$$-_TN-9N@>}rAK$OEuXD+0J&;wu zrRNV9H9(azAYP{?2ldxbjB;6R$f^?y?jRb%<`)8Srz3K6%|t}rd3o{Os|+xF|(qo zV%F61sTEVFPMtQja_aP{Gp5d*S~YdnwDM^c)22?FHm!2n^l3Au&74*>ZB}J@Wku!G z%4wCAmD4L{RL-ods+={we0s(7sne%Tube)8`i$u_r&mp%HKTk+#f+&lrp>6FF@462 z88c^8&6qW_d}hVWsWYd|teiQ0=8Ty$XI9OeRaIV9Q8l${T2*D$^r{(EGpnkqX3e6A zvsnBrvYtiQEGVlg9QnCq1rJYrMQ20${9AmV7iu@u#6nAodJ(A_7aU#pgm7H7a&lE% zK9J8v)R6AIY%pZYa?*`|7Wn`^!s;6CtE3*{y>7DcUv%-+#III94)XK5$;RJE{2t7Dc6~yntM>qg#GZ3HUq#Hka`9QvW8L^-iNZ$RXBEE%vXGHl5%7W}6 zo7YV?{_WWJM&yXkA$!Q?b(4)>+RXdWiPSc!So6Q05wq(i=Psi{*u`KVx^~rT1gI*b zywRZgy2H?iuSHoWN_tHP2pGF7U!zCp>vR`qQ7Ojx=SC8wSj+5Y!)JSdZr-iZI z#=giIM#SrRjWOhLwwE|ILtio1cwL>w4LzNjjF~4?H3;b(2+dqP#VIts>8BeeJ*UDa z2iVYW>6s8B(h*kN8|=F%&f%ORubaA49@)wlOw}c(Fgr|~sKnM>TO&zM+cc2x@8SA* z6W6_s9G~5Tu`i>WeKRqVx4(sJEa>ayx(GIrpU3`;Znlo-JM(QE_cy25Pr5S$*|MB; z<3F{T>pXb~9iT4*@mWr~@k{@T^@vzax(l0!Y+g6n_)_evA~uumCf-9fubXWAqxe_f zl41vG2mT(idEI2=Zzp~{KEf8DGI)shy2-{5ntz}$bx>p4S(xKvo#W~lOSismt>#jy zi>Gn&vk$R-Z)X`>2lD$t^1;E_meI{#O^oEf+(A77^naKEf=3K3tHED^5DX{ zrl%!zsBdiAqz~(=E}`qA=JOi#OXq8AYuZ?+($J0<=67SZ_4J6Z50g!~h}0gY??^X= zvqjPF*QjMxs`iLK{VN0ceP5=%i1Zw=6b$<+Z9t?4Ks7iI{X)_TP>TFp{O<$*2`+`Z z2uud|gO7s`gLi^1a6Nbv_!7PyU>&#~TnUzf%fM_<2_}QF;7o7|Q29E#nb59Io4by_ zdAX~uX}eCh_p7cczmEIXx*Y#?x0j&XpzGxq`b4j5zG3}_wvHRQRP@}maZ~SGjq-EvD-TGjH*#x`kOo_#PVr37e>oXa}atqHYqFG&$VQ>>geCOhfnr zL7G3Au-`P5iWXD1hI(RZ@P9X7wL7TH_mQS+cgM8)!uOZ|`h&d-F1c_o=j9Jm4F3`5 zRtBO7Dc zw?D@HB;vS#qAd7($mVsEjbDm=RmAT|JBas?&Fdx`Uy6No#ABpei1(1q>n0l?j>lx@ z#W(&l`9y3XEz3Z*EGOOg3gq&irsyNxitZts*G)G5*`E~SH{;t!yoda}ZnE)TB!2k5 z6t$$y_{~BzxzyZY(|k)zQSnqY&RR zypYQ&Es(r-4)rr0S{Ul8XR<{r=Pg_|Z~2O43zuA;dutds&;0m|yX6|*5>$Z2Z~8@4`nI zO?(-thj_1>Y<%;6u4@jfkquiTFCRht?|x5NBUb-AvB(~>dEI2=FMo>ljOZZUL>?Zp zdEI2=$6zmu*i70-yoYRFH`(}&PqQu&J4mBirMyd~o2q~#gNmgS@yU-1X>kN8*8z1Tct^Sa5#D;*y35a|Kp zJ!JE`$;R({miK@W_uyNG>>-=iO*VcB742-(NqiYj#hex)XDnRC+B?s&OA6PMLc@!{ z&ZSd1aS2OXnXLX#Tb3GgrdTr+<5mmJHfnLzgqK(f1+N(eiF8V-5H3_ za?*`&|0CCph|Q$?uzASlb(4*sf_+m&A89}F9>;Ni*hj_1>Z2SdmztIsV9%NmSJ!JE`$;LlL{#*Vt#h*ycZmDc0`_%ZiWABLg z3F!fr=OLTdO*a0=lzDf=3#5DT_mIu&CL4c0_PZknNDpXv4zhXOWaDoc;CdY~{{{BL z^MfHn0mNiugVF2&0J4k$Q;ty2-{j5K|kmFHhSs zvWIM5H`(}g#MDMSLb?lo581qKvhkN=FOT>p=^o-eWb?Yo#vhA)OY(fcQ>44lJ!JE` z$;Lmz@;2ckJOcI-?;+mnCL2GeN0bkHKCe7HWb?Yo#?QjuM~qNLyw<@(yw^=OzWp^U zKjOUMl=axbkS)teH+~BCK6K&4A>zf$KMUjU!nP&ix1?nm$d=`#8~-fJ?2owOIF_R_ zILPL8la2o(_6H))Cq9SlA)D7tHePk4^y3M%;dR#)-WOUm$Jv<@vW^#TH--1WRET^J z(Ks6jUAgscE_Df6T-jE5#TFJ6redQ%XY81h)=1L=q>*vK=|izvkH?0o)5Ci{rfOEt zc=ZRRFm&gYq%SD6G&IHewnB|lU*E6?{WvXr+MFC8rdh`ECvsl1ZG?SbINQ!cyw^=O z{%iQ}h}fg;o`GyxPP*|Mk#|SzCmo-GY*|ja@iUQk9G{}>1l9rFLpHCQZ2UpiZ!12+ z0iZH?i1)h5#$R*N^ZA;HJtse(--hfVo7YV?{!PSGN9-i+!{0+TubXWAEbO_69i%&n z_mIu&CL8}e{vD+$`bqon_mIu&CL8~C;+ydic7t8Sdx-bC$;O9|l*Bh8dZYc{^`z9n zhXwdPM_pSFQ!}brKF+u6UhahVH{p?o^T1A%=B9@A1^2b%L)^{2VMgK6kOcJu<^ zS++3!t*lHWJ7_}2bmH6M{6KNat8|*H^fk+b^le-HTbMYJncR5iqNmxy=LVF6?VtKq zeekB6U8)W|wqIZER$zRn>n3!Btrk|$`-N+DM}1dU`f4v0$$yHWX;8kwKXl|cENJjy z$&##ppUwd0^5uo3U$Q-t7rKD(Vk&e4DQp*YW$NO#CC|d4LH8+U9pmFl=?=A>Sr|XS zdoVtyprHZj&UAm@aq9E=@)0R&NjGO8Tb7e<{FISgmm;c3w_)>;&Fdx`{|x?B_z0^( zAG(KlubXWA{rKljNwI~r7Jm=fyl%4b?ZgkqM`#8rgNJypn{0glYpL7dBkX=1WhM2H zJqy|8uk?#-|GtRvL&OJLCeM(+V&F%Se-bg8_?>VbvU%NP<43soD&qGL?;$_0n{51# zDTic1%zyYU}F?$dgMexP;m5bt%9jlXmiu~%_V2h}Ud_sYT83!mkr*G7Jw zv6Zv~e-GKbZnE*GVNW8qk!~j5LpHCQZ2ZsgZ|+I4k5qYh z$mVsEjlWClhmWue>?Gbpyw^=O{`{MX-NZKR8waCLwhSjdiN2-S2hfEr%7fHH zyw^=OeiZRZ#Af1~@%NC;>n0oj-nVdkMI0dAMjjrrdEI2=7h+!>v5#~o@gA~y-DKmp zy_I`;MDyD?FOfZ}hu~yajM7zL3;RIWI)txypP$Lbe@1Z;n~5JFKM&cwZnE(|X8m?W z?EEXrK^`8mdEI2=KZHF;oUj%25$_@1>n0oD@z=yg?7xF^F$3AMoOI*Mv9CrK_JPqE zh|hA;ji37w_C>^A(&TRjL$)j@-S|&_i0u=x6W=my9#xMk5Ui2YcOQXa?*`oioH5w_{TVxuzASlb(4+%8D-ubv6bcbZyOBRvYd3| zzs2%)MC>BI2H8V4ubXWAoV%$nMeO-F+lqDYkj?8R8~;b_`yv!yjqD+t*G)G5cPwvj z#Ews}U6DOx^Sa5#Fa0F>M{M~N+X~r3Hm{p({2c7%5qs~$S9v(d=5>>ef3&Zde-&|k z_zjwY$Me+^pMT#CL6!{vmBqFPO)_d_X=bW*}QJD@z1DyEJLWpcPpufc(0pm z{PfRoEsWStdVoAUWb?Yo#@~bgmWXP~UybY`o7YV?{>R%nmm~JFtljtzf^1n%dgMPu z+86N$;`_0A$mVsEjko3v&D+-5(hwS@1J|H=xVmiapu!WowRauXK*US@3uz^$qe0rt z;W|aNwya4T4CrJ)gF~2FrL%__A{x`~0Kt{Ud!wEqBh^OJB{8wXKncX&p2MF|DgxpyYJ2~J@$DGT~3;Q^rN}=e&o@W zSCmbglg|73{fAz6)$cxW|Iv>Hdzy#-_FH^R52VXU4wxQOi#YJmvDcnD?G4*MdGW6w z;rM$v#ZJ=x3}nl4(v83UyPTU5eWU}}JY@5_$;L0mzAa)mX_A3#Sx&m~rO2DVmtsHZ zPIM31yl%4bk5b-de1ttfW$+O1b(4*s_Agu;{yD|&eVl8^gD@0_&*q<{ej9(v^(mqm zt`D1sY+g6n_-C>2i%|S-;yq;Zy2-}(QvT+MJ)|m^hiqOq+4%L?Ya{lOZYADBHm{p( z{F0^f7bLl*VZb2M(^k=&ohfp1^Bj>|7L*C8Tg7yGqEF^;==Lt>YsNNSH)KFA9V(b+ z>&7H9RFH9K_Qmev)FRn0nY$G-+2p#$th_Ym)OlZ}4}|MLD6+elaA?;)GlO*Z}( z;z#2nYyv8Shj_1>Z2W)xhT|9XgZ*H4275BP+4n~NZNKII7_sAbQjI8-LeR)UQD`SOv;5=*Z}1-xB$=pC%?^>wj<@A$!Q?b(4*M9(#YpX5y=n zJ!JE`$;Lm6eP6^T;%kvTWb?Yo#(xoe&HqfXi&S}d$mVsEjlYrjYJ7xkK-<7Wyw^=O z{@7=@KjI_Q9H6Y|9^$=jvhj~#?~kY&B3?F&@u~4&XL)@QQvSm5x#w#r+PS^!%uz860 zy2-}R#GZ@jBVA3rhiqOq+4y5wzO8@qr?d`9skKOjO-zs*G)ElD)wsPgl(V?-9x?Ykz9v-rJ-DKn2iLb>+=mS~@5Aj|%+4$9m*#8lmNy{^kJq!6LM(J(I3;7+SeShXT z6qLO<7#%}!@==V^N5QU$t#G4}J!JE`$;ST*`<{qxENeWnhiqOq+4vv-h5JiHO`clZ}6S$qV@$C>-=iO*a0i<6g)=9&z{aFXW#dJ{YoPIqAm# zhWt-txxz%^E73h3&*)||eiC_|8gU=Xx|n=CWb?Yo#-D=yMPh`DS^f%A5Aj|%+4xgf z=8MWh%OQRdsfT#4n{50qk6}Lz0r4L>@rC?wFhIWLq~lK*4Dne`y76}*Z;lvGd^xg* zY+g6n`1hXlLVi=k=#yW_uObf**}QJD@e5^-NQiGH-a|I8n{51X*jGn9MY@G}581qK zvhjOarm!0%rGw=%^!v+R$oG*7{m6Ue;~?JaCYOy!`K82EMI0dQS3VB1dEI2=XO86j zjyOQNAAb+oyl%4bd$9}05hwhK^;By7)u*KLGnBVKVjuqd@bQq%>n0n2Kla@b-ywd0 zcn{gUZnE*8q#Qym*p!iXqM!acu2-j~sCg~>9N9xQubXWAPqFWg*gn0ojHSBvMwx}%1+d($3n{521GhfJG zdPa&*kq*y5wk#*z_$uNbix~C#7xLSXJ!JE`$;JLK3iCL6!AHFOD z*|MB;=V)=5>>e|M3OnA2E6o+Y#AAHm{p( z{D-h_nV4eu5b?5Ej8Bb!FZPaz1Ed4w=OLTdO*VcZ_T4O3D4)!-&^^R^-DKmB!+#e( zLK*Q|2M_UHH`(}AQ;CZhJ&k)dvWINa_Yc8;0Pg09ZemZ&K(;I=-T1}W8!J=%LMgUE z7>bimhC|Dy`(oA?MH2REy14&uFTvhgos|8m5G)2Rm{d&nmJ z{TZA13b>ef0jIk&rGpdDR~USP@H@s|3%^tpbHIfWuzYBy>7Dc zHxj=OA7L)>IZ_YtUN_nJ)x`9J-C!@M$zW&Hw~)%$(1(2gtQYdnkqTpw$5ahQ;4_?j zjQ;}i9T5|Uh?gy!r*z~0_Cn-{#*27HAP*1Oyl%4b@56p`#C+mgiT9Ar>n0n21@>zr zE++mC;yq;Zy2-{@Ud-}|6B?24P#zBAy>7DcClK=@KEfj8`$#>+d);K?yJoZ8h+&t! zke^Q;9XUN_nJX_R?P#EElQ7P5zI zUN_nJKa&4__y{i!;Va%^d}{oJYMy%|9wz+-{vNV<-DKmB!TucO7VeWw{2<7d<)lac zyQGgtyo2~tkv(Mdy2-}Rm`h$-E_nRX7xJG+_Ym)Ola2o)_FqIiO#Fkyd&uT>la0TK zm@yF#l0HtnhiqOq+4%3y~n z-*q{4ZczTlRDKru;t28b`6duASvV12`RHx=FrW#ZZSHNR2o7^_E7kXY1byep^ZJgB z{o+W3HB1E4sLwRn$b_CX`nU-*W$~p>zKO}##M6kw>>W5*W~9-+j@e=~L0I^ri!+0?Nski|3 z&N$NCpnOr5PXzI~hfcoC%H+5j+mRdFp=sq-Ua>+`nr&$6X6gurO=;jwy_*ig%EKqy zH9PNxVU}Ng4JXcS$5eFXo623e8F+-(kxOFhC%?MJrlyXUaxUiE#W&9f56&4hlqH>$ zSDPv3&$OitO=0G@?C_UdVKN}On|~K$HOVmy?mB!qE+*!$@l`F|46mu{YHnG}yhSgw z7+cO-y%LYxF3t?NzO8*DGbZX_(RpH6AYEPBXQ)B5}J4e7)ZUeb?w^}5D| zV%YlEuU*TWv&!1KFElemj2WlH_Ak1de;51emAIRKVG5YKrVSn04K>s{#N&yFP|sQaz=svti2O_BBkT-Q7F?(kTo#>|WQ>HKowYYf3D0eMigW!ljk*%b_2M zKepRuQ-m<{by%}5RLY(DHH9luVQz3{ml-@ES8j-3?TWd}md(97T&L6#E%qx50~-%> z57UFq9@{bzOGmf9BR!kxij%|qAjY=jxPUM@IEb6)W&Oy%XpwE{rq#@6wsLQ?bx>Mz)X~F^dCjrIkBj8- zC!BcF$^HiGosqNl@`|a`DyPqwSv70!rSs-5xJ>T({4KYDaDPV)^LTe%cszZHCi9)^ zYsPk6=freKCI>=V(8Db)IbDvp>am4#LDmjo_Ddy43Sul`Iz=^cOV`}M09PFq3^wg) zD_&1ElTtWQF86mhj+|s{N<7?Ky6Qr$ zfXhKB?1kxo{W#{htN3lFXkWXQTXvWlp)l!wn0`0paRfg(G}=sC zy|#458K=2v^+P$r)LG&40BMQhE}ocMaq0Zv6#WW^Rq#1I>LS~b!;O!?~%wpgInja2RG!i0tF zEwbR|Fpj<4st*?cu}xY^KCP`#9~jr}-Q?gThbuS#wQqB&v~n9FycjwA>FFehbn0mN1^cFmKGJ^TJ!JE`$;Ll}|LQlT z*h9J%e-GKbZnE+B6JLXmumh+J9^$=jvhmkl!+WSVvksu+YTD8=NUl4alTR6ON{_vk zwmoD)zBQyC;=OLN@sD7yCJ#aJwdfw=y>7DckF2ImI$}R*vSu)3%W~3>ezX$)V5eG>3)(?hkSx&m~$2GF;Sgz2~#5N`M5bt%9jlYNZtr3b(kUeDc zy2-}>J^A-VtR`OT;31pWO*Z~)@~@6i{9gP$Wb?Yo#*bUeu@td~bRYxSvYd3|>(+66 zM0AiQ8OWC9q#OTyGy6YccMIDBn}=*(H`(|nu0bOjWb?Yo#y`=@ z@fEQX-~GgU$mVsEjsGO}ggBv3sdSH_IEx`&*T#FNi2WVp(LNZmWjX1_--W#p1w!3hE_`Udh zi1)h5#@~j2N5nqj_pp2q*}QJD@t2c-KRyA(_aS?T_qxf(f31uAUc^4q1KoomTb7e< z{O_>ujTq=*zh)p?mXmJ$?Z}%W`bl?_w})(AH`(~-Z(`jeR&U~5LiUi&>n0n2`$m=@ zq4)#%d&uT>la2oz{#zqziPt)K$mVsEjV~qt@(9K6#@|CWubXWAs9w(3h#jN{GLS9H zNjHAwTR8tBwvlFiWy^BXjeqp5Tz?~KZsuBuzlUsIH`(~FWABToC0=Flkj?8R8-Ew} z%@K;BfKY7S=yv)n@8S z_g}vc2C`*2 z>Bb-X4(cc9LJe}(SA3R}Zu~9pWcx%6kXDh0hiqOq+4vUhwGqj!X&F=wgKQ@I)cA$i z%Oe!Onph9nyl%4bj}WsfVn1o}?!k~P%Sku>Aol)<;qPHvVDpg8>n0n25B^&t4v_AB z*I>w&<)j;b+!n46ELZ4wFLiBF5Aj|%+4y^i-x{I#1ldD2ubXWA-;;k|#A@OPD6fZX zUN_nJv&p|YLh*a?_mIu&CL2HIHnu-;!tnRA9nd|*d);K?pTyqxz7zwbNd~fIIqAlK zlK3qV`{2tmkS)teH@+VGKFTfBe1K(=BCJOuUC|UN_nJ`-s^ZQS)Jr!M`31*|MB;;~TN>L>J15FC+C3?{$-n|2p;^ z5u=IEA$!Q?b(4+n#lD|7Ve=gK0*ia<)j|sy>7Dc8}H)!7_s_p z&ee|&hHP0*y77;EjBOWDOMHUtA)D7tHvaoAzJ~bG=pOR(y2-}B7yIgur`SunnLIpX z^Sa5#FC@MeA7LlxBi=*2*G)El{0{C#5#v8gSwAxvvSm5x#_vb&!$&xQ_#C>2c(0pm z{0{tY#YgxZC`b1Y?{$-nkIkg%S4YzsEn_2b+CCcXh5iiDSl=2OQKOwk>xTN9nws@; zWY90#8=G3|d1u;NS6om!+oLVNJ+|Qv3Px$&$YjK=#2vvw6C}TcnfT&2Eb3gVzb&VA zqh1sYWl23^`G$xbWbbNL6MRQ~cXOPXBF1&K)%&jl72ZFDCh4~J_QA%mzG_IX3omH& z3c<>0Y0S5wwWXtOO|N>d*c;hF<>_f-^VVhhuE-ES&C z*|+Ew&|&s49Y}jiqvhAtyP>gV?b;^30!zOMx7?WD(8gkUI5s+ahbnZ8*G}5d)X5aO zjeIpv)6vEvMSGYtL@z(Gs~zoa?VWsDkC(W`HA$r-yoXASTfS2r<2Tf=53~1n@rtB{ zX-r#RSs#YbBO~NBuP|$^vZ9ZSjsWJKO*1RJ+^|nU+G{Aj-@Z;c(4%2;?n*wCJx<$nV|(ZNaeDDLF8zR3 zPiND($;#;n`K+hMjZP>&R^61zjt_7(rCF`5Z|!Otm!!)~Y%xh;3CW;bl4SCO^po3_ z;ziPlUmpzFvYd3|e~$dah^I;CXCPaalWzRSke`e=@$czxiR>Yp*G)G58tgwLPN;l< zzLMx3;=OLN@n_)wWqgEFi9eClL%i2bHooy2*uneRj!%P&GZ3HUq#OT%Z_>v$;?#%e zQ%YVQvU%NP<9|Y44@SI*@B3922id%Cvhja|{Y>J7e(-r>J;Zz6WaFJXH#QI1yl%4b@BGdS`R<6_qz~fn zA)D7tHohJEwGlrgeVlj?*}QJD@l&w3KAhqUq)(%J$mVsEjsMv9**+1c{(y67&tS-w z<)j<`57-}!c#-ruY#y?C-DKl${}IP;#G-%XT>s%<$d=`#8@~bjwGk7EzZTmd$d=`# zM}89N#Sx>3zgc-Z$mVsEjo0-y-e+QErH)%n`cAv});xA(kTbs}?ev99yJFJ!QlGG= zmqwwNoxV+5p&l)+3tSqP_T-Eo-%<|Tbouy}rsj?>(bWeaouiAdCep!R@zg>m1PM&s z)7g8asu!V~L7HD-1iFswfbn|(zfMk&8I-mi{GUP z#L}K_ZO)roI=g$AjVS#xTDtv~chIekLgjQ@3%!ga(9y)#K+---g?qRn(>QIU`kb~z zjvj0E^wY@hB<~kXeU>gU!@oz-Hq-co7YV?{#UHaCVYf_KxOa{ z?{$-nfBfHQ4|yWR&R^4Z#`g4(&Fdx`UrNjXKEe*Rcr&H5A>6Vhj_1>Y`oQ{n;O%p122!qYXfJQs0%rQ ziyv0y%YYs2p)Zuax=Q6#-!2c=soeO`u`zy%JN-KLMEeR2y#;kPgzqbcvv5MF)9QrD zE-$^(sdnA1&Tz5AV0r?#HLa`fW@JEaV-wxt_(=DwTxM?JhK{tCA=yyyv`f{xo_fBT z)7?a$s@C>3y1cZs@x6%+v4+1+Pf(MS#bImM$7ag`a4t*$J724TS<3kAX}D`ZhZUiX`6}I zOu7%7hiqOq+4w2gH%0W3_7m?Ro7YV?{u%sN|9gr(q+9X#kj?8R8-G9XHTVcSfXd(@ z-s>hC{||p)TO3HyM>_o3!H_M>NjLsG$U7r)gt6xh;lWw`;?pLTc z744x5BafN|yT0?1c5D=z_V>5W`}GZcsEXc@?L7?l$Tf6!g-(eIeL26TR$5@X)B=+J zUa>#3n9`w_Z|Zc0mZC!YgRLOl9}68o$J66{g6eW|)CDdHUB@;q$Md+UABWBw4@EZ8D6y$h9*FAia=QT1d0Nqa2&T<8OPGZ3HUq#J+BbDSFyTS@n0^N`K!CL2Eo`<95Eqz8!i zkj?8R8=uF&<4-B}k@n&5A)D7tHvS>vSK%Y<0xE-tc(0pm{JRcu|31h%3~=3go@*ce z9;>i<-Q=y2|03IeTZH2G6Yn9L*G)G5``C9HUZ8Cs*+Vw3n{0f=i(F44R+Cn26AHOAh6${>-%;tO8py5TE6w8$a_ey#I`-A??HFA)D7t zHvS;~)%Xa_UD%c?gJBu0;NyGaij{z_ zak_qy^Bb2hU6KyA;w@D=?6-|CzVoR=GT`@;aTe0m!*I$5UV(JC_U78c7vR(AB(bp~ zg+=LQR2QD12IA+B4i830EMi*4d4=U+(4(ya&0K3VtTR4%jf+=M8rlYJ0n2_+dAoSl z9q6*}AHwFDWiCY!X$iR;;|@Qq|dd8oKo;+}KX5pLXkp z`tF8i1_pJ67h^e%RZKtDNF-IW@ZHB|-p=OgyK@?b-JR>+*lt7P;szhuZ!HyLdn9JR z>oa~~r~B<+-{{6f>E@!1R($E2-fxPVQ|_VGiI-m8uH)^Z4fodig_YOZwzcPOs>hSk zw&%Lmx1_I1OU56{=f-j_f~{aD=y(I?_P9g&)ng9jyEm?1Qx~eZb&QGS`;2KGb(XENtVgTT5fE znfc4pgJWVbK(%=dOk{-^=vB|2(U>d_Gj96q674j%p={_?+Wg3{JH21Eh77-)23|hb z^G=k}ZettxY9~XZdNdeJFGSt#wLEo z#fS1w!VAM@9m-c`AU?}UH~!y{ACGvBbWsMfWjX1_-;4Zo#Hkk^VlJt{kS)teH@*S+ zapHuFFJc`?J;Zz6WaG~x{y}_%Gl@Ty)I+@2O*a0Rg_NZx#goYMGmtIINjLtx*k42! z#=MbrCG`;Rb(4+1<_flN#IQx|EAsG=&Fdx`e+Kq35l@rOC*DIgubXWA&$T>!gkOM0 zbPw@fH`(~N)?$yCzw}W4%NfX)<)j;b5%%tg=SUyN<{_KcO*a0JmbWa$wO5kYn+8L+ zEGOOg2Z(=~We6w2-%aWv-s>hC|5oD1tVmJL@?T_m9A9 z$;KaA!oI^t_yzHm#1DdOSx$Q7A0YmYn0n2 z5%G;|H{m-vVbvPy z?t1;x($>@7(-m4o^jus_AP^_=SYI?7)WgoeAlN9qSym4x4Z<}=Zt(|v8 zY2ChMQ}MNam^?>M4x#&4sMpvHHSJePy{TB+Z`wqqkQz&6amAS`MB!^&RXb%7ZPXd{ zW{sNSn)=3A#gs>HZ=LLPF=V=(@l<#iv#(leV{cpih8Df7V~aB5lRTT$jj)L>i>jaM zhTpJW5$W$G;_4dc-$)HT4U8dc>$`a+HmHE%&3YSbnDb@QB&xD1N*c!7Gkpg=N#lYC zt#h_+X}fv!)ThbUwzh8!1$(J-Y0dyz@49`-UO~BdU}1ynMIY7Bw)kS;rIwR!;jq~X z8|>x%ZI7hecfo4v2X%+?3&4L|e<=Ssunvp?Ph58>{|Rsn7!7`M?VbNpzmq{}OixV8k`XW?lT%<$OIw z%inX7*Yoc@a0VEYoWlCj_o$vFOvPbT1Zelj_k#J}^v8DLB@g}>$aRXD$?!Eahp znaoJ0^KT}Y0?Lyr{4Pu`N-j=jCzm8slQ~IslKRa}=HWM=f0ref<5%PS76!j7l10h& ziTsup{A%%gQ?dX|OqL}JljX^ZM1G5tE0e46TbZm%u12d(-ke-RdM#L%To?RSC-u>9 zO~J3h`8DF#l&nqUw=QYs-|@PTrRMRdQ2uOR_n6d-9HCWAe`A*5qBuyOZ}My|hfr@BPUKqTdG#ez!Zn zt@wQ?`Rm~K;pC3wZ;}rtA4%>^wk01;Zcjdzd?L9g`DF5`WNUJ7@cVSKJxTpOQ}Em2 z{62@@-zJ|=9Pz_A@`rKEOB)f+j$xb~!@~I?ZWw3DEA`Xaq<^O+rzdCf?`&``$Z>9* z&N(oKvt}&E{aNw+xFC2>#_xRmrr=k{F+Y@_a+?g!2U9pF&cILHRB#rU#_@axsO0RL z&RH~*Gh$XecLw`ijK^&JE^&Ty!nso&&Xr4(OF3IE<&3)&zXkZ|{Hozxc_U|)&Xv?} zak2!zrJO0tI6D?_9u@tr41QN}meg^^Ea5CNzw7Y3p0lrxQmp2jtLGe%-zv_KM*MXC ztm6#4jg`n47O+MQnqemcM8*A>p1HqMxh$tKQ__Hc%zXHf@d zhx~LVrGD=y_`TEl-HM;iF!{YF*^<1M^X|6fec}9hC+E)XoGCh=ZsjbIpU$Y%?;{1j zJDuM){O;mhli$aZyOWP|R_UDUS@)ij8#t3@a0Qsn zS$-8~Vm<$8b_X|L{T6qm8@XSt=j?hbXF)H=^(~w~w`2P-`fcI7_z36AoiJND;=jRh zeK$vaAG(hEhe4V_m9n}*UV68j>bG!4 z9+A=0cYmHdB`PC5Ii!5_kgVopKGLu3NQTIt9A(NhhKkIi=n(%jc zK~mkvezv{3dU=JoDSeboyfV@E*q|fFx$!Y`ElcrNcGyKi>|(W>5^1ge&w>u=FVG?D)X*fc2z0{$ve(lN|skHneSW{ zE}M7dqPfdl*7KGwTC`x^iiI)rWtT3SJMW4GD?;Xryh3h^=LUMg;@TBg2Wk0&#S6(G z#!}w7OD5ZK z7PK@x6e}9^y2!EWuozzz7sa^Hmd*yo-F6;sE|lEbcG3XT5)+E67&i z&EQL5M{|l98xG~`z^BoFu>Mf~G4Lghm%yy9L;1O2A$SwG8q|Xpa3k14{Qm&| z3|<7ewnO<#!D{es@DFb}l>Z|*?X8FMvq2qrJGcjY1Dw!tC|?1t2DgAugCBu|;OrX@ z<>!GG@FDOu@N@8Ia7HKjf$P9#@M*9I{06q)4*UfC5uCb-e8DQP5quOp1bz*U?xk%D%mYo}o!~z31Mn0$ zp6xsdTnTOgp8-4B2akaR;KKGp`FDZ)z<0rZ@N2fg(XH%X@ILTOa1ew;=%^AZCWC&% zjyamjO89%UY?2H|U$K(01ui3^hs^IBe&_N#kKdRvW5>RM-?(w(C-6J}{0sO^oH%I`wIY5M;Ww4v zwD_y!H+}jHelz)1Rn3}pA-{_*<~MuxC6`<>hhKH|+_`fPD_A60Z&lpFYuHm?`?}Mp zot=Hox#zuMLiyCn88a`ucuv{K(XagfDaoknxn(1(%SM(>n!=xvvoAp{8#%p7f5(g~ z8<~50QKciQORK9(M@*VqI$}2I z^hu>7#*~i8m5!KJI^z7&5f!D7XH}P#m5!KIHgR(4h_R#QmX?-IDJ{LEw6vEzNQ&zL=S^0jPOw(0Ddvn$Jnjhwx{vU1qy6Hhwk zl(OoPC!IiHN0wbMvTU@9Ju(@+qHOfava5qqI=ZEF^ysEhWx?m>n{OUHx@YOlx88bd zPfyux*WXq)YGlK0m`2Myy6giZMls;g@5pu*Jn9qQ|G^g?`{qApLvJNCEc(wQzZX&!)uFU>#EAbYK6~5E zEq68i@C!#ex@gn7idK@(@qD(Cr?a=yp79RaDc(wpMklRKN73H&-sJB>OUO~QP^oq7 zXxeLk!SO|)69vnvh&TJI+MfZ)$mRypQ&pNwfh@raeM!Q$-l>CK9fAfbL5lBYf6qS`E~Lv&z!&Esd7>Bb=s}2=ZUk9 zr_*a`!Mct$_$Qt;2Po5DlK)5!9dW4*wBa@h&HqU*_a-kSFOtunlYDYi$z$kTS4))N&ysKRO#Y?hN3=9OpZsE| zqin?Or))j-MjkCU+&#MOMpXGm*|L1&verEC%9-qlSlD{eW$NWd|pv5`=_2ftSNAr*K zb?WW;tHHN8s6Z{5TeR~-lme3dLvf=y&Gxe3_O1`}X`p zA!;|r`}X{I*aqA453?1w=O5vG-=5zS`1!OlZO<$B&j#-cI8wLgwH$Fj0^9Rip0vF{ zOO^Gu{y}pp6-X>YzhaDqF{r~${ z_`XNlPcF2ig?6;Kq10~Tk==e@;yGY7&mzKRurmYkSx&m~bv&okMs$$w!R8^G*G)G5 zZ0yYuTS@m4?;)GlO*Z~l_}B8hBkTftj`9%ib(4+1hxjUdgl#}&@DT5HlZ~(AS*bSS z0MA9M*q$D;dEI2=e~Nu~L>bRc&BS}i=5>>epTjc8M+_%^6Y(ChdEI2=Ctxp&P<%h} z93 zNRkdVZ;u0Y)#JaLPtVXTUa$_`V|#LqJ&dsn-yjLSdAbUt{OJQkZy9xIYH020(tuhz zclWAieX9obhHqH)w)cciV1=O3(<$_0SI@HgHu_R&RYGH(Ew4A7hajDP zK%K1?r^}`ZjwRH$Y9K**dPN>wUiB$U=Lv8nw*d<;Tm0boD%Qc@6E59CJIk#p%HBmA zQwFkSIqAkfgWMmHyqjwuvWIM5H`)06u@6M#h+mEDA)D7tHohHuKXF3Md$_iddWiSB z$;MA1eh)svc;a)U9^$=jvhlaD{Z_q~F)gIKK`sOFSx&m~pLrkmn~0A0Bj1*RY*|iv zN0RAveK9OHYK2;I@EWeq&J!JE`$;KatJr^;YJU0{XA)D7t zHvaqg@1;D#DAuKl)I+@2O*X#tc8(u>ge!>eqYNJ6y>7Dc=djJnBHm59lRP|R^Sa5# zKY{;q5$o`^b+J@7lYMIZ`V9>K)rUh{x|3A)XJ=u)gm^isE4cjo9n@b~p0Eq-&p>>Z zlWzQ-e@#1h#17IV1KF~ibmLbd_eJa>9iD+~Sx&m~qmZ|JIK=_dUFaUNdEI2=f6BUa z;3Mn>Duai3ubXWAad+`P0qh5x!1y}{V_@50-R#B>$9{kqVIT3;q#okEZnE)D5Wgov z@vHFnkj?8R8~;h{`#zeY?_(VQg%?%KJ#A zd&uT>lOuo6J?#64bBW)F-9t97n{0fai$9(C1H^mC&+8@|f7&NmzlbYIbL8P6o7YV? z{wVBE6C)_Tiqu2A*G)D)&SOh;jQ7?|+@_b(xwqY1Q;~yG`j- z1nVY*8q%5;UeU(Sj&cDT+B00pRL^PTrLo3r#-XiL_*CDq*_zVpo%}*Ui~ZpXl}bPQ z_2vAuEXD`Kidk23>DM_9zLKKstDKV=$d=`#8~+S)e?;;%&Piks*}QJD@%LjNh{zGY z8refOubXUqJNAC!gqr`w+MB@D)b;Pf#~g*ze43AlP?`r6Q79^@sE`JwqDh4!gb+m` zL?MI_LP+L03YjW%h(eLMDCfP_IeXRaa6ixe{Qhqrm+L#M?^mr|$8J;WCx4S_b|`CvAPovl-u+Pw;JufU)JEFlKs6Sona+V`Bsy$S>F8MM`@)*wD{ z8_}tK4gApzBoH4C9~;ES)~QVGi{KAr&;{{vh-ZWN*gBP|y`%`&mtx>H?(c5mnsf{2 zts5;6`bioVh@XQP!ZG)-e;H`s$G(Eh2Jx|VDpULOa^%f`{|Lt_WHyM8ty7uWx51yw zAO!JFkl7$UwoYYg-|-a34R9U^e~x4DS!)oVxQ*!4?nV3zybEA+tezY@N!~9#nz+8I*vdkp~;Z$JVJ#?S0|5Wsna}K|CA8$JVJ#?RLVa#O6^) ztzDST8(n2Z?6WiNG5Ia%E~>D4Hyv{9m_=PliU}!97g4 zN-SzC%nw7&giq(f?PJOpr4V-dX(@v=iZBuW`_J_h4iq8}|E$@9$mJNL%p?1fh9WN* zm|8HK!eq?kD;yhz?o4DHm9TREv`dDEVafv0^}eMgS%by?>CpKPapXk{+E&zYDUzud zE4|RkE`q+)F%-3k`mhXeYrDJ0L^Y34?mDxfqB~+(vY29|bx8tqA;gcy58t z2Jx|VDpPwWq|Zbe0uJIy9oQgtwoYYge~XwB24B#Y?lrAJeBw5uQ~Q4S!)rx&{sGrS z_}CymwoYYgZ-Bp=!41SmBc2W7W9w9=_Pg+3V6YGIDTrr-_}Ds?seLW{n;EP_dwrupov z6)EatOOEy)UvWRdz#M%3OKT9HxQ*!4{sM9Z(hxX(!@UKV4Ps~ORHpXrtayFIJCS@? zAnDjTm8sna@%e}&;C#n#63hm%vvn#{dk@5CBMm_XU?m1(7q=0e+85R17-hh1KpsC@ zgZRX4M5p#)@aHn%{3V|F{uWQ|bbd*6W5yfu5PCflsa_#oK>=7A!{4j|2h||qS`sbiNa1yhTs52TCpenEzG2atgC=PW=r>KL^?#l^qI2ng zNYWC4#G^3f6y{YT(*rXTy0j{axm#(z-lD!pI9(V)W~*!o`%5*qc4`#Zw-+H8oFN9{ z6Sona+Q)Qg6j(5r49DeGY zwoYYgPegn#q#=k0NFCT9cD7DsYR`hdQL0gp)U8n<$3J zP!QxN5|N0!_=*S$ix@&8NC`d>&L}~sVrFc6yv8BnHbEhnt^ki12=vordm-y-MKVc6 zN~>((WR(GpR!f+PHR>uPjvnfbm<5?ri4F@WOFgSg?Pe0 zjarcy?L&&t674kMBM5uDTN|_@gGEO^b}Kv8U#w&Ug%jMd(}|n3B89&c=J1aZ)})n1 zxY6{g$Ij^wTk}qJBEw*WIWc=yXb@(^jGN&SpLm|}QXG$|O=>hwW< zU_`+yG>izH?H`PJu1N%D3h|Gy4vWA+BudoUpha$TS||9!K(iad;W(N$3ao&9AR9)`bZS?$LY@q?!Ex}hL40hT%G6$l z^n9ctumuvJvq9`^oyyd{5$Pp{i4YDpM|w7hkF8Ug+T9RehZq7Uq$PD=gV@^oA+tezY@N!~E`gYAAR0&k&SQU2ctaFM^9`WHfHgZS7wm8tz2{N^?yWP$^c2OGr4)~QVG%Mq`QGz4)3h-X7+7qbyR zwOfur`y!4YcVwd=96B4s&eo|+?M?QLf)d141DSv}3+}dPn=xpAqzQ+d0OZ?YKaB<> z9cNUd-~{p~+f7h`wB{(E4Ps~ORHpXlNMFdH9Pzf0*&sf)PGxHUiMmxY;5wkKA+tez zY@N!~?h_dh5^UtvGKP}OFg_zRY))wFM;m%CN8i7S))F8uP|;Utl!LwD0KO|GZgO$; z8Wssv+en9RK`$gjgj2U-`d~88zduQB^tb1#kYK}q@$AP`gn6DM&ts_nzlg(`S9Gn1 z@W+h=+tB*1fOU)UM_}`HQFx9QySOs-B)N&_&dQTq5SVM}5QyTp8!(Z?%sr=g1xOM9 zls^qY@qc6r8!eNR|A+s-7W(hX{o|JC|5#rVM(Qb^-+yl$#I+nJGye7Ql{KzWa3A>U zjOQ=F7%~O%{S#bWMCm%Z;kg_#!F`~;Yikg@xQ*!4eiU*RgUeu5F%X})jp)=K3HdaG zN^mbR5TCe>=+tfmIcvNKQWLNZ(Agk9woYYg|AOsHLK=b^fYgBvVrT1AruLpFlaxzv z8f_U2W`o$-I+dw?6k?1SWPxLmo(r|%p{_x8&$N;Azo(r|%pRqn{2!B;TJ zgAL+i>r|$82l)LMJOSq+o(r|$8oRsk|n8ObttWUm*2`&1318BO$#t}1$+weIJ z|2X_%&7q7XTKHtlj}bi}Pi54pjLzY73B$E}xYzBp3z8Hv4 z+(vY2p9A?kgKDt07>G~YMs#X7gPa{A0ynf#P!639;$!PnruHA$z7(V(r~^nH*dTVc zPGxHE9*+A6luM9+wloK`LF{au%G5p(F?6*@v(I( zQ@aHGJO-P<*@$O@_}Ds?sl5>Cc{4?D0w*9n8^p)fsZ8w+k=VW{lmXNOX-Llo4}P{z z42g-AXK9ty?M}yDL!#mVyoa2Bjl<^gLvT+}Fwoc_F#_o#r zehh3-P8RZHgZS7wm8t#wT(lujhu9IQ%WULZ0=WV<4s<>s58GjI3hHM7?0|1EK(>qc z+<_yIFT(Z`Xp6MuKEWq4a&`cDM^Dx|pZ4GH3+at$%Y6dk|9cqc?jk&=ED#|RTp|YI z6Sona+7~XwGX;Yba5a2v5FcBoGPMtdKY>9mxDN4b5FcBoGPMhkK0Ho@a&RWnvq5}p zoyydH4)N|tLy!-UIVkwU4 zC9Og1;x?jFdnSn`I^YCULuZ57**cY}-5crS;zg(c^Tj}X;x?jFyEkbcltEAcyAzlV zVrT1AruIwN=3EAxW!TrqgAL+i>r|%pCGcl5r~q@sKz!mhqEmZjB4m_Hkh=nfutpVJ}DnEfj`PGfzAf8vvn#{`$psu$G{2k6^Lhp z_}Ds?seL2r7snuZHJ-7N2OGr4)~QVGZt!yuM-T$UA)XClXX{j^_LlRNa5WK}>&V%! z<&XNwS_$NvON&P&F@E9rDK9)li{>&WWDdyYRpeIpe zR3z<_BN~|%#V4J$&}j*8F38e1qKb?Dk7JZLf#`1`WwG}jEjb_qat*=S8@~8}zzk9o zPH!#NA6k_2SkcHbGDkR>Rve$TNmr~$e0>tGufxZfEn>jXt}rq-jn17tfIk6i)?j&8 zbf})CLl#O3Y3^FhRJk?zZfF#6*NLDH_7(&2iQ9-y?cGyxY%<`3qv2zN_}Ds?sr@$6 z^N@zX3W$Tw2C=hsDpPwh(sR~}5D3;sdNzoUty7uW$0EKOF$A_qOX|P|v9on5Q~T~T zlntbz9XT737R&~*vvn$`F=?kEmJieseKXEekl7%1woYXplQw1(&L0d&d@kbIAU?KE zWojP?zc+*ah(C{bHi(a{Q<>UNqs>UWiQ_c3`|CE`-)+S=edK$23*IH9w+69`+la2p zqxvPncB%Om5hCF3$z2s984X6jzA}X%rr=5DkQz7$ef2#0Ga5A z%&Y*h49BJ*1|Uhx_D0@j6@t=(&&E*M87j(;Qtha5)sFIXZ+tH z+3h9THdoR=7H>Jorr;fTb8n*ooFnIOte?O!4_pQ+fv@?%NuU77BK%Tk@XiPP^%S11 z&Nd2kpc{kZkK_D-KZo)5u68XmI&wyh80#>?)!Bniy(m6KqUenc8Wmk|gQ8~nVW%dZb&_1k(1yIQ zC3y=~Ql3y1z9=VV;VW@ruJG}74fw($$;)g};mw=E6p28WK%a1b;kR@>p@@&4__O$P zlS%$Tq{7IWY&|ZPtOmfNp-T)#b%$8?(Hv!?$=7rnf&b9)qfc{Ph57!UqJ;0MMcaoj zzNo-7%r5EQr}gFv>+KU6ZRBU<6+(Km{JSSrVOaC_GVLN7Y~E6kc+=u}SXfTW9g?W9 zfBeSN^1C2$|KdRy)!JQ(WB#59QQ#~w5TCe>=+y3VALmO3e&Eyau|a%noyycM3;$#W z@!-pdXM_0II+dyY9@5)95FrN~h4gF?A6us~wXZ|G4$=@L0i+IW5Ib9^GPQR``{f`F z!Ra!bH=wgY>};LN)b5IyjB>;RHIP-=fQ|UYVFCMOAQmV>d3g+ik+wZ#Hi(a{Q<>T= zQNLacNS>-l&j#_abt+SP6WYt>p$Iu(Kjgs%@v(I(Q~Mdj8zT)t5OCgwcPE!{e`LF(pxR|2@5EQ%I|jD-bg*Mp%cx zrwy>)Ih_1{IFb6 z1eTB`)BH}wUL>=qLsJmtJs#o7gE5B32IIzu@8^%#1!yO28=C<( zHa2}li*5<0VF|-%T~QYQAwC2vaN)_EukGM4z`?=ce~uRo{6V~na6A9!cyc3+*U~t| zv5>0u-@{vNKb;diFeo5U7bDzoppzF0qUE1NdECnQYST*3cd8d--HzyIb%yma`H=V%X`$j?+Jm6VjaIbSerb8!LV&4rrC%ALX}96yz6# zyM8QOi`PS~-kp(kl;?y+%pjQu2ZaPh(H+mOr+BHXsfGTZ^8I6j{~zir_I}MrGy+t3 zO-B3SO`Yh#BX7ho$iI0r#oz4V<)7$!{huNmKj40>_WxgGA2Qr*dRW(PGxGBgx{4xEci6y*&sf)PGxE@LVAnu zB4mMsk)93WW9w9=_C&<@LK=d2fYgBvVrT1AruG}~=P=mZfOe^G4dN5G5uMss!!Lz6 zg4Mue_}CzJwoYYg?+$+>VhF+@M}gTOcD7DsYM=iT?Ze;^I0<>ML40hT%G7QNzb%6k z;2gxWL40hT%GA!>+Hg1(;Z{PqBK*9Ndu&TFbT){Oty7uW-(y?ik%piWAa!7a z*x5Rjsr^bPv;_kl3A9zm)*wD{8_}u#Dg4C@NW2_mHi(a{Q<>Utc5V`!W}wrhNpK%| zut9umoyyd{3jQnxQi!iXJR8Kv)~QVG^hm@TS*zeVJ`q!~?giaCfFPz`!Ixl2oW&RqEIT+}Quekg9$5>KD+m$XbfzTZv?@6?6W@$~vvK^6#f! zq{7LTq@BkhA6VJ@2FI`P!!UW@?e{k?X$j#T5<1DVB$+hmMJXg|*s7S4wqd6R*UzoKp6i*mlK7M|}!i1?>{Gv+u ziIV}HtmGZ}8&`hQNMLbR|Ew5DmF+J`nMDHs^lgdQ+hm*yfg|ofT z8j@q2Zs$Ba5sJ<*!d?&JpIOE_ViJzO82@7XTe{|CtXw8G8(Shcf86vS;7{A1roW`( z;P;DY@;~`cC~>S?E#d{Ym_bYz_j6h;3r51(%Y;pAt%`X$>@~(nC|P`rY#Y`lLnKRU z?Gt?h6Z#P){2nG!STfr#GBY=dG=i$FoJ?%+}dWu$WgX- zqsQ1gV0i_s};LN z)E=GGBsdRL0Gw4#0;02_&Dfm8e3?jR3>2r}IRwZ8h|WeTV~Z8@`9ZHw#5O16-Ux^T zh|WehWAhgC*+M^!v^A?y7V4x55S@+ojO_{P!?vfw9*4A6V10ng=)^`5jeLo0&M>v} zq1%vh5R(N214L)Tm9hDuT(+ImQ-b6PI~S)`bZXy^GE*7!Lj2@)twDU^HlkDe2-MG*K_%i( z!^Z~kv2`j_yLBqIpMfgkbr9bQ#3ybeI%8jt?TclQiuhFc*dRW(PGxFew+ZnKCU3^G zEb?H3_}Ds?sa=x9kTd{^4+gVA>};LN)IJOQVlspKsB1Cm&j#_abt+T)RQT-~sBXk> z2k~qWA6us~wJ(Q1m_Y{O?a{7m5FcBoGPN_edVi(hIl_B#Lq8!!1d+~>UcM3dAJ0`& z{mJuPIC_{)3&J(bKOzFpTI`vkTB3zt3(0>>DSvw|G!Q3g`=C3e*k})4;G#k-afaum@G+^Ta3&`di}eN{f}|~ z!^R>XVLvePet>+87k;A>K852@ni}3RI$3yo&#o`pMA$CEMIe~A#5YIu1Y)N374DIi zdNSz;VXn%l=!xr(k2QE(6BRaVYM>7J$9xd&~Zo2=W3B>9t+;~x=klz80IN{e(9C&1XS9}%}zVV^k_-}t#!bTSU zxSA!73whR>CH}({y~|0)E6kE5tzcn;ocWQ)Mvi)*tO zh)>)`bZY+yxq<;_Uz5NcG8@Fl)~QVGhv2Vgz(>3{WHyM8ty7uW!{Dz#9D(hAT;IWL z5Ib9^GPUa=z7S~$v=Pq-vq9`^oyyc+Rf79N2Dx`|Ujvy9;$!PnruL8Umoun9ycJ|N zh>xvPnc9;d;C_igd3lq->3(YvpSX?a)ZXSU_9eEX>*u`x`r}hgf3}s~6WDE(R6KKvAO`wTsHIRgM*JO<7n1;8pcz+h*AK-)j zA?Rln$=CD=jS+op&_r45OM6#K4v-!)HeC1}fJ~5t7w%-piD(kx)^^;0VDb*(goeRB zQ)giIEdOxy5{W`h`)Ex?H(K((JR-s;1{)oTY4+)yz|7qb-V3*^za+d~;gX5e{}{(i zJxn@Bpb>;~KBLwA&`9)+J6%+$Rc{Ae>6jPtqQtEHeK2WKD49eOmuU7}#YiIjqxGlh zM4R(x%703S^ki`*VgABxBW>Bd(Jk#Gp1(*ZZ7Y?F>{%+$rgG}vfS3bE~s@DB;YQt|(_JzA&x=l!BLD>6cl zj7bXCi;S46=Md%_L^i-?xE}g~MFj*!>IDb+iaHPLF>N?tD(ZyK4qBo<^@I4X*oF{t zlrnF-NdwND6%>KvS6jM82D%0KW__ZDw;kh z(o6IbdQj_Ic{2aFsASQR{6~5(L;UPp-TjM)2=~aJapZLI@8j^MFUki$I?-o>|H~@9gbBZ32V!!Wyj{CE!!txNn zZeOOW?LStpd4EMtjX;+)a_$YsnF=2yM01Y|-?9#Kb{^(Ie^Sh+1={}qJ+9>rUDV{F zb2BMV`JDUoTNKE6!2NzG~eZ>lxR5cpo1GHjhT0k!Q&Rc5ERdYz%qPM@NF z`81Y7ZvG=3X|Pf<{fnzGi@8LGb}@gMEM(%Z|2s?)^#UlAbr-i zj(*!8b-iljTC=O8DkpB4NBpy_?7~Tzc}M%iOLO?uVOk2e?iNH8ZqGD$Ezi+@S#&Uc z(ej|=K{q58Oi|%@gba0PbNK7_O@0fmbW@SGI%J!iIqd1oF6Wz`&c5p-&wZ?XRAQ}b zx32p0*UOD6P<~ff7dGPYS8a(Qp-+Q@^SHf!)f6en7#gj-d0j4H`3t$)fz=B#HvB$U zW7ViM{jHL+aj$W=d#DS3tjo4^dTHRq9TuWxz3=t!Z}~C~l@o{f$*nE?a8GXA0;2#o z?=7Dk<|`ea`%dD~$SIs*A^Gh?w?EN1lC*Y&ZOx!eTbnNzD=Xj1KGXX#Vd5UU!in;^ zU(}{l@=AZ@)#yu4o_kn1BYf8^H4T5YPwUREjHx-8;xlb|P=xF`zgqLq+Kqc2eQg-} zw%u6X$1~d3u2;_=Cmm6r{OYo=`mxzDstXQ(xI22(uYui8HOcti-?;Os=f34?N^=YE z^gW|E@A`bH@!wM4`fW=aG%_kjt#-?;KI4^|q_<7oR=K}0Q6_N2#hLrOVoR4dsUs|%wQ(CTDP3a-&n7;ni`}6!d9h2WAy{A}3 zp)7L2%hDH?cAAp}4@%DMP?;u??9ltb)sSy#=a#-aF+w`-#^;JKck}Cp3-$Uu*4ik~ zpRe~YF?88H!IWQh<32Vj8y`FqpxD9qfS1Y^({=LCxEGWT4D;-`D9y~*rhWZpd3i%` z-rBFDwlBCccYKHAZ6+yeSd4vKU)(F~RPgvq(l4U9eI$Fzm~lRges`^(@dTxfa&}nM`wQD;E zS}&gy*LmQ^zGbzhQ{hIotEbKcm^k{mY?*0yF)gj&ThA2 zLDZ}_K|-l?W* zvQHf+AE@@MS8O+Y{L!wS(sD)qi>|7wT_VJx#g%0Ch zx6`s8cq}ncagOuISA(|idS)|V+wvU;hpVmpB6;g_d>_g8v6oV{4%o?r)U9sw-T%`~ zt;t^-LU~UV5^_E-iaZxGOfPa~{z~%7*Ay`dg`Z-14_El;kMvc;i|tA@z-_bUpQ9zIL1gfE%iq~ERF z#PWBs{Mxlj?cd&PV|hl}aY?bIl}h@rpO%it6t@EwP=pT+Yg>bk$Dbs zX|KJ1o;bTcap!asPD&3SrQhle_5K6qh1y>k&iNX2Qp4+L`YBANer4>bzH#O+@5!2F zF5WlP!s&R=e#V(s9~JU!Yux&->!oI_RJc9&+4BP3rCaYNb{TxqT37Xg)cc}T3)!7hH@>;-GCD*0)9u&4PfC_2 zT3GUrS5I!I@WFc9g6wX$4kp@XztS|0SDCf4=h(j2tsKhq>~5{kG?bPJso4?vD}{e^ z-s54XY!}K;NZ6C;H0W61`H9Xl@06b_n;x@ui?EqFEI&GO%-!%J?vj_vwX4_P9QS5| z)3c5azvX(R`(%IqY4v7XaOHa23QOf59Lv3B8Py+OT{`Hgn=_4TJS=Hl*UK;8KZ#O4 zX6_azw`g2gJ$KgQ-f}WNFFS^0Dt%fzBE4T2dN@2XM#`BPsi_bg07APOu;55Kw zm8@H5-JRh(o}GI!@pNU(;&9%9G4(}KV@mZl&wTI6+nJwKM8=NZqRDptklFC0DM#M-)=6GbE39;oTtFGzMwJTgh)tMj(R3Ab<&T&P(aU9b=>C4?Sa2DBW=Q zvizh{-NdP-laqC<2Pw>XX7c#cn1+x>N#mnG?iH$Z+25w`oZF`^&tJ|dnH%pZeN%q; z7uQSgOg#5;;y1m{lebEj(eD@Kza;M-=e0mxQ$=FCesoqr(~>r&^xl` z+E;G;DA`~47tgk?U0Ii0)nFj+uf!X)vZrfm_JNv6pXdb>&uXaqnQq9NyrL$u+Cnn9 zzVx0<)1^}{j_$8Y(UiJ%`dSf?CbQBQq5i`z9|K9ecv*z`I_1KB;$8U9&|g`QU*F=Ny?i5^nbr zq`$YXFjV&F9^h7%dP7Izy}VJ!v~%8i_pEfg4r(&H;jdEB?%bS=rX{u(wl=?gw`xe2 zUp~0LT~pS?F%uu0`L#4azT0f&c{Ub~2G4RwADA0(LHYWMy5fDWOP;Mf=$MmJkVZr0If7iXR4l?D}ky&SIa%QmZd{=BdqEdaQ8z$w{AL z?_4wAT#zDj_sz?>SN0syeR8GYs?}R##buf4508)280cb_U!T&mt(vP%8(W!mN86=p zMy3y%&_gC@eVa$6b28fxd_Q*h_5FJlF8y4TQoO!!M5i~e)}B&uRV}a>_h_5vmc+|p zw+5T6&XcZAd|lG%Sp30bk{4HAJlsR!)d%$}b}zM*cdm}mHB#TF;xOJwCG>z>oz|v+ z#^=tXrMLIv?6{s55*)U0(XWkF8S-`}aa|gJCyW~N+~?=~9_>{ed!#J$+;&VVx&Qpr zA5vd(xA!%!HtzK5cEs$A8T|&S$agUwrrGxT<0aiwmvlTP;j6steBk))oLy*DnHTo`xyl2SYSz*S+d2Suyj9yq^b zyfU|)*TwLnt#%4;h9_j$yyweZ{{Gp1LB}WQ+g$ctlJDJDX?C7og_^{@#mlQxjnl&- zHLjPa<;c9gbl6q;Dd&P#wrrz~mYdr%<7a!v%MCNoTgw}~;e$@C{KfHdGd$Kb6&zQ8 zttM}g=dkHm&C9a6&x{Rar}!(6>9Jk#a?j&cN(vW$D<1z{u_b85xyNgqKW$5o_^oEJ zEvN0vV{U!Z?|rx4-szmo@2hT0Chk1&Wl_S{)D_o570=}B_A-##6ux7h!O!>eMyt(U zmvMaS9$aF>5c)HTiH71C`r-&v|%UfykCd*_(_uiOsa5rTbJ&3+o1YUWzD-O z<)+dTt(V9aet$Z1mbB@v*{kE%>&yA^=0=Ubbyt3gqui0#1r|#4x2D~Bw`i1#%whZF z+h4Efb(<=;-)q3&h+yVa~yx)mdo{*Fg*~uYw6Ou8*(q3+9|IddS#f7 z|MEze(%<$677XXkOg43%GbG5VI&ny*ySj^$W^W#0|qqP;Tdt~S(&c4mt9(VUn-G(ER z28S>CrR&;G!!M=hk_lVKDrxmLJd+{kE4v`7rf1F4on8kIEvUJ)X%KJAnkt=ufTSOr zCT*=Uwz5-idx{&IdH%#8tA>l*9)-0sm)^>y7v}ogrJVTU+IP@iMWbGiF8owIHz{hD z{=TCL>(nwQXrEM#a61_oFlBVONvw=*a75Kk#{*Tv+kBr~JX}R_VyCe$?02MXU$@98 zYN6~))il35QsMprn@0W2Y(4v~GH1_p;1&-VI$^M7;o8C5QWOU0c9L7z?RNi__H*ZS zxn`_t85yQ5N^#*bu?v3{!71rM#bs}p@$GKZ?EtNa-X8+{5my}*Rd|%ERIed?j zY54mX9cBGPbq%h!XRMImTH8-cJHc;!6l~t_($)Q4N~kGRbBR@%*LI{opMhc`mt$Xld5d_zOq>R7ZMq}(r0lJEGiXOukV_% zO-Zs{a@%#BePf=g#mrB*(5~){&!!iXtVWOBCsUU3?r{4Y?*hTYh!WLTu8Li4{GW9w ztIuATlH9&hrJq{DXu-az%hIopEqJ&%blf1Bero5|HwLsl{YpEf=Z)8e3Q?5QQFU8XHc3A97^4RSE;ab780DUV3<)WhdA3t&g zZ)1Y27Fm?2)J+joep~N7)Uak)VTqQnbdKrJDUqklZx0D@{%LclK;EtWZ4;+=9hY=# zQ)R9&sjtd$-|amjoGYdGdZ)aqEpOoZo$9==TY%?;d(lyo`;Il2x9peXdiVU-{t_G4 z9R1?EOnKVovZy8X(JKDG2RW5Dt>bbQb#=}%b@Tmw#?H^NDPPX&MandX_O(Cf>rQUk zZc(LFn568Tt9k!)Xokm-*Gu)eKlOSeoj(RayuI0aHy*e&hZ=D!i^=t2^yAHnG4fi_-Y6eHo-KAr#`u?S< z@_y^kWh!+IKJj&duM&>c%W0aro7;W4mS?)E_E_eRtK8{5SDo+XynDHu?V;0~KbI*d zj4hkCYgqoa=L3`UU#^ak@3dP+V_X~EH%C%MALg<;k1JXfc(C+D!I`p$&tp~I4cfEA zxc1XCul0U0FBUe*pDJ8h{k^WwLM7>Ux{Ee#l&-^!wN%&5d}frE z68^4DdjIXq(&H7ZFD&R=vHMGpbomKYTMxC9F*7mfezR<8Q2)~_$~PXltJ;tQm1ZI zALrR~_*$v$8HyLi#5`U6e8HpnW7E5J$$KRem@~=uPMTl84X>vta`^+*UFu#g+Ea1- zgUz@jGFC@*d3$@0z2)q%)_wY()!Caay2%d9T9A8Uo>QNF-uiz zQ?f+|FI!#YrR;vU$^QQPZr8h8d^X*DOE#{H^rZtXF^7jKc{`o`o~scc5!E*FiSC7f zQAcepfnD;Nf}LWP@eSB#nYOZ!gPf`@WdpXUhJK6YT7NtzEu_+jUFe_44ccKi74e zTYqBLdgURC1%u{pKRsz;!~orO@iy{BBYq7iRK9WO;OfMc!?(1P9?^O2;oU!;92s31 zy>H7ebCvenhh2ETcK)}}CA#Ae>s^y?mlqJQVwT@!_YAi=eR>B=->unI{x~5de@S->=o>ekH0G&{5v$mdyLCigEHxED?c6|E4%Tqcfg3H zyv2#CySAUJkLaG$NBQJ*vjc5P71SL!d0&i}aPo!sc%5FiY-H9eT)f#%-R+ynty8ig zuLh~@-`_^E9WSR}|8l+AE64gOPFP_a*0$pGsqwO3E{94TlUb2nd$^?d+S-rm`S(Z9 z{h-#Vz-_fvmwS&tk6FhJ`}Ik&W8w3eoCn#l-@>{-a&PP-TPii}tATu{ zx4Lv${PMny&g-x5T~LTHvq$s!)A>={ z37w30zDRz0XOYw$gAI)?$|HimS1U(W?lHF9^VO!QyZqJ(^)4^9)m%I`I(tsv_>k-C zw(4ZN$3E`|e0EyTJ@-wydPLT>+qRCU-6uVIy4!z^Jb%WL;D`5SPCfAQg`$S~FzK7p z+YV?iQ{86UzTFqUsp%?`k9lWZX5_x^xWyz{?XA4R4*5|<-B)~hH)Hggh)Vu`X|vNa zqwOE(+l<_&5+BlLgsRun3s+0!ueIwi-mcx*&07?d-rk%s;+eUr*_=*6zYi+PTo|S> za>vvQ6WrY+x@|oCS@l-H{yU3Q+dPkv{Weo(wYK7}n(@PKDHt#Gd6IIWTlq4X&`}di z=J(?Jx4l*sSecZirZq77hrU|eyEefm`D$gy72|*EG4~j|cjjZY%9IjU5~!+xu=qMAC}9 z)kl)MeQM}0uaQ4&K=RH`{UWq?OMbm}`YG?{=CixT4m@>XnR@BujvFgwzyHwhtaNco zMwx!y&(dD^HR`=4c9IKxZ5Okux8Cz5vz5Hxyy(E?j|;ul#rfRp+f(F}moB;^75C^< zhp=v&;vbITe!CyISdMdfY-#1IubJOul>5)AZL@Dv&_n4Hsy~kYcr17N%E~qgavu&v ztv-XY|>>Ii7 zpkPXzg7nrig?FZX>%S$Rd)TnZ$W3LTU&t`$%ctjicm2A0$K>bo#m83$JPvBQ@y7B} zx#RqW($81UiMY~TZ-1Fyht-t>1S)Y4)=p|4`8gpcY5EYgbN&j`Y=+yFXn(sm!E$`s zXu&(_otf>1I}A%W>9+pV7p~!c)wgfj2A16%=o2%i@uJnFj|#5NZTT@XeX4XDt_R+f z_mElUv}M!kV}ZM3C(VwMpD;=7?(WeqhOFU_Ym&e6{i#i?VmFN)$^t8gJvVI3)*ddo zE;G6)=!f5}gObvr?oMO#x~mVi_;AGuue0`iiisSWBE`FY{gc_Fn9etre!X_l(8^Nw z@$k3jzF*AV8&)8-^~AJ7^;hWy#rYJY2k`^sRHb#)+qwwnb#infK{3 zX2gfbF-kfMf|M>U<9d|umEQ5nt8em1{qD)8GnMDcp4ziW^=QGa8DGlFr}UB6+q=GI z^DAxNaVwG!RE(+ND$e>?@x#2^mg;Wyhc@TPs>Jm3P+q57p6e1(s`YZhUikszN7;5i z8?)-kg=Z%gjc}EYJtg^Q!G>h{)QpWuwrM4U-iyVYV*Hs_%W_*$=kGi7PVTR`Kh}mUllQb`ckL-6xvHfYsBJC?Of>OtT zRWnX?mCbCJA00J#Tv4wD<@02`V$~gdemC^J-nH`yg9DAj7Ea}LSyYtT<9=D@l|H?0 z7#A;=opUSN_4dhg0bx=h);$iGX*A5#eYz{PSi>WHvFX}crD(Ou%F4xk@~8aT-=-*d zmYjEG?7V}WUDolgpAOhj=gHlanR+F6__xSLrFgcr&|wpSCMrPww~BFhS#s zT-E#jTbAC+Jdyh$S37gzMQ-`?=RRSh+j!)Sc8oGAE>S*U|E5ao!Oe=kJBFkrmqyBe zDjm0M+?<&XAM%PGMnw0Ou6BD{T79;9Uao6Sa{Q`UDty@<&s_`)8aec_!oW#V@8jBVlmrr{!j*vIgoezAd>na&$=JlZhR#t{L8kr`*3?$8Di* z`ih6P-r1AxESvJ|jz!UYEoCj9f$HwH@6@ec@6osTt!8^7X5y>(>{C3>xMkJM=_1iNz3;Pnv!ipJ8<&`H%brSQuNkht+9SW;iFE@%D#?!N!td60)sPnr zAL@tuoRjNrArUtu-O|76n)}amzTFbZNt696FX;G z`8*mTe@fNqMM3Ibi-yHtHz~^txcz;Ore7|Yb#3(>{w2>-1}ZC*`zlOdfBCLtx2nLy zz8B=T&nu8lm{amNY>3A4K8pjS)7N^cTAhp2c{4R_$k38<6}wrLc1FcUXT}{L=`WBP zrEuTVDKxn>`Np0p9mW-h-<5W`e)QECHzk{gO`&)yUZT2p(D%iiV@9=mu~BQ+%9`5> z1-~u_-uDi^9TyY-F0^i_OuvRs-Ig2AeZBeHJ?C^U!1V;@kWiDACB^C7x3on ziM!QtT5ODc&#UE6qtawQNw%r%60VzkV8+fq8(b%9Of2O%?eOR&b@t;ijcBgClKhCx z4;RU)h5!Ei<4D6puH2mI^W@U470>^kbX9x6ysq5O)@y4oclca(fQvXqr{rmvcqyH|l(N7ODJz>l}V_n)9@rkM5&#{Z6KQP=4%@mEUb? z&)%bgza0O$J5k>5;PG|kC5zRAd-nBOztlo{R_;oTugY7Sa?G=Te~?I3`Qh>4NZ&(; zH=bFyEKREuS3zgqoNonMt8+F!*($3ZyjxoKio0h2&hzJ<)BT-)J;qXX_VfdeA2XYL zirtF5x2JAYxboqQq=)kFs?M^Vs~n!n$P7B%IAW6L)ZI_wyOkgM^-i^LmHv!Fqg9vY zmJE^o;;X56zpVG^&!MkMdOs?fb+LMp%(A4ctM3%I<(2gvxnj$n47C~IP8~iz=k*); zq5XEnWx0wgzC7Hbb+p2DM&cHSn5|!AqMX0`hP}VJJbHv)toBA{b%8R7z>|>XB+xIN|6>*_X22 zOx4PG#~rNuW=1EQKgoNNwPy5l*_DT8WKZj}aH4k)pY4nH6>01^_wnTWrH1kjc@BB$ zr^1vRHzoP3xU+hnWlGlfm%biyQZGuCx9=(caO2_e{$m%9;*Ln~H6=Zw&jRW1E1w^3 zC#BrpPK{^xZRzi>^@Eir1(nK`WR8}-@42-ot3gjLcKLp;LmO#lm+MoX51RbuWP@am z^2~roQQfzzD(U5_|N0p=LH>fXZNG{Z2CHgBWopzIu;%ncZE1fzhR>tD(D z^E4@SN!{b;6wz+BqH5wB|HJ*F_s*_4zI*lU%Q8Q0%EFHA>)rj6Y+~8`Bc0TJr$0Z} zPt$p5AM3CjKkbe@$ApEO5*#1>z5Yes&*xQVync&Fg{st*TDALe~qV{%Y-f}2#um!S*ndVMR|w6JXoaE-Q?Pdw|5n~KV3QCq?KI34oyd^$>V2CKixy#C6)6uwc1hgrk%~{57(=><7zpD%O5Gq*zUb| zb@Xg0l}BednZdRr9|tdgGULITo$`nLZrY#e*uie)wpSmY?ink6c+ktag=D% zmsCqs`raq~zNPDeQz#1 zqqhIijp(lHV&X5%)vdO?dqZ)8e3Ia&`jUVz|7Fh$jsQx#LU#p%*@R-(j>DOT9!=(vH3E0Yyhk;dd!NIpeq1B4ddA^= z26H0XavH(+b=q+{KB*DtM6}~bgB#P^ag@Q@H`{S~fmLPOa|VFh_i4}JJ*^R>A)jn; z2{<2I39bjXPepmpkPkQzYz5{$uMxz8wZSRiXmBpL5L^zHsHhRtfa}2)>!H7>5jcSZ z!QtS1a2m0{tP$jZ6Ts)e+OJS=a6Pyh99>x>;BG*9uWJP6;Bv4xxEdS zf_Zwif?{yBeyxDF4R! zH`0Om;6ku5xE^c^wjGOh0Y`(QzzN_4a3MGoTo29z+d3hCa5T6AoCf|1E(A;LLH(U; z1vcPla3DAv91E@or-FGd*q>l?@M&-Y_&zudTn)|!H-gK-+-z(QxEGk`iv16^1-pWy z!GYjxa4a|SSTK3KvH^#=36)nHq2`+e9BFdrP~f%XI^fMbaroB}Qc=Yz|^#bDk##5 zT7mg~ln=HC2ZE!BKBZQW2CfF52HSe!I0I*c>xu4zcF4i;2#y68g0sQp;M3sjso35F zXdkc~nCFM>1xJHzz=hz+;6Q(DC$WRmz`SXwC(*&hgaeTNAku@w!3lvlKEP?<45ClR z{yzjAtP0Ks>x1*bHsC_AJGgpAtsoa%555eR2*&;a^T0J=Z7?SnabP~UFdV;Aa5*>= zTt5^3!zeET?FCK)+k@RBvHf6)+1P$?Ah-m~n}c=&M}v7skZ&~V1FoNo`hyGSp`F0x z;1Vz|7RMhr5UhO^$IpE1N3bn83Y-AWAiMzE0nP`PgVW-0oaSM>!RBDwMfkmfB^Dz+ zm~ro`CYf^(&C>1hyjy`yE`p4(*c=3)=~{1s8$?!PVeua3eT+7tRZ(k#0ARV{jqZ9c-J8-zPX>FUmcG_SlE> zFF0*K_A@veoB_@U=Yk~;AU`k<%sq?r2hr}}KyWxX8XON!0H=YqbJ5OVULKC0bI9*F ze$U`~a6VZ31b!#r{Cu?Id9)8$ADmWz^By=KoI~v3%iwzO6EN=-e*a*J(@1{-`Wdtj zSo5W*lV_U^_>ZMD_(gZVz^ujgalKVI+G z`}Ka$tjB%#yM_DBXUSb`erG-he^7@X8^@FtH!-OF?*oS1&y>MWtj}@Qe{>EE|K$EM zVauG+PsQOfMt^p%IN%lzS+V5-rU%5WoEI0ew}GMaH-%z2Ov7wwhT zHR{HU>p0{lw%oz;TKAseb;1PnGd$?~)Iake zV~+gF`W$8cAMYj8L)K-@w(p-6XP@)nT1H3hgAH5e$MpZ&cuumIbDj*2JD1;B=Y*fr zY+CPS|9nawOgYP%i+*dr9A|jic*b1El#^^Y#o-xw@0Z6}<5_Vt6{U4jG<%sB4&W;UBEege})H zns=z%$ecsgoMyv0whU@E}$t#ecBvz{+s#y30EjUBMw&E?0zEsSHs&CC}Z z>SmeT@=zE3#WR<&X2$4N#xdg_mTWn=^`UOfU**98)6qlSJ`Qess9XFu`{5b}w>#A3 zOt_OJo4!A^&a}L_hSBZSn>DAI-$DQ1<$wO6ZW|kp{6oBj_QROVm~a&{X3ROslG_;H z@lbb=HKTvJS9g*R8}eyu*@8f)#aR*x- zWV}?|gYvtt{juU6)~wm^AX|?7$GFQ5bt_nLP4E5W#~}7TF=cefJWjA>&f)#-pB3jA zJixfa>dJ9uT+fo*S#ijkd)aWBE$0|K(0e;;J{L0K5*A#`nnm9~Za!m9bHLFf@?pZ3 z8yG*x{`>aJwI9{a2?opL&yZU=c$oE$8ON2ZxR%+&eYZGZ%i@vd&&h)&i^O;0xcWTG zddwbus9SKt{1wiNHTN-mtnbQ6;}|pJ3g%qHf)flL=e=OcVc*Vuef#6prS;5J3|6{N zj5*1{6WmW$JlnTF@ldz)lyXK z4!M>MH!*mMycu(fIS+Ek(X+;JoZ(Z=W6ABTxu@@E&6Wq5r0(y3<Kkh5wWP)2+jpD>>kL7Tm-kONP(zzW4oH(239G3|D)fINL;@=ZuukasSwIH}mJ}XZ$?-I9ETHGG6OE zSaAnyPBDAF`!vsdCd^;p{`Jq?$?S#BjWxp?o->kU?i+{P$mm6fx?L>TFu20HHup?v>&Ei%7QCcb1j3{sRI*k z?fbc_@8@2|8`O^jp5>6EHe9-xE z!0}PfA5uRKSh3;gZRGi3>#!*7_qOW7#T;@OE3RV82}U1reoR?1=WfOyb#Av4hfCOS zHPer&18Yt)*=jt8oMZTLb?_UkH8(Q6O8$(whXc;CU~qfue?mUYIKhfr8E-Sbf9AY9 z823r%&ypMZ=TBLe32SDYdI9NzNDWO53u~Q@9dcMzT#Y& zGh^^IKhG|ZKSK_7#>o0HnYZGD((^O9C8=4mSrpMz0~8B`m#Kuy?^e+y|*|chr7)zxrYr~4$e8;ExnKRxQ;Ei_s{bVceBiH zbhsN|s-2T8ZhW}g$K)o5yM_0a2iJ0N-r;U1v-yX+vn+3Bz0369{BRfDPyKIkxZA+& zmeyr+>%(0Z+t+OlcQdSRd$=3i-#XmH@OFp0ZH&2#1>3%#;}1}W@Nl=9HMcUoy*PdQ z9S(QN1Fe6)eKJ~jxSKz&pJNQ}WFP(Wn0+wkK@K_cAbD{i!wU{~OPDN@2ZOuX7c(w< zu=y7q?n<_t=HPCJyYO=RV8S>$+-+pdy-e?}f0_9g%a?A5cCg?KTP}IH_WO&& zl0(K1aK5Y~<4mdBd4nr1P%#zF4a)QZ&oloD-18lh9QQ}{IxLeMg16JI@ zV3~7d!qG?TXTpjb7(B%O`*u$E&kq&vG1lcWMh_FOf96gW%f(q?e-A(0tzgaxHY`~@ z+I#m{^H#Vg3?A#AFn*l;9%tWN&E)ZiyMjXwS#w|SO85Hl_RB?#pXhyKx=Q;>^PY0J zOF7^=HcvH=Vd`Eme}=rCATHN1dZu$_%9`=B-ODGM&y48{olF0m$?r+xUtwJDORcj? zJZ@z1GVM&)+uxI|%groa?w&Atg}OdP-rU|hINZfgRkthckHgnH-&8(ta$gv~S-tz` zx2W^etdkqZ;vI*(;OXkXnE5;1*Z!GXnY`<8*D%{;y=NHDj1@PtT)5i$ zT*CA{_Q{-US+ijLUiD+fdC#=J&EhhAzw=}H0q5~7&s&@y^A8>FcC+}f_|LX}p-v1w z;@&Y~-M4e$8tZ&ifA3Y+VYp5H&ym+Boe#55iT_;fU$PGtUshKJU(xZIg_s+ z?)J0fytVwMx^lQ%9T|MrI?TUs-_N(dDfgWPcd+6V>mRsRFA#5!`@|u)GySo1c%k;6 zs1u`~sw-3OVOIGLWa9kH{bT)e_u@sKueNVCdwn0S;4kFK=$F1DFP0BSd-oZ~h6h>h zci!uqA6IZ#%byKf4*q2SFR|_c^?a%Q{mr>C=8pb(+CE-peXeHtckd$y*O<@zTJQ0C z^RKgSme+gFUv8a$t9S2z)cF<09acXMxt9&6IhgfbdZqP_s51vg4|nTXaFWq6-!;~p zW;|#7g!bd|WO2gx>{ZUUHJc2)m;li6u*W2glY`2sd*RW#2 znmZWWMxKm0%Z%Y0)QwA7F=5NqOm1sE4!McJ?Pj|nW6m(=!Z+FvGnS!!u;na++pEV$ zd2talE@yCu*={{6Ze@PHeY4@BH`(tUXS+#eoMLq+`+KwdaDjR-yKuH!$7GRwSaOEd zMe=`({=3a~o0)Svqe%Sznc<}M?=jnLV9mV@FLvHc7`#kTc(Iw91ZJxP; z!KLccKeJ%NolKX^b_ZD8Yqo1S@-=_ABr z^ho2FbB6Jw)ZyLg@@V(1_c7LI&hS0Xnd>-MArDqu@Lu(NoV=NElKJCjyM6uhO7~^6 zyq_@JZDjsL@t8bG9`6%}%UCk&U8SGFlhu*YQ`F`COlSSu1mbWvbM9ls8MaTG?UsB% zeV;B5M$b@J4!EE3YWHXhpXohh_$>1nJlnhvdggLQOxbWdt2OR5v**lqi$5eDm$Bd~ zR@}gBt@C2^e0BP;{J5MYQ`TI^=mqM)j5|2wehyx!?uBugx-)o@_k`(-XZ_xp=a)F| zkC@Md1qaMt>iz3o?;d~DdasZNhgaIy$JB+Z8NSZ@$9jYMF@3##alm<7oyQy8Plj)F z?^$q`=|*{dT)a2Qi^ZFr3+uPY<0^G}n{#3GcIz_ZyibVt4)NH&%l;T`n(fZA;o@z^ zz1#g``5yO^;b!@MQv3VVlLKyM&h1RzFCRu9kk6;&!}Ux)C_ZbBeA;<@$ajzpCzyQL z{btRBEDLqqZoQAHKPxtDc(!li$`Ie#&>1<)_`_&$(CI z<-?qtIpmNv_x1gs@xAH$Ilnajv+f1cQvQrS?|c7w`EmurFUXq}8x}j{{RQiN+5KU| z9SpvreoVe9?ia=77;`RV$rT)aO*~fI#pLVaGTY@mc3A%#_Qjet({I|>m#oWWY?w0o zmVI)_ZGHPtU0Hm`xqMkZ-*r!zeBZwM=N~wiugK?z?jge;`?<>KC-U7XzpJ$~*z4Sx zv0%d?i(jZalV3WQugafGIQW%$4EGt&hI?52+C5?Z8+m_Cyx;nsbI4r`_WMq=;^MFK zfOQ%CMP5vJfH}|h{amt3|6ko_CY)r>?W|b${eSab^!;4?4gFln;k5Uj!9TorEI7;P zpX&8Z`%N4jJv9@nzs1~%NnaNdz_ z2U|9bZg`{{`L=Uq$oxjeGrq}@F8dD8JJM}sx$sDLkVB6ApY`r|q>GtyJxi8sInCrw z;_a3PSF&Nw_|8YVDduchbIEtb8#~f1XUYK!?qJ2e3@@#e&m) z{{x*98!q^XJjR_9E3RhzAp2&Hg1au;jvW$>gU-Av!k`M;FMD(f(K@{ulO#YtvQQ7?v1b-(*|o@JgM=@$LU zIX=yP7(U(kvEo+d&rm;RtG#dgjC-c{hS9UUmkggRAGVxjy+(b1EuZIDpM&RGpULyo zm+4yH4MxxRJ@}1zT+Z|b;&I3w3}2}39B}z>)rp&#WX^>JNB3)I!uUn%#GE@>bB56s z*7=<{T)~PP8NOKFeLI`JoeO`jeVzA$87Dd9kikpj-M4e>58Ank!ArgWOu3sSXW4R5 zE#H@^0}F0q!zsq=eMgux`lEcgn(@o+lR5YF?Q9vnLS6qPU#?-rEev1jzB1!k4!Pvd z@|tjen6hBWy?y(uoZ|uQT*{IeTW)3Y>LcAg7M%AN`7&nw8uyktx3T7aMg!lMzsif_ ztht`iYu)d@oi!`Y|C@ZT^qw>01cxjcyv}>TlnbWi#pP@{V6wrz=-WBnw{!IG+F$Sd znQ}EVuIGT0%vrGD4wjr^%Q+@*Q2&4E=W4dx%;b&g-?y`6$@%}3FUMGMDQhNdxSB23 zGudeWELivboIj)eP4>@%6Kq&AezW~E=Yng*<#NVvv47^=(YJG&(WH3S+9#K><^-d+ zI-kCs`&n`1I(2`We3>!hkXsnM-Th(ArtfFa$d3^#CTy88&fRwoSoZxqz~CM39}_P8 zmwIt6Tkc@`PW9%HES552y=ECbQ;mkq0wQv*O|-=6}#Rv)~>EA94?l%8Scca=?~5n0(lL792e$ z-@-mQ_^A8FAs5Vv^D*<8a=?;1*m9c5R`ZXG!-NetF#fpwnRA9U!xQqnN?kbMMpoR# z@DuJ2GcG)7eXeA%%{epWkR=bYamb9pmwcBQawjv+aKM%o z7yB2XYc6B-W%qzFbLQOL_j9)I|B8B^bAyoqQ&!x>aHsDgGtP0y=ms|!3BKyP#*~{` zat~X!OulCQb8j$Ga19%7Vf=ORm~)QdF5~8j&y)=}Gx>)6IOHs&Z>rY~&11rr14iF6 zo+-<|pHm#NX2V%VL+5-W>u?E&T+5b|jKA%>%!EUx+{=Q~EIG#^gB#2HJI;dxZezoP zO#aW$#Xvh#4mn`D+c*}SV$Eqr-*r!K;+YYn@7W&*oM6SWZ~wmWeLF|b)6Rt9lzYgG zJ2~VGgCDquH?=NTu;fOz+{NUF?jZ{L{#?VBTbS(i^N|J5vf+|j zTmKjC6>}D>xtGx|o%5*mxs(+%hQIP2GvhuEIqx>s-)H|!xsD~bvE_ayzjhCAYkiKh z;d;iuagUj^X3hDxv;J>=2RPsaE0zrR`wlYWg3$V0&fs_MEmQ7b$(k+a-(LIg#be2J zY`Lv(|AYOq;>aE3Q>z~frVRe*elg=t)|_GTC+nXt9>*E}S$#O*R#x1{_<;H>6pt|* zu4DQa>vPCyhJSTm?`S^Pu;w<#f78!`V|S7_*D#&d&mpH7{$2l_&F306+|KkL?k$I0 zJZ9WK)tv+GV#AinjQU()948oFqu$JTfHfCfD4%Q9n>hz;xr6C-@?go)yO`g2-#Oq0 zR@}+>U+Tw#;UepE1>@_z?;LO!D>e-N?R~$i{J4?@Cs}jI=%DwV8OJWNK3B12&iFsx zH|CsW#YJ}$_mJ~t%1tad#fEc?4tw7sak-j9Zf46pOlH-MITznuT&`hw#QVmK6^A_A zw;%Ps-9tOqa>#d&YDT<{kTLsm$BsplT*&01rPM?TyUxO)6Sm-2W+^bZ$IPw`*w~l z(awa)S?AA!JNtId^zHw3{`b<(6>PYX$^V>x-_E9Q=fZny@0>piPO{;!Zy!0@9qijV zb|39r#pIl$UCx5L`*zOu?Ke2uEn2FbDI0ELa_-S?s&D69-_Gd1+UFhZRZc|ezT)p&4TkE zC=Qn~x%tsA+{-p=_y#QVmSLvCUiI{&_%bA3Cbhg$#k&YuZ4bHI`%r&zOQa0l_3aKXc@%O$M2 zmf`vGX38N89_;%$wp?8n%9{h`thu{yzoWR!x#;2Axtj5v+%s0(%k<9f#Uq?A$61bv z!-gfJ3*1L$Z2Eo%kJQhI(S^>788ep5`+k;v|6R=Q``PsU3=;i}7%eiN1vfCbtMlf7 zGi(?>N}d-vZ&uvM_-@XdB^w5j^M15-xRMno8QopoIN-s)onwzt*L$cNGv*v}H-n4S zjVTwc5T7Xc`bg?&-W)a1R@{efuTe_s1E}H4H9w4$N5f?L5nd zOCE2XCC;B23l6!L!M(iiE9J+fESa(4Rz~;szBA*zC+KI)hU*yJ$NSEV`}=+dPn18$ znJo3bv*30%tQp_e`~D>NiOX1Xg3)EpnHdkT2EGUqI7&P&Z_$d-#4 zJV<^Fxrz}p#@xV!o0)PuGYc<{`m>&^GtEM zlHrrpoyD`fhtIN)=gEhI=NtEI>%K&tS-n*LYvlDZd9mUFHk@U!UOk_qUJRLVF*7b> z&Q&a!amWpszCpd$8uv!`n;|zc z;ugj%nQ}KX?qkjwRt%qS-bV3RauZulF@2NuS#aSCtjm>5-Yh?s95Q^1?+bH|z0f$W zVlwIevE*(BZ&fd*T$I@_Q-*J|E(e@q%{fMIcmH1`E?2YRW+u6FVab-kJJkCM`{No` z+`{Oc&Yd~Wvf+{!+aH%Rc$f7VavdXXX1Ir>uj=VI1e&S10rIpCJQofVV!na7+9UnVb(GkCx83^~DwIb&{R z!kx^xhdFDOJjjY8>*dW+1|N_=BaSoSN~T=Pi~|n1i8;41-eUhuK4{*{^?yhnEI;f! z%dn95E6o42?>PtD$@a7E%PZyaIs0ewdG%z=n&}tCn~={A>$2u9=3nyOvtsZn;~6pf zvV56vJ;R;WXZ%g;yxRI)#)4~DaU;WTc~AO&?qkiC#n8{0*NFFRd){R^O;>MF7xZ$^NrdY?-_%Csdw-7zC(TczkP?^B>(@Y zBgn2!n2Ww8T;eNJkSlrmWw^~0q)~#fGlVjah)~x#W^Nw}%-sT)Q&X%i~-t<_P_s&1o z?PkV(3~zRxZ51-R`lN1dW^Y~(d~|PBkzzGBQ_jo z7Rs-0XVyP2Jl2Kpv|p}Z!*z`Bc&yvboClcP=~y?*mhrnh-&y_~jve#+fY!UPa~yKPyRCbXd2H`?tlP*zbgbLM;O^ow z=A!qQ$K|ZKkJQTZhbo|7M$t(IkH)NE@aD? z$vxGH1-G%`e#Vy^>w@=Lm*cFtp3$Z1$&59Jod16DxQxXT`7^wicq}=?_}2^ zav$f+V5xh@f(y5JzU)}Hh6T5<;;#Pre)9jI{#f2jxsEk=FuVV;u4ViH_56_dj2S-g zShto9i@tr_IkDu(hsAr4Ix=I%idz{ySlyX(USU3CCYM{6CATqHre4e#e8hZ?GkS=6 zG3RzRtXV!(y*{d55BEN@c%=LpCF;O>h4=Mi<~`PVvg8&9k2jwYXPGeAYF&;oXUxG$ zaeJTW{qB8|d2CnN@5jx5viF1qSFqtmmQS@`hN=9n^30g=)4Z?DxQ@f8yYH-?Vcky{ zx7t3LJX1UKXQ|gV>oI2XY;|SDoh;TI>qb9mo#!6&`-`5rj}>S7=e73#DRp>(eKUBW z_kc;}y<*Gs)AsQqd9&mc!z;WW{WFv8=5sxh7n{$9a~!O5Pd_8impT^)FSp;%n#a|Q zUa4NJc#y+aInU48|Eqm(dSByyFnp~#mgX_#@JjL6vS#%<_4&N@HmDn`H~KCz*eDOS z9RGqiZ}#0}^cMGs8Rvh|{hsumaL8>8-YPD0F4*DuZT886TNuCnSU1g-a~v@El724a zkV{x|IUA-7a``djM#kL2lqECn=79T{bA|<5mYn}(@j1r$9qPpPUE=i5?=hYYmwd(i z&DLkR#rZJ%u=xEm_pvS9pPkO_qwWuzt;f1a)*tsBV0D%Egy|>j>#N3Xvk#V^RDb55 zQYWUL_8s_|Jh%Ivu>OoXGWo1HY}v5+ocI6h=9lvA{epZs_@ee*<}qWu!@0BIKDM0q z4dcFKzihdd#W%!fHFQ4TRM&5Nk9)u4d(3?Iv2O9VYOPC&$FLQ3-kOf=rWH=`uCY)x$mJJvDP~7A4V#Z}GnX=*fzW;>!_5Iw& zoI?(|pDhpe{U_D$N7|V(YJD$Ruwr;h{(J0;F)OZTc-ni*oCg@4aqd4BhwIpIBcrp{ zXUZuKShMEnPn^qt-D_rC%bFzz|MT;QL1*2cT8ERYxShesT(^e_XZn85tE_*{oWF<0 zd2`(~>l@B>@z1P(qq%N9Yi?y2%ymuQe%@TS^ylW!pX)XP-_Ie#^R532 zak-qq9j(KHvrO(Z*Dd}f?>yJ#9E_D+KuHxV>bKNH9+{S{t`sYP+{{EUgE|SNut zx~KmA@?pe;<18+5?^v?rkW>BhlDTfd@2r2Xxo#1&`&yszWpmwrR-FHP^T+49l*0!( zZ-$pUZ$``Jy0dH^ZvTG}=MnbLh?_Wkw0p{$^J?|w7^BC?i^&Rc`sbDM_@lT_@*Xhe zCN@ttzi)qv`}im0GkGxMdgjboavReZ&2@YG=PR5Ohc9-%f42TQ_qF#W?g7)6$>V@} zzTAA~6Yd|ASLx@FV}CL3HP&NvrG59l&il-EgMI#09vj^+CX?3r8*}do>vuX2#_x7+ z)AIj_d%^*8Hk@MiQF$`>*j%^p@5XbS1Fq(f8(43Zf8TzUJlK3fo=iXKzW&30KQ-4C z9DG*2`sXkBuKd&aF=fL6!yWQx%(idm@)`5K3-ishQD)98T{UP{aYNa;gC7AKgg?p=EyH#Vb>rjRisSYb9PhTU;SL5j74L+3 z^TlC$v*TUG=;p_};H2?f)_aTNUCwyHaevoL|1FPq2iV@~co((ux%KgGoH182<67n% zu;eCI+{T8x7>rtv5f3ooEHlnKWgoY(K3lG0c-!M$#wa}A?PGHO@h&-S|6|9yhQkYw zcT3OkF6zOW+gV&BF3Y=#cUC;6Od|R9&)mlN9>@LNGV62nzs7T%H8aK+8^?lm|GfBk zx9ESybDSktF}|ldGr#0`H_hnMxyQdbtt*l=s#zVvvvpF^JQ+qv)t#@+XLx18x^$Gi1R?&rLFV|D8Lx$xX`{r3lP z8Q%YRH_4PkX57n?BlE=PC|mk>^!#@U`(VMHeLpMKoMy|G;RBC%3vOsUBc@!&0aF%S z&mnWx+{TtehU3neF=v>v<$&{VWIo3@ryP zZ#K)_|MT=eQk@tj$GZs@+`-^c?qC1>SoiOy#&acu$9eAPE@RGBESa(51~%NxmfIPuv=4^d%ZSsAImd*-&Fq^CnQ;jRT+W;+ z3$A0yjT~|dE0(Oen+^A|TGPsTW7%^ERJ_~MP!~Kk&qwak> z$8T%j&oz!QH!6Aqbj zFNYktz3~j0WbQFDu4c{&mfXaO+nKyb{h6_0%h5Yn?+SS^;xZ;onQ=XH=B&7r@r%`u z1xL>}f1Ui9aRY1aWbzX42OBP3X#X#DF3h-*18!l?k_C6OulK!T$@nhLnJZXv z4eK|k6QehJUs-T;k@er?zA$6K_RaES`WAJ&t9hJYHfg`ixt}E)Ry@mw3oeq!TkVS> zW5!&;glm{_f;n>*+{%(WIpiKztl4tpZsxtsJz&K(jNa~ka>%_*b9Ig6%N0!C;hwPK zF2?Wl^MeH!++AEQXZkMpltXS~xXJz)v0?CT-{X78mn#^(M_k6-!Xc;n_V=oP-_GD- z&zrputT@5!ed^EP{qkVR1&fW_Vttk$G@ljc-&5QV`FX;)aGzQ5Z2$Zb-;qn?`B6W| zSa1)6k2yDHTgAJSA9w#*acqgYTqPbGZe+_XEI(l!ha9<=@eJ8=36pKUD;#ob-_G6r z^C#7Z`KR2YdwU;0?fqfC-MO&h6ob#$7ZXPJ(a+T^xSln)v*D1@XXV3;V@t(h%Jy^W z$Kvz)`)7{cR~^3K`_6{YIm*G;<<&oPC5K$gV3+ri z={MAu1!q}()6bpz=^x6MDG##bSZqF*vSPyI+xFK#f7g804DN4#-}Cd2$&bWg$%8ER z*vA9Z>BoL9u=$C&4^)?**%zDIec<4a#xwYnc;n)65nC?f@XzYYL2bK<3>IY7LV&$U9YYj{M&tCd(=H(I%j-^Vy z%H+Hg-44d{Pjs_PId7SHT+(}s6Wu1}x75#?^B!WK3>n?(L>IHYdGM5HFq+9pz*yAvcJT*2cPJ+vF1T04>{rYHLddm&n}Kg*ND1MUgazo>iv%#sZ&27f)#9bm$F zPd1Os82wFN45sDJn)9EcE`OIl3r=vz&1|`w;XmZTiVL4=+&|To$&7Pg%aK&vYt)?y z7qjJZHrL9VgX`P}M*nt?`e%+lO*}4Pc+|aRb?ij9r*A(g@2A^m>-;%9ZGUVy!{Cf_ zWWv#B*e92=;Ywy_of}&Y`u6{N-#PrB`^=z|KckV8UCa2KlimE);&6;LmomD+$u41d z?#XU7gLx;roCEISkQG}VV0^=q-7K>ko$MArQ~!-mcI((OXB3?5wld|;zW=Me7~Wkx4q3C}!M>j(Yt82ImMI4;xQRnEyG7R?-%Lk7!xjK%7htLbHMd1ILVR)hup!IQw$$z zUB;Yc!Qcw>6Yp6UL-)Vya~pV9NQv)}=?oMpP!J$;#dGGxoe zjGynGvEnKwFOUawZr~uZ9_uT_VY<#eS+D&i#xsAJ@yuTCJz?<*_mSx{h%&{~O#Rwyc>>x{t4v&)eKP4&LcpnZ3vJgz+qyyw^I+*s|p4 ztJGoh$!-ZlE@#A)+54=+{Qc_iYVkS7hU09xlF#^jb*BDoL|Cn$G zi;u{I@kgyY(9V>>$GnfMINLvObw6M0nd=yTTt6F5GrLOvmHf2(&63-gY**jD{WB-K zh84$NXWcLOK63Cy_pX0t%kV4CWrKN~WXgig*WF8IL+|J7xm*5Br_5u!NB(ax|HtxY z@)P%;B@eRY=o__P?L3%r6ANx*_^XrMf{p6Tgvmbd2h(56zxQ|U`czr80M98?ds|B(;V!_JMxtoNAVQTOU?)}3?zSe#IAMy)&; zoRa_BJ#&mPmvYF2HP`g*XPpPz|M~u~7-_pXX7k!^d2ZZ|+HMQO8@FA_LC|&wIpo+o zjJrwOt>W;e#xcBk+a2iJZ)N^F#T{+C9c*sXb`1x&Yr7@yvhO>z-2~%1wcQ>TV{Nx! zlQ4(hwus95hw%g5|GfY0B zJ|C7ZS2Fv!`Mp=EJDX3+qcHAMt-rr0{&sO$a^6S8`%K#{X7$;&+raX3;gG4 z^8@R$;ARfFoi&GSxtHM&+isdM=Qv<+m3dsqA(yb`ayCraavg&oS)U=dFk;D=yP0qw zQ_e7B%K_(q!oE1hf=gL4;gG9YaXlMOGTfsMEI90+f2LmB#9_vk8yWt*?Y45jeH>mb z|4+(yZ`-Y9#ErfC+U_jF{jGnG*!VHr&wn|5bhaer{*X zArtOp#%bo9W65BHGk;ZNAM<&qy7gaBKTdLR-l=XM zOU|-haH<>sqIl<@>bCdZSv!NVQ+^-QKDmwg1*f`}$%Uu7m0ywvx3a$IR5$Wv@$Ye} zTg&|7Q{4t;OT_((eJ!;fqxe*}aHqHrI@M(ixq%6{aCrHtZko~ZQ{CXJeE6xZV#Wik zINP^B;#4>9YwGjJQ(eR%S1?cPlgXpRWAx}#-H<737ChLuKju`o;OpXX5t9|Cx|jp5 zVDz|C{w}0-xtlrnvEmGCwrn_mmpX8a+2c?7{Yw2$lsAhf8P9mtsV?}2`HYyPr@Ddz z?&{k)&Ejd|eN(=x)$?0?mV6jLTRk{@{;6&cqZe486_*dK$CSet+IRo_(o_CjS^06n zx6Pk8)lD#A&iu9Nz=9*+;YR1dk{ejPUEZwOvfXs5Tm65|?fs{^DaIdGx83r)>XhHR zv~O->{AuU%UGYls7<@_HSabgONfZO!aUa8&%rO9%MU$s6@z{1&74i|Z=L&(tjm=Q z_S-)*Zs*|l*59M9e~>rhKRZ`Oe?QfY{@DEM+;@Hz`#8AOX}?FPp95yMJ?-}g^@pdsML(A>*DyN& zbT`Lf;puMi)$$lS-R)p`!D)Y|P<<{GXRr0|db%r_TynZgeqsKlr@NgD?{m5v`=$8t zX}`b6%TIT~uf%)E=`Llw{IuV*Gk)c1zdtAblTLTjte$eZTmEa~o_e}l&4xQzJneMX zGJBzQeq;a47-grs4J^2o!xzbq?G?uTR=iirW500|r@Lh=xSrvwPIr^cUwzu|w;9it zgDb`Toqcj6D{f)SlHu!4ce@#FINcp&$@#w*_w}c{rM+)ZSJrPdj_pSEW%*|H{e$y+ z%W1#=re2e$yUqRc+w7Ya&vN+o(_K`HpQ{7QO{e|)qI~yh|GudB?>XHqVapYaK61L- z#R2#C{cKos-kin2~&AA?s50`WB_0!!13vOn~?HqE*ihEgenhodJGWd&g-*viM$dF4IaXDkAeg8Ma z@B5ke{oLC3b0>$~+xLIdc{1hvzgqX(<}>)t>24i|`>oIRck1&udH+$qEdFL5E6$&m zAIBI^%Yy~iaX4c?thul6zs5X9*SZIP7wy48%hp3ORSVEU3X-Pj@X z8MELDmR!T+rDwX5756iHnem6!g)vL6;E-z=uRqgmX8Usa_5H81?yUaTIzQG|p6ON| z(ZAtLx0Qp}pYeNn_V|LVXfHgn-m9qsb`4RQ9MLa9Na^`_6tH?P+y4FcIu;ORG za%O-Nz)j%ve?k9i^7G%+2Qaxwc>-5{LAo92x5y806L=Ds{5ADdP|W`NEvFASTC~M? zHj6o@x#gq^i}|j_mNNmIf994`5G&?;#9QoJBm9M1PDxR5L09dT(*;bvV#^uRZ{Q?w z6L?JURa;J3G4yp?PCc;V)$jvXUbE$#1or+m@$4Y}*KctzT`~K{wwxvXZr*Y-7ZmfI zge~@iAs=`YSd!jyN}qrnU=?r^*a4i_yXDLQ=l5?p8~WX`#eT11_6==0^T6p#pnoFx z&MoHvFnRfwvjQx+68;Ox_f_x%CvGMFIN^QJm+~9f1zZ7+0|#%Xe1MDnTTacB2)|>? z=>ewSwdEYw?{{xG6$#*b$S1JkUgQDi4{SMgPeu+f1*~{Ka)D`JA8-&j3|s(CD*Pb% z6&|<*Tm%-Bk**IQ2RIGv1=fsiv7ZR}z!Sjq2e+K!r$7%(0@L@A4&W$o3|R7^EoU0o z1v~*91g%lj{#SJ8^DQ&ww%gx()VG? z9k>V_19p96i|;^^jzh?OI(T3MaN%LXfxW+r9N-GD;2FrDp!|UIz#d@5$H*Tr{d=Sn z*!%nB|Cz)GOaYUJX*a-W;1sap56BmA6j)LL9#{$N`a{YKxcC{`gMNRW`g<1bXBK{7 z`ir!4U>9%(xCmSXF8s+B`+kV$E7T8g1vm*Td4%=?tN<`ZVm6 z2Z7VTny+oKzX!R%ib~S|^)2@Ike^417g%wOc!mEi^`PJ1qy0Y@zQ3Uz08744yMG?> z1G|6|CrJme<5;Vo^eKj zHNZ(=5;zA;Kk1CK0bBvrycD_w{J&;lN5@@@Z$BI$#=@03W5;y})1CIiGfv13jzzyIiu(+1;0M-gV3rcCrw=&)BFY6=@)FXa-!*5Pf>!}wN_v5# zFC$&RY2Zm<^5tio(mLX+rF?+tSDtZ>0K0%EfSbVbS3_4vI)N*|W5DUxP(QB$*3&M4 zn@REsTxdAsG`^O2e&>wS3rxR-@&pbx($4BBUtl+|Yd7@3g=XZuj(Pz$0H<4M7lQjJ z@82d}9h3_&37i8?TzZCmFvz7Zot8}o^h6d^T5(KA`e&v?7Erq0oJ_j4ELr{ufXCrK?ke^mfS`? z0c(J1V8!j^6F3MQ1Wxo*fBJm~{J>3MaRYP%^e z_aGP8J48JK(|1!3z)|37;Nbg+@6Dw1{nR_K7kCu704#kAzduO70Zxydac1@Ve)8W) zI)E8q*8}hYCmy1FfHfaJ!~JOBKSFwdo4~rAl-KW4&cFrWDd5Tk@$Mr0WBdjt{{T5D z@Sj5taN!Hc*-d_ceZUpqFfchw`vRtc%fON^Qhv>p2QV%8r89h2l5_xPffK+@-~zC; z1vp2!0ZYC@Jp*fiM}TSI3E(2IG)=mIHNc5^;sy5pDeVZj@MmYZkBo9VLOTL30tbN8 zUqcT7SAZM9-mg2E;?TmT*gcKsFQ3>*Zm>i2Q@_7Xp^9XNf0@&L{QXMxG@QUAa$;36>n zH?-4z{Qf@WD0q_m0&D)3b_bjW&I9NFo^shw{(!ZD|BT)O&i?>8z}_X=a|iHWsW0H- zk0@8*=8wT&gxnR{0dNu64_pBr01mF5aTb7^!19X;|G&f!Tmc@^?+xl1Sn?m}qf4L% z)&duSoxqy^L>@2=90PU%CxN}dIp8R80a)@g>a&w_1vUVazz+RBO+3Is;4E+gcnr7# zT+;9VBHx$t8(0sl_;2`tHNYNV8aN2-0*(PEfb+n4;Bnw4a1&VabL3n`IIt5~vq`-G z=YjLUP2h20?=OfKH~~BjTmY6_PQ1UQ9D%*SI^YVh3)uB5;s=fb$AHtoN#Fu-4!8nb z0G4dg&ww?+4PY8r(#7vzqj!N7JAUnq0vF@Ib~b>?C;i%~zoNK6Pr3PDP*8Z+#RY|f zWrfcveL~52VL?GP_)7j3fACXh=_XzhWzC6-wkOBmRWe-gmS?}|Wv{J%p;*PA;%~fp z)j0uQ_NnKko4>)o6wGf`3o z=^_43z*izZ9;IWNzvJNEAVgE5Y$Vp2sJbOlmP(YEv@U>NCHyru{2<{KBSr0rsw)x| z&^JLR*&F;7x2-xa7adQMzhcr|1?~$%kcg%-QNo*SxS!VEoU|T>ZUws6ijJq9zgckQ zdsdwlAxOxBO6vnfI}=s+7w=5ej47=LFGwYlBTr~fbj045=xRx1?nxw5i8`_ZSt$Jl zv4Vm*apCG2Tl*j^K+ z^ehlIM%W7##-sj+i;^=)tIjWlp!&vQbhCp+yAo9+#jS~rC&rFkXnG#e(DRfsH*e*| zKs74$|0!JTBXxk5{AC45O5$~otC{?#QcE|Sxeie+tGXwuL{NI0$8~20a ze?WRFFK;c06S1QEl(+nj-yARMi6s_eZHXlWti)1@4KfM+2TH(R0=6COF0fY!`^zVS z?Xt8K1feHlM&~wMP{6mCSDg;!$Fz6Tf0Pv(8VHoGbXE^^RqtMP-b)#}ZO7=W=ycOm zUZJLfl;%WDOQI^BRk-`rK1XV+;&h4J8P+u^zOdD%S^v8aIsQiZC952WqYZzIn zyH}lqo~)2Q&yiJB72S(=#_!C=5$qGlS9+I;qyL^&=l-+CVaAM9B2%<4I*wF)5LtC7 zqq%!mo$3quLD@eT!z>7nKf&}a6&C%xFtJjop4Lh?qGV}lVDC{B`MoY3FB%j5e(2jx zw;PV_gPy1|{LK(|?*~_%mwEXx>c-48pOY63JPh!I771|!}L)Iv=4u53TxeA+1X|*;ubud;;S`SJ; zk6a*i`jrcf2*y{h6JbPkqj!?ojY|v+XLt1e4c|}r zGU3@d!bt3Hu@+SEH>UVMvFhB#yUTkcylwHf^M4<8CH`5-ho;4&p%EcK={!!@1YvjB zu!BmcnFGg~8N5=)Afx@)5xxoSDzxwNXszv5h1RsT+s^nv_SMu?Erpr< zj4huO_W54vECfAfS< zHRcg+l7DjnTpHXQxLI&_dwPeoTRS*n-2HxJuV{1ib-`1pk10RSdgPabTLNdw*wi;R zs2wxk>XwetisW*at$LIGcK9|!vNGUKgS%Ea3dy<~S+0O|oIxtvj7(Wiz*qUHRcF8W zZg9(5ZFClVC-}>SzcEpEGleJo0{Fw=uMXjtz%PRz6aHGCeiMB6r}Ob;Pi6ibfv*AI z{+V2Q)lVb%W8hyT`8>jPf?EpVdckdhli8?8bVJ}aLv-Wd%BOSXO@XTm;pV}$gVR(< zkILXUxGr!_LR^t3yN0q+Jj>w6!PDf;Bitsqv4BkRmol-Q&hlU5^H+mk3ebu_32qBq zHb3HT2e%3CwY+OipN+oNH<2UeMo&m*K3r)%A zbMw&%t{Pl8A6?+P!3Wda2d+1O<7dGz{|2)BfjXN2KLb8nzKVYa+%&jgJst%&1uoeB zPJ%lcpp)KQ0e1x4t9UO!6OP1gk=il&DtZfL7@m2A2XS{cX$LOV?q-x(EyAcNSbHxNLqE-!X9g;KFrq3j8$q zVA?joO@aGu#n%nh;N0fOqE~mk5fol-PlrOVzOrfi6AM7Q( z@(X@ml=mTU72u-kWP-5T5d93enh1KyS|F@}uwWS|DN4^WVf}>tbs;~{!FjeNHWvQf zzs71~)c34PnMY>Ks(vOfe{6kqreCRNyKSeDuwuew4(X}puhY_-F%J5JF~*M(`FSqO zj>4|~gRUgRJ8tFGOPJv`V=41T-?!RG&^&aN@N%73Fi*@Ati5dVl)?r4!F$Q2 zA!G52xoIz>Fi(Pe9b(=1ZQARu_tIWPP!hUT=>9}>c3}EUUPnV zsn0foI|;6zcelJ+T-#@(5NkYZ{J7=a2W`cdef~yRhQXDC%eKv+?cJQn+#7Ud?UGAW z(^=XDDaC{2rt26oCconQr==4X!5s#7CGTvoEW3^p6@CN!asb4u)BDjZz$s{sZmL(l=rNreK zBD`yU)wx*VJOliVgPQ{PGa*8KmHE!W9n2+0F2Hq3#ja4X8&vEH6}v>muE?uR#k#+5 z%WwD1G_1NkxidPVQ9YJ0P}TmawYU6!*Mi52DT%E|=v0RF&~`xkb>0hNhm29B@u?mB zCirX_^n%NPI}J|$W927ry~g;3(j{ou0Wg6K-9u)YAU6I>;@UU20~`yS7(Z=+1^OpL~^ zOpN109>v%nj_vo_dJ8Il6o2tJo@6&H)@aOJCIN_1Tm#6hJCd8uQE;^(++lDv;DYI# z1y>!w@w4C<|Ej+qH5mg6f-fin(X-DkR#LAA#6B|^* z3YD<519=f{^pN=mwSkb&)WmOnIvugu$SO|7 zhoUCZ^~gVl{0-!r{QGTJ^`xZ;+j!G)7Ri`y`1P;_U-}zT*MCb!A|^Ky-(o z8;9<5yt_Il=1!uoq+*+01)_RC0$s&7?c9phlG_R16?eyGrR|jBBm6Zgcj6m~#U6nq z9nYBmef&?wuSk?M5?u0p()Sqa%XT~s>S0`oMSq0zs)`{2F=T&NygQ_c>yXiojNXM+ z=R3T+Ws#jz$38_-xMja54l-@3LG5K2p5kx$b)a+~0#^X;w*hV)`18-6Y!V0(?NMmU zp>6YMNu-^t-W#A*J6VM`3GH#w2J5Oy?lbEj*b|Qt2QzcOom5w09|zK?I!b~&4$ij| zOkP=Uzb;$prmtt9TZYboM~`?1s*v|rb`9R7!|>9^yk%VDUpx%mB6L6S`VF>OaJ|du zPOslgMRrr1^(yBTWc3}-E$1z8z2F`qJWw8_0|%RJxtjZ^>}p;>dxF;Vi?fv7zHB+d zqj)p$^?cipSF#4cWx$=UtQq)LLb8s6TmB!&+Jvv~JAS&9*3uVJ9^g<5<`J$6+&};) zo2(w(Ft~l9a!ZR&<=V;}gv|xQ@VH~oxn_Oy}}v0piTbTHqYL5{k2zw2Y1D>3~$|u+_m~maJAsf+{5TO+TcO?tVW8j z4D=iES2NiXKhp^Fr1+l%*8pxs7=KLh*P{HksTJX4#*vFF8V9pC!BGDlM$R&F-YYrA zcb4r7vA5Ec9;F{Xrhzj}@C>x+@2xstE98fX)A*0g+IGa+z!)kkV%%zqx5K`PtRsK3 z>bx(OBg?FLn0+LE`n8^4^aA;D8K*)%XLXN)asJYD?5&fl&ZRPb{POVSnK90+9pT$% zTuRKxS`tTNHvpSJ6#Yo4jf$XXHU`apXqyuYELfiaF5>iDirp$fQv|l!z-9u4BnfJ# zr%2PnKdw4^cvt^M|I1Bm^ya40OIWWBJIFG)^;!BGh6pR?ulmJ|bEm9dm^pJVLe!5N z!1scmk_^8M8NcvFt_CqfC04tXKf7n#_2U8fmf$mX)wX5j>9v24EEqbK(smSCbN{sJ zD8K59myotjUKhb10l(L4D@J$HzU^LtVEuL!J)tnswI`9eG||VGYt<Biz{4+(DxNEVYR!cN0+g@ZH z{;BoN`hDIXFN`eH=QUnzY*TlwQ7fowQwzu+TD7((^7DKl+LiN2?&^0MzJiybkm{HBO@sa9|ZxZ&$9S z{w4qa`f*DBNy!KI=CjJTW&JpLs(Lx?B_LmM)`Qy!;nLt%130Cl8{7)G$=r1Kb#D5r z855Py_iUF>wV!EZHT=h_!|~BP9U5BmGIOsVBt{F<4BR&WnV=WC<7>WBO~u`|UQ&xa ze|pvVkY^8=@gk&K?D*YLv>0t$q|7|86Io?H5ALDCDmMPlTRgq0avXv#2^~YRc~oZO z;5xyD_KKNwgz~9A_d=y3U&%GcrMFKZYhrWNVX4dL0S*2cUQdIc1b@`47k?c-)aDh( z+oLU$G>#69lOdxH`HH*i71$TQ$c!1X`b$0@EsaI4@N^5eS3 zi>p1SOzsGliR$tQGFHmgoN>trwV%8>Tu0HH)qrV`A%(Ty_>N0nL;HEEU%nJiK_$2v zaBtu}w>;FQTTS)s4cPkP>42v`l1DQl6oRR0e}14cI{;5(DDDYx4UuvbHgePPxg!D#sjE-$lguC-*CQ3*$e{5BGWRPF~wC&0; zKOY(k55dz257QG{?x;KMr)hLO6J))BA*|pCbZO|`C_3st*JqizCE&0$W6Ub_UC_T- z^!W2NkFDXgxE?*)VEH$DvI_ zyF+pEs4SPjrNHI4;ajrohOPuhX7}UJDULem2B2elZ64uL;Kl>EPHgj9F>pZ!kagGjd_p!@f{}8em`9gD& zJ@Gx@_vYc*Vc$+1aiJ;)nJ zp4zP1Om^=@B|nD=nURbM^y4AhSTzQi4V}!p+;iiq#j_etheTkZMqV6)|@}q|! z*-YI`yIF+qIDD8oK|b1au79tQ;9?>_0qq$}d%yN&2KUKo?!*TB_CzB`Jeb~l)<;`H zeOzrIjf}Bpu6gIE)b_f;je>i*Of`1q>3zJR>z6IJ`O z^2#vmstG$+d33LW6g(a9XiN&!k@17Da~NksSGL%^I#Rg}!Pk49am~VW2%fIoxG2*R zR)lNzCF-zX-73n7YX!a|=Mk6cv=XJU0?$(v7mwO&9k|orQbG{JNbFt4hoQPscn9It z&suX-E^fHHk4oVrp`f4e6ycv!c&I&7Q2063%q|Y7ZiX93C2t1ad3dkS<#qi{>^ZhQ zpjn#130M022p=WdBnB$#q^?u`yTvLAR-BQB!TW9A$IjIcv_Q;`8k)-zEso z+Z(l}7@@BbrgUVGb)a(1TPMg#$E{w}d*bZ$u$k8J5~EWN!<&5Wns*LXZE_Y|J-F-` zC)_b`b>J@KU61mx2(A{K*$e3B!Jp5Y`A~K~AM1_G13qTSs&2sl`Mfpfn1uVXOnLZY znUSS4ryOH5Z7A2lNO?$BKeDEf_0C*b{+uV6u0}TJM2M0jxD);($XZ0!Ew+vy(0=E< zJ^VCk>RUq~9mQ+WP4U=gqOdB@a*URZ=dZc@sQKN&Uk$kKsx{{tZ`}3g%%%*?xNG*k z?@e^wn8;jhT^Oo;&u>Jhb5s{AgbKP5$9uf&ZhH z-|j7mu9wE!6Y0)G$G)?e7@AAgA*&n%vF?Ry0bjaZr>~Oj<{E7698Xkx)i|wsO~ca; z&lhc4BF^J9#ztJV;tiiEdb+mU(cj6w8N8(@4k7C(vTpTc`QtIwIHI#4v5WG3naAPV zgzqI0b>yFoHg=0_qhpb69y?1mP{muYUthH5OmF88GwsyM!o4=9$yNRoK&GiF(_Z8? zyo5Qh@?>-vnKpamuW&m)1=-4Gglw6XLv|RRE_lrNgF=_@NA)uYJ_G)qJXz>tE1)HQ zQ+7GV*#0Z<%!Fhq4o%SKz&}mz#F6z!Re(Pdz$8jbE)D)T_=CKwEl2uu z*gT(OKGBis!UYH5t@^Ds=UbLHdVGp~Av7qNwMWH$4E|a8d&TdM4|JT?M7kr-s6;n>+k49 zW?jvibAx1>`Bb*9*~VfGF$Ou_v+fSU{iR;xGnqg}H!|LlCj*^mWi*Fn?0%H2ndM?r zSErCMfs94T=yCV-sk}~u&%AWa`I_)#fpZ9~(UYE%_PF+6w#HixCg(r7lWwfrNqNEh z67lk=O{BmTyll-q6U{nm*-h>lo^J4iA-vk}0Qe2?SMZ+O7vutRl}fXQbNAJ>`Du76 zU%uujs$8DneDcz)dNOVD6vRn*?h}vSCdskgABxV#!XZ97IYW{}cTY!%whVtW|J5sq%LAL>2urB7o zt%h*N!L0;vO7{}DWpFHynK(w+R-t~XbZ-&1N!a8=)(1X8sA?k9k)c z4z@!LlB`m-Sg$DXD?8pJ~*jUA_ITj;OI z-eYCwmQy1>V!vEu+V~@d+kgAuU&+bi+5MCK#4`!cX?UJnc((lXxLVA!Zkg7wIK}vN zvoSw8`6DG42*y|^6!#Nm3^`}Y$@@-bnw3OTo+jQ`S>FlmW`zFSc#}J7_7PrB_$=Wc zw`q#r(`@G!@t#aG@+|9zi{Bp;n0_48S!Q!K9Z5Ok&Yn27Th7_^_INrM zA!$Z$%^`mr`SU`A`m2t^T7}DM*}0Dts07*8gkwF-cDpw=s@^?~pvBCm4H; zZR+kIm5ndDTIhPA+n-10k2&hgozRU#$MobZ<>&i;#WM=e;q%}@br&3gXBwVkiidK@ zYlp^0H|v<3KaWjE8R%;7#dPS&Ge33b&xy>)6AoT5w&VWd2Z|nynR2TpyzF&rd3&rH zz*m6(@>%1zKHiSlO^L4k-WIFKKEZ53I_wZ~hmrfVSbo0z`LCX`WOxwCIhySh4P1KFw9uQ@b@VBN5Pi(@a^m)tJ-=(c`sy(X~T22%Y+n+m5onNPj<-#@zwv#-Y1XbbkA__Y%oy?@Dys80gfHb@Dd@ z-#mQJ-%juN^=*c&MAzO#=2|lkk6oTf;wuj6AY_{QXE9?q862a1|Et2Q2_Mf1mzAtD zyCtT-rwE@U{NvCD+M(|+^3#PP)n4|94OkfSQR}{hO3Rb;n)-`III53Koz6VHsIf( za30|*z^#INs=@FZSPO0woUzwTJQpFs4NDWYMOc;SO_+NQfgz@#hp>V-t~nzLqrF?3 zg!YkhzZ?^=92Zra1^{>1W@9i)JPG?OvQo%8WMx?!#Py-#=kjzv()5lK73+n$B!8>$ zPQ&|;mN%#`{dFCqSDI<34@GJc9earw&Q%ZX9oT|zT66bQn=&9lM4$B!_Ys~vOZXV! zX~MNU;g;cT@HZKL<$Z?mUcw(#IOP~zr!jt^i20l{FWwb+kH8x$H`jNLi(dMUjh5|k zY(KqI+(u`r-m5Rd9%xu|KA?C_zGClJ#VgN^gdHMGdd&@^d*i~^$vA~)2%jT7<%Qo) zc-n;5fEy-!necBa+~`6xcQW-!E4J0SJ6=cd478)av*vtHw4@{82cLn|Jya4{6j%I9 z@YKIK*f%f`nC)llq~KyVJgRSqzl!h_{IxdDkr>+(7$MYml%__)I|*kfwrL{$=FYpz z+=9e-*b~RjC3T8Zc^-hLAD&CaWAe;6k-bj?lZC9wWO3L3pq+yD7E7B~=kf)1=Zf+IeuAX}G8tSzXeO;;95U6u zJ89U%JA>QxpDaIl0J0s0^2V8i(a%{9MYq8moc90UUP2eUG*AlBh+j5u2jz91e=KKC+vfF z0^X;Hm#LF{%4*jKz)ynzr0~d$z8A^byN$8vHI?T0WoBFo?QSYZi*7se0If2bSKI{9g1z!@tXMNu(@MYlN3Y**3&3c8I@0qr)g+*NiQp@(lDj7AbRDpIIYRbeO~i$B;3OjHtaP{)-^s$FSab!GBG+$J-i5rD zHAnj09cPSAM?d-wLxnX!Hv!$b`eYm6>4#?yp7-U-rZ3&#jTgJ+V$vvJ#t!0kM>aFw z%)(!swtJq;7--VAH(}PM+)0aBK(;(%#Ip=f89Y(@_(St4U6|m|#prd^TyQMdB?ozg z0m_Cl@YHaK-stiCDTl_60Xg?tegBtmqu{nkV}f@*!W{;;8N$tiI~~BOe;)(40qzko zM(J8q7z?~=Kqw*z7+rVjn5S;X^Du6lWlYL?0%=qKtOl0>_bV$uXgB)%42_P`{N_(0 z%P$>mH>w>S&_u9p&ASuJp2gbZ)~VYLnq)&=GbBit0Yf)L$2ILXVFzvzyG+XR=*pKwc7UKUpe?libEv{@Y2e@;sYvpkfo^E(vbJn>1HZ7jgYpAF5 zvI(~S2rIc zAm4=EPE%{!kFncIuO1K_SH%Fk<_ z?&O^9gfdIoLz%^w+e1M9u+$bedy?~Wi;b%~T_XO@j`LerDbJ8@c(Qp@K5D>qgL^o_ zhV*R=GY07Vk!xe*Czr#1k=aO_+rINF)6|Xn#We8`UF4@}5Zn=PgW#ST(T?)c#C@87 ztg_8d)Al2~d%!2uzFfVTypH+*CBbqA8hF0WdtjV4b|SXk2$zY} zX{6BYL*5oXvoN1CDKfhda%@Snk0zZnmQyqZr-*Nm_~vYU!8tG+S?#w1y!q&Llnw?< zsO7b9+s(|m@5bxde@Yysx$VN=gG70IbBo3pTMf=5j{Rq~x$=!Gtm0|%dXhACbgntq zo=dyP6n#<6f+NVGjJIhQL_~Ap!~^*J4wp9c`G*6{ZVIcXs90~>yxW|+7`}n=?y_8c ze+XOwxbxB73-FY}bFO+=eQFDyia^}LmGv-J1NT(k^$1rDt|~xR11<@!5?sHCus=pP z&EKI-3o_bu$f8UhB6r@`18oM{U82RpzK0OazlOk1fPag{-vz#&_e0>1f>)n$Z5xbK zv)&Msy@YJy2<-P1ne4mc@NL4Eol6CMMW%l-%ZRmy3}K};WCts46*n@!x!msI(ViCE zxx&|hKLq~8yld}_?m*4(ng%}u-kj(0=W&c_*2hbO;f^_(;lYV9JvW5GFjo?TL~=x` z9%hJRw9Br)@mpne6x=azS^t>bdx1{jz8-6J8gt)MD6YSH6TU6@-i!>l{&d4GS>mt! zChGeNyT2?npTOUu^~?U $YCeotcXYJhv~Mqnyo(%X%kF61cfdIbByb%M*buLf`j zz-7Q?{eeMW5uI{m2j>e~6J1@2Ony9d@E?PJ7=C|EE4zNFqg3u08@ci-?3$K%HsLvZ z9y}_S+P53?VgPLJ)9bF2MF&cyvc?i zWHSc+eZSeG#FdFeM~8RQF$?V>XkYHp=AWrhdKaNP3|);!XLU$pwM5oDm+q@s2k3==3w{%)(UkLSZLMtRf` z-s#CSWkud_^;(%sTeGi5W)hz69GU)_snXd+cpu@-o=kjV<_x&M2h#M(KpBm}GYXIN zn({VcuKn8UrE`Yx>GPDi1kbT;WSaJUEAwB%cPLICwbycROWW{N5MEDsLHC;TY=E0i z|Gvr&!ipopR3?3dl@R8avzd1?Dh21-cX;hnJd^O$!*j8X%fF{4$a8xR&q;VP@UUE9 z+lY-PXHMUr!&AawI|fhVS$TZ_pZZk;JQMIR)eOaBSFY%_aw;kxz0e+q*64WCZllt~ zc|*d~*~N1hp3U>j#|e0G> z5s!4$NqC0g8R0!JPMI}DnLzAbsPe`q**}2|Qys9B--f>l{vTQX;Jm^2mwNl?uTON{ zlE`$MeHQE`%b&!hk<*LJzH9tFTzO|5jD6Ja8fTu3+|1QEb_tv@Pm6+*HHWNWWMRIV z`~_uUpB&`kMr^IHtky_b1uSGtA?u4)R?zmaHe+M#fSWAJ%uR)yfwItOCN^27y|yE( z;@Y6j%eEtQy=~Y#wa4F{c~v_ahNm8$_bPtVFS2`UVqE@jnF7Xu`rRBnl_Y$<_8CzCEW^1-d>n8X<@E`QzwP~%BjcVf!tR*)>SKH6}BRmJhL&k%) zChdw&?>D5~I>KMYoR~aOZ{9q<9~tG>`SWSmBHEa z6KKOJc8Q+_`gKq+eiHoD-rEUqxz*D}BSnap1-^=fk`!4x2vTCnSa4;!X%X z{lob&wWA~OuE2Y*c(<)98PjfMl|!}xPyJ1~Yp}AnN(LCu!O!Q(iecDUeXu(&Ba_WY zjL`IG$!mn~SV*4mUEq&{f12c>k+N&6{oqdq@Y%K1QShe%c+pGOO@dzrj~mnWNlL+< zE#PiRt6rMo8uyMvTk+O4=ai+*t80d)yt>xqlsx79mEK8x!~bO=di*=EtHEb_?fG!j zK29v$5AI1BrtfSTa{1e#OWy3Cjggo#i2~mN{)s~H2sa3>9bDGOD%=>jG`La`@d!5w zE(NaJU|ifBxbXlkL)ZeiQ{X=4wbeH5Bk+Cd#t&!4>{Oz^=nCue3i&p*avI^r#>SBVhq1)}bf4-r> zks^bi1wR#mUjTnR0>1?QbOe4Ad}Y7&m)UPLDBiMnQQjfEZ2lVXec=81+x4W#^`)c; z8z$^^{8m34iD8?w!YX+g!lno_zAxI8b_EJQ2>ulKH;ISu9%b?4;EV6DwmW;$v-oN7 z?cje~^td##_@m$lz`s`bKt2}19|mu1B48XNE{OIpv?cHG{dqxq zBTTyhZ6CDvd2)R{afv5)m$?J*G_)t69r9?geeC|Tpxk=GtKQ9gV!)omGx^Qhbip|e z7gO7^(}7Q=y$ilR_&%aIa`<9tj~K_E%IW~LOVFD3LmkSeDEwjYC3oiHr4#1B*MWaM z?|SO^TL9M$?h8Vgay9wiB|l(WVlpOQpzPIb`AW_fJd5y{v7X;a{>tuRe0b-Y`|VtR zJfe5nGjpxnuX-2b5t6;}h)h?&+Yavpyp6mUT%>+*o9QDek6yx#5ccN^^UFiM{wm7D z^~|9elr)B(c#3GcVz2ld4PcYi(ka)(>9+UXS&qmDNWQ>iYA zslOA*I)tn)$)f)3+{pN$nY0|-!K%r~1%tT`W=N$QO6d^u@HU9olrJ@G(&6vl*Em!U z-3jP^C_3T@+C~08;_RL^`bLs_Qiz;IA#Y~KD(&0MZB$Iyn7!akL=Zh+<$ehHnY-4U zPk8e29X+7CnS=Mw*mbK8-OQ5z%}LeiDda35=M|E}qjtCfZW&y*thZaY5N+k%@Vw{o zX{(@3L)!=KA>Q3O)_MrOE^8|(J$=xuK=WeJ@Tkm(!4(f#z3#VZ8pw^FzpWFxY3M4U z8x&G5a}_8?7{TYY#0`~-M^4sZ2FMpmvJkmTR7dc(AT zcuvFfc==F!tsG`d81~z%aCP81!9AUKJ(8IkroV!djp(+0*T3xA#_oTu1}eNC+5^y@ zu(ZCei?w-5tvw#w$q!eJ@6-~RZGOgMY_%Qp6=WPmUh#X^9F}uz`!(Y;{YSoQm((nw zd%6>!gq@40#q(bD8T{iOe^&Rt&Es#?*B(6nXx*!{v?FT}S-9InY0=(BH!XYO8mrv* zfP2OGwZ`C|hQHtA&!$B#8J7q5&f}(K3jRf89Y@v$h5Yb!w7)KI`iZ%(q%F~buS`0c z-Pa5ho{lyf4I=Rv6UpsXz?rayW)&>sM|DGU)@>MPOa1%SoWsg9=?tD7H;n+D$gqI( z&doOOJL768E`Cp(#Zvojj;*<9cT7Kp>_KEdL9%(&emB4kfVrhbDgiYzpbHswfq|n0L1w>tpWX8uWSwd#^^ytYMWCRX?;n&>H=TUqt>7)!!)izH^i@2kmf3hVpbA z{3v+3zAcli{$Nn?wwCIgClON+rhiv(5hU+{VZzv~6->~MBg@P&OncIh>Qa0V$c;&u#<7&wrKeA{uXBvjT2mWVS{t-^9s_ZnMI!st^ zM3~ykJYju=wRn8~n9Gf9lrbOtM3VaJGPL8+Hj0)<`fC&15pb#_S6}dDF?;8rcq&Gz zf5LGWm`6Od;F6=!JZZw)2~QI~E)ELGU#rxbZ+85XK5*OLPNmbBZFg!d!-fC z?CPdU467C7oll#nA?i-}>OT1RbtBqgXgi^e*2P?O$71tSme4G&YUzkN4(wjW5cQk0BG-uAVTOBzkW$ym1;Jk_p$0MA2C~ZU5AOR4+6n4?u3oDcqrXFk zJ0aMYj6S5wIJ;QICKI>e?BQsKzw*a?0G2NJ`{4hg!weWj+j;%>E&)h@E@t4oP=lm0ssDv5q&ig-A04ZILH6?xGt9zZNdG}LwlXx zk&>m=ZWc2>TD$2G!L`sjoj2kM8Mv7 zY?S~q8{#niRW`*j(pB(K?wXGBb_#q6`2D=QdGp5zv#poBX^fD*C_!n~LVLY!ufcw5 z`UBrmEsXtXs6)8lSxCW~`EYLhN>?}dUhv^HpaJmx0ep51Xbk*d0IxM5jYU)7hrwUK zyB_6j9^4SPj|*YyO|C?0SQbG`{1Vr)!hR)q8QOx6*z<*kmaR=%=5}dK93>Aj-avC9 zqcK@W&=1g{#$ts;x%RB_7Q!rxervuIO9J& z&n@CdR9iRmM>8)mYoAx(|LoxkpVsX6Muw%)^5=*gWax$DMo621J8_*FTW6H`h8|vX zo~QIMtaJEF)o;f2DZ+*cdqr+qe7*0lJLwjo?be;lnaNSapGIEhW1RDNVm5Eazv$16 z{W(_~UluE>+(B0Il`~!WG+!jUo{x@Q4BQE6>{?!~0MQR@65?TAt^(1OMI5-$lH3q) zB>Lfp(8r&!cdz?4i_x>!%Vk=JM_J>GH%vF#n>US_V*2heWYi&}2YITi;J#;c#>fsv zLA-f6j%jVkP`@u=;kgH1jfs)GxCL$x@#-5Mb&xl}I|^^Rspp0VeLttZp-MC>$sgNAL_cdC#6l-fIfc zlgD-T$G`oZdI@2HrasH>mmMW;*E^_pJ_wsrcG5pd`1;@*kPOqm8HLRLMutXf-)d=D zV_^@pN3*n{zU1$x^3GvI?xB*L8RTptXF_p4zMNaKSKb6q9Z1e;{U2$_SKzJu6#EbD_;&WOTc56t$TaI*^~kEn`CRvD|DJ^4x}Y@+2z1)7d?QFnfQq)dzcZaUGCbA6TR zBg@1)`I$BMJB52S7MVT6^z4{sw(ew1lXg3qN2AzTxBA#&;+-a5qu2aCCbJJWgH1P`tQy({Xjh?q z1Mh+U2rX+@b{tjP-+-?8vw60(KbDYlyMCaHmsvWYm?GAwl1!|+ky8`Vp8PVg<6|av zCTfkUmh=oGC-pgBciS@sM*o`+&5(8)kl8<{^v^qx?d!gN>IH8q|-4ef2!@RL)#t5GvJZsNnz)ylZ1gnHXI3%WU8^rXV50Oa@ZSNt*Tw;A%_*#oQ**u66$yFQheEo5yaB9h(lqJOv` zGDKSf3Nrll5zpwC@lSa32V-|c%?Vo)<4-AiEP7JNN2(r-N`cW$Cx~P25o`0K+sD`& zn%yrYFO1uq_UTKQ?knli*kAH{v{R<4u zRt&?pTH92usj6IXFcFr-QhSP3^So513CQ=SiNv38l-_n@v|o>?oa-AMc7UXz!b~I@VQ* zqBU-JjB=lvx%w-sXjCTs$T)-y|7@;5_wxINDc@%HDNaXM`)=bGJA$m~Z?WgXYeRnd zhQ{E%YC|^_MRhUPJ}eTC=S!H`R9``t-v4@YqvjPvU%)I)ipU8*VDA!kx0gk;S z8+H@khVR(*olsqBg~+Y5J^FMpi!anFJmRaHWa!?8PaC;hzH|b)1fcKE)UtH1p6 z4URA4h1W&)b|#UMHHWODC-4J%b>-K4o=rf#zmLH`U$we(vx1Lf-~P>-BNv*hH$r2- zU+=ox=ISUvrP7o}P9JiZTG{%`?u%six7~1H2AHgkZPxK!(_8D~!959wkaZMUpFWrT z^%sq7lRY!{TvGl{`um20bB>6)=at*#ujUiv4>_0@q4pVTC4+88@;4`-SZVBmMFEx7 z0J4rE>)*D^pJ@w52WYSId!+;N>#r$}8>iqXvU>gwUydj1to@d|cOpb>Kk^%Adj29p zYrHM$`)Q=-5PzMYWE}Z>?$7!SrHL7I#KK0i(v*KE0_oAy!QU$BnkHQ|3ES2~W##ul zwe`kC`qo6pUh}~iCU^NYFo>AODeULPHRo?5@*2{?)a7-F!Co{mdnTI_{qIN&zKtLK zi9zk7)M`!sjCIwf0lMe~hkIEP&kmH2QG}4t9{g*sUhFS`Nt1M>BW4 z4(@^K3PZ$xoO~K{&&D)y*PaUMgl+4N)A_L*6N7gu?rV%#Hb6(nHN7>WTKD6(7`y@Q zeP>CNY?6jgqxb%a^D(^Z5v~JV4>;L?dW7o%*AMQQ2IJZigW!h1T`QbF{!n)##nyaa z&|!VT9aES@?$wy$8fvgK@^=Io6Uexn_p`}p^2Q~ucMZreY5WZ12{K+G84O+{F$#-y z(KI7o1E?y(j}eZVF>&Ori{N3nDUp18qVXNMZY{`VmuBFv|7W{bhI|I~Z{FOpF_wwy zXBp&7Bc~5JSzlXFPF~v^FEp3;<~OBX(U-6xU+ueenssBPHMcMOzLDTq$eg7-+BoAr zP}*C5N8?(*sAlMv(^_`EgiXG+7vX ze`FD*;}ys{gskCzwR^|N9s7wqAIU6XhX~8|Inf^jH@gk}5@E-(VbE&ca2ni_WEAnk zv`OCv_iX|*S87HLNC{qpGSqsFJ|)lgfe3Aa|Kr1jQ0##+miF{!7g6+l4nNM1*PJi$ z?)Fo9p`BZ@$M=dvZ@(@S>E-r%T8`!_WZKMCaJBe9bB z`0&qho9DGzyNzJQQ_AFd5c(TL@9SjO7n$}7(0pIgts!^rl!9*-KHSWPFQ}XR_GIlj zcYi{Zb}+X6II@cWox6S|%cL3G*qlMY>XG_K1?2AMr8X?SU0yBM5-k{p{S>m2$hyGm zlc9M6b?JR8msT6Cwy+N#=6fW!@LiI9_PZp5z`OX}X@B1l)gj!rmH7hw?g^>+Xx^9CwsyEnUer|CTorxafcgN+eitNSK|2d1j`k($e zvS54Ed1hN7x%ch2d3e51oh5N?lWF7)A@AV1wa5R6Or6^vquO0`QL;%{bzJ>L)(3uO z_Zpk=0oyzG`_LWQ7>1%`Xn}wchmGmE2;`{E_9JTwS;o)f%YxPO+4a9Q#Hln)!#DH) zAPuJdBkSndW%Zv+ev+iC@lV)4g{&0s?$~L{#?Mb1zUNy)8G=-0F$C`lyixuuGwy08 z^R`@G@y)^4c-pRknKGoGi`MZ{k(B zB)HNLt{q%O2$um@9l{NOs|(>q!8L?%hry*oxLI(WA>1)=nGkLfTwe&c3T`ljE0|+F zF@!4zHx4dAKJ_TSHQ>fVxCU^eAzX)*7v${$HyolH1UD4Ije%48g1nR9212+waQz|N z0yyP2$a@N0ZwR*mt|x%2BX7lDcFWJS;T)SoR-@~1)t*$lh1vLclkh10=fl$n&%}B1 zOu{pFo;)YvIdPsmC10U`oF`8MJSG3_pL_8A+$uNMxvlGHg5}l^Px*QBOueO%l9UsP3(RQ1*;TfA|leBc7;r#1%_LM&_kq`bA(c;|w=_w9TP5ye#`98A4 z`HGk;+#P9~v1U2|`#7@d9qx*>=?d->pd=3NVAsJ2-+F0`^_g!wUt-+TJs0MEizOY$ z6qV2RhkToSS3JgP!H9rVoY5r$&*##Vf8tIRuRA}= zZP#W^!1t48_hl75P3<~=8j~{nO)I}fx$Ri@&TwXsUk9%Ef_0}aSALX_bPwO_DTy&LSoiKNkS>}AR}1cT&u14^rZ!*wMLS}V`QnhlN@Rf9MV3w#QxGv; zhVHLVYtK{9c6+F9iAYJZfv)8hk_$$9b|9{rHcOUIR?WJ??u=U3EPUuq56+C<0 z+cOj#vwV9-W7d87LlPgUi9&WE@-TAek;{-690wR_4i=j`pCwWop3&mo*kcYjg*W)* z4o{N3iR{Yftb2E*TlF*Jd?9RVHUm*LF zHr+YCpC*ryy?wm92IWp&p6>|{z6bn3l0A#;so#+7(nl$m-+*lOuU=%gSFSt1@b&{5 zUFMG)MwglXwU6tXivG1QF&*2@T}#&ivGr8X5gm)$;xB^$CyRm2Vtr7oyTDv(S!0Jn zB&0|EYl}3^zhK?@L?J)WXTf%h4zhN*wmUsS6UEvIno@h>+N`OMCIqqRILoJD(%sy7 z8pcVV4jrR^y>Q(rEOO(w_OM?j{@z}uMMW1y>vwnDUqIH(i`Si7Jz1uF{k;G|-JB`< zc(kk*qnpdWi5*e19{8q(*%M^a<*#Shv9`nPCf#q$N=5>2CSopZN=EIGWzG_*3K5tu zrkkRfB0U{1U3Y%WyXq;}pR^gCP5f1De(yo|2RCcq8C*ltf~il7xB>o(AHyGx{ENM| zX~rVI9!%S``DIhVS0XdeN-ewlY%jK}f3Zaf^LNRa{m|{iJ4Cz-uUvO_*!E}bT%+Ht z|L;U$ANmcgu0>c&rA4ehc~u z=s&@`Tdszl_%#n7FT5dGa(m*aMaAjzH^<)=_~rV@+W!*$fjqTsJ%Sl<^>ypc^+J%Q zU>>aw&pTgb_Rk0N46E9~46?eARc_1cLDpHZtNnTkw(*YGNw1oq@Y*GsHmdnmBENJ2 zyXV#G-kHS_S>X0I2aSidgx3(RvMw-lUb8kwAM@|VmYh!L>b8-iG8rJek?`9k$JaZg zGUt29yQpUB!b`b!mrL2uv0-A$uDFgOt7n_IWXCNLK0x?06&H_ir@;+_J7h5Ke&v#H zk^k33=e-WP8p10HZxxTpySa~`jW2*OaJlpS;GGg_$hzT4!gH;7Og>5a{koGgn9qSw zHq}LQvT5d$)5vPyCVd&iFA&~M_}yOH*tQQhCo-|Wq;2F|J}hLvCkl^z#ZmiL*sZU{ zM)%?{IyTDw)qdtfk#Vq`stpABk+;WXON|pps(#(Qn~yS!_K|pY=wBy#cPIKUHG2oH zj1+74yRIO2=ymJf+IFxX8eM~)V(C424T0%%Rez2D6~0?yB+jJA&vR%^&g@e!(H@As zD32?%N^pW?MGXUPpB_g3vDY&OdSz`tuvC-p$bq7tuGeTR`bU(Dp;yc@DIV&>n`i7utJxSJ{tY5M}p`&}*cLIU}5F zMqXk%qwCMhz_x^pDP$DqmalIY_+y*SdwnRfe0Rqgg(8|P>w}6T^=-!IH|EV#e7)@3 zcIG?^<5z^RR6N=-wlA(Yrio+qch;TP<>te0Cr0=0))_p$mSYZk=|9 zQHuX&;mzyL#CCD`WyQCMW8aUI)n?o?`TJ1!$a@=+Z9ESe+eV3d^)2hpXLxsYCH>%j zjcsGa^v|qMnEkssV?s+j9m4Em>s}5CZ3vMo$Zu#|cV;hi9fe5+H-z-tX=ts?-YE0#Cy0eX_&8I2;=mU+nMNC^q}0e`9R0g z7@9mmdA6@R&y_r$G=J^j(%^bM8{8j*{Ct}>+J-%UceD+jj@Ke<0$F|gu}LM|^nGKS znfWOVTQ@dhe7Ff!+zZejhW=-sp7!;qucxgI+aHS_E13EBAgla)^yiD$ox}xh+`%!( z_h;MsJ6c%uSJ8flwm3(@BP@M9-L5ViBA(65*WL5%CXZz4U=d@`NO50wW(=+JHw|rN z7rM~PpJ`J@kNIV5(jZuI+e(0B>uj5^h(sKY@!By+-`C>E1`gLd0V|1ITJB@+A7nvR|C6FFDfvjW5 zx-GYyjGheDT}m6I|D9oaC&Tqs+2Q(|klUNDT__wIDFl@^KZOwSD%`CQxJjbWMtB9%^oJw*%;#5 zryEa0a+ZJXVQS(Pcr8x$z6+tlqHp5%x!V@yyue> zuXJhhAMl^`p+9WgdGl%On9S+;t=cu3gV|?xa0Go__#m|RFjqU|vpv2Bao3`kNN4J{ zb>|N~d%)-rfBr`f?H=$p?17?(wlkczzqYM2s+d$~-Tz4Y>i6qR_DMgu1K^JF?&@9A zGggF}_4a?#YBkLXYF_u6!C*0QFb>lwNaOCiJ%Rkw$p4a+AKc5M?UXs*;8yL!mNvI` zw4B4Cz0y^u@UPvm?l5$k^akfmA$v-zQJ;@&_3Ta19Hb9fo5(tT*1qNS-J(}V*M-^R zGlaY&$Q!(K-Fbr727P;nZsgwKI2tO-J#oKqcN>e!tOMqlK;Bn*y@AeHGQrYL5r4x! zv2Oa#b?@XZ9MHwqFSRQ>`O5^ZBf(Wbt^pjVu86s~u|*;j zR*N|&yh57B-gB1qZBtiXnrf7$`~~+ty20A&`(T>(ZF_Y{^g_J5&tvEZ%v*X zF3k!tzUJ~J{ATc(y+V|WdUZ)tJa!*Dmz2hO!VB(Q_wGP!z& z91?S8xBFl4YY~5c?)c0gYrkV++MM-Cbj02n*$tZH;fiS1d-N@~$Zin3Im*DGJUaQ? zAWc2*U3cCSktScCdw!Bf5`$@m#jDLpV0JdzwjZ<;_&Ne|(?6vC-nZ^7ZYS5+B33Rt z7XO-!imj~4z1415G>ZcHhLq9u(vj21FFnB8({}QMWyv^R5UnH4Tv>MHCh}I1S9)&p zVoQ;gkc#&qEA_9~rSD&N{@#<-=B>-M>0G#%bX*=st>F?s5Cn!n|(-T+%b3E`0=4%-yT_OX-)!nU7E=3 zH=k|A(sOUI30ADRm$PaayO_Alx>skS;vy~fl@LEsHxRZ!*h5MOcae?6h)Z`$??+uc z>bAEGG^x>b=eNAF@yCLYJuUm;_C%T_^Ck5r^BMJs@?b8XA-Z|wR(^2Z`G(@A69&iL zkk81Rs~d?dg>5dSL!{bVC61I);%LiFyD8_0IEtQpmNq9n)+c%Qt-E)(k!EW%qewj4 zuaVB1R$zfi?|G=r>~A0rQ0&nj}$5cG-q`zo!i!`bkQx1AUrirUp|_S%jS$HW8d_ah27 zpT@@&ET4|pr%}B@2NpeAb+rI*!-MP22fey7cD~WIdFf++^nTSIOO-z)su~ z!L)Eu%r%L0SEA#xz(f*ql~Ff*HSi^P*Hgh?Ke%derk+U}CePLr{_cnR$q1ApB#jQKF$tC!D;LBLPh%ra!5^^lw z7QV$H2aIPF!`sDQ?JDJitUo)8tnj(f<~SaQ9EF{Z-(ge&JS%YySq`#Y=vp z%AW-la~(h*~ySM z(Mjt&bU8_5*XQkdDCyGlI{o+e*Z+Uk&IhitqrCfYE{W7juc&CLVnxM@ij`JWY^lAw z3k$nTl52tq8lpD|Dkj9BK_!Zj3a+#z3016AQL&<;Vv7|mDpsnfsHjwFrIxl>X{8mH zyGj+`V(@?WxUA?KsZqLs0_JOkgm+wqPoAT+d!)sxRb#C$Z@e}?#&{FU9=7Hh1 zq8`ifzJ=S0T-5}x`hCVPmIUcK?xo9BEe)b4Ci??w&6YxI2=vM-d3s&?eGd9TUI zBM)hUXNkK++{Z|{Xh){~rPB50S8c4Ve^$&JT(ALyq%Hm;HB`?x`KX4)YCBCIx zIcthA#D=)T?liP(Tj!mVJ2Itbkt3UeZjrHV9DXGqyx`sgIV`V&xaG5zU^(#?iC0Cu zCrP^e>iJuP)(B1M248!^RZz(U?Hb{PUbBxes{9xIgz*6k%YkP8>3ilLMRhMP*NC#; zl)9?li6sBbMC?1cbpBKDJ1CHU=|=;^EBnxeY=>Jnp1tn1XWiD)u_sF1~{m|>7_X%C4!JOB+&IZda*K&C+)3%qUB|pS% z5;@7UC2SJo0vyGEiLl9!`1w~8Z3Fr=^a;K_{@kAp**k8;?#1j%>V|In{Kb|HHk z-}39_uNqp#Uz%rdfS7kp&?voZQ*{_L>SDd{47k}=ckGfQcZ4S`$-_A5b(7xX_?F)| ze>2dApgmd3&h+Dwyu4&1d}v7|&K4j3$$+srGxRCu5zC+7pj(JIWA33*BlBdc;>i3hL-D=ivV7wOP^+yN+i3NsE zyeVRvcf)HOUcV!GLQUSFRG7T_gk8qp2;uXDx47l^>e=(NIb(tKokUNY+!q(tpb}~L zNk7_z=iH~fxu=wA585oW*SdA?rQ?kg%65~xr(Y{Btgu4W!mIHY=(A5>$bOk`k+W&< zvbj+Aqvm*$;BMj$ea5rd&9xC0VD$icm3kf3?tkjuW&0C+2Y<8hn1aW=D0n{UrCl^U8W|8BSyD+ikDt|1n;F)>|tKw~h6iBuO+~NP7_{z2vbSUW-fY zgO)sEZs@mt@Yd-)yfiiOr`THFu!U}fLM)eZN*;w!4}+*V&kTIipJP1=wzjO#%G{Ub z@Zpjxke_{ou+_XWO0}yka6RB|*Eq8ctMj8w56@q&`*`YxL?@Q>HOe1O8_3mG%J*LX zzqD6)-s$pGZOEIeD7~TEP_i@8)}BaR?YgsbnX=RzCQ?=IDbkuGEor;KHpVKIZe#LV zj(pm04@le%aP#0!yKP13HZPB!4q!__KDTvCT*mzBBj!_od%QnM(rhE%67d>B(hT%1 z*~6I)?OOQ0gx3VT=0ATS`!{?`xpVGgl$C;$v>9}XJD_s*7+qmf)Ht;bubO4%P5ykT ze&gAhs=j1x=G&q9vX_=~E01xii!3((68%jYkCil1{y6{|@jUmiOS}IZImTjkTX|c& z>x)pn3~7y7fWAwCb(rDH&tEoHa(7JL2@#z>1OMs2^WWJ4!JerrP z7jv8nj0sZ5IDSHU5$_j;(&gAwNOZ~f4CyYD?lqEbzwLvQxz`f((l2thOV_RG(?IU_ z{r9|NNj3n(c@5G?CN}T5|L>qyvDwC!FZ2I z`IC@3w{GGA5er|&sUhOc5bqIu%TH(%(B`2%Q&H@^%|hFPR LoOT?$tT;@V@T=wT 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